Skip to content

Commit 83dc9c6

Browse files
authored
docs: update README links and streamline research section (#23)
* docs: update README links and streamline research section - Fix broken/outdated documentation links - Update GitHub Spec Kit link to current Spec-Driven Development article - Update BDD, Vibe Spec, Context Engineering, and Spec-Then-Code links - Remove outdated sections (MCP Server details, solo dev flow) - Renumber research principles for clarity * chore: remove .cursor/mcp.json file
1 parent 9dd4f4c commit 83dc9c6

File tree

2 files changed

+11
-74
lines changed

2 files changed

+11
-74
lines changed

.cursor/mcp.json

Lines changed: 0 additions & 11 deletions
This file was deleted.

README.md

Lines changed: 11 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Gates: Spec → Impact → TDR → Implementation (no code before TDR approval).
6161

6262
## Research & Rationale
6363

64-
This framework is grounded in current best practices for **spec‑driven development** with AI coding agents. Below is a distilled summary of the sources we align to and the principles that inform the workflow.
64+
This framework is grounded in current best practices for **spec‑driven development** with AI coding agents. Below is a distilled summary of the sources directive took inspiration from and the principles that inform this workflow.
6565

6666
---
6767

@@ -72,100 +72,48 @@ This framework is grounded in current best practices for **spec‑driven develop
7272
- They drive planning, tasks, and validation.
7373
- GitHub’s **Spec Kit** formalizes this into a 4-phase loop: **Specify → Plan → Tasks → Implement**.
7474
- Specs aren’t static — they are executable artifacts that evolve with the codebase.
75-
🔗 [Spec Kit (GitHub Blog)](https://github.blog/news-insights/product-news/spec-kit/)
75+
🔗 [ Spec-Driven Development with AI](https://github.blog/ai-and-ml/generative-ai/spec-driven-development-with-ai-get-started-with-a-new-open-source-toolkit/)
7676

7777
---
7878

79-
### 2. Separate the Stable “What” from the Flexible “How”
80-
- Capture **what** the system must do in product terms (user outcomes, interfaces, acceptance criteria).
81-
- Keep **how** it is built flexible and expressed later in technical design docs.
82-
- Example: Kiro’s approach outputs `requirements.md`, `design.md`, and `tasks.md` separately.
83-
🔗 [Kiro: Spec-First Development](https://kirorun.notion.site/Kiro-Spec-First-Development-Docs)
84-
85-
---
86-
87-
### 3. Tie Every Requirement to a Test (“Executable Specs”)
79+
### 2. Tie Every Requirement to a Test (“Executable Specs”)
8880
- Every spec clause must map to a test, often written in **Given–When–Then** (BDD style).
8981
- Track **spec coverage** (all spec items tested) in addition to code coverage.
9082
- This ensures agents are judged against explicit requirements, not guesses.
91-
🔗 [Executable Specifications & BDD (Cucumber)](https://cucumber.io/docs/bdd/)
83+
🔗 [Executable Specifications & BDD (Cucumber)](https://cucumber.io/docs/)
9284

9385
---
9486

95-
### 4. Use the Agent to Draft the Spec, Humans to Edit
87+
### 3. Use the Agent to Draft the Spec, Humans to Edit
9688
- Approaches like **“Vibe Specs”** let the LLM propose the first draft through Q&A.
9789
- Humans then critique, clarify, and cut scope creep.
9890
- The refined spec becomes the north star for implementation.
99-
🔗 [Vibe Spec Method](https://vibespec.org/)
91+
🔗 [Vibe Spec Method](https://lukebechtel.com/blog/vibe-speccing/)
10092

10193
---
10294

103-
### 5. Practice “Context Engineering,” Not Just Prompting
95+
### 4. Practice “Context Engineering,” Not Just Prompting
10496
- Agents perform better when given **durable, file-based context packs**:
10597
- Rules/conventions
10698
- Example code patterns
10799
- Data contracts and schemas
108100
- Documentation links
109101
- Repos that include a **global rules file** plus examples see much higher fidelity.
110-
🔗 [Context Engineering (GitHub Copilot best practices)](https://github.blog/ai-and-ml/context-engineering-for-agents/)
102+
🔗 [Context Engineering (GitHub Copilot best practices)](https://github.blog/ai-and-ml/github-copilot/how-to-build-reliable-ai-workflows-with-agentic-primitives-and-context-engineering/)
111103

112104
---
113105

114-
### 6. Choose Method by Risk/Complexity; Enforce Verification
106+
### 5. Choose Method by Risk/Complexity; Enforce Verification
115107
- For low-risk features: lightweight specs may suffice.
116108
- For high-risk or complex builds: follow **Spec-Then-Code**, with rigorous review gates.
117109
- Use **multi-AI cross-review** or human checkpoints where the blast radius is large.
118-
🔗 [Spec-Then-Code Methodology](https://www.spec.dev/spec-then-code)
110+
🔗 [Spec-Then-Code Methodology](https://github.com/mosofsky/spec-then-code?utm_source=chatgpt.com)
119111

120112
---
121113

122-
### 7. Industry is Moving Toward Templates
114+
### 6. Industry is Moving Toward Templates
123115
- Beyond open-source tools, groups like **TM Forum** have published formal **AI Agent Specification Templates** for enterprise contexts.
124116
- Standardization is arriving, which signals the importance of shared spec formats.
125117
🔗 [TM Forum AI Agent Specification Template](https://www.tmforum.org/)
126118

127-
---
128-
129-
### 8. A Pragmatic Solo/Dev Flow Works Today
130-
- A repeatable loop many developers use:
131-
1. Brainstorm a spec
132-
2. Generate a step-by-step plan
133-
3. Execute with a codegen agent in **small, testable chunks**
134-
4. Keep artifacts checked into the repo (`spec.md`, `prompt_plan.md`, `todo.md`).
135-
🔗 [Solo Dev Spec Loop (Indie Hackers)](https://www.indiehackers.com/post/spec-driven-ai-development)
136-
137-
---
138-
139-
### Optional: MCP Server (probably not needed)
140-
141-
The MCP server provides programmatic access to templates and context files. **Most users won't need this** — agents work fine reading the `directive/` folder directly.
142-
143-
If you want to set it up anyway (works with Cursor or any MCP-compatible tool):
144-
145-
1. Create or update `.cursor/mcp.json` (or your IDE's equivalent):
146-
```json
147-
{
148-
"mcpServers": {
149-
"Directive": {
150-
"type": "stdio",
151-
"command": "/usr/bin/env",
152-
"args": ["-S", "uv", "run", "-q", "-m", "directive.cli", "mcp", "serve"],
153-
"transport": "stdio"
154-
}
155-
}
156-
}
157-
```
158-
159-
2. The server exposes these tools:
160-
- `directive/templates.spec`: Spec bundle (AOP, Agent Context, Spec template)
161-
- `directive/templates.impact`: Impact bundle
162-
- `directive/templates.tdr`: TDR bundle
163-
- `directive/files.get`: Read any file under `directive/`
164-
- `directive/files.list`: List all files under `directive/`
165-
166-
### Takeaway
167-
- Specs must be **concise, testable, and versioned**.
168-
- AI agents thrive when specs are paired with **context packs** and a **TDD-first workflow**.
169-
- The winning approach is not over-specifying implementation, but rigorously specifying **outcomes, contracts, and tests**.
170-
171119

0 commit comments

Comments
 (0)