@mindfoldhq/trellis 0.2.9 → 0.2.10

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 (46) hide show
  1. package/README.md +76 -74
  2. package/dist/commands/update.js +3 -3
  3. package/dist/commands/update.js.map +1 -1
  4. package/dist/migrations/manifests/0.3.0.json +175 -0
  5. package/dist/templates/claude/commands/{check-cross-layer.md → trellis/check-cross-layer.md} +1 -1
  6. package/dist/templates/{cursor/commands → claude/commands/trellis}/create-command.md +9 -9
  7. package/dist/templates/claude/commands/{finish-work.md → trellis/finish-work.md} +5 -5
  8. package/dist/templates/{cursor/commands → claude/commands/trellis}/integrate-skill.md +4 -4
  9. package/dist/templates/claude/commands/{onboard.md → trellis/onboard.md} +32 -32
  10. package/dist/templates/claude/commands/{parallel.md → trellis/parallel.md} +6 -6
  11. package/dist/templates/claude/commands/{start.md → trellis/start.md} +6 -6
  12. package/dist/templates/claude/commands/{update-spec.md → trellis/update-spec.md} +5 -5
  13. package/dist/templates/claude/hooks/inject-subagent-context.py +14 -18
  14. package/dist/templates/claude/hooks/session-start.py +3 -1
  15. package/dist/templates/claude/index.d.ts +2 -0
  16. package/dist/templates/claude/index.d.ts.map +1 -1
  17. package/dist/templates/claude/index.js +4 -2
  18. package/dist/templates/claude/index.js.map +1 -1
  19. package/dist/templates/cursor/commands/{check-cross-layer.md → trellis-check-cross-layer.md} +1 -1
  20. package/dist/templates/{claude/commands/create-command.md → cursor/commands/trellis-create-command.md} +9 -9
  21. package/dist/templates/cursor/commands/{finish-work.md → trellis-finish-work.md} +5 -5
  22. package/dist/templates/{claude/commands/integrate-skill.md → cursor/commands/trellis-integrate-skill.md} +4 -4
  23. package/dist/templates/cursor/commands/{onboard.md → trellis-onboard.md} +32 -32
  24. package/dist/templates/cursor/commands/{start.md → trellis-start.md} +11 -11
  25. package/dist/templates/cursor/commands/{update-spec.md → trellis-update-spec.md} +5 -5
  26. package/dist/templates/cursor/index.d.ts +2 -0
  27. package/dist/templates/cursor/index.d.ts.map +1 -1
  28. package/dist/templates/cursor/index.js +2 -0
  29. package/dist/templates/cursor/index.js.map +1 -1
  30. package/dist/templates/markdown/agents.md +1 -1
  31. package/dist/templates/trellis/scripts/create-bootstrap.sh +2 -2
  32. package/dist/templates/trellis/scripts/task.sh +5 -5
  33. package/dist/templates/trellis/workflow.md +7 -7
  34. package/package.json +1 -1
  35. /package/dist/templates/claude/commands/{before-backend-dev.md → trellis/before-backend-dev.md} +0 -0
  36. /package/dist/templates/claude/commands/{before-frontend-dev.md → trellis/before-frontend-dev.md} +0 -0
  37. /package/dist/templates/claude/commands/{break-loop.md → trellis/break-loop.md} +0 -0
  38. /package/dist/templates/claude/commands/{check-backend.md → trellis/check-backend.md} +0 -0
  39. /package/dist/templates/claude/commands/{check-frontend.md → trellis/check-frontend.md} +0 -0
  40. /package/dist/templates/claude/commands/{record-session.md → trellis/record-session.md} +0 -0
  41. /package/dist/templates/cursor/commands/{before-backend-dev.md → trellis-before-backend-dev.md} +0 -0
  42. /package/dist/templates/cursor/commands/{before-frontend-dev.md → trellis-before-frontend-dev.md} +0 -0
  43. /package/dist/templates/cursor/commands/{break-loop.md → trellis-break-loop.md} +0 -0
  44. /package/dist/templates/cursor/commands/{check-backend.md → trellis-check-backend.md} +0 -0
  45. /package/dist/templates/cursor/commands/{check-frontend.md → trellis-check-frontend.md} +0 -0
  46. /package/dist/templates/cursor/commands/{record-session.md → trellis-record-session.md} +0 -0
