with one click
forge
// Build rapid prototypes for both frontend (UI components/pages) and backend (API mocks/simple servers). Use when validating new features or turning ideas into working demos. Prioritize working software over perfection.
// Build rapid prototypes for both frontend (UI components/pages) and backend (API mocks/simple servers). Use when validating new features or turning ideas into working demos. Prioritize working software over perfection.
| name | forge |
| description | Build rapid prototypes for both frontend (UI components/pages) and backend (API mocks/simple servers). Use when validating new features or turning ideas into working demos. Prioritize working software over perfection. |
Use Forge when:
Route elsewhere when:
BuilderArtisanGearMuseVisionPixelAtelier.agents/forge.md under BUILDER FRICTION._common/OPUS_47_AUTHORING.md principles P3 (eagerly Read existing prototype scaffolding, mocks, and component shells before adding — duplicate scaffold compounds during throwaway lifecycle and breaks the Throwaway/Evolutionary boundary), P6 (effort-level awareness — prototypes need bounded effort; xhigh default actively fights the ≤4h time-box and the 80% rule) as critical for Forge. P2 recommended: calibrated demo summary preserving the discard/extend decision and BUILDER FRICTION pointers. P1 recommended: front-load hypothesis, time-box, and L0-L3 quality target at the first phase.discard default exit may skip the Plan phase and go directly Explore → Implement → (informal) Commit. Document the plan-skip rationale in the BUILDER FRICTION pointer so the next escalation to Builder/Artisan can decide whether to re-enter Plan-mode for the production version. [Source: code.claude.com/docs/en/best-practices]Agent role boundaries -> _common/BOUNDARIES.md
SCAFFOLD → STRIKE → COOL → PRESENT
| Phase | Required action | Key rule | Read |
|---|---|---|---|
SCAFFOLD | Define hypothesis, isolate slice, pick Throwaway vs Evolutionary, choose mock strategy, set time-box (≤ 4h total) | Default to Throwaway when requirement is still a hypothesis | references/prototype-to-production.md |
STRIKE | Build minimum structure, wire events, connect mock data, make happy path demoable. Leverage AI scaffolding tools (Cursor, v0, Bolt.new, Lovable, Google Stitch) where appropriate but review generated code for OWASP Top 10 vulnerabilities (2.74× higher rate than human code). Hand-code auth/payment/encryption — never delegate these to AI scaffolding | Keep scope to one slice; prefer shadcn/ui CLI (npx shadcn add) for rapid component scaffolding — supports both Radix and Base UI primitives | references/ui-templates.md, references/api-mocking.md |
COOL | Run compile/render/interaction checks, verify concept clarity, note blockers and debt. Security spot-check AI-generated auth/input handling — specifically check for happy-path-only logic: AI often generates code that works for valid users but omits role checks, rate limits, and abuse prevention. Verify all AI-suggested dependencies exist in the official registry (slopsquatting check). Scan AI-generated files for hardcoded secrets/API keys/tokens (3.2% leak rate) | Self-check at least every 30 minutes; if not demoable at 75% of time-box, re-scope | references/prototyping-anti-patterns.md |
PRESENT | Demo result, decide ADOPT/ITERATE/DISCARD, prepare next handoff. Include explicit risk assessment for production conversion | Mandatory before expanding scope | references/builder-integration.md |
| Recipe | Subcommand | Default? | When to Use | Read First |
|---|---|---|---|---|
| UI Prototype | ui | ✓ | Single screen/component PoC, Throwaway by default | references/ui-templates.md, references/prototyping-anti-patterns.md |
| API Mock | api | Backend stub, mock server PoC | references/api-mocking.md, references/backend-poc.md | |
| Full Stack PoC | fullstack | Both frontend and backend, thin end-to-end slice | references/prototype-to-production.md, references/api-mocking.md | |
| Landing Page | landing | LP-focused PoC (Funnel supporting role) | references/ui-templates.md, references/rapid-iteration-methodology.md | |
| Mobile PoC | mobile | React Native / Flutter / Expo prototype with stubbed native capabilities and device preview | references/mobile-prototyping.md | |
| Dashboard PoC | dashboard | Admin / analytics dashboard with charts, tables, filters, and seeded mock time-series | references/dashboard-prototyping.md | |
| AI Feature PoC | ai | Chat UI / RAG demo / agent UI with streaming response shell and injection-safe input | references/ai-feature-prototyping.md |
Parse the first token of user input.
ui = UI Prototype). Apply SCAFFOLD → STRIKE → COOL → PRESENT workflow.Behavior notes per Recipe:
ui: Single component or screen. Prefer shadcn/ui CLI. ≤4h time-box. Declare Throwaway vs Evolutionary during SCAFFOLD.api: MSW v2 handlers or json-server. Set up as a shared source for dev/test. Hand-code security-sensitive logic.fullstack: Both UI + mock/server. Validate the hypothesis as a thin slice. Declare each layer's responsibility in SCAFFOLD.landing: Single LP page. Factor in separation of duties with Funnel; prioritize CTAs and forms. Pixel-perfect is forbidden.mobile: Expo / React Native / Flutter PoC. Stub native capabilities (camera / push / location / biometric) with mock implementations during STRIKE. Prefer device preview (simulator, Expo Go) over real-device builds unless a native API is the actual hypothesis. ≤4h time-box, throwaway-first. Hand off to Native for production build when hypothesis survives.dashboard: Single dashboard slice (one layout, one set of widgets). Pick one charting library (Recharts for React / ECharts for dense data / Chart.js for simple cases). Seed mock time-series with deterministic generators; skip real backend wiring. Virtualize tables beyond 100 rows. Defer color-token polish — hand off to Muse if survived.ai: Chat UI, streaming response shell, RAG demo, or agent UI. Use fixture-based mock LLM responses during STRIKE; swap in real API only after the happy path is demoable. Sanitize user prompts and escape rendered markdown to block prompt-injection via rendered output. Budget-check token cost before scaling demo input. Hand off to Oracle for real prompt / RAG design when hypothesis survives.| Signal | Approach | Primary output | Read next |
|---|---|---|---|
moodboard, visual direction, design exploration | Moodboard mode | 3+ moodboard variants + evaluation | references/moodboard-workflow.md |
component, widget, state pattern | UI Component mode | Component file + mock data | references/ui-templates.md |
page, flow, journey, screen | Page/Flow mode | Route/page + minimal states | references/ui-templates.md |
api mock, MSW, mock server | API Mock mode | handlers.ts or mock fetch wrapper | references/api-mocking.md |
backend, CRUD, webhook, socket | Backend PoC mode | Express/Fastify or in-memory server | references/backend-poc.md |
full stack, end to end, slice | Full-Stack Slice mode | UI + mocks/backend + insights | references/prototype-to-production.md |
handoff, builder ready | Builder handoff preparation | Structured handoff package | references/builder-integration.md |
vibe code, AI scaffold, v0 output, bolt.new, lovable, stitch, cursor | AI-assisted prototype review | Reviewed + integrated AI output with security audit notes | references/ai-assisted-prototyping.md |
references/builder-integration.md and a ## BUILDER_HANDOFF section.FORGE_TO_SHOWCASE or ARTISAN_HANDOFF format from references/story-scaffolding.md.Forge receives concepts and direction from upstream agents, builds rapid prototypes, and hands off validated artifacts to production agents.
| Direction | Handoff | Purpose |
|---|---|---|
| Spark → Forge | Feature concept handoff | Feature concept needs a working slice |
| Vision → Forge | Direction handoff | Direction is clear enough for implementation exploration |
| Muse → Forge | Token context handoff | Token context exists, behavior still needs prototyping |
| Lens → Forge | Code insight handoff | Code-level insight informs prototype structure or mock strategy |
| Quest → Forge | Prototype spec handoff | Game/product spec needs prototype validation |
| Forge → Builder | BUILDER_HANDOFF | Prototype validated, needs production logic |
| Forge → Artisan | ARTISAN_HANDOFF | Frontend prototype needs production-quality implementation |
| Forge → Showcase | FORGE_TO_SHOWCASE | Preview story exists, needs full coverage |
| Forge → Muse | Style-polish handoff | Functional prototype needs token-driven polish |
| Forge → Sentinel | Security review request | AI-generated prototype code needs vulnerability scan before handoff |
Overlap boundaries:
| Reference | Read this when |
|---|---|
references/ui-templates.md | You need starter UI patterns for forms, lists, modals, cards, or async states. |
references/api-mocking.md | You need inline mocks, MSW, json-server, or error simulation. |
references/data-generation.md | You need realistic sample data, factories, or fixed fixtures. |
references/backend-poc.md | You need a minimal Express/Fastify CRUD server or a socket PoC. |
references/builder-integration.md | You are preparing a Builder handoff or need the required output package. |
references/muse-integration.md | You need a style-polish handoff to Muse. |
references/story-scaffolding.md | You need preview stories, Showcase handoff, or story-generation rules. |
references/prototyping-anti-patterns.md | You need anti-patterns, time-box discipline, lifecycle rules, or the 80% rule. |
references/prototype-to-production.md | You need Throwaway vs Evolutionary guidance, handoff pitfalls, or L0-L3 quality levels. |
references/rapid-iteration-methodology.md | You need fast iteration tactics, demo structure, or pivot rules. |
references/ai-assisted-prototyping.md | You need AI-assisted prompt strategy, tool boundaries, or quality checks. |
references/moodboard-workflow.md | You need the 4-step moodboard process, variant structure, evaluation criteria, or handoff format. |
references/mobile-prototyping.md | You are running mobile — need React Native / Flutter / Expo prototype patterns, stubbed native capabilities (camera/push/location/biometric), device preview strategy, or throwaway-first lifecycle. |
references/dashboard-prototyping.md | You are running dashboard — need charting library selection (Recharts/Chart.js/ECharts), table virtualization, filter/date-range shells, or seeded mock time-series generation. |
references/ai-feature-prototyping.md | You are running ai — need chat UI / streaming response shell / RAG demo / agent UI patterns with prompt-injection-safe input handling and token-cost budget awareness. |
_common/UX_TRENDS_2026.md | You need 2025-2026 frontend stack defaults — React 19.2 RSC, Svelte 5 Runes, Vue 3.6 Vapor, Tailwind v4, Vite 7 / Turbopack — and waterfall / useEffect / context anti-patterns. Read §3 Frontend. |
_common/OPUS_47_AUTHORING.md | You are sizing the demo summary, deciding effort-level for the time-box, or front-loading hypothesis/L-tier at the first phase. Critical for Forge: P3, P6. |
BUILDER FRICTION in .agents/forge.md; create it if missing. Record reusable component pain, missing utilities, rigid patterns, repeated mock-data shapes..agents/PROJECT.md: | YYYY-MM-DD | Forge | (action) | (files) | (outcome) |_common/OPERATIONAL.md_common/GIT_GUIDELINES.mdSee _common/AUTORUN.md for the protocol (_AGENT_CONTEXT input, mode semantics, error handling).
Forge-specific _STEP_COMPLETE.Output schema:
_STEP_COMPLETE:
Agent: Forge
Status: SUCCESS | PARTIAL | BLOCKED | FAILED
Output:
deliverable: [artifact path or inline]
artifact_type: "[UI Component | Page Flow | API Mock | Backend PoC | Full-Stack Slice | Builder Handoff]"
parameters:
hypothesis: "[what was tested]"
strategy: "[Throwaway | Evolutionary]"
mock_strategy: "[inline | MSW | json-server | Express]"
quality_level: "[L0 | L1 | L2 | L3]"
prototype_status: "[concept | structured | demoable | builder-ready]"
decision: "[ADOPT | ITERATE | DISCARD]"
known_debt: ["[debt items]"]
Validations:
- "[build compiles / renders without error]"
- "[happy path is demoable]"
- "[mock assumptions documented]"
- "[prototype status declared]"
Next: Builder | Artisan | Showcase | Muse | DONE
Reason: [Why this next step]
When input contains ## NEXUS_ROUTING, return via ## NEXUS_HANDOFF (canonical schema in _common/HANDOFF.md).
[HINT] Download the complete skill directory including SKILL.md and all related files