New Project without Spec
Scenario: You have an idea, a feature request, or a general direction — but no written requirements. You want ForgeCraft to help you generate the spec before writing code.
This is the highest-leverage scenario for GS methodology: writing the spec first, even when it feels slower, prevents the most expensive rework.
Step 1 — Initialize the project
forgecraft_actions({
action: "setup_project",
project_dir: "/path/to/your-project"
})
This generates the scaffold including stub docs/PRD.md and docs/use-cases.md.
Step 2 — Describe your intent to the AI
In a Claude session with the project context loaded, describe what you want to build in plain language. Then ask:
“Using the GS methodology, help me fill out
docs/PRD.mdwith: numbered testable goals, explicit non-goals, and a constraints section. Then filldocs/use-cases.mdwith use cases in UC-NNN format.”
The AI will ask clarifying questions. Answer them fully — each question represents a decision that would otherwise be made implicitly (and likely incorrectly) during implementation.
Common AI clarifications and why they matter:
- “What should happen when [edge case]?” — Without an answer, the AI will invent a behavior
- “Is [feature X] in scope?” — Without an answer, the AI may implement it or not, unpredictably
- “What performance targets are required?” — Without a number, the AI has no gate to fail against
Step 3 — Write one ADR
Before running cascade, you need at least one Architecture Decision Record. Even for a new project, there are always decisions to record:
# ADR-0001: Technology Stack Selection
## Status
Accepted
## Context
Building [your project]. Need to choose primary language and framework.
## Decision
Use [language/framework] because [reasons].
## Consequences
[What this enables and what it constrains]
Save to docs/adr/0001-technology-stack.md.
Step 4 — Run cascade check
forgecraft_actions({
action: "check_cascade",
project_dir: "/path/to/your-project"
})
The cascade will tell you exactly what is still missing. Common blockers at this stage:
- PRD goals are too vague (“build a great app” is not testable)
- Use cases are still template placeholders
- Constraints section is empty
Fix each blocker. The cascade output is the spec quality gate.
Step 5 — Continue with loops
Once cascade passes, follow Steps 4–6 from New Project with Spec.
Smallest change that works
Before closing the change, check that it is the smallest one that does the job: nothing unnecessary added, no second copy of something that already exists, nothing left dead behind, and the structure where a reader would look for it. Smaller and ordered is cheaper to read and to change. This is a design principle of the method, not a measured result; see Smallest change that works.
The Spec Investment
Writing a complete spec before any code feels slow. In practice, a 1–2 hour spec session:
- Eliminates the most expensive class of rework (wrong feature, wrong API shape)
- Produces the test assertions before the code (TDD at the spec level)
- Creates the evaluation rubric that tells you when you’re done
The AX experiment separated a structured specification from unstructured use on structure and completeness (layer violations, files emitted). A strong expert prompt that restated the same obligations tied it on median quality in a single shot, so the claim is naive-to-disciplined, not GS over expert prompting.
When to Break This Rule
This recipe is appropriate when:
- Building something new where the requirements are negotiable
- You want AI to help clarify requirements, not just implement them
Use Brownfield: New Feature instead if:
- Adding to an existing system where the architecture is fixed
- The requirements are externally defined and non-negotiable