create-kuckit-app 2.0.2 → 2.2.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.
Files changed (62) hide show
  1. package/README.md +24 -14
  2. package/package.json +3 -1
  3. package/templates/base/.claude/skills/beads/CLAUDE.md +87 -0
  4. package/templates/base/.claude/skills/beads/README.md +123 -0
  5. package/templates/base/.claude/skills/beads/SKILL.md +77 -715
  6. package/templates/base/.claude/skills/beads/adr/0001-bd-prime-as-source-of-truth.md +61 -0
  7. package/templates/base/.claude/skills/beads/resources/AGENTS.md +62 -0
  8. package/templates/base/.claude/skills/beads/resources/ASYNC_GATES.md +175 -0
  9. package/templates/base/.claude/skills/beads/resources/BOUNDARIES.md +520 -0
  10. package/templates/base/.claude/skills/beads/resources/CHEMISTRY_PATTERNS.md +197 -0
  11. package/templates/base/.claude/skills/beads/resources/CLI_REFERENCE.md +561 -0
  12. package/templates/base/.claude/skills/beads/resources/DEPENDENCIES.md +754 -0
  13. package/templates/base/.claude/skills/beads/resources/INTEGRATION_PATTERNS.md +438 -0
  14. package/templates/base/.claude/skills/beads/resources/ISSUE_CREATION.md +150 -0
  15. package/templates/base/.claude/skills/beads/resources/MOLECULES.md +370 -0
  16. package/templates/base/.claude/skills/beads/resources/PATTERNS.md +363 -0
  17. package/templates/base/.claude/skills/beads/resources/RESUMABILITY.md +239 -0
  18. package/templates/base/.claude/skills/beads/resources/STATIC_DATA.md +61 -0
  19. package/templates/base/.claude/skills/beads/resources/TROUBLESHOOTING.md +537 -0
  20. package/templates/base/.claude/skills/beads/resources/WORKFLOWS.md +638 -0
  21. package/templates/base/.claude/skills/beads/resources/WORKTREES.md +95 -0
  22. package/templates/base/.claude/skills/browser-skill/SKILL.md +72 -0
  23. package/templates/base/.claude/skills/knowledge/SKILL.md +155 -205
  24. package/templates/base/.claude/skills/knowledge/reference/doc-mapping.md +49 -0
  25. package/templates/base/.claude/skills/knowledge/reference/extraction-prompts.md +102 -0
  26. package/templates/base/.claude/skills/kuckit/SKILL.md +15 -9
  27. package/templates/base/.claude/skills/kuckit/references/MODULE-DEVELOPMENT.md +142 -0
  28. package/templates/base/.claude/skills/kuckit/references/PACKAGES.md +22 -17
  29. package/templates/base/.claude/skills/kuckit/references/PUBLISHING.md +92 -0
  30. package/templates/base/.claude/skills/module-testing/SKILL.md +1 -1
  31. package/templates/base/.claude/skills/planning/SKILL.md +26 -1
  32. package/templates/base/.env.example +1 -1
  33. package/templates/base/AGENTS.md +155 -418
  34. package/templates/base/apps/server/package.json +3 -3
  35. package/templates/base/apps/server/src/modules.ts +14 -1
  36. package/templates/base/apps/web/.env.example +1 -1
  37. package/templates/base/apps/web/package.json +2 -2
  38. package/templates/base/apps/web/src/components/dashboard/nav-user.tsx +3 -3
  39. package/templates/base/apps/web/src/components/ui/sidebar.tsx +2 -1
  40. package/templates/base/apps/web/src/routes/$.tsx +0 -1
  41. package/templates/base/apps/web/src/routes/__root.tsx +7 -1
  42. package/templates/base/apps/web/src/routes/dashboard.tsx +3 -1
  43. package/templates/base/apps/web/src/routes/index.tsx +17 -22
  44. package/templates/base/apps/web/src/routes/login.tsx +81 -50
  45. package/templates/base/apps/web/tsconfig.json +1 -0
  46. package/templates/base/docs/ARCHITECTURE.md +689 -0
  47. package/templates/base/docs/DEPENDENCY-INJECTION.md +871 -0
  48. package/templates/base/docs/DEPLOYMENT.md +573 -0
  49. package/templates/base/docs/INDEX.md +135 -0
  50. package/templates/base/docs/MIGRATION.md +989 -0
  51. package/templates/base/docs/MODULE_CSS.md +343 -0
  52. package/templates/base/docs/MODULE_TESTING.md +368 -0
  53. package/templates/base/docs/MULTI_AGENT_WORKFLOW.md +909 -0
  54. package/templates/base/docs/TESTING.md +579 -0
  55. package/templates/base/docs/TROUBLESHOOTING.md +360 -0
  56. package/templates/base/drizzle.config.ts +17 -1
  57. package/templates/base/package.json +8 -6
  58. package/templates/base/packages/items-module/AGENTS.md +3 -1
  59. package/templates/base/packages/items-module/package.json +4 -4
  60. package/templates/base/packages/items-module/src/server/adapters/{item.drizzle.ts → item.repository.ts} +1 -13
  61. package/templates/base/packages/items-module/src/server/module.ts +2 -1
  62. package/templates/base/packages/items-module/src/server/schema/item.ts +13 -0