@@ -0,0 +1,175 @@
1
+ {
2
+ "version": "0.3.0",
3
+ "description": "Command path namespace migration for brand recognition",
4
+ "migrations": [
5
+ {
6
+ "type": "rename",
7
+ "from": ".claude/commands/start.md",
8
+ "to": ".claude/commands/trellis/start.md",
9
+ "description": "Move Claude start command to trellis/ subdirectory"
10
+ },
11
+ {
12
+ "type": "rename",
13
+ "from": ".claude/commands/finish-work.md",
14
+ "to": ".claude/commands/trellis/finish-work.md",
15
+ "description": "Move Claude finish-work command to trellis/ subdirectory"
16
+ },
17
+ {
18
+ "type": "rename",
19
+ "from": ".claude/commands/before-frontend-dev.md",
20
+ "to": ".claude/commands/trellis/before-frontend-dev.md",
21
+ "description": "Move Claude before-frontend-dev command to trellis/ subdirectory"
22
+ },
23
+ {
24
+ "type": "rename",
25
+ "from": ".claude/commands/before-backend-dev.md",
26
+ "to": ".claude/commands/trellis/before-backend-dev.md",
27
+ "description": "Move Claude before-backend-dev command to trellis/ subdirectory"
28
+ },
29
+ {
30
+ "type": "rename",
31
+ "from": ".claude/commands/check-frontend.md",
32
+ "to": ".claude/commands/trellis/check-frontend.md",
33
+ "description": "Move Claude check-frontend command to trellis/ subdirectory"
34
+ },
35
+ {
36
+ "type": "rename",
37
+ "from": ".claude/commands/check-backend.md",
38
+ "to": ".claude/commands/trellis/check-backend.md",
39
+ "description": "Move Claude check-backend command to trellis/ subdirectory"
40
+ },
41
+ {
42
+ "type": "rename",
43
+ "from": ".claude/commands/check-cross-layer.md",
44
+ "to": ".claude/commands/trellis/check-cross-layer.md",
45
+ "description": "Move Claude check-cross-layer command to trellis/ subdirectory"
46
+ },
47
+ {
48
+ "type": "rename",
49
+ "from": ".claude/commands/record-session.md",
50
+ "to": ".claude/commands/trellis/record-session.md",
51
+ "description": "Move Claude record-session command to trellis/ subdirectory"
52
+ },
53
+ {
54
+ "type": "rename",
55
+ "from": ".claude/commands/update-spec.md",
56
+ "to": ".claude/commands/trellis/update-spec.md",
57
+ "description": "Move Claude update-spec command to trellis/ subdirectory"
58
+ },
59
+ {
60
+ "type": "rename",
61
+ "from": ".claude/commands/onboard.md",
62
+ "to": ".claude/commands/trellis/onboard.md",
63
+ "description": "Move Claude onboard command to trellis/ subdirectory"
64
+ },
65
+ {
66
+ "type": "rename",
67
+ "from": ".claude/commands/break-loop.md",
68
+ "to": ".claude/commands/trellis/break-loop.md",
69
+ "description": "Move Claude break-loop command to trellis/ subdirectory"
70
+ },
71
+ {
72
+ "type": "rename",
73
+ "from": ".claude/commands/integrate-skill.md",
74
+ "to": ".claude/commands/trellis/integrate-skill.md",
75
+ "description": "Move Claude integrate-skill command to trellis/ subdirectory"
76
+ },
77
+ {
78
+ "type": "rename",
79
+ "from": ".claude/commands/create-command.md",
80
+ "to": ".claude/commands/trellis/create-command.md",
81
+ "description": "Move Claude create-command command to trellis/ subdirectory"
82
+ },
83
+ {
84
+ "type": "rename",
85
+ "from": ".claude/commands/parallel.md",
86
+ "to": ".claude/commands/trellis/parallel.md",
87
+ "description": "Move Claude parallel command to trellis/ subdirectory"
88
+ },
89
+ {
90
+ "type": "rename",
91
+ "from": ".cursor/commands/start.md",
92
+ "to": ".cursor/commands/trellis-start.md",
93
+ "description": "Rename Cursor start command with trellis- prefix"
94
+ },
95
+ {
96
+ "type": "rename",
97
+ "from": ".cursor/commands/finish-work.md",
98
+ "to": ".cursor/commands/trellis-finish-work.md",
99
+ "description": "Rename Cursor finish-work command with trellis- prefix"
100
+ },
101
+ {
102
+ "type": "rename",
103
+ "from": ".cursor/commands/before-frontend-dev.md",
104
+ "to": ".cursor/commands/trellis-before-frontend-dev.md",
105
+ "description": "Rename Cursor before-frontend-dev command with trellis- prefix"
106
+ },
107
+ {
108
+ "type": "rename",
109
+ "from": ".cursor/commands/before-backend-dev.md",
110
+ "to": ".cursor/commands/trellis-before-backend-dev.md",
111
+ "description": "Rename Cursor before-backend-dev command with trellis- prefix"
112
+ },
113
+ {
114
+ "type": "rename",
115
+ "from": ".cursor/commands/check-frontend.md",
116
+ "to": ".cursor/commands/trellis-check-frontend.md",
117
+ "description": "Rename Cursor check-frontend command with trellis- prefix"
118
+ },
119
+ {
120
+ "type": "rename",
121
+ "from": ".cursor/commands/check-backend.md",
122
+ "to": ".cursor/commands/trellis-check-backend.md",
123
+ "description": "Rename Cursor check-backend command with trellis- prefix"
124
+ },
125
+ {
126
+ "type": "rename",
127
+ "from": ".cursor/commands/check-cross-layer.md",
128
+ "to": ".cursor/commands/trellis-check-cross-layer.md",
129
+ "description": "Rename Cursor check-cross-layer command with trellis- prefix"
130
+ },
131
+ {
132
+ "type": "rename",
133
+ "from": ".cursor/commands/record-session.md",
134
+ "to": ".cursor/commands/trellis-record-session.md",
135
+ "description": "Rename Cursor record-session command with trellis- prefix"
136
+ },
137
+ {
138
+ "type": "rename",
139
+ "from": ".cursor/commands/update-spec.md",
140
+ "to": ".cursor/commands/trellis-update-spec.md",
141
+ "description": "Rename Cursor update-spec command with trellis- prefix"
142
+ },
143
+ {
144
+ "type": "rename",
145
+ "from": ".cursor/commands/onboard.md",
146
+ "to": ".cursor/commands/trellis-onboard.md",
147
+ "description": "Rename Cursor onboard command with trellis- prefix"
148
+ },
149
+ {
150
+ "type": "rename",
151
+ "from": ".cursor/commands/break-loop.md",
152
+ "to": ".cursor/commands/trellis-break-loop.md",
153
+ "description": "Rename Cursor break-loop command with trellis- prefix"
154
+ },
155
+ {
156
+ "type": "rename",
157
+ "from": ".cursor/commands/integrate-skill.md",
158
+ "to": ".cursor/commands/trellis-integrate-skill.md",
159
+ "description": "Rename Cursor integrate-skill command with trellis- prefix"
160
+ },
161
+ {
162
+ "type": "rename",
163
+ "from": ".cursor/commands/create-command.md",
164
+ "to": ".cursor/commands/trellis-create-command.md",
165
+ "description": "Rename Cursor create-command command with trellis- prefix"
166
+ },
167
+ {
168
+ "type": "rename",
169
+ "from": ".cursor/commands/parallel.md",
170
+ "to": ".cursor/commands/trellis-parallel.md",
171
+ "description": "Rename Cursor parallel command with trellis- prefix"
172
+ }
173
+ ],
174
+ "notes": "Claude Code uses subdirectory namespacing (.claude/commands/trellis/), Cursor uses filename prefix (.cursor/commands/trellis-*) since Cursor doesn't support nested command directories"
175
+ }
@@ -12,7 +12,7 @@ Check if your changes considered all dimensions. Most bugs come from "didn't thi
12
12
  |----------|---------|--------|
