Designs system architecture and selects technology stack based on vision analysis. Use after vision analysis for technical decisions. Triggers on: design architecture, select tech stack, choose framework.
日本語の概要は準備中です。原文の説明を表示しています。
Converts PRDs to prd.json format for Aha Loop autonomous execution. Use when converting existing PRDs to JSON format. Triggers on: convert prd, create prd.json, aha-loop format.
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Converts existing PRDs to the prd.json format that Aha Loop uses for autonomous execution.
Take a PRD (markdown file or text) and convert it to prd.json in the scripts/aha-loop directory.
{
"version": 2,
"prdId": "[PRD-XXX from roadmap or PRD filename]",
"project": "[Project Name]",
"branchName": "aha-loop/[feature-name-kebab-case]",
"description": "[Feature description from PRD title/intro]",
"changeLog": [],
"userStories": [
{
"id": "US-001",
"title": "[Story title]",
"description": "As a [user], I want [feature] so that [benefit]",
"acceptanceCriteria": [
"Criterion 1",
"Criterion 2",
"Typecheck passes"
],
"priority": 1,
"passes": false,
"researchTopics": [
"Question about technology or best practice",
"Question about existing patterns"
],
"researchCompleted": false,
"learnings": "",
"implementationNotes": "",
"notes": ""
}
]
}
| Field | Purpose |
|---|---|
version | Schema version (always 2) |
prdId | PRD identifier (e.g., PRD-001) for commit message prefixes |
changeLog | Array of plan modifications made during execution |
researchTopics | Questions to investigate before implementing the story |
researchCompleted | Whether research phase is done for this story |
learnings | Knowledge gained during implementation (filled by Aha Loop) |
implementationNotes | Guidance from research phase for implementation |
Each story must be completable in ONE Aha Loop iteration (one context window).
Aha Loop spawns a fresh AI instance per iteration with no memory of previous work. If a story is too big, the LLM runs out of context before finishing and produces broken code.
Rule of thumb: If you cannot describe the change in 2-3 sentences, it is too big.
Stories execute in priority order. Earlier stories must not depend on later ones.
Correct order:
Wrong order:
Each criterion must be something the execution engine can CHECK, not something vague.
status column to tasks table with default 'pending'""Typecheck passes"
For stories with testable logic, also include:
"Tests pass"
"Verify in browser using dev-browser skill"
Frontend stories are NOT complete until visually verified. Aha Loop will use the dev-browser skill to navigate to the page, interact with the UI, and confirm changes work.
"version": 2passes: false, researchCompleted: false, empty notes, learnings, implementationNotesaha-loop/[]If a PRD has big features, split them:
Original:
"Add user notification system"
Split into:
Each is one focused change that can be completed and verified independently.
Input PRD:
# Task Status Feature
Add ability to mark tasks with different statuses.
## Requirements
- Toggle between pending/in-progress/done on task list
- Filter list by status
- Show status badge on each task
- Persist status in database
Output prd.json (v2):
{
"version": 2,
"prdId": "PRD-001",
"project": "TaskApp",
"branchName": "aha-loop/task-status",
"description": "Task Status Feature - Track task progress with status indicators",
"changeLog": [],
"userStories": [
{
"id": "US-001",
"title": "Add status field to tasks table",
"description": "As a developer, I need to store task status in the database.",
"acceptanceCriteria": [
"Add status column: 'pending' | 'in_progress' | 'done' (default 'pending')",
"Generate and run migration successfully",
"Typecheck passes"
],
"priority": 1,
"passes": false,
"researchTopics": [
"Best practices for enum columns in this database",
"Migration rollback strategies"
],
"researchCompleted": false,
"learnings": "",
"implementationNotes": "",
"notes": ""
},
{
"id": "US-002",
"title": "Display status badge on task cards",
"description": "As a user, I want to see task status at a glance.",
"acceptanceCriteria": [
"Each task card shows colored status badge",
"Badge colors: gray=pending, blue=in_progress, green=done",
"Typecheck passes",
"Verify in browser using dev-browser skill"
],
"priority": 2,
"passes": false,
"researchTopics": [
"Existing badge components in codebase",
"Accessible color schemes for status indicators"
],
"researchCompleted": false,
"learnings": "",
"implementationNotes": "",
"notes": ""
},
{
"id": "US-003",
"title": "Add status toggle to task list rows",
"description": "As a user, I want to change task status directly from the list.",
"acceptanceCriteria": [
"Each row has status dropdown or toggle",
"Changing status saves immediately",
"UI updates without page refresh",
"Typecheck passes",
"Verify in browser using dev-browser skill"
],
"priority": 3,
"passes": false,
"researchTopics": [],
"researchCompleted": false,
"learnings": "",
"implementationNotes": "",
"notes": ""
},
{
"id": "US-004",
"title": "Filter tasks by status",
"description": "As a user, I want to filter the list to see only certain statuses.",
"acceptanceCriteria": [
"Filter dropdown: All | Pending | In Progress | Done",
"Filter persists in URL params",
"Typecheck passes",
"Verify in browser using dev-browser skill"
],
"priority": 4,
"passes": false,
"researchTopics": [
"URL state management patterns in this codebase"
],
"researchCompleted": false,
"learnings": "",
"implementationNotes": "",
"notes": ""
}
]
}
Before writing a new prd.json, check if there is an existing one from a different feature:
prd.json if it existsbranchName differs from the new feature's branch nameprogress.txt has content beyond the header:
archive/YYYY-MM-DD-feature-name/prd.json and progress.txt to archiveprogress.txt with fresh headerThe aha-loop.sh script handles this automatically when you run it, but if you are manually updating prd.json between runs, archive first.
Before writing prd.json, verify:
researchTopicsresearchCompleted: false initiallychangeLog initialized as empty arrayWhen to add research topics:
When to skip research topics:
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Designs system architecture and selects technology stack based on vision analysis. Use after vision analysis for technical decisions. Triggers on: design architecture, select tech stack, choose framework.
日本語の概要は準備中です。原文の説明を表示しています。
Reviews and cleans up outdated documentation. Use periodically to maintain documentation health. Triggers on: review docs, clean up documentation, check for stale docs.
日本語の概要は準備中です。原文の説明を表示しています。
Guides God Committee members through consensus-building for collective decisions. Use for proposals, voting, and disagreement resolution. Triggers on: consensus, voting, proposal, committee decision.
日本語の概要は準備中です。原文の説明を表示しています。
Guides God Committee members through executing interventions. Use for repairs, rollbacks, and emergency actions. Triggers on: intervention, repair, rollback, emergency action.
日本語の概要は準備中です。原文の説明を表示しています。
Defines God Committee member behavior and responsibilities with oversight authority. Use when operating as a committee member. Triggers on: god committee, committee observation, council discussion.
日本語の概要は準備中です。原文の説明を表示しています。
Logs AI thoughts and decisions for human observability. Applies continuously throughout all tasks to maintain transparency.
日本語の概要は準備中です。原文の説明を表示しています。