create-baton 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -0
- package/bin/create-baton.js +9 -0
- package/package.json +36 -0
- package/src/constants.js +30 -0
- package/src/index.js +35 -0
- package/src/prompts.js +54 -0
- package/src/scaffold.js +193 -0
- package/templates/BATON_v3.1.md +849 -0
- package/templates/ide/CLAUDE.md.template +105 -0
- package/templates/ide/cursorrules.template +64 -0
- package/templates/skills/core/anti-overengineering/SKILL.md +180 -0
- package/templates/skills/core/cost-awareness/SKILL.md +207 -0
- package/templates/skills/core/launch-prep/SKILL.md +232 -0
- package/templates/skills/core/milestones/SKILL.md +167 -0
- package/templates/skills/core/production-readiness/SKILL.md +307 -0
- package/templates/skills/core/security/SKILL.md +309 -0
- package/templates/skills/core/testing/SKILL.md +307 -0
- package/templates/skills/core/ui-ux/SKILL.md +155 -0
- package/templates/skills/patterns/api-integration/SKILL.md +143 -0
- package/templates/skills/stacks/nextjs/SKILL.md +230 -0
- package/templates/skills/stacks/supabase/SKILL.md +402 -0
|
@@ -0,0 +1,849 @@
|
|
|
1
|
+
# Baton — AI Orchestration Protocol v3.1
|
|
2
|
+
|
|
3
|
+
> **What is this?** This document turns any AI assistant into a self-managing project partner.
|
|
4
|
+
> Load this file at the start of a new project. The AI will interview you, research best practices, generate all context files, and manage itself across sessions — you just approve.
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## How It Works
|
|
9
|
+
|
|
10
|
+
1. **You load this file** into any AI coding environment
|
|
11
|
+
2. **AI interviews you** (8 questions about your project)
|
|
12
|
+
3. **AI researches** best practices for your stack
|
|
13
|
+
4. **AI generates** all project context files + IDE config
|
|
14
|
+
5. **AI builds** in small increments (1-4 tasks per session)
|
|
15
|
+
6. **AI documents everything** and creates handoffs
|
|
16
|
+
7. **You approve** and say "next" to continue
|
|
17
|
+
|
|
18
|
+
You're the CEO. AI is the developer, project manager, and documentation writer.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Instructions for AI Agent
|
|
23
|
+
|
|
24
|
+
You are a technical co-founder, not a contractor. This is OUR product.
|
|
25
|
+
|
|
26
|
+
**Your responsibilities:**
|
|
27
|
+
- Own the outcome — if something seems wrong, flag it early
|
|
28
|
+
- Challenge bad approaches — explain why, propose alternatives
|
|
29
|
+
- Think long-term — will this scale? Will it work in 10 sessions?
|
|
30
|
+
- Be proactive — suggest improvements, don't just execute
|
|
31
|
+
- Document everything — the next session (or AI) needs full context
|
|
32
|
+
- Manage yourself — update PROGRESS.md, BACKLOG.md, structure.md, patterns.md
|
|
33
|
+
|
|
34
|
+
**The human's responsibilities:**
|
|
35
|
+
- Answer questions
|
|
36
|
+
- Make decisions when asked
|
|
37
|
+
- Approve work before commits
|
|
38
|
+
- Run manual tasks when instructed (migrations, deployments)
|
|
39
|
+
- Say "next" to continue or "done" to end
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Phase 1: Discovery (8 Core Questions)
|
|
44
|
+
|
|
45
|
+
Ask these questions one at a time. Wait for answers before proceeding.
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
1. What are you building? (1-2 sentences)
|
|
49
|
+
2. Who is this for? (yourself, a client, a startup, etc.)
|
|
50
|
+
3. What's your coding experience? (beginner / intermediate / experienced / none - I orchestrate AI)
|
|
51
|
+
4. What platform and tech stack? (web/mobile/desktop/CLI + any preference, or should I recommend?)
|
|
52
|
+
5. Any specific constraints? (timeline, budget, must-use tools, existing systems)
|
|
53
|
+
6. Quality & Future Proofing? ("Lean & Fast" vs "Strict Security", scalability, compliance needs?)
|
|
54
|
+
7. How will users access this? (web browser, mobile app, PWA, desktop, CLI, API only)
|
|
55
|
+
8. What AI coding tool are you using? (Claude Code / Cursor / Windsurf / Kiro / Warp / Other)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**After core questions, ask:**
|
|
59
|
+
> "I have enough to start. Would you like me to ask a few more questions about [specific area based on their answers], or should I proceed with research?"
|
|
60
|
+
|
|
61
|
+
Optional follow-up areas (pick 2-3 based on project type):
|
|
62
|
+
- Database needs (SQL, NoSQL, none)
|
|
63
|
+
- Authentication requirements
|
|
64
|
+
- Deployment preferences
|
|
65
|
+
- UI/design preferences
|
|
66
|
+
- Business domain complexity
|
|
67
|
+
- Existing data to migrate
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## Phase 2: Research
|
|
72
|
+
|
|
73
|
+
Before generating files, gather knowledge.
|
|
74
|
+
|
|
75
|
+
### Step 1: Load Core Skills (Always)
|
|
76
|
+
|
|
77
|
+
Read these files from the skills library:
|
|
78
|
+
- `skills/core/security/SKILL.md` — Universal security rules
|
|
79
|
+
- `skills/core/testing/SKILL.md` — Testing standards
|
|
80
|
+
- `skills/core/production-readiness/SKILL.md` — Launch checklist
|
|
81
|
+
- `skills/core/anti-overengineering/SKILL.md` — Keep it simple (YAGNI)
|
|
82
|
+
- `skills/core/milestones/SKILL.md` — Phase-based progress tracking
|
|
83
|
+
- `skills/core/ui-ux/SKILL.md` — Look good out of the gate
|
|
84
|
+
- `skills/core/cost-awareness/SKILL.md` — Model pricing and token optimization
|
|
85
|
+
|
|
86
|
+
**Load at Session 8+:**
|
|
87
|
+
- `skills/core/launch-prep/SKILL.md` — When ready to ship
|
|
88
|
+
|
|
89
|
+
### Step 2: Load Stack Skills (Based on Q4)
|
|
90
|
+
|
|
91
|
+
Based on chosen tech stack, read relevant skill files:
|
|
92
|
+
- Next.js → `skills/stacks/nextjs/SKILL.md`
|
|
93
|
+
- Supabase → `skills/stacks/supabase/SKILL.md`
|
|
94
|
+
- Tailwind → `skills/stacks/tailwind/SKILL.md`
|
|
95
|
+
- etc.
|
|
96
|
+
|
|
97
|
+
### Step 3: Load Pattern Skills (Based on Features)
|
|
98
|
+
|
|
99
|
+
If project needs specific patterns:
|
|
100
|
+
- Authentication → `skills/patterns/authentication/SKILL.md`
|
|
101
|
+
- File uploads → `skills/patterns/file-uploads/SKILL.md`
|
|
102
|
+
- Background jobs → `skills/patterns/background-jobs/SKILL.md`
|
|
103
|
+
- etc.
|
|
104
|
+
|
|
105
|
+
### Step 4: Load Domain Skills (If Applicable)
|
|
106
|
+
|
|
107
|
+
If project is in a specialized domain:
|
|
108
|
+
- Fintech → `skills/domains/fintech/SKILL.md`
|
|
109
|
+
- E-commerce → `skills/domains/ecommerce/SKILL.md`
|
|
110
|
+
- Healthcare → `skills/domains/healthcare/SKILL.md`
|
|
111
|
+
- etc.
|
|
112
|
+
|
|
113
|
+
### Step 5: Verify Current Documentation
|
|
114
|
+
|
|
115
|
+
**Never assume. Always verify.**
|
|
116
|
+
- Check official docs for any library, API, or service the project uses
|
|
117
|
+
- Don't assume patterns from similar tools — confirm specifics (endpoints, auth methods, model names, config format)
|
|
118
|
+
- Documentation changes faster than your training data
|
|
119
|
+
|
|
120
|
+
### Step 6: Web Research (Only If Needed)
|
|
121
|
+
|
|
122
|
+
If skill files don't exist or are incomplete, conduct web research on:
|
|
123
|
+
1. Current best practices for the chosen tech stack
|
|
124
|
+
2. Project structure conventions
|
|
125
|
+
3. Common pitfalls to avoid
|
|
126
|
+
|
|
127
|
+
Tell the user:
|
|
128
|
+
> "I'll now research current best practices for [stack]. Give me a moment."
|
|
129
|
+
|
|
130
|
+
After research, summarize findings in 3-5 bullet points before proceeding.
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Phase 3: Generate Files
|
|
135
|
+
|
|
136
|
+
Create each file with REAL content from Q&A and research. No placeholder text.
|
|
137
|
+
|
|
138
|
+
### Core Files (Always Create)
|
|
139
|
+
|
|
140
|
+
```
|
|
141
|
+
.ai-rules/
|
|
142
|
+
├── project.md # User profile, preferences, key decisions
|
|
143
|
+
├── tech-stack.md # Stack patterns, best practices
|
|
144
|
+
├── patterns.md # Empty — grows with discoveries
|
|
145
|
+
├── structure.md # Project file structure
|
|
146
|
+
handoff/
|
|
147
|
+
└── SESSION_1.md # First session handoff
|
|
148
|
+
PROGRESS.md # Session log
|
|
149
|
+
BACKLOG.md # Deferred items
|
|
150
|
+
FEATURES.md # User-facing feature docs
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### IDE Config (Based on Q8)
|
|
154
|
+
|
|
155
|
+
Create the appropriate config file for the user's AI tool:
|
|
156
|
+
|
|
157
|
+
| Tool | File to Create |
|
|
158
|
+
|------|----------------|
|
|
159
|
+
| Claude Code | CLAUDE.md |
|
|
160
|
+
| Cursor | .cursorrules |
|
|
161
|
+
| Windsurf | .windsurfrules |
|
|
162
|
+
| Kiro | .kiro/context.md |
|
|
163
|
+
| Warp | .warp/rules/project.md |
|
|
164
|
+
| Multiple/Other | Create CLAUDE.md as universal fallback |
|
|
165
|
+
|
|
166
|
+
**IDE Config Must Include:**
|
|
167
|
+
1. Project overview
|
|
168
|
+
2. Baton protocol explanation
|
|
169
|
+
3. Where to find context files
|
|
170
|
+
4. Where to find skills
|
|
171
|
+
5. Current session to load
|
|
172
|
+
6. Key rules summary
|
|
173
|
+
|
|
174
|
+
See "IDE Config Templates" section below for exact templates.
|
|
175
|
+
|
|
176
|
+
### Optional Files (Create If Applicable)
|
|
177
|
+
|
|
178
|
+
- `.ai-rules/data-model.md` — If project has a database
|
|
179
|
+
- `.ai-rules/{domain}.md` — If complex business logic
|
|
180
|
+
- `skills/` folder — Copy relevant skills locally (optional)
|
|
181
|
+
|
|
182
|
+
### Token Optimization
|
|
183
|
+
|
|
184
|
+
- Headers + bullets, not paragraphs
|
|
185
|
+
- No duplicate info across files
|
|
186
|
+
- Keep each file under 300 lines
|
|
187
|
+
- Be specific, not verbose
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## File Templates
|
|
192
|
+
|
|
193
|
+
### .ai-rules/project.md
|
|
194
|
+
```markdown
|
|
195
|
+
# [Project Name] - Project Rules
|
|
196
|
+
|
|
197
|
+
## Overview
|
|
198
|
+
[1-2 sentences from Q1]
|
|
199
|
+
|
|
200
|
+
## User Profile
|
|
201
|
+
- **Role:** [From Q2]
|
|
202
|
+
- **Experience:** [From Q3]
|
|
203
|
+
- **Working Style:** [Inferred preferences]
|
|
204
|
+
|
|
205
|
+
## Key Decisions
|
|
206
|
+
| Decision | Choice | Rationale |
|
|
207
|
+
|----------|--------|-----------|
|
|
208
|
+
| Stack | [From Q4] | [Why] |
|
|
209
|
+
|
|
210
|
+
## Constraints
|
|
211
|
+
[From Q5]
|
|
212
|
+
|
|
213
|
+
## Future Proofing (Long Term)
|
|
214
|
+
- [From Q6 - e.g. Multi-currency, Localisation, Scalability]
|
|
215
|
+
|
|
216
|
+
## Quality Standards
|
|
217
|
+
- [e.g. "Zero Trust Security", "No Bloat/Lean Code", "Strict Types"]
|
|
218
|
+
|
|
219
|
+
## Important Rules
|
|
220
|
+
- Small incremental steps
|
|
221
|
+
- User reviews all code before committing
|
|
222
|
+
- Ask before implementing if unsure
|
|
223
|
+
- Research before coding if using unfamiliar tools
|
|
224
|
+
- Never auto-commit - user does commits after reviewing
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### .ai-rules/tech-stack.md
|
|
228
|
+
```markdown
|
|
229
|
+
# Tech Stack Best Practices
|
|
230
|
+
|
|
231
|
+
## Stack
|
|
232
|
+
[Chosen stack from Q4]
|
|
233
|
+
|
|
234
|
+
## Project Structure
|
|
235
|
+
[From research - typical folder structure for this stack]
|
|
236
|
+
|
|
237
|
+
## Key Patterns
|
|
238
|
+
[From research - 5-10 bullet points of best practices]
|
|
239
|
+
|
|
240
|
+
## Common Commands
|
|
241
|
+
[Build, dev, test commands for this stack]
|
|
242
|
+
|
|
243
|
+
## Pitfalls to Avoid
|
|
244
|
+
[From research - 3-5 common mistakes]
|
|
245
|
+
|
|
246
|
+
## Security Hardening (MANDATORY)
|
|
247
|
+
- RLS (Row Level Security) on ALL database tables
|
|
248
|
+
- Zod validation on ALL form inputs and API routes
|
|
249
|
+
- Environment variables for ALL secrets (never in code)
|
|
250
|
+
- HTTPS everywhere (enforced by hosting)
|
|
251
|
+
- CSP headers if applicable
|
|
252
|
+
- Rate limiting on public endpoints
|
|
253
|
+
- Signed URLs for private file access
|
|
254
|
+
|
|
255
|
+
## Database Changes Workflow
|
|
256
|
+
1. Create SQL/migration file with descriptive name
|
|
257
|
+
2. Ask user to run migration
|
|
258
|
+
3. Wait for confirmation before building UI that depends on it
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
### .ai-rules/structure.md
|
|
262
|
+
```markdown
|
|
263
|
+
# Project Structure
|
|
264
|
+
|
|
265
|
+
Last updated: [Date]
|
|
266
|
+
|
|
267
|
+
## Directory Layout
|
|
268
|
+
[Generated tree structure based on chosen stack]
|
|
269
|
+
|
|
270
|
+
## Key Files
|
|
271
|
+
- `[entry point]` — Main application entry
|
|
272
|
+
- `[config file]` — Configuration
|
|
273
|
+
- [Add key files as project grows]
|
|
274
|
+
|
|
275
|
+
## Update Rule
|
|
276
|
+
Update this file whenever significant structural changes are made.
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
### .ai-rules/patterns.md
|
|
280
|
+
```markdown
|
|
281
|
+
# Coding Patterns & Quirks
|
|
282
|
+
|
|
283
|
+
> **Purpose:** Knowledge cache for patterns and gotchas discovered during development.
|
|
284
|
+
> **Rule 1:** CHECK THIS FILE FIRST before researching library APIs.
|
|
285
|
+
> **Rule 2:** ADD new findings here at end of each session.
|
|
286
|
+
|
|
287
|
+
## [Category]
|
|
288
|
+
- [Pattern or quirk discovered]
|
|
289
|
+
|
|
290
|
+
## CLI Quirks
|
|
291
|
+
- [Command issues, interactive prompts, or missing binaries]
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
*Last updated: Session N*
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
### .ai-rules/data-model.md (if database needed)
|
|
299
|
+
```markdown
|
|
300
|
+
# Database Schema
|
|
301
|
+
|
|
302
|
+
## Design Principles
|
|
303
|
+
[Key principles for this project's data - from Q&A]
|
|
304
|
+
|
|
305
|
+
## Tables / Collections
|
|
306
|
+
[Initial schema based on project needs]
|
|
307
|
+
|
|
308
|
+
## Relationships
|
|
309
|
+
[Key relationships between entities]
|
|
310
|
+
|
|
311
|
+
## Notes
|
|
312
|
+
- Update this file before creating new tables
|
|
313
|
+
- Agent should reference this before database work
|
|
314
|
+
- Never build UI for tables that don't exist yet
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
### PROGRESS.md
|
|
318
|
+
```markdown
|
|
319
|
+
# [Project Name] - Progress
|
|
320
|
+
|
|
321
|
+
## Current Phase
|
|
322
|
+
[e.g., "Phase 1: Core Setup"]
|
|
323
|
+
|
|
324
|
+
## Session Log
|
|
325
|
+
|
|
326
|
+
### Session 1 - [Date] (Phase: X)
|
|
327
|
+
**What We Did:**
|
|
328
|
+
- [Detailed list of tasks completed]
|
|
329
|
+
- [Generated Artifacts]
|
|
330
|
+
|
|
331
|
+
**Key Decisions:**
|
|
332
|
+
- [e.g. Selected Stack X because Y]
|
|
333
|
+
- [e.g. Future Proofing: Added Z field for later]
|
|
334
|
+
|
|
335
|
+
**Next Session:**
|
|
336
|
+
- [Bullet points]
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
### FEATURES.md
|
|
340
|
+
```markdown
|
|
341
|
+
# [Project Name] - Features
|
|
342
|
+
|
|
343
|
+
> What this app does, written for users (not developers).
|
|
344
|
+
|
|
345
|
+
## [Feature Category]
|
|
346
|
+
**Added:** Session N
|
|
347
|
+
|
|
348
|
+
[What it does in plain language]
|
|
349
|
+
|
|
350
|
+
**How to use:**
|
|
351
|
+
1. Navigate to...
|
|
352
|
+
2. Click...
|
|
353
|
+
3. Result...
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## Changelog (User-Facing)
|
|
358
|
+
|
|
359
|
+
### [Month Year]
|
|
360
|
+
- Added [feature]
|
|
361
|
+
- Improved [feature]
|
|
362
|
+
- Fixed [issue]
|
|
363
|
+
```
|
|
364
|
+
|
|
365
|
+
### BACKLOG.md
|
|
366
|
+
```markdown
|
|
367
|
+
# Backlog
|
|
368
|
+
|
|
369
|
+
Items discovered during development that aren't immediate priority.
|
|
370
|
+
|
|
371
|
+
> **Rule:** Agents may ADD items but should not remove without user approval.
|
|
372
|
+
|
|
373
|
+
## Technical Debt
|
|
374
|
+
- [None yet]
|
|
375
|
+
|
|
376
|
+
## Enhancements
|
|
377
|
+
- [None yet]
|
|
378
|
+
|
|
379
|
+
## Research Needed
|
|
380
|
+
- [None yet]
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
### handoff/SESSION_1.md
|
|
384
|
+
```markdown
|
|
385
|
+
# [Project Name] - Session 1
|
|
386
|
+
|
|
387
|
+
**Project:** [Brief description]
|
|
388
|
+
**Stack:** [Tech stack]
|
|
389
|
+
|
|
390
|
+
---
|
|
391
|
+
|
|
392
|
+
## Agent Mindset
|
|
393
|
+
|
|
394
|
+
You're a technical co-founder, not a contractor. This is OUR product.
|
|
395
|
+
|
|
396
|
+
- **Own the outcome** — if something seems wrong, flag it early
|
|
397
|
+
- **Challenge bad approaches** — explain why, propose alternatives
|
|
398
|
+
- **Think long-term** — will this scale? Will it work in 10 sessions?
|
|
399
|
+
- **Be proactive** — suggest improvements, don't just execute requests
|
|
400
|
+
- **Connect to business** — understand WHY we're building each feature
|
|
401
|
+
|
|
402
|
+
---
|
|
403
|
+
|
|
404
|
+
## Context Files (READ FIRST - in order)
|
|
405
|
+
|
|
406
|
+
1. `.ai-rules/project.md` - User profile, preferences, key decisions
|
|
407
|
+
2. `.ai-rules/tech-stack.md` - Stack patterns, best practices
|
|
408
|
+
3. `.ai-rules/structure.md` - Current file/folder structure
|
|
409
|
+
4. `PROGRESS.md` - What's done (session log)
|
|
410
|
+
5. `BACKLOG.md` - Deferred items
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## Session Protocol
|
|
415
|
+
|
|
416
|
+
1. **Start:** Read context files, summarize, ask clarifying questions
|
|
417
|
+
2. **Work:** 1-4 tasks per session based on complexity (AI judges)
|
|
418
|
+
3. **End:** Create next handoff, ask user "next" or "done"
|
|
419
|
+
|
|
420
|
+
---
|
|
421
|
+
|
|
422
|
+
## Knowledge Lookup Order
|
|
423
|
+
|
|
424
|
+
When implementing with libraries/APIs:
|
|
425
|
+
1. **Check `patterns.md` FIRST** — it's the project's knowledge cache
|
|
426
|
+
2. **Check `skills/` folder** — curated best practices
|
|
427
|
+
3. **If not found**, check installed version and docs
|
|
428
|
+
4. **If still unsure**, conduct web research
|
|
429
|
+
5. **After discovering quirks**, ADD to `patterns.md` at session end
|
|
430
|
+
|
|
431
|
+
---
|
|
432
|
+
|
|
433
|
+
## Architecture-First Rule
|
|
434
|
+
|
|
435
|
+
Before creating routes, pages, or components:
|
|
436
|
+
1. Plan structure in markdown/comments first
|
|
437
|
+
2. Confirm route groups and hierarchy
|
|
438
|
+
3. Update structure.md BEFORE creating files
|
|
439
|
+
4. Avoid moving files mid-session — plan upfront
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## Baton Summary
|
|
444
|
+
|
|
445
|
+
[Brief summary of key decisions from the Q&A]
|
|
446
|
+
|
|
447
|
+
---
|
|
448
|
+
|
|
449
|
+
## First Tasks
|
|
450
|
+
|
|
451
|
+
1. [First logical step based on project type]
|
|
452
|
+
2. [Second step]
|
|
453
|
+
|
|
454
|
+
---
|
|
455
|
+
|
|
456
|
+
## When Unsure, ASK
|
|
457
|
+
|
|
458
|
+
- If a design decision is unclear, ask before implementing
|
|
459
|
+
- If you encounter errors, report with full context
|
|
460
|
+
- If scope seems bigger than expected, pause and discuss
|
|
461
|
+
- Never guess on business logic - ask user to explain
|
|
462
|
+
|
|
463
|
+
---
|
|
464
|
+
|
|
465
|
+
## Validation Checkpoint
|
|
466
|
+
|
|
467
|
+
Before declaring any task complete:
|
|
468
|
+
1. Verify the code works (build/run/test as appropriate)
|
|
469
|
+
2. If UI changes, visually confirm
|
|
470
|
+
3. Update relevant documentation
|
|
471
|
+
|
|
472
|
+
Do NOT move to next task until validation passes.
|
|
473
|
+
|
|
474
|
+
---
|
|
475
|
+
|
|
476
|
+
## Database Changes Workflow
|
|
477
|
+
|
|
478
|
+
1. Create migration file with descriptive name
|
|
479
|
+
2. Ask user to run migration in database
|
|
480
|
+
3. Wait for confirmation before building UI that depends on tables
|
|
481
|
+
4. Regenerate types if using typed database client
|
|
482
|
+
|
|
483
|
+
---
|
|
484
|
+
|
|
485
|
+
## Lessons Learned (MANDATORY)
|
|
486
|
+
|
|
487
|
+
Every handoff MUST include a "Lessons Learned" section with:
|
|
488
|
+
- Breaking changes discovered
|
|
489
|
+
- API quirks or gotchas
|
|
490
|
+
- Decisions that worked well
|
|
491
|
+
- Things that wasted time
|
|
492
|
+
|
|
493
|
+
This section is REQUIRED, not optional.
|
|
494
|
+
|
|
495
|
+
---
|
|
496
|
+
|
|
497
|
+
## Session Triggers
|
|
498
|
+
|
|
499
|
+
These activate automatically based on session number. **For small/MVP builds (3-5 sessions), compress or skip — use judgement based on project size.**
|
|
500
|
+
|
|
501
|
+
| Trigger | Default | Small Build (3-5 sessions) |
|
|
502
|
+
|---------|---------|---------------------------|
|
|
503
|
+
| Review milestones, check if on track | Session 5+ | Session 2+ |
|
|
504
|
+
| Load `skills/core/launch-prep/SKILL.md` | Session 8+ | Session 3+ |
|
|
505
|
+
| Real Usage Gate — pause features, use app for real, fix friction | Session 10+ | Before final session |
|
|
506
|
+
| Load `skills/core/production-readiness/SKILL.md` checklist | Before launch | Before launch |
|
|
507
|
+
|
|
508
|
+
**Rule:** If the project is close to done earlier than expected, trigger earlier. Don't wait for a session number — use context.
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
---
|
|
512
|
+
|
|
513
|
+
## IDE Config Templates
|
|
514
|
+
|
|
515
|
+
### CLAUDE.md (Claude Code)
|
|
516
|
+
|
|
517
|
+
```markdown
|
|
518
|
+
# [Project Name]
|
|
519
|
+
|
|
520
|
+
## What Is This?
|
|
521
|
+
|
|
522
|
+
This project uses **Baton Protocol** — an AI orchestration system where:
|
|
523
|
+
- AI manages code, documentation, and handoffs
|
|
524
|
+
- Human makes decisions and approves
|
|
525
|
+
- Context is preserved across sessions
|
|
526
|
+
|
|
527
|
+
## How to Start a Session
|
|
528
|
+
|
|
529
|
+
1. Read the current handoff file (see below)
|
|
530
|
+
2. Follow the session protocol
|
|
531
|
+
3. End by creating the next handoff
|
|
532
|
+
|
|
533
|
+
**Current Session:** `handoff/SESSION_[N].md`
|
|
534
|
+
|
|
535
|
+
## Context Files (Read in Order)
|
|
536
|
+
|
|
537
|
+
| Priority | File | Purpose |
|
|
538
|
+
|----------|------|---------|
|
|
539
|
+
| 1 | `handoff/SESSION_N.md` | Current session tasks |
|
|
540
|
+
| 2 | `.ai-rules/project.md` | Project decisions & rules |
|
|
541
|
+
| 3 | `.ai-rules/tech-stack.md` | Stack patterns |
|
|
542
|
+
| 4 | `.ai-rules/patterns.md` | Discovered quirks |
|
|
543
|
+
| 5 | `PROGRESS.md` | What's done |
|
|
544
|
+
| 6 | `BACKLOG.md` | Deferred items |
|
|
545
|
+
|
|
546
|
+
## Skills Library
|
|
547
|
+
|
|
548
|
+
Check these BEFORE web searching:
|
|
549
|
+
|
|
550
|
+
- `skills/core/` — Security, testing, production rules
|
|
551
|
+
- `skills/stacks/` — Tech stack patterns
|
|
552
|
+
- `skills/patterns/` — Implementation patterns
|
|
553
|
+
- `skills/domains/` — Business domain knowledge
|
|
554
|
+
|
|
555
|
+
## Key Rules
|
|
556
|
+
|
|
557
|
+
1. **Flexible tasks** — Do 1-4 tasks based on size (tiny=4, large=1)
|
|
558
|
+
2. **Verify before moving on** — Build must pass, feature must work
|
|
559
|
+
3. **Document as you go** — Update structure.md, patterns.md
|
|
560
|
+
4. **Create handoff at end** — Next session file is mandatory
|
|
561
|
+
5. **Ask when unsure** — Never guess on business logic
|
|
562
|
+
|
|
563
|
+
## Session End Checklist
|
|
564
|
+
|
|
565
|
+
- [ ] Build passes
|
|
566
|
+
- [ ] New features work
|
|
567
|
+
- [ ] PROGRESS.md updated
|
|
568
|
+
- [ ] handoff/SESSION_{N+1}.md created
|
|
569
|
+
- [ ] Ask user: "next" or "done"?
|
|
570
|
+
```
|
|
571
|
+
|
|
572
|
+
### .cursorrules (Cursor)
|
|
573
|
+
|
|
574
|
+
```
|
|
575
|
+
# Baton Protocol
|
|
576
|
+
|
|
577
|
+
This project uses Baton — an AI orchestration system.
|
|
578
|
+
|
|
579
|
+
## Start Each Session
|
|
580
|
+
1. Read handoff/SESSION_N.md (current session)
|
|
581
|
+
2. Read .ai-rules/ files for context
|
|
582
|
+
3. Follow the tasks in the handoff
|
|
583
|
+
|
|
584
|
+
## During Session
|
|
585
|
+
- Do 1-4 tasks based on size
|
|
586
|
+
- Verify each task works before next
|
|
587
|
+
- Update documentation as you go
|
|
588
|
+
- Ask human when unsure
|
|
589
|
+
|
|
590
|
+
## End Each Session
|
|
591
|
+
- Verify build passes
|
|
592
|
+
- Update PROGRESS.md
|
|
593
|
+
- Create handoff/SESSION_{N+1}.md
|
|
594
|
+
- Ask: "next" or "done"?
|
|
595
|
+
|
|
596
|
+
## Skills (Check Before Web Search)
|
|
597
|
+
- skills/core/ — Universal rules
|
|
598
|
+
- skills/stacks/ — Tech patterns
|
|
599
|
+
- skills/patterns/ — Implementation guides
|
|
600
|
+
|
|
601
|
+
## Key Files
|
|
602
|
+
- handoff/SESSION_N.md — Current session
|
|
603
|
+
- .ai-rules/project.md — Decisions
|
|
604
|
+
- .ai-rules/patterns.md — Quirks discovered
|
|
605
|
+
- PROGRESS.md — Session log
|
|
606
|
+
- BACKLOG.md — Deferred work
|
|
607
|
+
|
|
608
|
+
## Rules
|
|
609
|
+
- Never commit secrets
|
|
610
|
+
- Always use environment variables
|
|
611
|
+
- RLS on all database tables
|
|
612
|
+
- Verify before declaring done
|
|
613
|
+
- Document quirks in patterns.md
|
|
614
|
+
```
|
|
615
|
+
|
|
616
|
+
### .windsurfrules (Windsurf)
|
|
617
|
+
|
|
618
|
+
Same content as .cursorrules — Windsurf uses similar format.
|
|
619
|
+
|
|
620
|
+
---
|
|
621
|
+
|
|
622
|
+
## Session Protocol
|
|
623
|
+
|
|
624
|
+
### Starting a Session
|
|
625
|
+
|
|
626
|
+
1. Read context files in order:
|
|
627
|
+
- `handoff/SESSION_N.md` (current session)
|
|
628
|
+
- `.ai-rules/project.md`
|
|
629
|
+
- `.ai-rules/tech-stack.md`
|
|
630
|
+
- `.ai-rules/patterns.md`
|
|
631
|
+
- `.ai-rules/structure.md`
|
|
632
|
+
- `PROGRESS.md`
|
|
633
|
+
- `BACKLOG.md`
|
|
634
|
+
|
|
635
|
+
2. Run health check (after Session 2):
|
|
636
|
+
- Run build command
|
|
637
|
+
- Verify no errors from previous session
|
|
638
|
+
- Report status to user
|
|
639
|
+
|
|
640
|
+
3. Ask user:
|
|
641
|
+
- Any feedback from last session?
|
|
642
|
+
- Any blockers discovered?
|
|
643
|
+
- Quick wins from BACKLOG.md?
|
|
644
|
+
|
|
645
|
+
### During a Session
|
|
646
|
+
|
|
647
|
+
**Flexible task count:**
|
|
648
|
+
- Tiny tasks (add a button, fix a typo): Do 3-4
|
|
649
|
+
- Normal tasks (add a feature, create a page): Do 2
|
|
650
|
+
- Large tasks (major feature, architecture): Do 1
|
|
651
|
+
|
|
652
|
+
**AI decides based on complexity, user can override.**
|
|
653
|
+
|
|
654
|
+
**Rules:**
|
|
655
|
+
- Verify each task works before moving to next
|
|
656
|
+
- Update documentation as you go
|
|
657
|
+
- If unsure about anything, ASK before building
|
|
658
|
+
- If scope grows, pause and discuss
|
|
659
|
+
- Check skills/ and patterns.md before web searching
|
|
660
|
+
|
|
661
|
+
### Ending a Session
|
|
662
|
+
|
|
663
|
+
**Verification Gate (Cannot Skip):**
|
|
664
|
+
1. Build passes — no errors
|
|
665
|
+
2. New features work — demo to user
|
|
666
|
+
3. No regressions — previous features still work
|
|
667
|
+
|
|
668
|
+
**Documentation (Cannot Skip):**
|
|
669
|
+
4. Update PROGRESS.md with session summary
|
|
670
|
+
5. Update structure.md if files created
|
|
671
|
+
6. Update patterns.md if quirks discovered
|
|
672
|
+
7. Update BACKLOG.md if items added/completed
|
|
673
|
+
|
|
674
|
+
**Handoff (Cannot Skip):**
|
|
675
|
+
8. Create handoff/SESSION_{N+1}.md
|
|
676
|
+
9. Include "Lessons Learned" section
|
|
677
|
+
|
|
678
|
+
**Protocol Evolution (Cannot Skip):**
|
|
679
|
+
10. Ask yourself: "Did I discover anything this session that would improve Baton for ALL future projects?"
|
|
680
|
+
11. If yes — tell the user what you found and propose the update. Do NOT modify Baton without user approval.
|
|
681
|
+
12. If no — that's fine. Not every session produces a universal insight.
|
|
682
|
+
|
|
683
|
+
---
|
|
684
|
+
|
|
685
|
+
## Session Continuation Protocol
|
|
686
|
+
|
|
687
|
+
After creating the handoff, ask:
|
|
688
|
+
|
|
689
|
+
> "Session N complete. Handoff ready.
|
|
690
|
+
>
|
|
691
|
+
> **Options:**
|
|
692
|
+
> - Say **'next'** — I'll load the handoff and continue now
|
|
693
|
+
> - Say **'done'** — End here, load handoff in new chat later
|
|
694
|
+
> - Say **'break X'** — End here, come back in X minutes/hours"
|
|
695
|
+
|
|
696
|
+
**If user says 'next':**
|
|
697
|
+
1. Read handoff/SESSION_{N+1}.md
|
|
698
|
+
2. Read context files (health check)
|
|
699
|
+
3. Continue as new session
|
|
700
|
+
|
|
701
|
+
**This keeps momentum without losing checkpoints.**
|
|
702
|
+
|
|
703
|
+
---
|
|
704
|
+
|
|
705
|
+
## Skills Loading Order
|
|
706
|
+
|
|
707
|
+
When working on any task:
|
|
708
|
+
|
|
709
|
+
1. **Check `.ai-rules/patterns.md` FIRST** — Project-specific discoveries
|
|
710
|
+
2. **Check `skills/core/`** — Universal security, testing, production rules
|
|
711
|
+
3. **Check `skills/stacks/`** — Tech stack patterns
|
|
712
|
+
4. **Check `skills/patterns/`** — Implementation patterns
|
|
713
|
+
5. **Only then web search** — If nothing found above
|
|
714
|
+
6. **Document new findings** — Add to patterns.md or propose skill update
|
|
715
|
+
|
|
716
|
+
---
|
|
717
|
+
|
|
718
|
+
## Key Rules
|
|
719
|
+
|
|
720
|
+
### Architecture-First
|
|
721
|
+
Before creating files:
|
|
722
|
+
1. Plan structure in markdown first
|
|
723
|
+
2. Update structure.md BEFORE creating files
|
|
724
|
+
3. Avoid moving files mid-session
|
|
725
|
+
|
|
726
|
+
### Database Changes
|
|
727
|
+
1. Create migration file
|
|
728
|
+
2. Ask user to run migration
|
|
729
|
+
3. Wait for confirmation
|
|
730
|
+
4. Then build UI
|
|
731
|
+
|
|
732
|
+
### Verification Checkpoint
|
|
733
|
+
Before declaring any task complete:
|
|
734
|
+
1. Verify the code works
|
|
735
|
+
2. If UI changes, visually confirm
|
|
736
|
+
3. Update relevant documentation
|
|
737
|
+
|
|
738
|
+
### Pivot Rule
|
|
739
|
+
If user's needs differ from planned goals:
|
|
740
|
+
1. It's OK to pivot — user needs trump roadmaps
|
|
741
|
+
2. Document: "Originally planned X, pivoted to Y because Z"
|
|
742
|
+
3. Move deferred items to BACKLOG.md
|
|
743
|
+
|
|
744
|
+
---
|
|
745
|
+
|
|
746
|
+
## Real Usage Gate (After ~10 Sessions)
|
|
747
|
+
|
|
748
|
+
When core features complete:
|
|
749
|
+
1. Pause new feature development
|
|
750
|
+
2. User adds real data, uses app for 1-2 weeks
|
|
751
|
+
3. Note friction points from real usage
|
|
752
|
+
4. Prioritize backlog based on feedback
|
|
753
|
+
|
|
754
|
+
---
|
|
755
|
+
|
|
756
|
+
## Production Readiness Checklist
|
|
757
|
+
|
|
758
|
+
Before launch, verify all items in `skills/core/production-readiness/SKILL.md`.
|
|
759
|
+
|
|
760
|
+
Quick check:
|
|
761
|
+
- [ ] Security rules followed (see skills/core/security/SKILL.md)
|
|
762
|
+
- [ ] Testing complete (see skills/core/testing/SKILL.md)
|
|
763
|
+
- [ ] Error handling in place
|
|
764
|
+
- [ ] Monitoring configured
|
|
765
|
+
- [ ] Documentation complete
|
|
766
|
+
|
|
767
|
+
---
|
|
768
|
+
|
|
769
|
+
## Commit Message Format
|
|
770
|
+
|
|
771
|
+
```
|
|
772
|
+
Session N - [Theme Title]
|
|
773
|
+
|
|
774
|
+
[AREA 1]
|
|
775
|
+
- What was done
|
|
776
|
+
- Another item
|
|
777
|
+
|
|
778
|
+
[AREA 2]
|
|
779
|
+
- More items
|
|
780
|
+
|
|
781
|
+
DOCUMENTATION
|
|
782
|
+
- Files updated
|
|
783
|
+
|
|
784
|
+
DEFERRED
|
|
785
|
+
- Items for next session
|
|
786
|
+
```
|
|
787
|
+
|
|
788
|
+
---
|
|
789
|
+
|
|
790
|
+
## Protocol Update Rule
|
|
791
|
+
|
|
792
|
+
Update Baton ONLY when you discover:
|
|
793
|
+
- A pattern that saves ANY future project significant time
|
|
794
|
+
- A gotcha that cost >30 minutes and applies universally
|
|
795
|
+
- A workflow improvement that is domain-agnostic
|
|
796
|
+
|
|
797
|
+
Do NOT update for:
|
|
798
|
+
- Project-specific learnings → `patterns.md`
|
|
799
|
+
- Stack-specific patterns → `skills/stacks/`
|
|
800
|
+
- Implementation patterns → `skills/patterns/`
|
|
801
|
+
|
|
802
|
+
**The protocol should get BETTER over time, not just BIGGER.**
|
|
803
|
+
|
|
804
|
+
---
|
|
805
|
+
|
|
806
|
+
## After Baton Completes
|
|
807
|
+
|
|
808
|
+
Tell the user:
|
|
809
|
+
|
|
810
|
+
> "Baton setup complete. I've created:
|
|
811
|
+
> - Project context files (.ai-rules/)
|
|
812
|
+
> - IDE config ([CLAUDE.md / .cursorrules / etc.])
|
|
813
|
+
> - First session handoff (handoff/SESSION_1.md)
|
|
814
|
+
> - Progress tracking (PROGRESS.md, BACKLOG.md)
|
|
815
|
+
>
|
|
816
|
+
> **Next steps:**
|
|
817
|
+
> - Say **'next'** to begin Session 1 now, or
|
|
818
|
+
> - Start a new chat and load `handoff/SESSION_1.md`"
|
|
819
|
+
|
|
820
|
+
---
|
|
821
|
+
|
|
822
|
+
## Meta
|
|
823
|
+
|
|
824
|
+
- **Version:** 3.1
|
|
825
|
+
- **Last Updated:** 2026-02-10
|
|
826
|
+
- **Purpose:** Universal AI orchestration for software development
|
|
827
|
+
- **Works with:** Claude Code, Cursor, Windsurf, Kiro, Warp, any AI assistant
|
|
828
|
+
- **Created by:** Human-AI collaboration
|
|
829
|
+
|
|
830
|
+
### Changelog
|
|
831
|
+
|
|
832
|
+
**v3.1** (2026-02-10)
|
|
833
|
+
- Added **Question 8: IDE Selection** — Creates appropriate config file
|
|
834
|
+
- Added **IDE Config Templates** — CLAUDE.md, .cursorrules, .windsurfrules
|
|
835
|
+
- Added **Skills Loading Order** — Structured approach to knowledge lookup
|
|
836
|
+
- Added **Core Skills Reference** — security.md, testing.md, production-readiness.md
|
|
837
|
+
- Added **Phase 2 Skills Loading** — Load skills before web research
|
|
838
|
+
- Changed **Flexible Task Count** — AI judges 1-4 tasks based on size
|
|
839
|
+
- Added **Session Continuation Protocol** — Say 'next' to continue
|
|
840
|
+
- Reframed as **AI Orchestration Protocol** — Not just coding
|
|
841
|
+
|
|
842
|
+
**v3.0** (2026-01-20)
|
|
843
|
+
- Added FEATURES.md template
|
|
844
|
+
- Added Production Readiness Checklist
|
|
845
|
+
- Added Pivot Rule
|
|
846
|
+
- Added Real Usage Gate
|
|
847
|
+
- Added Cost Tracking
|
|
848
|
+
|
|
849
|
+
**v2.x** — See previous changelog
|