13
13
  | [Pre-Implementation Checklist](.trellis/spec/guides/pre-implementation-checklist.md) | Questions before coding | **Before** writing code |
14
14
  | [Code Reuse Thinking Guide](.trellis/spec/guides/code-reuse-thinking-guide.md) | Pattern recognition | During implementation |
15
- | **`/check-cross-layer`** (this) | Verification check | **After** implementation |
15
+ | **`/trellis:check-cross-layer`** (this) | Verification check | **After** implementation |
16
16
 
17
17
  ---
18
18
 
@@ -1,16 +1,16 @@
1
1
  # Create New Slash Command
2
2
 
3
- Create a new slash command in both `.cursor/commands/` and `.claude/commands/` directories based on user requirements.
3
+ Create a new slash command in both `.cursor/commands/` (with `trellis-` prefix) and `.claude/commands/trellis/` directories based on user requirements.
4
4
 
5
5
  ## Usage
6
6
 
7
7
  ```
8
- /create-command <command-name> <description>
8
+ /trellis:create-command <command-name> <description>
9
9
  ```
10
10
 
11
11
  **Example**:
12
12
  ```
13
- /create-command review-pr Check PR code changes against project guidelines
13
+ /trellis:create-command review-pr Check PR code changes against project guidelines
14
14
  ```
15
15
 
16
16
  ## Execution Steps
@@ -61,8 +61,8 @@ Template
61
61
  ### 4. Create Files
62
62
 
63
63
  Create in both directories:
64
- - `.cursor/commands/<command-name>.md`
65
- - `.claude/commands/<command-name>.md`
64
+ - `.cursor/commands/trellis-<command-name>.md`
65
+ - `.claude/commands/trellis/<command-name>.md`
66
66
 
