跳转到正文
报告库
用途分类 / 浏览器操作

Firecrawl Build Onboarding Skill 安全审计

作者说它能做什么(原文)

Get Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when the user wants to authenticate Firecrawl for app code, or when choosing the first SDK and docs for a new Firecrawl integration. This skill includes its own browser auth flow, so it does not depend on the website onboarding skill.

第三方安全检查结论

发现安全风险

已检查文件
4
发现的风险
3
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

未锁定版本的 npx 命令会下载并执行“latest”安装程序

原文依据:2 处
发现了什么

安装指令使用 `npx -y ...@latest`,会跳过 npx 确认并执行调用时注册表提供的最新版代码。它还同时安装 CLI、CLI skills 和 build skills,范围超过仅为当前项目选择一个 SDK。

为什么需要注意

如果上游包被入侵、发布错误版本或未来改变行为,安装代码可在用户权限范围内修改项目或本机文件、访问环境中的凭据并打开浏览器流程。

该命令会通过 npx 获取并执行未锁定的最新版包,并用 `-y` 跳过确认;文档还说明它会安装 CLI、CLI skills 和 build skills,并启动浏览器认证。虽然这些组件符合该 onboarding skill 声明的用途,但安装范围较广,用户应在授权执行前确认确实需要全部组件及浏览器登录。

SKILL.md:29来自说明文档打开原文件
If you haven't installed yet, one command sets up both the CLI tools(for live web work) and the build skills (for app integration):```bashnpx -y firecrawl-cli@latest init --all --browser```This installs the Firecrawl CLI, the CLI skills, and these build skillstogether. It also opens browser auth so the human can sign in or createan account. No separate `npx skills add` step is needed.
查看另外 1 个位置
SKILL.md:36来自说明文档打开原文件
This installs the Firecrawl CLI, the CLI skills, and these build skillstogether. It also opens browser auth so the human can sign in or createan account. No separate `npx skills add` step is needed.
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

API key 会进入代理可见的响应、命令文本和项目 `.env`

原文依据:4 处
发现了什么

状态接口的完成响应直接返回 API key,随后示例把实际密钥嵌入 shell 命令并追加到 `.env`。项目指南虽反对在源文件中硬编码,却没有要求先确认 `.env` 被版本控制忽略,也没有避免密钥出现在代理或终端记录中。

为什么需要注意

若工具记录、终端历史、会话转录或仓库提交包含这些内容,能够读取它们的人可能使用该 Firecrawl 账户的权限和额度。重复运行追加命令还可能留下多个密钥值。

认证流程要求用会话标识和验证值轮询远程接口;成功响应包含明文 API key,随后指示把 key 放进 shell 命令并追加到 `.env`。因此,若代理执行这些步骤,密钥可能出现在其可见的接口响应及终端历史/日志中;若 `.env` 未被忽略,还可能被误提交。项目指南要求使用环境变量或密钥管理器,但没有在所示内容中检查 `.env` 的版本控制状态。用户可限制代理不得读取或回显实际 key,并要求先验证 `.gitignore`。

references/auth-flow.md:32来自说明文档打开原文件
- `{"status":"pending"}` - continue polling- `{"status":"complete","apiKey":"fc-...","teamName":"..."}`## Step 4: Save the key```bashecho "FIRECRAWL_API_KEY=fc-..." >> .env```
查看另外 3 个位置
references/auth-flow.md:35来自说明文档打开原文件
## Step 4: Save the key```bashecho "FIRECRAWL_API_KEY=fc-..." >> .env```
references/project-setup.md:16来自说明文档打开原文件
Project setup guidance:- Keep the key in environment variables or the platform secret manager.- Do not hardcode credentials in source files.- If the app has separate environments, mirror the key setup across development, preview, and production as needed.
references/auth-flow.md:23来自说明文档打开原文件
```httpPOST https://www.firecrawl.dev/api/auth/cli/statusContent-Type: application/json{"session_id":"$SESSION_ID","code_verifier":"$CODE_VERIFIER"}```
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。发现 1 项风险
低风险

安装命令没有固定依赖版本

原文依据:2 处
发现了什么

安装命令没有指定依赖版本。同样的命令以后可能下载不同代码,你实际安装的内容可能与这次检查时不同。

为什么需要注意

即使命令和报告没变,以后安装时也可能下载到另一份代码。

安装步骤明确使用 `@latest`,没有锁定具体版本。用户日后运行时,npx 可能下载并执行与本次审查不同的最新版程序;`-y` 还会自动接受安装提示。用户可要求作者提供经过验证的固定版本,并在执行前确认包名、版本和发布者。

SKILL.md:38来自说明文档打开原文件
together. It also opens browser auth so the human can sign in or createan account. No separate `npx skills add` step is needed.
查看另外 1 个位置
SKILL.md:33来自说明文档打开原文件
```bashnpx -y firecrawl-cli@latest init --all --browser```
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

6 个说明模块

该技能用于把 Firecrawl 凭据和 SDK 接入项目;它要求 hosted API key,并将浏览器授权、SDK 安装和 `.env` 配置作为主要流程。

