fix(setup): install the Alexandria skill with the core skills

Merged
NI
3d ago
+68-91

Problem

firecrawl-alexandria lives in skills/ and is mirrored to firecrawl/skills under skills/core/, but it isn't in CLI_SKILLS. So firecrawl init and firecrawl setup core never install it. The firecrawl, firecrawl-search and firecrawl-scrape skills all link to ../firecrawl-alexandria/SKILL.md for Alexandria feedback, and on a user's machine that link points to nothing.

That skill is the only place that tells a CLI agent to send firecrawl alexandria feedback, explains the 1-credit refund, and describes the feedback fields. CLI agents send many feedback reports per team but have the highest bad share of any surface, so the coverage signal from the CLI is thinner than it should be.

firecrawl setup alexandria was broken too. It installs from ../../beta-skills, which #271 deleted, and that folder was never part of the npm files list anyway.

Change

  • Add firecrawl-alexandria to CLI_SKILLS, so init and setup core install it next to the search/scrape skills that point to it.
  • Remove the internal setup alexandria command (it installed from the deleted beta-skills/). firecrawl-alexandria now ships with the core skills instead.
  • installSkills now runs npx skills add through runClientCommand (argv, with no shell on POSIX and escaped cmd.exe arguments on Windows) instead of execSync(args.join(' ')). It also passes --agent to the native no-npx fallback. This applies to setup core/build/workflows/<skill> too, which share this path. A test checks that a hostile --agent value reaches npx as a single argument.
  • Update the setup tests and the README line about what the core skills cover.

This overlaps with the stale #226 (move from beta-skills/ to skills/). That move already shipped in #271, but the install wiring didn't come with it. firecrawl init has its own execSync skills path, which this PR leaves alone.