67
67
  ### 5. Confirm Creation
68
68
 
@@ -71,11 +71,11 @@ Output result:
71
71
  [OK] Created Slash Command: /<command-name>
72
72
 
73
73
  File paths:
74
- - .cursor/commands/<command-name>.md
75
- - .claude/commands/<command-name>.md
74
+ - .cursor/commands/trellis-<command-name>.md
75
+ - .claude/commands/trellis/<command-name>.md
76
76
 
77
77
  Usage:
78
- /<command-name>
78
+ /trellis:<command-name>
79
79
 
80
80
  Description:
81
81
  <description>
@@ -112,7 +112,7 @@ Description:
112
112
 
113
113
  ### Input
114
114
  ```
115
- /create-command review-pr Check PR code changes against project guidelines
115
+ /trellis:create-command review-pr Check PR code changes against project guidelines
116
116
  ```
117
117
 
118
118
  ### Generated Command Content
@@ -106,19 +106,19 @@ git diff --name-only
106
106
 
107
107
  ```
108
108
  Development Flow:
109
- Write code -> Test -> /finish-work -> git commit -> /record-session
109
+ Write code -> Test -> /trellis:finish-work -> git commit -> /trellis:record-session
110
110
  | |
111
111
  Ensure completeness Record progress
112
112
 
113
113
  Debug Flow:
114
- Hit bug -> Fix -> /break-loop -> Knowledge capture
114
+ Hit bug -> Fix -> /trellis:break-loop -> Knowledge capture
115
115
  |
116
116
  Deep analysis
117
117
  ```
118
118
 
119
- - `/finish-work` - Check work completeness (this command)
120
- - `/record-session` - Record session and commits
121
- - `/break-loop` - Deep analysis after debugging
119
+ - `/trellis:finish-work` - Check work completeness (this command)
120
+ - `/trellis:record-session` - Record session and commits
121
+ - `/trellis:break-loop` - Deep analysis after debugging
122
122
 
123
123
  ---
124
124
 
@@ -5,13 +5,13 @@ Adapt and integrate a Claude global skill into your project's development guidel
5
5
  ## Usage
6
6
 
7
7
  ```
8
- /integrate-skill <skill-name>
8
+ /trellis:integrate-skill <skill-name>
9
9
  ```
10
10
 
11
11
  **Examples**:
12
12
  ```
13
- /integrate-skill frontend-design
14
- /integrate-skill mcp-builder
13
+ /trellis:integrate-skill frontend-design
14
+ /trellis:integrate-skill mcp-builder
15
15
  ```
16
16
 
17
17
  ## Core Principle
@@ -169,7 +169,7 @@ yarn add <package>
169
169
  If this skill is frequently used, create a shortcut command:
170
170
 
171
171
  ```bash
172
- /create-command use-<skill-name> Use <skill-name> skill following project guidelines
172
+ /trellis:create-command use-<skill-name> Use <skill-name> skill following project guidelines
173
173
  ```
174
174
 
175
175
  ## Common Skill Integration Reference
@@ -41,7 +41,7 @@ Every AI session starts with a blank slate. Unlike human engineers who accumulat
41
41
 
42
42
  **The Problem**: Without memory, AI asks the same questions repeatedly, makes the same mistakes, and can't build on previous work.
43
43
 
44
- **The Solution**: The `.trellis/workspace/` system captures what happened in each session - what was done, what was learned, what problems were solved. The `/start` command reads this history at session start, giving AI "artificial memory."
44
+ **The Solution**: The `.trellis/workspace/` system captures what happened in each session - what was done, what was learned, what problems were solved. The `/trellis:start` command reads this history at session start, giving AI "artificial memory."
45
45
 
46
46
  ### Challenge 2: AI Has Generic Knowledge, Not Project-Specific Knowledge
47
47
 
@@ -57,7 +57,7 @@ Even after injecting guidelines, AI has limited context window. As conversation
57
57
 
58
58
  **The Problem**: AI starts following guidelines, but as the session progresses and context fills up, it "forgets" the rules and reverts to generic patterns.
59
59
 
60
- **The Solution**: The `/check-*` commands re-verify code against guidelines AFTER writing, catching drift that occurred during development. The `/finish-work` command does a final holistic review.
60
+ **The Solution**: The `/check-*` commands re-verify code against guidelines AFTER writing, catching drift that occurred during development. The `/trellis:finish-work` command does a final holistic review.
61
61
 
62
62
  ---
63
63
 
@@ -106,7 +106,7 @@ Even after injecting guidelines, AI has limited context window. As conversation
106
106
 
107
107
  ## COMMAND DEEP DIVE
108
108
 
