Add setup subcommands for skill groups and single skills
Merged
ER
2mo ago+3045+3045+0123456789012345678901234567890123456789-15-15-01234567890123456789
Gives each skill family — and any individual skill — a short, promotable install command, with a works-out-of-the-box auth story:
npx -y firecrawl-cli@latest setup core # scrape/search/crawl/interact primitives + index skills
npx -y firecrawl-cli@latest setup build # app-integration skills
npx -y firecrawl-cli@latest setup workflows # unchanged
npx -y firecrawl-cli@latest setup developer-index # any single catalog skill; firecrawl- prefix optional
npx -y firecrawl-cli@latest setup build --browser # also log in if no API key is found
Subcommands
setup skillsstays as an alias forcore(backwards compatible; its help text previously claimed it installed core/build, but it only ever installed the core set)- Fills a real gap: since the init revamp dropped build skills, nothing in the CLI could install the
firecrawl-build*family — newBUILD_SKILLS/BUILD_SKILL_SELECTIONmirror the five build skills in the catalog - Single-skill args resolve against all three families by exact name or with the
firecrawl-prefix added; group names win ties (setup build= group,setup firecrawl-build= skill); unknown names print the full subcommand help - All installs come from
firecrawl/skillsby name (layout-independent, so the cli→core catalog rename doesn't affect this), keeping skills.sh install counters consolidated on the catalog
Auth offer (never blocks automation)
After any skill install, check for an API key (env var or stored credentials — covers users already set up via init or MCP):
- Authenticated → silent, nothing changes
--browser→ run the browser login directly and persist credentials- Interactive TTY without
-y→ offer the browser login (default yes) - Non-interactive /
-y→ one-line hint only; skills walk agents through setup on first use, so agents, scripts, and CI never hang on a login - The bare
setupbundle defers the offer until all steps ran, so it never asks twice
Verification: setup.test.ts 55/55 + init tests passing, tsc clean; smoke-tested against a fresh empty $HOME — skill installs land, unauthenticated non-interactive runs print the hint and exit 0.
Note: BUILD_SKILLS is a hardcoded name list like CLI_SKILLS/WORKFLOW_SKILLS — a new build skill in the monorepo needs a one-line addition here, same as the existing lists.
🤖 Generated with Claude Code