查看原文
SKILL.md:3来自说明文档打开原文件
name: firecrawl-build-onboardingdescription: Get Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when the user wants to authenticate Firecrawl for app code, or when choosing the first SDK and docs for a new Firecrawl integration. This skill includes its own browser auth flow, so it does not depend on the website onboarding skill.license: ISC
SKILL.md:11来自说明文档打开原文件
inputs:  - name: FIRECRAWL_API_KEY    description: Firecrawl API key used for hosted Firecrawl API requests.    required: true  - name: FIRECRAWL_API_URL

没有现有密钥时,流程生成 PKCE 风格参数,让用户在 Firecrawl 网站授权,然后由代理向状态接口提交 session ID 和 verifier;完成响应直接包含 API key。

查看原文
references/auth-flow.md:8来自说明文档打开原文件
```bashSESSION_ID=$(openssl rand -hex 32)CODE_VERIFIER=$(openssl rand -base64 32 | tr '+/' '-_' | tr -d '=\n' | head -c 43)CODE_CHALLENGE=$(printf '%s' "$CODE_VERIFIER" | openssl dgst -sha256 -binary | openssl base64 -A | tr '+/' '-_' | tr -d '=')```
references/auth-flow.md:16来自说明文档打开原文件
```texthttps://www.firecrawl.dev/cli-auth?code_challenge=$CODE_CHALLENGE&source=coding-agent#session_id=$SESSION_ID```
references/auth-flow.md:23来自说明文档打开原文件
```httpPOST https://www.firecrawl.dev/api/auth/cli/statusContent-Type: application/json{"session_id":"$SESSION_ID","code_verifier":"$CODE_VERIFIER"}```
references/auth-flow.md:32来自说明文档打开原文件
- `{"status":"pending"}` - continue polling- `{"status":"complete","apiKey":"fc-...","teamName":"..."}`

项目接入完成后,技能要求添加 SDK 或 REST 调用,并通过一次真实的 Firecrawl 请求进行冒烟测试。

查看原文
SKILL.md:95来自说明文档打开原文件
1. decide whether this is a fresh project or an existing codebase2. ask what Firecrawl should do in the product3. pick the narrowest endpoint that matches that behavior4. read the source-of-truth page for the project language before writing code5. add the SDK or REST call in code6. run a smoke test that proves one real Firecrawl request succeeds7. use the endpoint-specific skills in this repo for implementation guidance8. if you also need live web tooling during the current task, the CLI skills are already installed — use `firecrawl/cli`
从这里开始 · 工作说明SKILL.md
firecrawl-build-onboarding
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。

文件引用关系图

3 处引用
哪些文件发起引用引用了什么
连线表示真实的文件引用,不是运行顺序。点击节点可高亮相关连线,并查看具体文件和原文位置。虚线表示还有文件需要定位。
文件与检查记录4 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文
  • references/auth-flow.md已纳入全文
  • references/project-setup.md已纳入全文
  • references/sdk-installation.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明
  • references/auth-flow.md配套文件
  • references/project-setup.md配套文件
  • references/sdk-installation.md配套文件

代码和说明中提到的操作

读取密钥或账号配置
SKILL.md:3来自说明文档打开原文件
name: firecrawl-build-onboardingdescription: Get Firecrawl credentials and SDK setup into a project. Use when an application needs `FIRECRAWL_API_KEY`, when an agent should add Firecrawl to `.env`, when the user wants to authenticate Firecrawl for app code, or when choosing the first SDK and docs for a new Firecrawl integration. This skill includes its own browser auth flow, so it does not depend on the website onboarding skill.license: ISC
SKILL.md:11来自说明文档打开原文件
inputs:  - name: FIRECRAWL_API_KEY    description: Firecrawl API key used for hosted Firecrawl API requests.
SKILL.md:42来自说明文档打开原文件
- a project needs `FIRECRAWL_API_KEY`- the user wants Firecrawl wired into `.env`
连接外部网站
SKILL.md:8来自说明文档打开原文件
  version: "0.1.0"  homepage: https://www.firecrawl.dev  source: https://github.com/firecrawl/skills
SKILL.md:9来自说明文档打开原文件
  homepage: https://www.firecrawl.dev  source: https://github.com/firecrawl/skillsinputs:
SKILL.md:12来自说明文档打开原文件
  - name: FIRECRAWL_API_KEY    description: Firecrawl API key used for hosted Firecrawl API requests.    required: true
运行命令
SKILL.md:32来自说明文档打开原文件
```bashnpx -y firecrawl-cli@latest init --all --browser
references/auth-flow.md:7来自说明文档打开原文件
```bashSESSION_ID=$(openssl rand -hex 32)
references/auth-flow.md:37来自说明文档打开原文件
```bashecho "FIRECRAWL_API_KEY=fc-..." >> .env
安装其他软件包
SKILL.md:33来自说明文档打开原文件
```bashnpx -y firecrawl-cli@latest init --all --browser```
SKILL.md:38来自说明文档打开原文件
together. It also opens browser auth so the human can sign in or createan account. No separate `npx skills add` step is needed.
references/sdk-installation.md:8来自说明文档打开原文件
```bashnpm install @mendable/firecrawl-js```
读取了多少行
182
文件校验值(用于核对版本)
330f407bdf4c3851aa7774b7324a1de273a5711d5b025a2fa5ed4100edf6da19