109
- ### /start - Restore AI Memory
109
+ ### /trellis:start - Restore AI Memory
110
110
 
111
111
  **WHY IT EXISTS**:
112
112
  When a human engineer joins a project, they spend days/weeks learning: What is this project? What's been built? What's in progress? What's the current state?
@@ -121,12 +121,12 @@ AI needs the same onboarding - but compressed into seconds at session start.
121
121
  5. Understands current project state before making any changes
122
122
 
123
123
  **WHY THIS MATTERS**:
124
- - Without /start: AI is blind. It might work on wrong branch, conflict with others' work, or redo already-completed work.
125
- - With /start: AI knows project context, can continue where previous session left off, avoids conflicts.
124
+ - Without /trellis:start: AI is blind. It might work on wrong branch, conflict with others' work, or redo already-completed work.
125
+ - With /trellis:start: AI knows project context, can continue where previous session left off, avoids conflicts.
126
126
 
127
127
  ---
128
128
 
129
- ### /before-frontend-dev and /before-backend-dev - Inject Specialized Knowledge
129
+ ### /trellis:before-frontend-dev and /trellis:before-backend-dev - Inject Specialized Knowledge
130
130
 
131
131
  **WHY IT EXISTS**:
132
132
  AI models have "pre-trained knowledge" - general patterns from millions of codebases. But YOUR project has specific conventions that differ from generic patterns.
@@ -145,7 +145,7 @@ AI models have "pre-trained knowledge" - general patterns from millions of codeb
145
145
 
146
146
  ---
147
147
 
148
- ### /check-frontend and /check-backend - Combat Context Drift
148
+ ### /trellis:check-frontend and /trellis:check-backend - Combat Context Drift
149
149
 
150
150
  **WHY IT EXISTS**:
151
151
  AI context window has limited capacity. As conversation progresses, guidelines injected at session start become less influential. This causes "context drift."
@@ -162,7 +162,7 @@ AI context window has limited capacity. As conversation progresses, guidelines i
162
162
 
163
163
  ---
164
164
 
165
- ### /check-cross-layer - Multi-Dimension Verification
165
+ ### /trellis:check-cross-layer - Multi-Dimension Verification
166
166
 
167
167
  **WHY IT EXISTS**:
168
168
  Most bugs don't come from lack of technical skill - they come from "didn't think of it":
@@ -180,7 +180,7 @@ Most bugs don't come from lack of technical skill - they come from "didn't think
180
180
 
181
181
  ---
182
182
 
183
- ### /finish-work - Holistic Pre-Commit Review
183
+ ### /trellis:finish-work - Holistic Pre-Commit Review
184
184
 
185
185
  **WHY IT EXISTS**:
186
186
  The `/check-*` commands focus on code quality within a single layer. But real changes often have cross-cutting concerns.
@@ -193,10 +193,10 @@ The `/check-*` commands focus on code quality within a single layer. But real ch
193
193
 
194
194
  ---
195
195
 
196
- ### /record-session - Persist Memory for Future
196
+ ### /trellis:record-session - Persist Memory for Future
197
197
 
198
198
  **WHY IT EXISTS**:
199
- All the context AI built during this session will be lost when session ends. The next session's `/start` needs this information.
199
+ All the context AI built during this session will be lost when session ends. The next session's `/trellis:start` needs this information.
200
200
 
201
201
  **WHAT IT ACTUALLY DOES**:
202
202
  1. Records session summary to `workspace/{developer}/journal-N.md`
@@ -209,47 +209,47 @@ All the context AI built during this session will be lost when session ends. The
209
209
 
210
210
  ### Example 1: Bug Fix Session
211
211
 
212
- **[1/8] /start** - AI needs project context before touching code
212
+ **[1/8] /trellis:start** - AI needs project context before touching code
213
213
  **[2/8] ./.trellis/scripts/task.sh create "Fix bug" --slug fix-bug** - Track work for future reference
214
- **[3/8] /before-frontend-dev** - Inject project-specific frontend knowledge
214
+ **[3/8] /trellis:before-frontend-dev** - Inject project-specific frontend knowledge
215
215
  **[4/8] Investigate and fix the bug** - Actual development work
216
- **[5/8] /check-frontend** - Re-verify code against guidelines
217
- **[6/8] /finish-work** - Holistic cross-layer review
216
+ **[5/8] /trellis:check-frontend** - Re-verify code against guidelines
217
+ **[6/8] /trellis:finish-work** - Holistic cross-layer review
218
218
  **[7/8] Human tests and commits** - Human validates before code enters repo
219
- **[8/8] /record-session** - Persist memory for future sessions
219
+ **[8/8] /trellis:record-session** - Persist memory for future sessions
220
220
 