package/README.md CHANGED
@@ -14,15 +14,6 @@ bun run dev
14
14
 
15
15
  - Node.js 18+
16
16
  - [Bun](https://bun.sh) package manager
17
- - A Kuckit account at [kuckit.dev](https://kuckit.dev)
18
-
19
- ## Authentication
20
-
21
- You need to authenticate before creating a project:
22
-
23
- ```bash
24
- npx @kuckit/cli auth login
25
- ```
26
17
 
27
18
  ## Usage
28
19
 
@@ -44,6 +35,7 @@ The generated project includes:
44
35
  - **Web** - React + TanStack Router frontend
45
36
  - **Database** - Drizzle ORM with PostgreSQL
46
37
  - **Kuckit SDK** - Module system ready to go
38
+ - **Example module** - Items module with full Clean Architecture
47
39
 
48
40
  ## Project Structure
49
41
 
@@ -52,7 +44,8 @@ my-app/
52
44
  ├── apps/
53
45
  │ ├── server/ # Backend API
54
46
  │ └── web/ # Frontend app
55
- ├── packages/ # Shared packages & modules
47
+ ├── packages/
48
+ │ └── items-module/ # Example module
56
49
  └── kuckit.config.ts
57
50
  ```
58
51
 
@@ -60,10 +53,27 @@ my-app/
60
53
 
61
54
  After creating your app:
62
55
 
63
- 1. Set up your database (see `packages/db/docker-compose.yml`)
64
- 2. Run migrations: `bun run db:push`
65
- 3. Start development: `bun run dev`
66
- 4. Add modules: `npx @kuckit/cli add <module>`
56
+ 1. Set up your database (see `docker-compose.yml` or use a cloud provider)
57
+ 2. Configure environment: `cp apps/server/.env.example apps/server/.env`
58
+ 3. Push schema: `bun run db:push`
59
+ 4. Start development: `bun run dev`
60
+ 5. Add modules: `bunx kuckit add <module>`
61
+
62
+ ## Deployment
63
+
64
+ Deploy to GCP with one command:
65
+
66
+ ```bash
67
+ bun add -D @kuckit/infra-gcp
68
+ bunx kuckit infra up
69
+ ```
70
+
71
+ See the [Deployment Guide](https://github.com/draphonix/kuckit/blob/main/docs/DEPLOYMENT.md) for details.
72
+
73
+ ## Documentation
74
+
75
+ - [kuckit.dev](https://kuckit.dev) - Full documentation
76
+ - [Architecture](https://github.com/draphonix/kuckit/blob/main/docs/ARCHITECTURE.md)
67
77
 
68
78
  ## License
69
79
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-kuckit-app",
3
- "version": "2.0.2",
3
+ "version": "2.2.0",
4
4
  "description": "Create a new Kuckit application",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -40,12 +40,14 @@
40
40
  },
41
41
  "scripts": {
42
42
  "build": "tsdown",
43
+ "test:e2e": "playwright test --config e2e/playwright.config.ts",
43
44
  "prepublishOnly": "npm run build && node ../../scripts/resolve-workspace-protocols.cjs && node ../../scripts/check-no-workspace-protocol.cjs"
44
45
  },
45
46
  "dependencies": {
46
47
  "commander": "^13.1.0"
47
48
  },
48
49
  "devDependencies": {
50
+ "@playwright/test": "^1.52.0",
49
51
  "@types/node": "^22.13.13",
50
52
  "tsdown": "catalog:"
51
53
  }
@@ -0,0 +1,87 @@
1
+ # Beads Skill Maintenance Guide
2
+
3
+ ## Architecture Decisions
4
+
5
+ ADRs in `adr/` document key decisions. These are NOT loaded during skill invocation—they're reference material for maintainers making changes.
6
+
7
+ | ADR | Decision |
8
+ | --------------------------------------------------- | ----------------------------------------------- |
9
+ | [ADR-0001](adr/0001-bd-prime-as-source-of-truth.md) | Use `bd prime` as CLI reference source of truth |
10
+
11
+ ## Key Principle: DRY via bd prime
12
+
13
+ **NEVER duplicate CLI documentation in SKILL.md or resources.**
14
+
15
+ - `bd prime` outputs AI-optimized workflow context
16
+ - `bd <command> --help` provides specific usage
17
+ - Both auto-update with bd releases
18
+
19
+ **SKILL.md should only contain:**
20
+
21
+ - Decision frameworks (bd vs TodoWrite)
22
+ - Prerequisites (install verification)
23
+ - Resource index (progressive disclosure)
24
+ - Pointers to `bd prime` and `--help`
25
+
26
+ ## Keeping the Skill Updated
27
+
28
+ ### When bd releases new version:
29
+
30
+ 1. **Check for new features**: `bd --help` for new commands
31
+ 2. **Update SKILL.md frontmatter**: `version: "X.Y.Z"`
32
+ 3. **Add resources for conceptual features** (agents, gates, chemistry patterns)
33
+ 4. **Don't add CLI reference** — that's `bd prime`'s job
34
+
35
+ ### What belongs in resources:
36
+
37
+ | Content Type | Belongs in Resources? | Why |
38
+ | --------------------- | --------------------- | -------------------------------------- |
39
+ | Conceptual frameworks | ✅ Yes | bd prime doesn't explain "when to use" |
40
+ | Decision trees | ✅ Yes | Cognitive guidance, not CLI reference |
41
+ | Advanced patterns | ✅ Yes | Depth beyond `--help` |
42
+ | CLI command syntax | ❌ No | Use `bd <cmd> --help` |
43
+ | Workflow checklists | ❌ No | `bd prime` covers this |
44
+
45
+ ### Resource update checklist:
46
+
47
+ ```
48
+ [ ] Check if bd prime now covers this content
49
+ [ ] If yes, remove from resources (avoid duplication)
50
+ [ ] If no, update resource for new bd version
51
+ [ ] Update version compatibility in README.md
52
+ ```
53
+
54
+ ## File Roles
55
+
56
+ | File | Purpose | When to Update |
57
+ | --------------- | ---------------------------- | ----------------------------------- |
58
+ | SKILL.md | Entry point, resource index | New features, version bumps |
59
+ | README.md | Human docs, installation | Structure changes |
60
+ | CLAUDE.md | This file, maintenance guide | Architecture changes |
61
+ | adr/\*.md | Decision records | When making architectural decisions |
62
+ | resources/\*.md | Deep-dive guides | New conceptual content |
63
+
64
+ ## Testing Changes
65
+
66
+ After skill updates:
67
+
68
+ ```bash
69
+ # Verify SKILL.md is within token budget
70
+ wc -w skills/beads/SKILL.md # Target: 400-600 words
71
+
72
+ # Verify links resolve
73
+ # (Manual check: ensure all resource links in SKILL.md exist)
74
+
75
+ # Verify bd prime still works
76
+ bd prime | head -20
77
+ ```
78
+
79
+ ## Attribution
80
+
81
+ Resources adapted from other sources should include attribution header:
82
+
83
+ ```markdown
84
+ # Resource Title
85
+
86
+ > Adapted from [source]
87
+ ```
@@ -0,0 +1,123 @@
1
+ # Beads Skill for Claude Code
2
+
3
+ A comprehensive skill for using [beads](https://github.com/steveyegge/beads) (bd) issue tracking with Claude Code.
4
+
5
+ ## What This Skill Does
6
+
7
+ This skill teaches Claude Code how to use bd effectively for:
8
+
9
+ - **Multi-session work tracking** - Persistent memory across conversation compactions
10
+ - **Dependency management** - Graph-based issue relationships
11
+ - **Session handoff** - Writing notes that survive context resets
12
+ - **Molecules and wisps** (v0.34.0+) - Reusable work templates and ephemeral workflows
13
+
14
+ ## Installation
15
+
16
+ Copy the `beads/` directory to your Claude Code skills location:
17
+
18
+ ```bash
19
+ # Global installation
20
+ cp -r beads ~/.claude/skills/
21
+
22
+ # Or project-local
23
+ cp -r beads .claude/skills/
24
+ ```
25
+
26
+ ## When Claude Uses This Skill
27
+
28
+ The skill activates when conversations involve:
29
+
30
+ - "multi-session", "complex dependencies", "resume after weeks"
31
+ - "project memory", "persistent context", "side quest tracking"
32
+ - Work that spans multiple days or compaction cycles
33
+ - Tasks too complex for simple TodoWrite lists
34
+
35
+ ## File Structure
36
+
37
+ ```
38
+ beads/
39
+ ├── SKILL.md # Main skill file (Claude reads this first)
40
+ ├── CLAUDE.md # Maintenance guide for updating the skill
41
+ ├── README.md # This file (for humans)
42
+ ├── adr/ # Architectural Decision Records
43
+ │ └── 0001-bd-prime-as-source-of-truth.md
44
+ └── resources/ # Detailed documentation (loaded on demand)
45
+ ├── BOUNDARIES.md # When to use bd vs TodoWrite
46
+ ├── CLI_REFERENCE.md # CLI command reference
47
+ ├── DEPENDENCIES.md # Dependency semantics (A blocks B vs B blocks A)
48
+ ├── INTEGRATION_PATTERNS.md # TodoWrite and other tool integration
49
+ ├── ISSUE_CREATION.md # When and how to create issues
50
+ ├── MOLECULES.md # Protos, mols, wisps (v0.34.0+)
51
+ ├── PATTERNS.md # Common usage patterns
52
+ ├── RESUMABILITY.md # Writing notes for post-compaction recovery
53
+ ├── STATIC_DATA.md # Using bd for reference databases
54
+ ├── TROUBLESHOOTING.md # Common issues and fixes
55
+ ├── WORKFLOWS.md # Step-by-step workflow guides
56
+ ├── AGENTS.md # Agent bead tracking (v0.40+)
57
+ ├── ASYNC_GATES.md # Human-in-the-loop gates
58
+ ├── CHEMISTRY_PATTERNS.md # Mol vs Wisp decision tree
59
+ └── WORKTREES.md # Parallel development patterns
60
+ ```
61
+
62
+ ## Key Concepts
63
+
64
+ ### bd vs TodoWrite
65
+
66
+ | Use bd when... | Use TodoWrite when... |
67
+ | ------------------------------------ | --------------------------- |
68
+ | Work spans multiple sessions | Single-session tasks |
69
+ | Complex dependencies exist | Linear step-by-step work |
70
+ | Need to resume after weeks | Just need a quick checklist |
71
+ | Knowledge work with fuzzy boundaries | Clear, immediate tasks |
72
+
73
+ ### The Dependency Direction Trap
74
+
75
+ `bd dep add A B` means **"A depends on B"** (B must complete before A can start).
76
+
77
+ ```bash
78
+ # Want: "Setup must complete before Implementation"
79
+ bd dep add implementation setup # ✓ CORRECT
80
+ # NOT: bd dep add setup implementation # ✗ WRONG
81
+ ```
82
+
83
+ ### Surviving Compaction
84
+
85
+ When Claude's context gets compacted, conversation history is lost but bd state survives. Write notes as if explaining to a future Claude with zero context:
86
+
87
+ ```bash
88
+ bd update issue-123 --notes "COMPLETED: JWT auth with RS256
89
+ KEY DECISION: RS256 over HS256 for key rotation
90
+ IN PROGRESS: Password reset flow
91
+ NEXT: Implement rate limiting"
92
+ ```
93
+
94
+ ## Requirements
95
+
96
+ - [bd CLI](https://github.com/steveyegge/beads) installed (`brew install steveyegge/beads/bd`)
97
+ - A git repository (bd requires git for sync)
98
+ - Initialized database (`bd init` in project root)
99
+
100
+ ## Version Compatibility
101
+
102
+ | Version | Features |
103
+ | -------- | ---------------------------------------------------------- |
104
+ | v0.43.0+ | Full support: agents, gates, worktrees, chemistry patterns |
105
+ | v0.40.0+ | Agent beads, async gates, worktree management |
106
+ | v0.34.0+ | Molecules, wisps, cross-project dependencies |
107
+ | v0.15.0+ | Core: dependencies, notes, status tracking |
108
+ | Earlier | Basic functionality, some features missing |
109
+
110
+ ## Contributing
111
+
112
+ This skill is maintained at [github.com/steveyegge/beads](https://github.com/steveyegge/beads) in the `skills/beads/` directory.
113
+
114
+ Issues and PRs welcome for:
115
+
116
+ - Documentation improvements
117
+ - New workflow patterns
118
+ - Bug fixes in examples
119
+ - Additional troubleshooting scenarios
120
+
121
+ ## License
122
+
123
+ MIT (same as beads)