skills/forge-shape/SKILL.md
[writes] Turn a vague idea into a structured spec with stories and acceptance criteria. Use when your requirement is unclear, you're not sure what to build, or you need to think through a feature before implementing. Trigger: /forge-shape, I have an idea, help me think through this, refine my requirements
npx skillsauth add quantumbitcz/dev-pipeline forge-shapeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
See shared/skill-contract.md for the standard exit-code table.
Before any action, verify:
git rev-parse --show-toplevel 2>/dev/null. If fails: report "Not a git repository. Navigate to a project directory." and STOP..claude/forge.local.md exists. If not: report "Forge not initialized. Run /forge-init first." and STOP.After dispatch, fg-010-shaper will:
.forge/specs/ for use with /forge-run --specThis is interactive — expect a ~5 minute conversation. The result is a spec file, not code.
Parse input: The user's argument (everything after /forge-shape) is the feature idea -- a free-text description like "Add notification system" or "I want users to share plans". If no input is provided, ask the user: "What feature would you like to shape? Describe your idea, even if it's rough (e.g., 'users should be able to share plans with each other')."
Validate input: Ensure the input contains enough substance to start shaping. A single word is insufficient. If the input is too terse (fewer than 3 words), prompt: "Could you elaborate a bit? What problem does this feature solve, or who is it for?"
Detect available MCPs: Detect available MCPs per shared/mcp-detection.md detection table. Mark unavailable MCPs as degraded. Build a comma-separated list of detected integrations.
Dispatch the shaper: Use the Agent tool to invoke fg-010-shaper with the following prompt:
Shape this feature requirement:
{user_input}Available MCPs:
{detected_mcps}
Where {user_input} is the raw text the user provided.
Do nothing else: Do not plan, implement, or make decisions. The shaper handles all interaction with the user -- it will ask clarifying questions, propose structure, and iterate until the spec is solid.
Relay the result: When the shaper completes, relay its output (spec location, next steps) back to the user unchanged. The output typically includes a path to the generated spec file and a suggestion to run /forge-run --spec <path>.
| Condition | Action | |-----------|--------| | Prerequisites fail | Report specific error message and STOP | | Empty input | Ask user for feature description before dispatching | | Shaper agent dispatch fails | Report "Feature shaper failed to start. Check plugin installation and try again." and STOP | | Shaper returns error | Relay the error unchanged | | User abandons shaping mid-session | The shaper handles graceful exit. No cleanup needed |
/forge-run -- Run the full pipeline after shaping is complete (use --spec <path> to pass the shaped spec)/forge-sprint -- Execute multiple shaped features in parallel/forge-fix -- For bug reports rather than new features/forge-bootstrap -- For scaffolding a new project rather than shaping a featuredevelopment
[writes] Build, fix, deploy, review, or modify code in this project. Universal entry for the forge pipeline. Auto-bootstraps on first run; brainstorms before planning when given a feature description. Use when you want to take any productive action: implementing features, fixing bugs, reviewing branches, deploying, committing, running migrations.
tools
[writes] Manage forge state and configuration: recovery, abort, config edits, session handoff, automations, playbooks, output compression, knowledge graph maintenance. Use when you need to recover from broken pipeline state, edit settings, or manage long-lived state.
development
[writes] Create, list, show, resume, or search forge session handoffs. Use when context is getting heavy and you want to transfer a forge run or conversation into a fresh Claude Code session, or to resume from a prior handoff artefact. Subcommands - no args (write), list, show, resume, search.
development
[writes] Manage the Neo4j knowledge graph. Subcommands: init, rebuild (writes); status, query <cypher>, debug (read-only). Requires Docker. No default — an explicit subcommand is required. Use when setting up the graph for the first time, rebuilding after major refactors, checking graph health, or running ad-hoc Cypher diagnostics.