221
221
  ### Example 2: Planning Session (No Code)
222
222
 
223
- **[1/4] /start** - Context needed even for non-coding work
223
+ **[1/4] /trellis:start** - Context needed even for non-coding work
224
224
  **[2/4] ./.trellis/scripts/task.sh create "Planning task" --slug planning-task** - Planning is valuable work
225
225
  **[3/4] Review docs, create subtask list** - Actual planning work
226
- **[4/4] /record-session (with --summary)** - Planning decisions must be recorded
226
+ **[4/4] /trellis:record-session (with --summary)** - Planning decisions must be recorded
227
227
 
228
228
  ### Example 3: Code Review Fixes
229
229
 
230
- **[1/6] /start** - Resume context from previous session
231
- **[2/6] /before-backend-dev** - Re-inject guidelines before fixes
230
+ **[1/6] /trellis:start** - Resume context from previous session
231
+ **[2/6] /trellis:before-backend-dev** - Re-inject guidelines before fixes
232
232
  **[3/6] Fix each CR issue** - Address feedback with guidelines in context
233
- **[4/6] /check-backend** - Verify fixes didn't introduce new issues
234
- **[5/6] /finish-work** - Document lessons from CR
235
- **[6/6] Human commits, then /record-session** - Preserve CR lessons
233
+ **[4/6] /trellis:check-backend** - Verify fixes didn't introduce new issues
234
+ **[5/6] /trellis:finish-work** - Document lessons from CR
235
+ **[6/6] Human commits, then /trellis:record-session** - Preserve CR lessons
236
236
 
237
237
  ### Example 4: Large Refactoring
238
238
 
239
- **[1/5] /start** - Clear baseline before major changes
239
+ **[1/5] /trellis:start** - Clear baseline before major changes
240
240
  **[2/5] Plan phases** - Break into verifiable chunks
241
241
  **[3/5] Execute phase by phase with /check-* after each** - Incremental verification
242
- **[4/5] /finish-work** - Check if new patterns should be documented
242
+ **[4/5] /trellis:finish-work** - Check if new patterns should be documented
243
243
  **[5/5] Record with multiple commit hashes** - Link all commits to one feature
244
244
 
245
245
  ### Example 5: Debug Session
246
246
 
247
- **[1/6] /start** - See if this bug was investigated before
248
- **[2/6] /before-backend-dev** - Guidelines might document known gotchas
247
+ **[1/6] /trellis:start** - See if this bug was investigated before
248
+ **[2/6] /trellis:before-backend-dev** - Guidelines might document known gotchas
249
249
  **[3/6] Investigation** - Actual debugging work
250
- **[4/6] /check-backend** - Verify debug changes don't break other things
251
- **[5/6] /finish-work** - Debug findings might need documentation
252
- **[6/6] Human commits, then /record-session** - Debug knowledge is valuable
250
+ **[4/6] /trellis:check-backend** - Verify debug changes don't break other things
251
+ **[5/6] /trellis:finish-work** - Debug findings might need documentation
252
+ **[6/6] Human commits, then /trellis:record-session** - Debug knowledge is valuable
253
253
 
254
254
  ---
255
255
 
@@ -258,7 +258,7 @@ All the context AI built during this session will be lost when session ends. The
258
258
  1. **AI NEVER commits** - Human tests and approves. AI prepares, human validates.
259
259
  2. **Guidelines before code** - /before-*-dev commands inject project knowledge.
260
260
  3. **Check after code** - /check-* commands catch context drift.
261
- 4. **Record everything** - /record-session persists memory.
261
+ 4. **Record everything** - /trellis:record-session persists memory.
262
262
 
263
263
  ---
264
264
 
@@ -351,7 +351,7 @@ After covering all three parts, summarize:
351
351
  - Part 3: Guidelines status (empty templates need filling / already customized)
352
352
 
353
353
  **Next steps** (tell user):
354
- 1. Run `/record-session` to record this onboard session
354
+ 1. Run `/trellis:record-session` to record this onboard session
355
355
  2. [If guidelines empty] Start filling in `.trellis/spec/` guidelines
356
356
  3. [If guidelines ready] Start your first development task
357
357
 
@@ -84,7 +84,7 @@ Plan Agent will:
84
84
  After plan.sh completes, start the worktree agent:
85
85
 
86
86
  ```bash
87
- ./.trellis/scripts/multi-agent/start.sh "$TASK_DIR"
87
+ ./.trellis/scripts/multi-agent/trellis:start.sh "$TASK_DIR"
88
88
  ```
89
89
 
90
90
  ### Option B: Manual Configuration (For simple/clear features) `[AI]`
@@ -137,7 +137,7 @@ EOF
137
137
 
