Update vendored scaffold references and default remote to use firecrawl/web-agent. Adjusted header comments in create.ts, create-flow.ts, credentials.ts, manifest.ts, scaffold.ts, and ui.ts, and changed DEFAULT_REMOTE in manifest.ts from 'firecrawl/firecrawl-agent' to 'firecrawl/web-agent' so the scaffolder clones the web-agent repo for templates.
Replaces the `npx firecrawl-agent-cli` delegator with an in-process
scaffolder vendored from firecrawl/firecrawl-agent. No separate npm
package for the agent CLI — the root firecrawl-cli clones the public
agent repo at runtime to fetch templates + agent-core.
- Vendor under src/utils/agent-scaffold/ (manifest, scaffold,
credentials, ui, create-flow). Upstream-tracked; keep in sync.
- manifest.ts: strip the "bundled next to CLI" branch (doesn't apply
here), always clone the public repo. Nested-manifest fallback
handles the current `.internal/cli/agent-manifest.json` location.
- Extract handleCreate from upstream init.ts; drop the commander
wrapper since the root CLI owns the command surface.
- create.ts now lazy-imports the scaffolder so non-create paths stay
snappy.
Smoke-tested end-to-end against a local agent repo via --from: next
template scaffolds correctly with agent-core, .env.local, and
expected file layout.
Wires a hidden `firecrawl create <kind>` command tree into the root CLI.
Only the `agent` kind is registered today; it delegates to
`npx -y firecrawl-agent-cli create` with full flag passthrough so the
agent repo remains the single source of truth for templates.
The command is hidden from --help until `firecrawl-agent-cli` is on
npm. Flip to visible by removing `{ hidden: true }` in index.ts.
Surface:
firecrawl create agent [name] [-t next|express|library]
firecrawl create agent [name] --provider <p> --model <m>
firecrawl create agent [name] --api-key <fc-key> --key anthropic=sk-...
firecrawl create agent [name] --from user/repo
During install, show "Installing core firecrawl skills..." and
"Installing skills to build with firecrawl..." instead of the raw repo
names firecrawl/cli and firecrawl/skills. SKILL_REPO_LABELS map drives
the friendly text.
In the next-steps summary, split into two distinct groupings:
1. "Connect & interact with the web (direct or in your AI agent)"
with scrape/search/interact examples showing the natural language
prompt next to the equivalent CLI command.
2. "Building with firecrawl?" at the bottom, pointing at the build
skills with a concrete business example.
MCP + --help entries sit between the two sections as general utilities.
Bumped to 1.14.7.
Parse '(Found|Installed) N skills' from captured npx skills output and
sum across both repos so the post-install summary shows
"✓ Installed 14 skills across your AI coding agents" instead of vague
text.
Collapse the next-steps block from 18 lines to 7: drop the 4 example
prompts in favor of one of each (AI prompt + direct CLI), plus the
MCP install hint and the --help pointer. Each entry uses padded labels
("Ask your AI:", "Run direct: ", "Add MCP: ", "All commands:") so
the commands align in a column.
stepIntegrations and runNonInteractive both thread the count through
to printNextSteps. Tests still mock execSync as undefined, so
parseSkillCount handles the empty case. Bumped to 1.14.3.
Replace the noisy 'npx skills add' inherited stdout (banner, +/symlink
table, security report, ~80 lines per repo) with a single line per repo:
" ✓ firecrawl/cli" / " ✓ firecrawl/skills". TTY runs get a transient
"↓ <repo>" indicator while the install is in flight; non-TTY runs (CI,
piped) get only the final line.
Replace the trailing "Setup complete!" line with a printNextSteps()
block that surfaces:
- what just happened (skills installed globally)
- what firecrawl is for (search, scrape, crawl, interact)
- 4 example prompts (2 build-skill triggers, 2 direct CLI calls)
- pointer to firecrawl --help
Both interactive and non-interactive init paths use the same helpers,
so output is consistent regardless of how users enter the flow.
Bumped to 1.14.2.
when this cli is launched via 'npx -y firecrawl-cli@VERSION', npm injects
npm_command/npm_lifecycle_event/npm_execpath/INIT_CWD into the process
env. those vars leak into nested execSync('npx -y skills add ...') calls
and cause the loop's second iteration to silently exit after the first
install completes — published 1.14.0 only installs from firecrawl/cli
even though SKILL_REPOS contains both repos.
cleanNpmEnv() in skills-install.ts strips those vars; init.ts and
setup.ts pass it as the env to every nested execSync. added a
regression test that primes process.env with the leaking vars and
asserts every install call sees a clean env. bumped to 1.14.1.
onboarding (init) and setup skills now loop over a SKILL_REPOS list
so both the core cli skills and the build skills repo get installed
through the same npx/native paths. buildSkillsInstallArgs and
installSkillsNative take a repo parameter (defaulting to firecrawl/cli
for back compat). tests updated to assert both install invocations.
- rename skills/firecrawl-instruct → firecrawl-interact + update all cross-references
- hide deprecated browser command from --help (still works when called directly)
- group download, claude, codex, opencode under `firecrawl experimental` (alias: `firecrawl x`)
- remove browser references from passthrough system prompt quick reference
Replace OpenCode backend implementation with a coming-soon stub: update displayName to "OpenCode (coming soon)" and make buildArgs print a message and exit to prevent use. In the shop workflow, add a new "sites" input (collected and returned), include it in the constructed user message, tweak prompt wording for context, add an instruction to work sequentially, and generalize the buy phase (remove hard dependency on the amazon profile). Minor UX and wording refinements included.
Add explicit guidance to launch a browser session with Live View before performing browser operations (run `firecrawl browser launch-session --json` and surface the Live View URL immediately). Insert this instruction into the experimental shared prompts and the passthrough system prompt. Also update the shop workflow to use `QA_TOOLS_BLOCK` instead of `FIRECRAWL_TOOLS_BLOCK`.
Upgrade @mendable/firecrawl-js to v4.15.3 and remove the local workspace override. Revise README examples to use the unified firecrawl CLI commands and expand workflow examples. Update browser launch handling to use .liveViewUrl (and adjust jq examples) instead of the previous interactiveLiveViewUrl fallback.
Add an explicit integration: 'cli' flag to SDK call options across commands (agent, browser, crawl, map, scrape, search) so the backend knows the CLI origin. Update browser launch/quick-execute defaults to include integration and adjust scrape params typing. Update tests to assert the integration field. Persist API URL when only a custom --api-url is provided (no api-key) during login, and use global CLI options when handling login invocation. Bump package version to 1.9.4, add keywords and upgrade @mendable/firecrawl-js to 4.15.1, and add a "Testing Workflows Locally" section to README with examples for Claude, Codex, and OpenCode CLIs.