Forge Project Plan 2 — Definition Phase Skills
Scope: Create the Phase template and the 4 skills for the definition phases: Requirements, Research, Spec, and Plan (Project_Create_Plan). All skills must create and update the Phase document.
Spec: Forge Project Spec
Prior plan: Plan 1 — Templates & Foundation
Task 1 — Create the Phase_Template.md and Update Project_Create Skill
The Phase document tracks the project’s current phase (Spec §3.3). It must be created alongside README and AGENTS in Create, and updated by every project skill at phase transitions.
- Create
Forge/Skills/Project_Create/templates/Phase_Template.mdwith the structure defined in Spec §3.3:- YAML frontmatter (6 required fields)
- H1 with project title
- Human-readable header table mirroring frontmatter
Phase: CreateStartedas the initial value
- Update
Forge/Skills/Project_Create/SKILL.md:- Add Step 3a: Create
{Project}_Phase.mdfromPhase_Template.mdbetween README and AGENTS creation - Add sidebar entry for Phase.md
- Update Rules section to mention Phase.md as a minimum viable project file alongside README and AGENTS
- Add Step 3a: Create
- Update
Forge/Skills/Project_Flow/SKILL.md:- Replace the document-existence-based Phase Detection table with Phase-document-based detection
- The Phase value
{PhaseName}_Started/{PhaseName}_Completeddirectly indicates the current phase - Example:
Phase: RequirementsCompleted→ next action is Research;Phase: ResearchStarted→ continue Research - Add rule: always read the Phase document first to determine the current phase
- Add sidebar entry for Phase_Template in
.internal/astro.config.mjs - Run
cd .internal && npm run buildto verify - Commit
Task 2 — Create the Project_Requirements Skill
Requirements skill. Guides the agent through organizing user input into the Requirements document format.
Create Forge/Skills/Project_Requirements/SKILL.md with:
- When to Use: When a project exists (Create complete) and needs its Requirements defined.
- Inputs: Project path, user-provided vision/problem statement and requirements
- Procedure:
- Read the user’s input (vision/problem, requirements, constraints)
- Copy
Forge/Skills/Project_Create/templates/Requirements_Template.mdto{Dept}/Projects/{Project}/{Project}_Requirements.md - Fill in the template: Vision or Problem section, Background (if needed), numbered Requirements (R1, R2…), Success Criteria table (V1, V2… — one per requirement), Out of Scope
- Present the draft to the user for review and iterate
- Update README.md and AGENTS.md to reference the Requirements doc
- Update
{Project}_Phase.md: setPhase: RequirementsStartedat the start,Phase: RequirementsCompletedwhen done - Add sidebar entry, build, commit
- Rules:
- The user is the primary author; the agent organizes, clarifies, and augments
- Requirements are brief and problem-focused — state what is needed, not how
- Undecided items are permitted — they are resolved during Research
- Each Requirement gets a matching Verification Criterion
- Once Plans exist, existing requirements must not be renumbered or removed — retired requirements are annotated
[Not required], new ones appended
Task 3 — Create the Project_Research Skill
Research skill. Investigates implementation options, presents decision points, and records findings.
Create Forge/Skills/Project_Research/SKILL.md with:
- When to Use: When Requirements are approved and implementation options need to be investigated.
- Inputs: Project path, Requirements document
- Procedure:
- Read the Requirements document
- Copy
Forge/Skills/Project_Create/templates/Research_Template.mdto{Dept}/Projects/{Project}/{Project}_Research.md - For each requirement or group of related requirements that need investigation:
- Research implementation options (web search, docs, existing codebase)
- Document findings, options with pros/cons, and a recommendation
- Mark the Decision subsection as pending user approval
- Present all decision points to the user for review
- Record user decisions with “Decided by: @name — date” attribution
- All decisions must be approved before proceeding to Spec phase
- Update
{Project}_Phase.md: setPhase: ResearchStartedat the start,Phase: ResearchCompletedwhen done - Add sidebar entry, build, commit
- Rules:
- Research is historical/append-only — never replace existing sections
- When decisions change, append a dated revision note
- Decision points must be clearly marked and easy to review
- Each decision records who decided and when
- If a requirement has an obvious solution with no alternatives, document it briefly and mark as decided
Task 4 — Create the Project_Spec Skill
Spec skill. Converts approved Research decisions into a declarative Spec document.
Create Forge/Skills/Project_Spec/SKILL.md with:
- When to Use: When all Research decisions are approved and the project needs a Spec.
- Inputs: Project path, Requirements document, Research document
- Procedure:
- Read Requirements and Research documents
- Verify all decision points in Research are resolved (no pending decisions)
- Copy
Forge/Skills/Project_Create/templates/Spec_Template.mdto{Dept}/Projects/{Project}/{Project}_Spec.md - Write the Spec as a declarative description of the ideal final state, organized by major areas
- Validate: every Requirement is addressed, the Spec is self-contained (a reader can understand the target system from it alone), it describes what not how
- Present to user for approval
- Update
{Project}_Phase.md: setPhase: SpecStartedat the start,Phase: SpecCompletedwhen done - Update README.md and AGENTS.md
- Add sidebar entry, build, commit
- Rules:
- Declarative, not procedural — describes what the system is, not the steps to build it
- Self-contained — a reader can understand the target system from the Spec alone
- May reference specific Research sections when procedural rationale is important
- Updated retroactively when evaluation reveals necessary deviations (it’s evergreen)
- Can be repurposed as permanent documentation after project completion
Task 5 — Create the Project_Create_Plan Skill
Plan skill (
Project_Create_Plan). Breaks the Spec into one or more atomic Plans, each implementable in a single agent session.
Create Forge/Skills/Project_Create_Plan/SKILL.md with:
- When to Use: When a Spec is approved and needs to be broken into implementable Plans.
- Inputs: Project path, Requirements document, Research document, Spec document
- Procedure:
- Read Requirements, Research, and Spec
- Identify natural breakpoints — the Spec should decompose into units that can each be completed in a single focused agent session
- For each Plan:
- Copy
Forge/Skills/Project_Create/templates/Plan_Template.mdto{Dept}/Projects/{Project}/{Project}_Plan_{Qualifier}.md - Name by phase or feature:
Plan_Spec,Plan_Authentication, etc. - Write Tasks with enough context that the implementing agent never needs to consult Requirements, Research, or Spec (the self-containment rule)
- Include any relevant content from Research that the Spec references
- Copy
- Validate self-containment: for each Plan, verify an agent could implement it with only the Plan, State, and WIP
- Present Plans to user for approval
- Update
{Project}_Phase.md: setPhase: PlanStartedat the start,Phase: PlanCompletedwhen done - Add sidebar entries, build, commit
- Rules:
- Each Plan must be implementable in a single focused agent session
- Plans are self-contained: the implementing agent reads only Plan + State + WIP
- Plans do not contain checkboxes — that’s the State’s role
- Plans are frozen once implementation begins — corrections produce new State tasks, not Plan edits
- Later Plans are tentative and may be revised based on evaluation of earlier Plans
Task 6 — Sidebar and Index Registration
Register all 4 new skills plus the Phase template.
- Add
Project_Requirements,Project_Research,Project_Spec,Project_Create_PlantoForge/Skills/index.md - Add all 4 to the Skills List in
Forge/Configs/FORGE.md(alphabetical order) - Add sidebar entries in
.internal/astro.config.mjsfor the 4 skills and the Phase template - Run
cd .internal && npm run buildto verify - Commit all files together