Hype — Document-Driven Development
Hype enforces a strict development cycle: Plan → Document → Implement → Test → Repeat.
All tracking documents live in .hype/ at the project root.
No task advances without passing verification. This is the core invariant.
Documents
| File | Written by | Purpose |
|---|---|---|
.hype/IDEA.md | User (Claude appends when asked) | Freeform idea scratchpad. Not part of the hype cycle. Claude may append when the user says so (e.g., "put that in IDEA", "メモしてね"). Claude never edits or deletes existing entries. |
.hype/TODO.md | Claude (with user approval) | Phase-structured task plan. The user reads this to understand what Claude will do. |
.hype/PROGRESS.md | Claude | Append-only execution log. The user reads this to understand what Claude has done. |
.hype/KNOWLEDGE.md | Claude | Accumulated project knowledge. Read on session restart to restore context. |
Workflow Overview
INIT → PLAN (with user) → [ DOCUMENT → IMPLEMENT → TEST → UPDATE ] → COMPLETE
↑ |
└── fix & re-test ←────┘ (on failure)
Phase 1: Initialize
- Read
.hype/KNOWLEDGE.mdfirst if it exists — this restores context from previous sessions - Read
.hype/TODO.mdand.hype/PROGRESS.mdif they exist — resume from where things left off - If starting fresh:
- Create
.hype/directory - Create
.hype/TODO.md,.hype/PROGRESS.md,.hype/KNOWLEDGE.mdusing templates in references/document-templates.md - Create
.hype/IDEA.mdonly if the user requests it
- Create
- Detect project type:
- Code project: Identify language and build system from existing files. Set up the idiomatic test framework for that language if not already configured.
- Non-code project: Identify the domain (writing, design, research, etc.). Verification will use review checklists instead of automated tests (see Non-Code Adaptation below).
Phase 2: Plan (with user)
This phase is collaborative. Do not proceed without user confirmation.
- If
.hype/IDEA.mdexists, read it first. Propose incorporating relevant ideas into the plan (e.g., "IDEA.md にこれがあるけど、タスクに入れる?") - Discuss the user's goals, constraints, and preferences
- Break the work into phases, each containing discrete, verifiable tasks
- Each task must have:
- Clear acceptance criteria
- A defined verification approach (test, checklist, or review)
- Write to
.hype/TODO.mdusing the phase-structured format:
## Phase 1 — <phase name>
- [ ] P0: Task description — Acceptance: criteria — Test: approach
- [ ] P1: Task description — Acceptance: criteria — Test: approach
## Phase 2 — <phase name>
- [ ] P1: Task description — Acceptance: criteria — Test: approach
- Present the plan to the user and wait for approval
- Adjust tasks based on user feedback
- Only proceed after explicit user confirmation
Phase 3: Development Cycle
Execute for each task in order (phase by phase, priority within each phase):
Step 1 — Document
Select the next task. Update its status to [~] in .hype/TODO.md.
Before writing any code, append a "Started" entry to .hype/PROGRESS.md:
- What will be implemented and how
- Expected behavior, function signatures, or API surface
- Verification cases (inputs → expected outputs)
This serves as the specification for the implementation step.
Step 2 — Implement
Write the change based on the spec from Step 1. Keep changes focused on the single task.
If a task is larger than expected, stop and split it into subtasks in .hype/TODO.md before continuing.
Step 3 — Test
Write or update tests, then execute the full test suite.
- Tests must cover the acceptance criteria in
.hype/TODO.md - At minimum: happy path, one edge case, one error case
- Use the idiomatic test framework for the project's language
- For general testing guidance, see references/testing-workflows.md
Gate:
- All tests pass → proceed to Step 4
- Any test fails → diagnose, fix, re-run the full suite
- NEVER proceed with failing tests
Step 4 — Update
- Mark task
[x]in.hype/TODO.md - Update the entry in
.hype/PROGRESS.mdwith: files changed, test results, notes - If the task revealed reusable project knowledge (conventions, patterns, gotchas, architectural decisions), append to
.hype/KNOWLEDGE.md - Communicate progress to the user
- Return to Step 1 for the next task
Phase 4: Complete
When all tasks in .hype/TODO.md are [x]:
- Run the full test suite one final time
- Append a completion summary to
.hype/PROGRESS.md - Update
.hype/KNOWLEDGE.mdwith any final insights - Report to user: tasks completed, tests passing, remaining notes
Non-Code Adaptation
For non-code projects (writing, research, design, etc.), the cycle is the same but Step 3 adapts:
| Code project | Non-code project |
|---|---|
| Automated tests | Review checklist |
cargo test, pytest, etc. | Manual verification against criteria |
| Pass/fail binary | Checklist all items ✅ |
Example for a novel:
- [ ] P1: Write Chapter 3 — Acceptance: introduces antagonist, 2000-3000 words — Review: continuity with Ch.1-2, no plot holes, consistent character voice
The gate still applies: all checklist items must pass before moving on.
Rules
- NEVER skip verification. Every change requires tests or a review checklist.
- NEVER mark a task
[x]unless verification passes. - ALWAYS document before implementing.
- ALWAYS update
.hype/TODO.mdand.hype/PROGRESS.mdafter each task. - ALWAYS run the full test suite, not just new tests.
- ALWAYS confirm the plan with the user before starting.
- ALWAYS read
.hype/KNOWLEDGE.mdat session start. .hype/TODO.mdis the single source of truth for remaining work..hype/PROGRESS.mdis append-only — never modify existing entries..hype/IDEA.mdis user-owned — append only when the user explicitly asks. Never edit or delete existing entries..hype/KNOWLEDGE.mdis updated when tasks reveal reusable project knowledge.- If a task needs splitting, split it in
.hype/TODO.mdbefore implementing. - When the user adds a new request mid-cycle, add it as new tasks in
.hype/TODO.md— do not abandon the current workflow. - Communicate current task and progress at each step boundary.