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.
- package/README.md +24 -14
- package/package.json +3 -1
- package/templates/base/.claude/skills/beads/CLAUDE.md +87 -0
- package/templates/base/.claude/skills/beads/README.md +123 -0
- package/templates/base/.claude/skills/beads/SKILL.md +77 -715
- package/templates/base/.claude/skills/beads/adr/0001-bd-prime-as-source-of-truth.md +61 -0
- package/templates/base/.claude/skills/beads/resources/AGENTS.md +62 -0
- package/templates/base/.claude/skills/beads/resources/ASYNC_GATES.md +175 -0
- package/templates/base/.claude/skills/beads/resources/BOUNDARIES.md +520 -0
- package/templates/base/.claude/skills/beads/resources/CHEMISTRY_PATTERNS.md +197 -0
- package/templates/base/.claude/skills/beads/resources/CLI_REFERENCE.md +561 -0
- package/templates/base/.claude/skills/beads/resources/DEPENDENCIES.md +754 -0
- package/templates/base/.claude/skills/beads/resources/INTEGRATION_PATTERNS.md +438 -0
- package/templates/base/.claude/skills/beads/resources/ISSUE_CREATION.md +150 -0
- package/templates/base/.claude/skills/beads/resources/MOLECULES.md +370 -0
- package/templates/base/.claude/skills/beads/resources/PATTERNS.md +363 -0
- package/templates/base/.claude/skills/beads/resources/RESUMABILITY.md +239 -0
- package/templates/base/.claude/skills/beads/resources/STATIC_DATA.md +61 -0
- package/templates/base/.claude/skills/beads/resources/TROUBLESHOOTING.md +537 -0
- package/templates/base/.claude/skills/beads/resources/WORKFLOWS.md +638 -0
- package/templates/base/.claude/skills/beads/resources/WORKTREES.md +95 -0
- package/templates/base/.claude/skills/browser-skill/SKILL.md +72 -0
- package/templates/base/.claude/skills/knowledge/SKILL.md +155 -205
- package/templates/base/.claude/skills/knowledge/reference/doc-mapping.md +49 -0
- package/templates/base/.claude/skills/knowledge/reference/extraction-prompts.md +102 -0
- package/templates/base/.claude/skills/kuckit/SKILL.md +15 -9
- package/templates/base/.claude/skills/kuckit/references/MODULE-DEVELOPMENT.md +142 -0
- package/templates/base/.claude/skills/kuckit/references/PACKAGES.md +22 -17
- package/templates/base/.claude/skills/kuckit/references/PUBLISHING.md +92 -0
- package/templates/base/.claude/skills/module-testing/SKILL.md +1 -1
- package/templates/base/.claude/skills/planning/SKILL.md +26 -1
- package/templates/base/.env.example +1 -1
- package/templates/base/AGENTS.md +155 -418
- package/templates/base/apps/server/package.json +3 -3
- package/templates/base/apps/server/src/modules.ts +14 -1
- package/templates/base/apps/web/.env.example +1 -1
- package/templates/base/apps/web/package.json +2 -2
- package/templates/base/apps/web/src/components/dashboard/nav-user.tsx +3 -3
- package/templates/base/apps/web/src/components/ui/sidebar.tsx +2 -1
- package/templates/base/apps/web/src/routes/$.tsx +0 -1
- package/templates/base/apps/web/src/routes/__root.tsx +7 -1
- package/templates/base/apps/web/src/routes/dashboard.tsx +3 -1
- package/templates/base/apps/web/src/routes/index.tsx +17 -22
- package/templates/base/apps/web/src/routes/login.tsx +81 -50
- package/templates/base/apps/web/tsconfig.json +1 -0
- package/templates/base/docs/ARCHITECTURE.md +689 -0
- package/templates/base/docs/DEPENDENCY-INJECTION.md +871 -0
- package/templates/base/docs/DEPLOYMENT.md +573 -0
- package/templates/base/docs/INDEX.md +135 -0
- package/templates/base/docs/MIGRATION.md +989 -0
- package/templates/base/docs/MODULE_CSS.md +343 -0
- package/templates/base/docs/MODULE_TESTING.md +368 -0
- package/templates/base/docs/MULTI_AGENT_WORKFLOW.md +909 -0
- package/templates/base/docs/TESTING.md +579 -0
- package/templates/base/docs/TROUBLESHOOTING.md +360 -0
- package/templates/base/drizzle.config.ts +17 -1
- package/templates/base/package.json +8 -6
- package/templates/base/packages/items-module/AGENTS.md +3 -1
- package/templates/base/packages/items-module/package.json +4 -4
- package/templates/base/packages/items-module/src/server/adapters/{item.drizzle.ts → item.repository.ts} +1 -13
- package/templates/base/packages/items-module/src/server/module.ts +2 -1
- 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/
|
|
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 `
|
|
64
|
-
2.
|
|
65
|
-
3.
|
|
66
|
-
4.
|
|
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
|
|
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)
|