@haposoft/cafekit 0.7.23 → 0.7.25

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.
Files changed (68) hide show
  1. package/README.md +81 -862
  2. package/bin/install.js +4 -3
  3. package/package.json +2 -3
  4. package/src/claude/agents/code-auditor.md +25 -1
  5. package/src/claude/agents/god-developer.md +1 -1
  6. package/src/claude/agents/spec-maker.md +25 -3
  7. package/src/claude/agents/test-runner.md +22 -3
  8. package/src/claude/hooks/spec-state.cjs +24 -5
  9. package/src/claude/migration-manifest.json +1 -1
  10. package/src/claude/rules/manage-docs.md +5 -5
  11. package/src/claude/rules/state-sync.md +11 -8
  12. package/src/claude/skills/code-review/references/spec-compliance-review.md +8 -1
  13. package/src/claude/skills/develop/SKILL.md +32 -4
  14. package/src/claude/skills/develop/references/quality-gate.md +23 -13
  15. package/src/claude/skills/generate-graph/LICENSE +21 -0
  16. package/src/claude/skills/generate-graph/README.md +523 -0
  17. package/src/claude/skills/generate-graph/SKILL.md +427 -0
  18. package/src/claude/skills/generate-graph/agentloop-core.svg +101 -0
  19. package/src/claude/skills/generate-graph/agents/openai.yaml +4 -0
  20. package/src/claude/skills/generate-graph/assets/samples/sample-style1-flat.png +0 -0
  21. package/src/claude/skills/generate-graph/assets/samples/sample-style2-dark.png +0 -0
  22. package/src/claude/skills/generate-graph/assets/samples/sample-style3-blueprint.png +0 -0
  23. package/src/claude/skills/generate-graph/assets/samples/sample-style4-notion.png +0 -0
  24. package/src/claude/skills/generate-graph/assets/samples/sample-style5-glass.png +0 -0
  25. package/src/claude/skills/generate-graph/assets/samples/sample-style6-claude.png +0 -0
  26. package/src/claude/skills/generate-graph/assets/samples/sample-style7-openai.png +0 -0
  27. package/src/claude/skills/generate-graph/fixtures/agent-memory-types-style4.json +181 -0
  28. package/src/claude/skills/generate-graph/fixtures/api-flow-style7.json +40 -0
  29. package/src/claude/skills/generate-graph/fixtures/mem0-style1.json +297 -0
  30. package/src/claude/skills/generate-graph/fixtures/microservices-style3.json +64 -0
  31. package/src/claude/skills/generate-graph/fixtures/multi-agent-style5.json +45 -0
  32. package/src/claude/skills/generate-graph/fixtures/system-architecture-style6.json +48 -0
  33. package/src/claude/skills/generate-graph/fixtures/tool-call-style2.json +182 -0
  34. package/src/claude/skills/generate-graph/package.json +42 -0
  35. package/src/claude/skills/generate-graph/references/icons.md +281 -0
  36. package/src/claude/skills/generate-graph/references/style-1-flat-icon.md +108 -0
  37. package/src/claude/skills/generate-graph/references/style-2-dark-terminal.md +107 -0
  38. package/src/claude/skills/generate-graph/references/style-3-blueprint.md +113 -0
  39. package/src/claude/skills/generate-graph/references/style-4-notion-clean.md +94 -0
  40. package/src/claude/skills/generate-graph/references/style-5-glassmorphism.md +125 -0
  41. package/src/claude/skills/generate-graph/references/style-6-claude-official.md +209 -0
  42. package/src/claude/skills/generate-graph/references/style-7-openai.md +215 -0
  43. package/src/claude/skills/generate-graph/references/style-diagram-matrix.md +135 -0
  44. package/src/claude/skills/generate-graph/references/svg-layout-best-practices.md +100 -0
  45. package/src/claude/skills/generate-graph/scripts/generate-diagram.sh +157 -0
  46. package/src/claude/skills/generate-graph/scripts/generate-from-template.py +1556 -0
  47. package/src/claude/skills/generate-graph/scripts/test-all-styles.sh +135 -0
  48. package/src/claude/skills/generate-graph/scripts/validate-svg.sh +292 -0
  49. package/src/claude/skills/generate-graph/templates/agent-architecture.svg +28 -0
  50. package/src/claude/skills/generate-graph/templates/architecture.svg +23 -0
  51. package/src/claude/skills/generate-graph/templates/comparison-matrix.svg +14 -0
  52. package/src/claude/skills/generate-graph/templates/data-flow.svg +28 -0
  53. package/src/claude/skills/generate-graph/templates/er-diagram.svg +21 -0
  54. package/src/claude/skills/generate-graph/templates/flowchart.svg +21 -0
  55. package/src/claude/skills/generate-graph/templates/sequence.svg +20 -0
  56. package/src/claude/skills/generate-graph/templates/state-machine.svg +20 -0
  57. package/src/claude/skills/generate-graph/templates/timeline.svg +19 -0
  58. package/src/claude/skills/generate-graph/templates/use-case.svg +21 -0
  59. package/src/claude/skills/specs/SKILL.md +67 -10
  60. package/src/claude/skills/specs/references/review.md +32 -3
  61. package/src/claude/skills/specs/references/task-hydration.md +14 -12
  62. package/src/claude/skills/specs/rules/tasks-generation.md +21 -0
  63. package/src/claude/skills/specs/templates/design.md +14 -0
  64. package/src/claude/skills/specs/templates/init.json +7 -2
  65. package/src/claude/skills/specs/templates/requirements.md +21 -8
  66. package/src/claude/skills/specs/templates/task.md +16 -3
  67. package/src/claude/skills/sync/SKILL.md +11 -10
  68. package/src/claude/skills/sync/references/sync-protocols.md +33 -13