138
138
  ```bash
139
139
  ./.trellis/scripts/task.sh validate "$TASK_DIR"
140
- ./.trellis/scripts/multi-agent/start.sh "$TASK_DIR"
140
+ ./.trellis/scripts/multi-agent/trellis:start.sh "$TASK_DIR"
141
141
  ```
142
142
 
143
143
  ---
@@ -154,10 +154,10 @@ The following slash commands are for users (not AI):
154
154
 
155
155
  | Command | Description |
156
156
  |---------|-------------|
157
- | `/parallel` | Start Multi-Agent Pipeline (this command) |
158
- | `/start` | Start normal development mode (single process) |
159
- | `/record-session` | Record session progress |
160
- | `/finish-work` | Pre-completion checklist |
157
+ | `/trellis:parallel` | Start Multi-Agent Pipeline (this command) |
158
+ | `/trellis:start` | Start normal development mode (single process) |
159
+ | `/trellis:record-session` | Record session progress |
160
+ | `/trellis:finish-work` | Pre-completion checklist |
161
161
 
162
162
  ---
163
163
 
@@ -75,7 +75,7 @@ When user describes a task, classify it:
75
75
  For questions or trivial fixes, work directly:
76
76
 
77
77
  1. Answer question or make the fix
78
- 2. If code was changed, remind user to run `/finish-work`
78
+ 2. If code was changed, remind user to run `/trellis:finish-work`
79
79
 
80
80
  ---
81
81
 
