Skip to content

Cross-Agent Usage

Feature Forge’s skills are vendor-neutral canon; Claude Code is the first-class surface, but the same pipeline runs on other coding agents via generated adapter bundles. For first-time install steps see install.

Install via the plugin marketplace:

/plugin marketplace add garygentry/feature-forge
/plugin install feature-forge@feature-forge

Skills are invoked as slash commands like /feature-forge:forge-init. Claude installs under ~/.claude.

Other agents (Codex, Copilot, Cursor, Gemini)

Section titled “Other agents (Codex, Copilot, Cursor, Gemini)”

Install with the universal one-liner, which copies the generated adapter bundle into each detected agent’s config directory:

npx @garygentry/feature-forge install # all detected agents
npx @garygentry/feature-forge install -a codex # one agent (codex|copilot|cursor|gemini|claude)
npx @garygentry/feature-forge install --dry-run --json # preview the plan, change nothing

The --dry-run --json plan reports the resolved install destination per agent. Claude’s ~/.claude is the only hard-coded well-known destination; for the others the destination comes from the dry-run plan.

Run npx @garygentry/feature-forge list (optionally -a <agent>) to show per-agent installed / up-to-date status.

Every installed adapter bundle is self-contained: it ships the neutral .feature-forge-bundle.json sentinel plus byte-identical copies of every runtime helper a skill can invoke (forge-root.sh, forge-init.sh, epic-manifest.py, validate-traceability.py, forge-bootstrap.py). The portable resolver scripts/forge-root.sh self-locates from the installed location via the neutral sentinel (and honors FEATURE_FORGE_ROOT), so helper-backed skills run after install on any agent — no dependency on Claude-only files.

For agents whose install spans a second root, the installer also places the bundle where that agent actually loads it: Codex custom agents are mirrored into .codex/agents/*.toml, and Copilot gets a managed block in .github/copilot-instructions.md (merged without disturbing existing content; removed cleanly on uninstall).

At Stage 5 the coding agent that runs the loop is chosen by precedence: item.provider > --agent (run-level) > project defaultAgent > the runner’s default (claude-cli). The agent (who runs each item) is selected separately from the model (which model that agent uses) — an item’s model alias never decides the agent. If you select a non-Claude agent but your backlog items carry Claude model aliases, the loop warns and offers to strip them or proceed.