package/README.md CHANGED
@@ -1,94 +1,28 @@
1
1
  # @haposoft/cafekit
2
2
 
3
- > Spec-Driven Development workflow for AI coding assistants
3
+ > Claude Code-first spec-driven workflow and runtime bundle for AI coding assistants.
4
4
 
5
- [![Version](https://img.shields.io/badge/version-0.3.1-blue.svg)](https://github.com/haposoft/cafekit)
5
+ [![Version](https://img.shields.io/badge/version-0.7.23-blue.svg)](https://github.com/haposoft/cafekit)
6
6
  [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
7
- [![Claude Code](https://img.shields.io/badge/Claude%20Code-Supported-orange.svg)](https://claude.ai/code)
8
- [![Antigravity](https://img.shields.io/badge/Antigravity-Supported-purple.svg)](https://github.com/google/antigravity)
7
+ [![Claude%20Code](https://img.shields.io/badge/Claude%20Code-Primary-orange.svg)](https://claude.ai/code)
9
8
 
10
9
  ## Overview
11
10
 
12
- CafeKit is a **multi-platform** CLI tool that installs a structured workflow for AI coding assistants. It helps teams move from idea to implementation systematically using natural language commands.
13
-
14
- **Supported Platforms:**
15
- | Platform | Status | Installation Path |
16
- |----------|--------|-------------------|
17
- | [Claude Code](https://claude.ai/code) | ✅ Supported | `.claude/commands/` |
18
- | [Antigravity](https://antigravity.google/) | ✅ Supported | `.agent/workflows/` |
19
- | Cursor | 🔮 Planned | 🔮 Planned |
20
- | GitHub Copilot | 🔮 Planned | TBD |
21
- | Windsurf | 🔮 Planned | TBD |
22
-
23
- **What it does:**
24
- - Installs workflow commands into your AI editor command/workflow folder
25
- - Enables spec-driven development with clear phase separation
26
- - Creates living documentation for every feature
27
- - Works with zero configuration
28
- - **Idempotent by default** - Safe to re-run, skips existing files
29
- - **Upgrade mode available** - Use `--upgrade` (or `--force`) to refresh managed templates
30
-
31
- **What it doesn't do:**
32
- - Generate code (commands guide AI to help you write code)
33
- - Require configuration (zero-config installation)
34
- - Lock you to a specific AI editor
35
-
36
- ## Features
37
-
38
- - **🎯 Multi-platform** - Works with Claude Code, Antigravity, and future AI editors
39
- - **📋 Spec-first workflow** - `spec-init - spec-requirements - spec-design - spec-tasks` + `code - test - review`
40
- - **📝 Documentation workflow** - `/docs init` and `/docs update` for project documentation
41
- - **⚡ Zero-config** - Works out of the box with sensible defaults
42
- - **🔄 Idempotent** - Safe to re-run, skips existing files
43
- - **📦 No global install** - Use directly with `npx`
44
- - **🚀 Future-proof** - Easy to add support for new AI editors
45
-
46
- ## Claude Code Statusline (Claude Code Only)
47
-
48
- CafeKit automatically installs an enhanced statusline for Claude Code that provides real-time session context.
49
-
50
- **What it shows:**
51
- - **Context usage** - Percentage and token count (e.g., `23% 45K/200K`)
52
- - **Session timer** - Elapsed time since session start
53
- - **Git status** - Current branch and dirty state indicator
54
- - **Active agents** - Count of running subagents
55
- - **Todo items** - Count of pending tasks
56
-
57
- **Installation:**
58
- - Automatically installed when running `npx @haposoft/cafekit` in a Claude Code project
59
- - Merges with existing `settings.json` configuration without overwriting user settings
60
- - Safe to re-run - preserves non-CafeKit statusline configurations
61
- - Upgrade mode (`--upgrade`) refreshes managed runtime files
62
-
63
- **Configuration:**
64
- The statusline is configured via `.claude/settings.json`:
65
- ```json
66
- {
67
- "statusLine": {
68
- "type": "command",
69
- "command": "node \"$CLAUDE_PROJECT_DIR/.claude/status.cjs\"",
70
- "padding": 0
71
- }
72
- }
73
- ```
74
-
75
- **Runtime files installed:**
76
- - `.claude/status.cjs` - Main statusline script
77
- - `.claude/hooks/session.cjs` - Session initialization hook
78
- - `.claude/hooks/agent.cjs` - Subagent context injection hook
79
- - `.claude/hooks/usage.cjs` - Usage tracking hook
80
- - `.claude/hooks/lib/*.cjs` - Shared utilities (color, parser, git, config, etc.)
11
+ CafeKit installs a structured workflow into Claude Code so the assistant can move cleanly from:
81
12
 
82
- **Note:** This feature is Claude Code exclusive and not available for Antigravity.
13
+ ```text
14
+ Idea -> Spec -> Design -> Task Files -> Implementation -> Test -> Review
15
+ ```
83
16
 
84
- ## Installation
17
+ This package currently focuses on the Claude Code runtime:
18
+ - installs CafeKit skills under `.claude/skills/`
19
+ - installs supporting agents under `.claude/agents/`
20
+ - installs runtime hooks, statusline, and managed settings
21
+ - merges Claude settings safely on re-run
85
22
 
86
- ### Prerequisites
23
+ Antigravity remains in the repository as a legacy path, but Claude Code is the primary supported runtime for this release.
87
24
 
88
- - Node.js 18+
89
- - An AI coding assistant (Claude Code or Antigravity)
90
-
91
- ### Install Workflow
25
+ ## Install
92
26
 
93
27
  Run in your project root:
94
28
 
@@ -96,833 +30,118 @@ Run in your project root:
96
30
  npx @haposoft/cafekit
97
31
  ```
98
32
 
99
- The installer will:
100
- 1. **Auto-detect** your AI editor configuration (`.claude/` or `.agent/`)
101
- 2. **Prompt** you to select platform if not detected
102
- 3. **Copy** workflow commands to the appropriate directory
103
- 4. **Install** shared skills for spec-driven development
104
- 5. **[Claude Code only]** Install unprefixed skill directories (`spec-init`, `spec-requirements`, `spec-design`, `spec-tasks`, `code`, `test`, `review`) that expose `hapo:`-prefixed skill names
105
- 6. **Ensure dependencies** for `code - test - review` by installing missing command/agent templates
106
-
107
- Installer modes:
108
- - **Default install mode**: `npx @haposoft/cafekit` (skip existing files)
109
- - **Upgrade mode**: `npx @haposoft/cafekit --upgrade` (overwrite managed templates)
110
- - **Alias**: `--force` / `-f` behaves the same as `--upgrade`
111
-
112
- **Example output (Claude Code):**
113
- ```
114
- CafeKit Installer v0.3.12
115
- ========================================
116
-
117
- Installing for: Claude Code
118
- Mode: install (skip existing files)
119
-
120
- Claude Code (.claude/)
121
- ----------------------------------------
122
- ✓ Skill installed: specs
123
- ✓ Skill installed: spec-init
124
- ✓ Skill installed: spec-requirements
125
- ✓ Skill installed: spec-design
126
- ✓ Skill installed: spec-tasks
127
- ✓ Skill installed: code
128
- ✓ Skill installed: test
129
- ✓ Skill installed: review
130
- ✓ Copied: spec-init.md
131
- ✓ Copied: spec-requirements.md
132
- ...
133
-
134
- ╔════════════════════════════════════════════════════════╗
135
- ║ Installation Complete! ║
136
- ╚════════════════════════════════════════════════════════╝
137
-
138
- Installed Skills: Yes ✓
139
-
140
- Next steps:
141
- 1. Start your AI editor
142
-
143
- For Claude Code:
144
- Run: /spec-init <feature-name>
145
- Or use skill: /hapo:spec-init <feature-description>
146
-
147
- 2. Follow the workflow: requirements - design - tasks - code - test - review
148
-
149
- Documentation: https://github.com/haposoft/cafekit
150
- ```
151
-
152
- ## Workflows
153
-
154
- CafeKit provides two workflow categories:
155
-
156
- ### 1. Spec-Driven Development Workflows (`spec-*`)
157
-
158
- **Purpose:** Structured feature development from idea to implementation
159
-
160
- **Claude Code Commands:**
161
- | Command | Purpose | Phase |
162
- |---------|---------|-------|
163
- | `/spec-init` | Initialize new feature spec | 1 |
164
- | `/spec-requirements` | Generate EARS requirements | 2 |
165
- | `/spec-design` | Create technical design | 3 |
166
- | `/spec-validate` | Validate design decisions via interview | 4 |
167
- | `/spec-tasks` | Break down into tasks | 5 |
168
- | `/code` | Implement tasks from spec artifacts | 6 |
169
- | `/test` | Run tests for implemented changes | 7 |
170
- | `/review` | Review code quality and risks | 8 |
171
- | `/spec-status` | Check progress | 9 |
172
-
173
- **Antigravity Workflows:**
174
- | Workflow | Purpose | Phase |
175
- |----------|---------|-------|
176
- | `/spec-init` | Initialize new feature spec | 1 |
177
- | `/spec-requirements` | Generate EARS requirements | 2 |
178
- | `/spec-design` | Create technical design | 3 |
179
- | `/spec-validate` | Validate design decisions via interview | 4 |
180
- | `/spec-tasks` | Break down into tasks | 5 |
181
- | `/code` | Implement tasks from spec artifacts | 6 |
182
- | `/test` | Run tests for implemented changes | 7 |
183
- | `/review` | Review code quality and risks | 8 |
184
- | `/spec-status` | Check progress | 9 |
185
-
186
- **Generated Files:**
187
- ```
188
- .specs/
189
- └── feature-name/
190
- ├── spec.json
191
- ├── requirements.md
192
- ├── design.md
193
- └── tasks/
194
- ```
195
-
196
- ---
197
-
198
- ### 2. Documentation Workflows (`docs`)
199
-
200
- **Purpose:** Project documentation management and maintenance
201
-
202
- **Claude Code Commands:**
203
- | Command | Purpose |
204
- |---------|---------|
205
- | `/docs init` | Initialize comprehensive documentation |
206
- | `/docs update` | Update docs after code changes |
207
-
208
- **Antigravity Workflows:**
209
- | Workflow | Purpose |
210
- |----------|---------|
211
- | `/docs-init` | Initialize comprehensive documentation |
212
- | `/docs-update` | Update docs after code changes |
213
-
214
- **Generated Files:**
215
- ```
216
- docs/
217
- ├── codebase-summary.md
218
- ├── project-overview-pdr.md
219
- ├── code-standards.md
220
- ├── system-architecture.md
221
- ├── design-guidelines.md
222
- ├── deployment-guide.md
223
- └── project-roadmap.md
224
- ```
225
-
226
- ---
227
-
228
- ## Quick Start
229
-
230
- ### A. Spec Workflow - Building User Authentication
231
-
232
- ```bash
233
- # Step 1: Initialize spec
234
- /spec-init User authentication with JWT and refresh tokens
235
-
236
- # AI creates:
237
- # - .specs/user-authentication/
238
- # - .specs/user-authentication/spec.json
239
- # - .specs/user-authentication/requirements.md
240
-
241
- # Step 2: Generate requirements
242
- /spec-requirements user-authentication
243
-
244
- # AI analyzes codebase and generates:
245
- # - Functional requirements (EARS format)
246
- # - Acceptance criteria
247
- # - Constraints
248
-
249
- # Step 3: Create design
250
- /spec-design user-authentication
251
-
252
- # AI generates:
253
- # - Architecture decisions
254
- # - API endpoints
255
- # - Database schema
256
- # - Component structure
257
-
258
- # Step 4: Validate design decisions (recommended for medium/high-risk features)
259
- /spec-validate user-authentication
260
-
261
- # AI confirms:
262
- # - Critical trade-offs and assumptions
263
- # - Risk-sensitive defaults
264
- # - Follow-up actions before task generation
265
-
266
- # Step 5: Break down tasks
267
- /spec-tasks user-authentication
268
-
269
- # AI creates:
270
- # - Prioritized task list
271
- # - Dependencies
272
- # - Estimated complexity
273
-
274
- # Step 6: Code
275
- /code user-authentication
276
-
277
- # Step 7: Test
278
- /test
279
-
280
- # Step 8: Review
281
- /review
282
-
283
- # Step 9: Check status
284
- /spec-status user-authentication
285
-
286
- # AI reports:
287
- # - Progress (5/8 tasks complete)
288
- # - Blockers
289
- # - Next steps
290
- ```
291
-
292
- ## Workflow Overview
293
-
294
- ### Workflow Diagram
295
-
296
- ```
297
- Idea - /spec-init - /spec-requirements - /spec-design - /spec-validate - /spec-tasks - /code - /test - /review - /spec-status
298
- |<----------------------------------------------|-----------------------------|
299
- |
300
- iterate
301
- ```
302
-
303
- ### 1. /spec-init
304
-
305
- **Purpose:** Initialize a new specification from a project description.
306
-
307
- **When to use:** Starting a new feature, enhancement, or component.
308
-
309
- **What it does:**
310
- - Generates feature name from description
311
- - Creates `.specs/[feature-name]/` directory
312
- - Initializes `spec.json` metadata
313
- - Creates `requirements.md` template
314
-
315
- **Example:**
316
- ```bash
317
- /spec-init Dark mode toggle with user preference persistence
318
-
319
- # Creates:
320
- # .specs/dark-mode-toggle/
321
- # ├── spec.json
322
- # └── requirements.md (with initial description)
323
- ```
324
-
325
- **Tips:**
326
- - Be specific (5+ words describing what to build)
327
- - Avoid vague terms like "improve" or "better" without context
328
- - Include key nouns (e.g., "login form", "dashboard chart")
329
-
330
- ---
331
-
332
- ### 2. /spec-requirements
333
-
334
- **Purpose:** Generate comprehensive requirements in EARS format.
335
-
336
- **When to use:** After initialization, before design phase.
337
-
338
- **What it does:**
339
- - Analyzes existing codebase for related code
340
- - Loads project steering context (`.specs/steering/`)
341
- - Generates functional requirements with acceptance criteria
342
- - Documents constraints and assumptions
33
+ Refresh managed files:
343
34
 
344
- **Example:**
345
35
  ```bash
346
- /spec-requirements dark-mode-toggle
347
-
348
- # Updates requirements.md with:
349
- # - Functional Requirements (EARS format)
350
- # - "When user clicks toggle, system shall switch theme"
351
- # - "When theme changes, system shall persist preference"
352
- # - Acceptance Criteria
353
- # - Constraints (browser support, accessibility)
354
- ```
355
-
356
- **EARS format example:**
357
- ```markdown
358
- ## Functional Requirements
359
-
360
- ### FR-1: Theme Toggle
361
- When user clicks the theme toggle button,
362
- the system shall switch between light and dark themes
363
- and update UI within 200ms.
364
-
365
- **Acceptance Criteria:**
366
- - Toggle state reflects current theme
367
- - Animation is smooth (no flash)
368
- - All components respect theme
369
- ```
370
-
371
- ---
372
-
373
- ### 3. /spec-design
374
-
375
- **Purpose:** Create detailed technical design from requirements.
376
-
377
- **When to use:** After requirements are finalized, before task breakdown.
378
-
379
- **What it does:**
380
- - Generates architecture decisions
381
- - Defines API contracts (if needed)
382
- - Creates database schema (if needed)
383
- - Specifies component structure
384
- - Documents technology choices
385
-
386
- **Example:**
387
- ```bash
388
- /spec-design dark-mode-toggle
389
-
390
- # Creates design.md with:
391
- # - Architecture: Context API for theme state
392
- # - Components: ThemeToggle.tsx, ThemeProvider.tsx
393
- # - Storage: localStorage with 'theme' key
394
- # - CSS: Tailwind dark: variants
395
- ```
396
-
397
- **Output structure:**
398
- ```markdown
399
- # Design Specification
400
-
401
- ## Architecture Decisions
402
- - Use React Context for global theme state
403
- - Tailwind CSS dark mode (class strategy)
404
-
405
- ## Component Structure
406
- - ThemeProvider (context wrapper)
407
- - ThemeToggle (button component)
408
- - useTheme hook (consume context)
409
-
410
- ## Data Flow
411
- User clicks -> dispatch action -> update context -> localStorage -> re-render
412
- ```
413
-
414
- ---
415
-
416
- ### 4. /spec-validate
417
-
418
- **Purpose:** Validate design assumptions, trade-offs, and risk-sensitive decisions before task generation.
419
-
420
- **When to use:** After `/spec-design`, especially for medium/high-risk features or external integrations.
421
-
422
- **What it does:**
423
- - Interviews critical decision points using structured questions
424
- - Appends validation log to `research.md`
425
- - Updates validation metadata in `spec.json`
426
- - Recommends follow-up actions before task breakdown
427
-
428
- **Example:**
429
- ```bash
430
- /spec-validate dark-mode-toggle
431
- ```
432
-
433
- ---
434
-
435
- ### 5. /spec-tasks
436
-
437
- **Purpose:** Break design into implementable tasks.
438
-
439
- **When to use:** After design is approved, before implementation.
440
-
441
- **What it does:**
442
- - Generates prioritized task list
443
- - Identifies dependencies between tasks
444
- - Estimates complexity (simple/medium/complex)
445
- - Creates execution order
446
-
447
- **Example:**
448
- ```bash
449
- /spec-tasks dark-mode-toggle
450
-
451
- # Creates tasks.md with:
452
- # Task #1: Create ThemeContext and Provider (simple)
453
- # Task #2: Build ThemeToggle button component (simple)
454
- # Task #3: Implement localStorage persistence (medium)
455
- # Task #4: Add dark mode CSS variables (medium)
456
- # Task #5: Test theme switching across pages (medium)
457
- ```
458
-
459
- **Task format:**
460
- ```markdown
461
- ## Task #1: Create ThemeContext
462
- - **Priority:** High
463
- - **Complexity:** Simple
464
- - **Dependencies:** None
465
- - **Files:** src/context/ThemeContext.tsx
466
- - **Description:** Set up React Context with theme state
467
- - **Status:** pending
468
- ```
469
-
470
- ---
471
-
472
- ### 5. /code
473
-
474
- **Purpose:** Implement a specific task from the task list.
475
-
476
- **When to use:** After `/spec-tasks`, to implement approved tasks from spec artifacts.
477
-
478
- **What it does:**
479
- - Reads spec artifacts (`tasks.md`, `design.md`, `requirements.md`)
480
- - Implements approved work with minimal scope
481
- - Hands off to `/test` and `/review`
482
- - Reports blockers and next actions
483
-
484
- **Example:**
485
- ```bash
486
- # Implement from approved spec tasks
487
- /code dark-mode-toggle
488
-
489
- # Then run quality gates
490
- /test
491
- /review
492
- ```
493
-
494
- **Iteration pattern:**
495
- ```bash
496
- # Repeat the quality loop after each coding pass
497
- /code dark-mode-toggle
498
- /test
499
- /review
500
- ```
501
-
502
- ---
503
-
504
- ### 6. /test
505
-
506
- **Purpose:** Run tests after `/code`.
507
-
508
- **When to use:** Immediately after each coding pass.
509
-
510
- **Example:**
511
- ```bash
512
- /test
513
- ```
514
-
515
- ---
516
-
517
- ### 7. /review
518
-
519
- **Purpose:** Review recent changes for quality and risk.
520
-
521
- **When to use:** After `/test` passes.
522
-
523
- **Example:**
524
- ```bash
525
- /review
526
- ```
527
-
528
- ---
529
-
530
- ### 8. /spec-status
531
-
532
- **Purpose:** Check progress and next steps.
533
-
534
- **When to use:** Anytime during or after implementation.
535
-
536
- **What it does:**
537
- - Reads `tasks.md` for completion status
538
- - Calculates progress percentage
539
- - Identifies blockers or pending tasks
540
- - Suggests next actions
541
-
542
- **Example:**
543
- ```bash
544
- /spec-status dark-mode-toggle
545
-
546
- # Output:
547
- # Progress: 3/5 tasks completed (60%)
548
- # Completed: #1, #2, #3
549
- # Pending: #4, #5
550
- # Next: Implement Task #4 (Add dark mode CSS variables)
551
- # Blockers: None
552
- ```
553
-
554
- **Status indicators:**
555
- - `pending` - Not started
556
- - `in-progress` - Partially implemented
557
- - `completed` - Finished
558
- - `blocked` - Waiting on dependency
559
-
560
- ---
561
-
562
- ### B. Docs Workflow - Initialize Project Documentation
563
-
564
- **Claude Code:**
565
- ```bash
566
- # Initialize documentation
567
- /docs init
568
-
569
- # AI creates:
570
- # - docs/codebase-summary.md
571
- # - docs/project-overview-pdr.md
572
- # - docs/code-standards.md
573
- # - docs/system-architecture.md
574
- # - docs/design-guidelines.md
575
- # - docs/deployment-guide.md
576
- # - docs/project-roadmap.md
577
- # - .agent/rules/AGENTS.md (for Antigravity) or CLAUDE.md (for Claude Code)
578
-
579
- # Update after code changes
580
- /docs update
581
- ```
582
-
583
- **Antigravity:**
584
- ```bash
585
- # Initialize documentation
586
- /docs-init
587
-
588
- # AI creates the same 7 docs files + AGENTS.md
589
-
590
- # Update after code changes
591
- /docs-update
36
+ npx @haposoft/cafekit --upgrade
592
37
  ```
593
38
 
594
- ---
39
+ Requirements:
40
+ - Node.js 18+
41
+ - Claude Code project with a `.claude/` directory, or choose Claude when prompted
595
42
 
596
- ## File Structure
43
+ ## What Gets Installed
597
44
 
598
- ### Platform-Specific Installation
45
+ Claude Code install targets:
599
46
 
600
- **Claude Code** (`.claude/`):
601
- ```
47
+ ```text
602
48
  .claude/
603
- ├── commands/
604
- │ ├── spec-init.md # Spec workflows
605
- │ ├── spec-requirements.md
606
- │ ├── spec-design.md
607
- │ ├── spec-tasks.md
608
- │ ├── code.md
609
- │ ├── test.md
610
- │ ├── review.md
611
- │ ├── spec-status.md
612
- │ └── docs.md # Docs workflows
613
- └── skills/
614
- ├── specs/
615
- ├── impact-analysis/
616
- ├── spec-init/
617
- ├── spec-requirements/
618
- ├── spec-design/
619
- ├── spec-tasks/
620
- ├── code/
621
- ├── test/
622
- └── review/
623
- ```
624
-
625
- **Antigravity** (`.agent/`):
626
- ```
627
- .agent/
628
- ├── workflows/ # Antigravity workflows (hyphen naming)
629
- │ ├── spec-init.md
630
- │ ├── spec-requirements.md
631
- │ ├── spec-design.md
632
- │ ├── spec-tasks.md
633
- │ ├── code.md
634
- │ ├── test.md
635
- │ ├── review.md
636
- │ ├── spec-status.md
637
- │ ├── docs-init.md # Docs workflows
638
- │ └── docs-update.md
639
49
  ├── skills/
640
- ├── specs/
641
- │ └── impact-analysis/
642
- └── rules/
643
- └── GEMINI.md # System rules (always_on)
50
+ ├── agents/
51
+ ├── hooks/
52
+ ├── status.cjs
53
+ ├── runtime.json
54
+ ├── settings.json
55
+ └── CLAUDE.md
644
56
  ```
645
57
 
646
- **Command Naming:**
647
- - **Claude Code:** Uses hyphens (`/spec-init`, `/docs init`)
648
- - **Antigravity:** Uses hyphens (`/spec-init`, `/docs-init`)
649
-
650
- ### Generated Specs Directory
58
+ Managed runtime features include:
59
+ - Claude Code statusline
60
+ - session and subagent hooks
61
+ - rule/context injection
62
+ - spec state awareness
63
+ - safe settings merge on reinstall
651
64
 
652
- Specs are created in `.specs/` (shared across all platforms):
653
- ```
654
- .specs/
655
- ├── steering/ # Project-wide conventions
656
- │ ├── tech.md
657
- │ ├── structure.md
658
- │ └── product.md
659
- └── feature-name/ # Individual feature specs
660
- ├── spec.json
661
- ├── requirements.md
662
- ├── design.md
663
- ├── research.md
664
- └── tasks/
665
- └── sprint-1.md
666
- ```
65
+ ## Core Skills
667
66
 
668
- ---
67
+ CafeKit ships many skills, but the main release surface is:
669
68
 
670
- ## FAQ
69
+ - `/hapo:specs <feature-description>`: create or resume a structured spec workflow
70
+ - `/hapo:develop <feature-name>`: implement from approved spec artifacts
71
+ - `/hapo:test [scope|--full]`: run verification and return a structured verdict
72
+ - `/hapo:code-review [scope|--pending]`: adversarial review focused on correctness, regressions, and security
73
+ - `/hapo:generate-graph <diagram request>`: generate technical SVG/PNG diagrams
671
74
 
672
- ### Q: Which AI editors are supported?
75
+ Common companion skills bundled in this package include `inspect`, `impact-analysis`, `research`, `ai-multimodal`, `frontend-development`, `backend-development`, and `react-best-practices`.
673
76
 
674
- A: Currently supports:
675
- - ✅ **Claude Code** - `.claude/commands/`
676
- - ✅ **Antigravity** - `.agent/workflows/`
677
-
678
- Planned for future:
679
- - 🔮 **Cursor** - `.cursor/commands/`
680
- - 🔮 **GitHub Copilot** - TBD
681
- - 🔮 **Windsurf** - TBD
77
+ ## Quick Start
682
78
 
683
- ### Q: Can I use multiple AI editors on the same project?
79
+ Create a new spec:
684
80
 
685
- A: Yes! You can install CafeKit for multiple platforms:
686
81
  ```bash
687
- npx @haposoft/cafekit
688
- # Select "Both" when prompted
82
+ /hapo:specs Build a Google Meet transcript extension with AI summaries
689
83
  ```
690
84
 
691
- This installs commands to both `.claude/` and `.agent/`. The `.specs/` directory is shared, so your specifications work across all editors.
85
+ Implement the whole feature:
692
86
 
693
- ### Q: Can I customize the workflow steps?
694
-
695
- A: Yes. Edit the `.md` files in `.claude/commands/` (Claude Code) or `.agent/workflows/` (Antigravity) after installation.
696
-
697
- ### Q: Is it safe to re-run `npx @haposoft/cafekit`?
698
-
699
- A: Yes. Default mode is idempotent and skips existing files.
700
-
701
- ### Q: How do I update existing installed templates to the latest version?
702
-
703
- A: Run installer in upgrade mode:
704
87
  ```bash
705
- npx @haposoft/cafekit --upgrade
706
- # or
707
- npx @haposoft/cafekit --force
88
+ /hapo:develop meet-transcript-mvp
708
89
  ```
709
- This overwrites files managed by the installer (commands/workflows, managed dependencies, and routing/rules templates).
710
90
 
711
- ### Q: What language is the spec generated in?
91
+ Implement one specific task file:
712
92
 
713
- A: Defaults to English.
714
-
715
- ### Q: Can I use this for multiple features simultaneously?
716
-
717
- A: Yes. Each spec has its own directory in `.specs/`. Work on multiple in parallel.
718
-
719
- ### Q: Why are the command names different between Claude Code and Antigravity?
720
-
721
- A: Each platform has different conventions:
722
- - **Claude Code** uses hyphens: `/spec-init`, `/docs update`
723
- - **Antigravity** uses hyphens: `/spec-init`, `/docs-init`
724
-
725
- The functionality is identical, only the naming convention differs.
726
-
727
- ---
728
-
729
- ## Troubleshooting
730
-
731
- ### "No platform configuration detected"
732
-
733
- **Cause:** Neither `.claude/` nor `.agent/` folder exists in your project.
734
-
735
- **Solution:**
736
93
  ```bash
737
- # Option 1: Create Claude Code folder
738
- mkdir -p .claude/commands
739
-
740
- # Option 2: Create Antigravity folder
741
- mkdir -p .agent/workflows
742
-
743
- # Option 3: Run installer and it will prompt you to select platform
744
- npx @haposoft/cafekit
94
+ /hapo:develop meet-transcript-mvp task-R0-02-extension-scaffold-dashboard-skeleton.md
745
95
  ```
746
96
 
747
- ### "Command not found" after installation
97
+ Run tests and review:
748
98
 
749
- **Claude Code:**
750
- - Commands load automatically
751
- - If not visible, restart Claude Code extension
752
- - Verify: `ls .claude/commands/spec-*.md`
753
-
754
- **Antigravity:**
755
- - Workflows load automatically when IDE opens the project
756
- - Verify: `ls .agent/workflows/*.md`
757
- - Check `GEMINI.md` is in `.agent/rules/` for system rules
758
-
759
- ---
760
-
761
- ## Best Practices
762
-
763
- ### 1. Phase Separation
764
-
765
- Complete each phase before moving to the next:
766
- - Don't skip requirements (even for "simple" features)
767
- - Finalize design before creating tasks
768
- - Implement tasks sequentially (respect dependencies)
769
-
770
- ### 2. Incremental Implementation
771
-
772
- Break large features into smaller specs:
773
99
  ```bash
774
- # Instead of:
775
- /spec-init Complete e-commerce system
776
-
777
- # Do:
778
- /spec-init Product listing page
779
- /spec-init Shopping cart functionality
780
- /spec-init Checkout flow
781
- ```
782
-
783
- ### 3. Steering Context
784
-
785
- For projects with shared conventions:
786
- 1. Create `.specs/steering/` directory
787
- 2. Add files like `tech.md`, `structure.md`, `product.md`
788
- 3. All specs will automatically reference these
789
-
790
- Example `.specs/steering/tech.md`:
791
- ```markdown
792
- # Technology Standards
793
-
794
- - Frontend: React 18 + TypeScript
795
- - Styling: Tailwind CSS v4
796
- - State: Zustand
797
- - Testing: Vitest + Playwright
100
+ /hapo:test --full
101
+ /hapo:code-review --pending
798
102
  ```
799
103
 
800
- ### 4. Version Control
104
+ Generate a diagram:
801
105
 
802
- Commit after each phase:
803
106
  ```bash
804
- /spec-init feature-name
805
- git add .specs/feature-name/
806
- git commit -m "spec: init feature-name"
807
-
808
- /spec-requirements feature-name
809
- git add .specs/feature-name/requirements.md
810
- git commit -m "spec: requirements for feature-name"
811
-
812
- # ... continue for design, tasks, impl
107
+ /hapo:generate-graph Draw a sequence diagram for auth flow between browser, API, and database
813
108
  ```
814
109
 
815
- ### 5. Task Granularity
110
+ ## Spec Artifacts
816
111
 
817
- Good task size: 30-60 minutes of work.
818
-
819
- Too large:
820
- ```markdown
821
- Task #1: Build entire authentication system
822
- ```
112
+ CafeKit's current spec workflow writes artifacts under:
823
113
 
824
- Better:
825
- ```markdown
826
- Task #1: Create User model and migration
827
- Task #2: Implement JWT generation
828
- Task #3: Add login endpoint
829
- Task #4: Add protected route middleware
114
+ ```text
115
+ specs/<feature-name>/
116
+ ├── spec.json
117
+ ├── requirements.md
118
+ ├── research.md
119
+ ├── design.md
120
+ └── tasks/
121
+ ├── task-R0-01-*.md
122
+ ├── task-R1-01-*.md
123
+ └── ...
830
124
  ```
831
125
 
832
- ---
833
-
834
- ## Contributing
835
-
836
- - **Report issues:** https://github.com/haposoft/cafekit/issues
837
- - **Suggest improvements:** Open a GitHub Discussion
838
-
839
- ---
840
-
841
- ## Support
842
-
843
- - **GitHub:** https://github.com/haposoft/cafekit
844
- - **Issues:** https://github.com/haposoft/cafekit/issues
845
- - **Discussions:** https://github.com/haposoft/cafekit/discussions
846
-
847
- ---
848
-
849
- ## Changelog
850
-
851
- ### [0.3.1] - 2026-03-13
852
-
853
- #### Changed
854
- - **Renamed package** from `@haposoft/cafekit-spec` to `@haposoft/cafekit`
855
- - Deprecated the old `@haposoft/cafekit-spec` package
856
- - Updated repository and homepage URLs to point to the official `haposoft` organization
126
+ The active workflow expects:
127
+ - `spec.json` to hold state, approvals, validation, and `task_files`
128
+ - design to define canonical contracts
129
+ - each task file to carry completion criteria and verification evidence
857
130
 
858
- ### [0.2.2] - 2026-02-25
131
+ ## Release Notes For 0.7.23
859
132
 
860
- #### Changed
861
- - Added `scope_lock` contract to spec initialization metadata (`source`, `in_scope`, `out_of_scope`, `expansion_policy`)
862
- - Updated `/spec-requirements`, `/spec-design`, `/spec-validate`, and `/spec-tasks` to enforce scope lock across the full spec lifecycle
863
- - Reduced default expansion in `/spec-design`: uncertain cases now default to light discovery and only escalate to full on explicit triggers
864
- - Clarified steering usage in requirements phase: steering is constraints-only and must not introduce new capability domains
865
- - Added task-generation guardrail: every task must map to valid in-scope numeric requirement IDs
866
- - Added installer sync for specs template files in Claude mode to reduce stale runtime copy drift
133
+ This release is centered on Claude Code:
134
+ - tightened `hapo:specs` state integrity and task finalization rules
135
+ - tightened `hapo:develop` definition-of-done and evidence-based quality gates
136
+ - bundled `hapo:generate-graph`
137
+ - cleaned Claude installer expectations so it no longer looks for removed Claude artifacts
867
138
 
868
- #### Regression Guard (installer CLI upgrade mode)
869
- Use this checklist after running `npx @haposoft/cafekit --upgrade`:
870
- - Run `/spec-init` with an installer-CLI-scoped feature description and verify `spec.json.scope_lock` is populated
871
- - Run `/spec-requirements`, `/spec-design`, `/spec-validate`, `/spec-tasks` in order
872
- - Verify requirements/design/tasks do **not** introduce API/mobile/DynamoDB domains unless explicitly approved
873
- - Verify task entries reference valid in-scope numeric requirement IDs only
874
- - If scope expansion is explicitly approved during validation, verify `scope_lock` updates are reflected in `spec.json`
139
+ ## Documentation
875
140
 
876
- ### [0.1.7] - 2026-02-24
877
-
878
- #### Changed
879
- - Unified workflow naming around hyphens for Antigravity workflows
880
- - Replaced `spec-impl` in primary flow with `code - test - review`
881
- - Installer now ensures dependency templates for `code/test/review` commands and required agents
882
- - Updated docs workflow naming to `/docs-init` and `/docs-update` for Antigravity
883
-
884
- ### [0.1.5] - 2026-02-11
885
-
886
- #### Added
887
- - **Documentation workflow for Antigravity** - New `/docs-init` and `/docs-update` workflows
888
- - **GEMINI.md rule file** - Auto-installs `.agent/rules/GEMINI.md` with system rules for Antigravity
889
- - **Full Antigravity support** - Documentation commands now work on both Claude Code and Antigravity
890
- - **AGENTS.md auto-generation** - Created automatically when running `/docs-init` or `/docs-update`
891
-
892
- ### [0.1.2] - 2026-02-04
893
-
894
- #### Changed
895
- - **Multi-platform support** - Renamed from "Claude Code only" to "AI coding assistants"
896
- - Updated documentation to reflect dual-platform support (Claude Code + Antigravity)
897
- - Improved platform detection and installation UX
898
- - Added platform compatibility matrix
899
-
900
- ### [0.1.1] - 2026-02-03
901
-
902
- #### Added
903
- - Dual-platform installer supporting both Claude Code and Antigravity
904
- - Auto-detection of existing `.claude/` and `.agent/` configurations
905
- - Interactive platform selection when no configuration detected
906
-
907
- ### [0.1.0] - 2026-02-02
908
-
909
- #### Added
910
- - Initial release of CafeKit workflow
911
- - Initial spec workflow foundation
912
- - Zero-config installation via npx
913
- - Idempotent file copying (safe to re-run)
914
- - Comprehensive documentation
915
-
916
- ---
141
+ - Installation: https://cafekit.haposoft.com/docs/getting-started/installation
142
+ - Quickstart: https://cafekit.haposoft.com/docs/getting-started/quickstart
143
+ - Spec workflow: https://cafekit.haposoft.com/docs/guides/spec-workflow
917
144
 
918
145
  ## License
919
146
 
920
- MIT License - See [LICENSE](LICENSE) for details
921
-
922
- ---
923
-
924
- **Made with care by the Haposoft Team**
925
-
926
- <p align="center">
927
- <sub>Multi-platform Workflow for AI Coding Assistants</sub>
928
- </p>
147
+ MIT © Haposoft