@@ -222,7 +222,7 @@ Task(
222
222
  3. Remind user to:
223
223
  - Test the changes
224
224
  - Commit when ready
225
- - Run `/record-session` to record this session
225
+ - Run `/trellis:record-session` to record this session
226
226
 
227
227
  ---
228
228
 
@@ -244,10 +244,10 @@ If yes, resume from the appropriate step (usually Step 7 or 8).
244
244
 
245
245
  | Command | When to Use |
246
246
  |---------|-------------|
247
- | `/start` | Begin a session (this command) |
248
- | `/parallel` | Complex tasks needing isolated worktree |
249
- | `/finish-work` | Before committing changes |
250
- | `/record-session` | After completing a task |
247
+ | `/trellis:start` | Begin a session (this command) |
248
+ | `/trellis:parallel` | Complex tasks needing isolated worktree |
249
+ | `/trellis:finish-work` | Before committing changes |
250
+ | `/trellis:record-session` | After completing a task |
251
251
 
252
252
  ### AI Scripts `[AI]`
253
253
 
@@ -191,15 +191,15 @@ Before finishing your spec update:
191
191
 
192
192
  ```
193
193
  Development Flow:
194
- Learn something → /update-spec → Knowledge captured
194
+ Learn something → /trellis:update-spec → Knowledge captured
195
195
  ↑ ↓
196
- /break-loop ←──────────────────── Future sessions benefit
196
+ /trellis:break-loop ←──────────────────── Future sessions benefit
197
197
  (deep bug analysis)
198
198
  ```
199
199
 
200
- - `/break-loop` - Analyzes bugs deeply, often reveals spec updates needed
201
- - `/update-spec` - Actually makes the updates (this command)
202
- - `/finish-work` - Reminds you to check if specs need updates
200
+ - `/trellis:break-loop` - Analyzes bugs deeply, often reveals spec updates needed
201
+ - `/trellis:update-spec` - Actually makes the updates (this command)
202
+ - `/trellis:finish-work` - Reminds you to check if specs need updates
203
203
 
204
204
  ---
205
205
 
@@ -292,9 +292,7 @@ def get_implement_context(repo_root: str, task_dir: str) -> str:
292
292
  # 2. Requirements document
293
293
  prd_content = read_file_content(repo_root, f"{task_dir}/prd.md")
294
294
  if prd_content:
295
- context_parts.append(
296
- f"=== {task_dir}/prd.md (Requirements) ===\n{prd_content}"
297
- )
295
+ context_parts.append(f"=== {task_dir}/prd.md (Requirements) ===\n{prd_content}")
298
296
 
299
297
  # 3. Technical design
300
298
  info_content = read_file_content(repo_root, f"{task_dir}/info.md")
@@ -325,10 +323,10 @@ def get_check_context(repo_root: str, task_dir: str) -> str:
325
323
  else:
326
324
  # Fallback: use hardcoded check files + spec.jsonl
327
325
  check_files = [
328
- (".claude/commands/finish-work.md", "Finish work checklist"),
329
- (".claude/commands/check-cross-layer.md", "Cross-layer check spec"),
330
- (".claude/commands/check-backend.md", "Backend check spec"),
331
- (".claude/commands/check-frontend.md", "Frontend check spec"),
326
+ (".claude/commands/trellis/finish-work.md", "Finish work checklist"),
327
+ (".claude/commands/trellis/check-cross-layer.md", "Cross-layer check spec"),
328
+ (".claude/commands/trellis/check-backend.md", "Backend check spec"),
329
+ (".claude/commands/trellis/check-frontend.md", "Frontend check spec"),
332
330
  ]
333
331
  for file_path, description in check_files:
334
332
  content = read_file_content(repo_root, file_path)
@@ -369,10 +367,12 @@ def get_finish_context(repo_root: str, task_dir: str) -> str:
369
367
  context_parts.append(f"=== {file_path} ===\n{content}")
370
368
  else:
371
369
  # Fallback: only finish-work.md (lightweight)
372
- finish_work = read_file_content(repo_root, ".claude/commands/finish-work.md")
370
+ finish_work = read_file_content(
371
+ repo_root, ".claude/commands/trellis/finish-work.md"
372
+ )
373
373
  if finish_work:
374
374
  context_parts.append(
375
- f"=== .claude/commands/finish-work.md (Finish checklist) ===\n{finish_work}"
375
+ f"=== .claude/commands/trellis/finish-work.md (Finish checklist) ===\n{finish_work}"
376
376
  )
377
377
 
378
378
  # 2. Requirements document (for verifying requirements are met)
@@ -408,9 +408,9 @@ def get_debug_context(repo_root: str, task_dir: str) -> str:
408
408
  context_parts.append(f"=== {file_path} (Dev spec) ===\n{content}")
409
409
 
410
410
  check_files = [
411
- (".claude/commands/check-backend.md", "Backend check spec"),
412
- (".claude/commands/check-frontend.md", "Frontend check spec"),
413
- (".claude/commands/check-cross-layer.md", "Cross-layer check spec"),
411
+ (".claude/commands/trellis/check-backend.md", "Backend check spec"),
412
+ (".claude/commands/trellis/check-frontend.md", "Frontend check spec"),
413
+ (".claude/commands/trellis/check-cross-layer.md", "Cross-layer check spec"),
414
414
  ]
415
415
  for file_path, description in check_files:
416
416
  content = read_file_content(repo_root, file_path)
@@ -418,9 +418,7 @@ def get_debug_context(repo_root: str, task_dir: str) -> str:
418
418
  context_parts.append(f"=== {file_path} ({description}) ===\n{content}")
419
419
 
420
420
  # 2. Codex review output (if exists)
421
- codex_output = read_file_content(
422
- repo_root, f"{task_dir}/codex-review-output.txt"
423
- )
421
+ codex_output = read_file_content(repo_root, f"{task_dir}/codex-review-output.txt")
424
422
  if codex_output:
425
423
  context_parts.append(
426
424
  f"=== {task_dir}/codex-review-output.txt (Codex Review Results) ===\n{codex_output}"
@@ -600,9 +598,7 @@ def get_research_context(repo_root: str, task_dir: str | None) -> str:
600
598
 
601
599
  # 2. If task directory exists, try reading research.jsonl (optional)
602
600
  if task_dir:
603
- research_entries = read_jsonl_entries(
604
- repo_root, f"{task_dir}/research.jsonl"
605
- )
601
+ research_entries = read_jsonl_entries(repo_root, f"{task_dir}/research.jsonl")
606
602
  if research_entries:
607
603
  context_parts.append(
608
604
  "\n## Additional Search Context (from research.jsonl)\n"
@@ -109,7 +109,9 @@ Read and follow all instructions below carefully.
109
109
 
110
110
  # 5. Session Instructions
111
111
  print("<instructions>")
112
- start_md = read_file(claude_dir / "commands" / "start.md", "No start.md found")
112
+ start_md = read_file(
113
+ claude_dir / "commands" / "trellis" / "start.md", "No start.md found"
114
+ )
113
115
  print(start_md)
114
116
  print("</instructions>")
115
117
  print()
@@ -35,6 +35,8 @@ export interface HookTemplate {
35
35
  }
36
36
  /**
37
37
  * Get all command templates
38
+ * Commands are stored in commands/trellis/ subdirectory
39
+ * This creates commands like /trellis:start, /trellis:finish-work, etc.
38
40
  */
39
41
  export declare function getAllCommands(): CommandTemplate[];
40
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/claude/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAsBH,eAAO,MAAM,gBAAgB,QAAgC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,eAAe,EAAE,CAalD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAa9C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAU5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,CAKlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/claude/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAsBH,eAAO,MAAM,gBAAgB,QAAgC,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,eAAe,EAAE,CAalD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAa9C;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,YAAY,EAAE,CAU5C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,YAAY,CAKlD"}