@mindfoldhq/trellis 0.5.0-beta.3 → 0.5.0-beta.5

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/dist/commands/update.d.ts.map +1 -1
  2. package/dist/commands/update.js +10 -2
  3. package/dist/commands/update.js.map +1 -1
  4. package/dist/configurators/shared.d.ts +1 -1
  5. package/dist/configurators/shared.d.ts.map +1 -1
  6. package/dist/configurators/shared.js +5 -3
  7. package/dist/configurators/shared.js.map +1 -1
  8. package/dist/migrations/manifests/0.5.0-beta.4.json +9 -0
  9. package/dist/migrations/manifests/0.5.0-beta.5.json +220 -0
  10. package/dist/templates/claude/agents/{check.md → trellis-check.md} +1 -2
  11. package/dist/templates/{cursor/agents/implement.md → claude/agents/trellis-implement.md} +1 -2
  12. package/dist/templates/{cursor/agents/research.md → claude/agents/trellis-research.md} +1 -2
  13. package/dist/templates/{cursor/agents/check.md → codebuddy/agents/trellis-check.md} +1 -2
  14. package/dist/templates/{claude/agents/implement.md → codebuddy/agents/trellis-implement.md} +1 -2
  15. package/dist/templates/{droid/droids/research.md → codebuddy/agents/trellis-research.md} +1 -2
  16. package/dist/templates/codex/agents/{check.toml → trellis-check.toml} +1 -1
  17. package/dist/templates/codex/agents/{implement.toml → trellis-implement.toml} +1 -1
  18. package/dist/templates/codex/agents/{research.toml → trellis-research.toml} +1 -1
  19. package/dist/templates/copilot/prompts/start.prompt.md +12 -15
  20. package/dist/templates/{droid/droids/check.md → cursor/agents/trellis-check.md} +1 -2
  21. package/dist/templates/{codebuddy/agents/implement.md → cursor/agents/trellis-implement.md} +1 -2
  22. package/dist/templates/{claude/agents/research.md → cursor/agents/trellis-research.md} +1 -2
  23. package/dist/templates/{codebuddy/agents/check.md → droid/droids/trellis-check.md} +1 -2
  24. package/dist/templates/droid/droids/{implement.md → trellis-implement.md} +1 -2
  25. package/dist/templates/{codebuddy/agents/research.md → droid/droids/trellis-research.md} +1 -2
  26. package/dist/templates/gemini/agents/trellis-check.md +94 -0
  27. package/dist/templates/gemini/agents/trellis-implement.md +94 -0
  28. package/dist/templates/gemini/agents/trellis-research.md +137 -0
  29. package/dist/templates/kiro/agents/{check.json → trellis-check.json} +1 -1
  30. package/dist/templates/kiro/agents/{implement.json → trellis-implement.json} +1 -1
  31. package/dist/templates/kiro/agents/{research.json → trellis-research.json} +1 -1
  32. package/dist/templates/qoder/agents/trellis-check.md +94 -0
  33. package/dist/templates/qoder/agents/trellis-implement.md +94 -0
  34. package/dist/templates/qoder/agents/trellis-research.md +137 -0
  35. package/dist/templates/shared-hooks/inject-subagent-context.py +3 -3
  36. package/dist/templates/trellis/workflow.md +3 -3
  37. package/package.json +1 -1
  38. package/dist/templates/gemini/agents/check.md +0 -95
  39. package/dist/templates/gemini/agents/implement.md +0 -95
  40. package/dist/templates/gemini/agents/research.md +0 -138
  41. package/dist/templates/qoder/agents/check.md +0 -95
  42. package/dist/templates/qoder/agents/implement.md +0 -95
  43. package/dist/templates/qoder/agents/research.md +0 -138
  44. /package/dist/templates/opencode/agents/{check.md → trellis-check.md} +0 -0
  45. /package/dist/templates/opencode/agents/{implement.md → trellis-implement.md} +0 -0
  46. /package/dist/templates/opencode/agents/{research.md → trellis-research.md} +0 -0
@@ -0,0 +1,220 @@
1
+ {
2
+ "version": "0.5.0-beta.5",
3
+ "description": "Sub-agent rename + remove model: opus from all agent templates. Prefixes implement/check/research with trellis- to prevent accidental invocation by user's own agents or the main agent's description heuristics. Drops hardcoded model: opus from agent frontmatter across all 10 platforms — this caused Cursor users real cost pain because Cursor mapped opus to Claude Opus (~5x Sonnet pricing).",
4
+ "breaking": true,
5
+ "recommendMigrate": true,
6
+ "changelog": "**Breaking Changes:**\n- rename(agents): `implement` / `check` / `research` sub-agents are now `trellis-implement` / `trellis-check` / `trellis-research` across all 10 platforms (claude, cursor, opencode, codex, kiro, gemini, qoder, codebuddy, copilot, droid). Generic names were colliding with user-defined agents and being matched by the main agent's description heuristics on some platforms. Prefixing with `trellis-` makes them unambiguously Trellis sub-agents. `workflow.md`, copilot start prompt, `shared-hooks/inject-subagent-context.py`, and configurator detection all updated to use the new names.\n\n**Bug Fixes:**\n- fix(agents): drop `model: opus` from all 18 markdown agent frontmatters + the example `Task()` calls in `copilot/prompts/start.prompt.md`. On Claude Code this merely hardcoded Opus for all sub-agent runs (ignoring user preference); on Cursor it actively mapped to Claude Opus billing at ~5x Sonnet cost and surprised users; on Gemini/Droid/Codebuddy/Qoder `opus` isn't even a valid model identifier. Agents now inherit whatever model the user configured for their platform.",
7
+ "migrations": [
8
+ {
9
+ "type": "rename",
10
+ "from": ".claude/agents/implement.md",
11
+ "to": ".claude/agents/trellis-implement.md",
12
+ "description": "v0.5.0-beta.5: prefix claude sub-agent with trellis- to prevent accidental invocation",
13
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
14
+ },
15
+ {
16
+ "type": "rename",
17
+ "from": ".claude/agents/check.md",
18
+ "to": ".claude/agents/trellis-check.md",
19
+ "description": "v0.5.0-beta.5: prefix claude sub-agent with trellis- to prevent accidental invocation",
20
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
21
+ },
22
+ {
23
+ "type": "rename",
24
+ "from": ".claude/agents/research.md",
25
+ "to": ".claude/agents/trellis-research.md",
26
+ "description": "v0.5.0-beta.5: prefix claude sub-agent with trellis- to prevent accidental invocation",
27
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
28
+ },
29
+ {
30
+ "type": "rename",
31
+ "from": ".cursor/agents/implement.md",
32
+ "to": ".cursor/agents/trellis-implement.md",
33
+ "description": "v0.5.0-beta.5: prefix cursor sub-agent with trellis- to prevent accidental invocation",
34
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
35
+ },
36
+ {
37
+ "type": "rename",
38
+ "from": ".cursor/agents/check.md",
39
+ "to": ".cursor/agents/trellis-check.md",
40
+ "description": "v0.5.0-beta.5: prefix cursor sub-agent with trellis- to prevent accidental invocation",
41
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
42
+ },
43
+ {
44
+ "type": "rename",
45
+ "from": ".cursor/agents/research.md",
46
+ "to": ".cursor/agents/trellis-research.md",
47
+ "description": "v0.5.0-beta.5: prefix cursor sub-agent with trellis- to prevent accidental invocation",
48
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
49
+ },
50
+ {
51
+ "type": "rename",
52
+ "from": ".opencode/agents/implement.md",
53
+ "to": ".opencode/agents/trellis-implement.md",
54
+ "description": "v0.5.0-beta.5: prefix opencode sub-agent with trellis- to prevent accidental invocation",
55
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
56
+ },
57
+ {
58
+ "type": "rename",
59
+ "from": ".opencode/agents/check.md",
60
+ "to": ".opencode/agents/trellis-check.md",
61
+ "description": "v0.5.0-beta.5: prefix opencode sub-agent with trellis- to prevent accidental invocation",
62
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
63
+ },
64
+ {
65
+ "type": "rename",
66
+ "from": ".opencode/agents/research.md",
67
+ "to": ".opencode/agents/trellis-research.md",
68
+ "description": "v0.5.0-beta.5: prefix opencode sub-agent with trellis- to prevent accidental invocation",
69
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
70
+ },
71
+ {
72
+ "type": "rename",
73
+ "from": ".codex/agents/implement.toml",
74
+ "to": ".codex/agents/trellis-implement.toml",
75
+ "description": "v0.5.0-beta.5: prefix codex sub-agent with trellis- to prevent accidental invocation",
76
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
77
+ },
78
+ {
79
+ "type": "rename",
80
+ "from": ".codex/agents/check.toml",
81
+ "to": ".codex/agents/trellis-check.toml",
82
+ "description": "v0.5.0-beta.5: prefix codex sub-agent with trellis- to prevent accidental invocation",
83
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
84
+ },
85
+ {
86
+ "type": "rename",
87
+ "from": ".codex/agents/research.toml",
88
+ "to": ".codex/agents/trellis-research.toml",
89
+ "description": "v0.5.0-beta.5: prefix codex sub-agent with trellis- to prevent accidental invocation",
90
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
91
+ },
92
+ {
93
+ "type": "rename",
94
+ "from": ".kiro/agents/implement.json",
95
+ "to": ".kiro/agents/trellis-implement.json",
96
+ "description": "v0.5.0-beta.5: prefix kiro sub-agent with trellis- to prevent accidental invocation",
97
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
98
+ },
99
+ {
100
+ "type": "rename",
101
+ "from": ".kiro/agents/check.json",
102
+ "to": ".kiro/agents/trellis-check.json",
103
+ "description": "v0.5.0-beta.5: prefix kiro sub-agent with trellis- to prevent accidental invocation",
104
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
105
+ },
106
+ {
107
+ "type": "rename",
108
+ "from": ".kiro/agents/research.json",
109
+ "to": ".kiro/agents/trellis-research.json",
110
+ "description": "v0.5.0-beta.5: prefix kiro sub-agent with trellis- to prevent accidental invocation",
111
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
112
+ },
113
+ {
114
+ "type": "rename",
115
+ "from": ".gemini/agents/implement.md",
116
+ "to": ".gemini/agents/trellis-implement.md",
117
+ "description": "v0.5.0-beta.5: prefix gemini sub-agent with trellis- to prevent accidental invocation",
118
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
119
+ },
120
+ {
121
+ "type": "rename",
122
+ "from": ".gemini/agents/check.md",
123
+ "to": ".gemini/agents/trellis-check.md",
124
+ "description": "v0.5.0-beta.5: prefix gemini sub-agent with trellis- to prevent accidental invocation",
125
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
126
+ },
127
+ {
128
+ "type": "rename",
129
+ "from": ".gemini/agents/research.md",
130
+ "to": ".gemini/agents/trellis-research.md",
131
+ "description": "v0.5.0-beta.5: prefix gemini sub-agent with trellis- to prevent accidental invocation",
132
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
133
+ },
134
+ {
135
+ "type": "rename",
136
+ "from": ".qoder/agents/implement.md",
137
+ "to": ".qoder/agents/trellis-implement.md",
138
+ "description": "v0.5.0-beta.5: prefix qoder sub-agent with trellis- to prevent accidental invocation",
139
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
140
+ },
141
+ {
142
+ "type": "rename",
143
+ "from": ".qoder/agents/check.md",
144
+ "to": ".qoder/agents/trellis-check.md",
145
+ "description": "v0.5.0-beta.5: prefix qoder sub-agent with trellis- to prevent accidental invocation",
146
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
147
+ },
148
+ {
149
+ "type": "rename",
150
+ "from": ".qoder/agents/research.md",
151
+ "to": ".qoder/agents/trellis-research.md",
152
+ "description": "v0.5.0-beta.5: prefix qoder sub-agent with trellis- to prevent accidental invocation",
153
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
154
+ },
155
+ {
156
+ "type": "rename",
157
+ "from": ".codebuddy/agents/implement.md",
158
+ "to": ".codebuddy/agents/trellis-implement.md",
159
+ "description": "v0.5.0-beta.5: prefix codebuddy sub-agent with trellis- to prevent accidental invocation",
160
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
161
+ },
162
+ {
163
+ "type": "rename",
164
+ "from": ".codebuddy/agents/check.md",
165
+ "to": ".codebuddy/agents/trellis-check.md",
166
+ "description": "v0.5.0-beta.5: prefix codebuddy sub-agent with trellis- to prevent accidental invocation",
167
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
168
+ },
169
+ {
170
+ "type": "rename",
171
+ "from": ".codebuddy/agents/research.md",
172
+ "to": ".codebuddy/agents/trellis-research.md",
173
+ "description": "v0.5.0-beta.5: prefix codebuddy sub-agent with trellis- to prevent accidental invocation",
174
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
175
+ },
176
+ {
177
+ "type": "rename",
178
+ "from": ".github/agents/implement.agent.md",
179
+ "to": ".github/agents/trellis-implement.agent.md",
180
+ "description": "v0.5.0-beta.5: prefix copilot sub-agent with trellis- to prevent accidental invocation",
181
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
182
+ },
183
+ {
184
+ "type": "rename",
185
+ "from": ".github/agents/check.agent.md",
186
+ "to": ".github/agents/trellis-check.agent.md",
187
+ "description": "v0.5.0-beta.5: prefix copilot sub-agent with trellis- to prevent accidental invocation",
188
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
189
+ },
190
+ {
191
+ "type": "rename",
192
+ "from": ".github/agents/research.agent.md",
193
+ "to": ".github/agents/trellis-research.agent.md",
194
+ "description": "v0.5.0-beta.5: prefix copilot sub-agent with trellis- to prevent accidental invocation",
195
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
196
+ },
197
+ {
198
+ "type": "rename",
199
+ "from": ".factory/droids/implement.md",
200
+ "to": ".factory/droids/trellis-implement.md",
201
+ "description": "v0.5.0-beta.5: prefix droid sub-agent with trellis- to prevent accidental invocation",
202
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
203
+ },
204
+ {
205
+ "type": "rename",
206
+ "from": ".factory/droids/check.md",
207
+ "to": ".factory/droids/trellis-check.md",
208
+ "description": "v0.5.0-beta.5: prefix droid sub-agent with trellis- to prevent accidental invocation",
209
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
210
+ },
211
+ {
212
+ "type": "rename",
213
+ "from": ".factory/droids/research.md",
214
+ "to": ".factory/droids/trellis-research.md",
215
+ "description": "v0.5.0-beta.5: prefix droid sub-agent with trellis- to prevent accidental invocation",
216
+ "reason": "Generic names like 'implement'/'check'/'research' can collide with the user's own agent definitions or get picked up by the main agent's description heuristics. Prefixing with 'trellis-' makes them explicit Trellis agents."
217
+ }
218
+ ],
219
+ "notes": "This is a breaking rename for sub-agent invocation. The migration is automatic for unmodified agent files (hash-matched via .trellis/.template-hashes.json). If you customized an agent, you'll see the usual `Modified by you` confirm prompt with diff — pick `[1] Overwrite` to adopt the new name, or `[3] Skip` if you've built your own workflow on the old names (in which case you must update `workflow.md`, any skill prompts, and hook constants yourself).\n\n`update.skip` is BYPASSED for this release (breaking + recommendMigrate both true, invoked with `--migrate`) to prevent a half-migrated state where workflow.md points to `trellis-implement` but your `.claude/agents/` still has `implement.md`.\n\nAction required: run `trellis update --migrate`."
220
+ }
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: check
2
+ name: trellis-check
3
3
  description: |
4
4
  Code quality check expert. Reviews code changes against specs and self-fixes issues.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Check Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: implement
2
+ name: trellis-implement
3
3
  description: |
4
4
  Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Implement Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: research
2
+ name: trellis-research
3
3
  description: |
4
4
  Code and tech search expert. Finds files, patterns, and tech solutions, and PERSISTS every finding to the current task's research/ directory. No code modifications outside that directory.
5
5
  tools: Read, Write, Glob, Grep, Bash, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa, Skill, mcp__chrome-devtools__*
6
- model: opus
7
6
  ---
8
7
  # Research Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: check
2
+ name: trellis-check
3
3
  description: |
4
4
  Code quality check expert. Reviews code changes against specs and self-fixes issues.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Check Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: implement
2
+ name: trellis-implement
3
3
  description: |
4
4
  Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Implement Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: research
2
+ name: trellis-research
3
3
  description: |
4
4
  Code and tech search expert. Finds files, patterns, and tech solutions, and PERSISTS every finding to the current task's research/ directory. No code modifications outside that directory.
5
5
  tools: Read, Write, Glob, Grep, Bash, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa, Skill, mcp__chrome-devtools__*
6
- model: opus
7
6
  ---
8
7
  # Research Agent
9
8
 
@@ -1,4 +1,4 @@
1
- name = "check"
1
+ name = "trellis-check"
2
2
  description = "Read-only Trellis reviewer focused on correctness, missing tests, and spec drift."
3
3
  sandbox_mode = "read-only"
4
4
 
@@ -1,4 +1,4 @@
1
- name = "implement"
1
+ name = "trellis-implement"
2
2
  description = "Workspace-write Trellis implementer that follows specs and keeps generated templates in sync."
3
3
  sandbox_mode = "workspace-write"
4
4
 
@@ -1,4 +1,4 @@
1
- name = "research"
1
+ name = "trellis-research"
2
2
  description = "Trellis researcher for specs, code patterns, and affected files. Writes findings into {TASK_DIR}/research/ — read-only elsewhere."
3
3
  sandbox_mode = "workspace-write"
4
4
 
@@ -54,7 +54,7 @@ cat .trellis/spec/<package>/<layer>/index.md # Package-specific guidelines
54
54
  cat .trellis/spec/guides/index.md # Thinking guides (always read)
55
55
  ```
56
56
 
57
- > **Important**: The index files are navigation �?they list the actual guideline files (e.g., `error-handling.md`, `conventions.md`, `mock-strategies.md`).
57
+ > **Important**: The index files are navigation �?they list the actual guideline files (e.g., `error-handling.md`, `conventions.md`, `mock-strategies.md`).
58
58
  > At this step, just read the indexes to understand what's available.
59
59
  > When you start actual development, you MUST go back and read the specific guideline files relevant to your task, as listed in the index's Pre-Development Checklist.
60
60
 
@@ -72,8 +72,8 @@ When user describes a task, classify it:
72
72
  |------|----------|----------|
73
73
  | **Question** | User asks about code, architecture, or how something works | Answer directly |
74
74
  | **Trivial Fix** | Typo fix, comment update, single-line change | Direct Edit |
75
- | **Simple Task** | Clear goal, 1-2 files, well-defined scope | Quick confirm �?Implement |
76
- | **Complex Task** | Vague goal, multiple files, architectural decisions | **Brainstorm �?Task Workflow** |
75
+ | **Simple Task** | Clear goal, 1-2 files, well-defined scope | Quick confirm �?Implement |
76
+ | **Complex Task** | Vague goal, multiple files, architectural decisions | **Brainstorm �?Task Workflow** |
77
77
 
78
78
  ### Classification Signals
79
79
 
@@ -128,7 +128,7 @@ For simple, well-defined tasks:
128
128
 
129
129
  ## Complex Task - Brainstorm First
130
130
 
131
- For complex or vague tasks, **automatically start the brainstorm process** �?do NOT skip directly to implementation.
131
+ For complex or vague tasks, **automatically start the brainstorm process** �?do NOT skip directly to implementation.
132
132
 
133
133
  See `/` for the full process. Summary:
134
134
 
@@ -167,10 +167,10 @@ See `/` for the full process. Summary:
167
167
 
168
168
  ```
169
169
  From Brainstorm (Complex Task):
170
- PRD confirmed �?Research �?Configure Context �?Activate �?Implement �?Check �?Complete
170
+ PRD confirmed �?Research �?Configure Context �?Activate �?Implement �?Check �?Complete
171
171
 
172
172
  From Simple Task:
173
- Confirm �?Create Task �?Write PRD �?Research �?Configure Context �?Activate �?Implement �?Check �?Complete
173
+ Confirm �?Create Task �?Write PRD �?Research �?Configure Context �?Activate �?Implement �?Check �?Complete
174
174
  ```
175
175
 
176
176
  **Key principle: Research happens AFTER requirements are clear (PRD exists).**
@@ -248,7 +248,7 @@ Based on the confirmed PRD, call Research Agent to find relevant specs and patte
248
248
 
249
249
  ```
250
250
  Task(
251
- subagent_type: "research",
251
+ subagent_type: "trellis-research",
252
252
  prompt: "Analyze the codebase for this task:
253
253
 
254
254
  Task: <goal from PRD>
@@ -267,8 +267,7 @@ Task(
267
267
  - <pattern>: <example file path>
268
268
 
269
269
  ## Files to Modify
270
- - <path>: <what change>",
271
- model: "opus"
270
+ - <path>: <what change>"
272
271
  )
273
272
  ```
274
273
 
@@ -307,12 +306,11 @@ Call Implement Agent (code-spec context is auto-injected by hook):
307
306
 
308
307
  ```
309
308
  Task(
310
- subagent_type: "implement",
309
+ subagent_type: "trellis-implement",
311
310
  prompt: "Implement the task described in prd.md.
312
311
 
313
312
  Follow all code-spec files that have been injected into your context.
314
- Run lint and typecheck before finishing.",
315
- model: "opus"
313
+ Run lint and typecheck before finishing."
316
314
  )
317
315
  ```
318
316
 
@@ -322,12 +320,11 @@ Call Check Agent (code-spec context is auto-injected by hook):
322
320
 
323
321
  ```
324
322
  Task(
325
- subagent_type: "check",
323
+ subagent_type: "trellis-check",
326
324
  prompt: "Review all code changes against the code-spec requirements.
327
325
 
328
326
  Fix any issues you find directly.
329
- Ensure lint and typecheck pass.",
330
- model: "opus"
327
+ Ensure lint and typecheck pass."
331
328
  )
332
329
  ```
333
330
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: check
2
+ name: trellis-check
3
3
  description: |
4
4
  Code quality check expert. Reviews code changes against specs and self-fixes issues.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Check Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: implement
2
+ name: trellis-implement
3
3
  description: |
4
4
  Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Implement Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: research
2
+ name: trellis-research
3
3
  description: |
4
4
  Code and tech search expert. Finds files, patterns, and tech solutions, and PERSISTS every finding to the current task's research/ directory. No code modifications outside that directory.
5
5
  tools: Read, Write, Glob, Grep, Bash, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa, Skill, mcp__chrome-devtools__*
6
- model: opus
7
6
  ---
8
7
  # Research Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: check
2
+ name: trellis-check
3
3
  description: |
4
4
  Code quality check expert. Reviews code changes against specs and self-fixes issues.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Check Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: implement
2
+ name: trellis-implement
3
3
  description: |
4
4
  Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
5
5
  tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
- model: opus
7
6
  ---
8
7
  # Implement Agent
9
8
 
@@ -1,9 +1,8 @@
1
1
  ---
2
- name: research
2
+ name: trellis-research
3
3
  description: |
4
4
  Code and tech search expert. Finds files, patterns, and tech solutions, and PERSISTS every finding to the current task's research/ directory. No code modifications outside that directory.
5
5
  tools: Read, Write, Glob, Grep, Bash, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa, Skill, mcp__chrome-devtools__*
6
- model: opus
7
6
  ---
8
7
  # Research Agent
9
8
 
@@ -0,0 +1,94 @@
1
+ ---
2
+ name: trellis-check
3
+ description: |
4
+ Code quality check expert. Reviews code changes against specs and self-fixes issues.
5
+ tools: Read, Write, Edit, Bash, Glob, Grep, mcp__exa__web_search_exa, mcp__exa__get_code_context_exa
6
+ ---
7
+ # Check Agent
8
+
9
+ You are the Check Agent in the Trellis workflow.
10
+
11
+ ## Context
12
+
13
+ Before checking, read:
14
+ - `.trellis/spec/` - Development guidelines
15
+ - Pre-commit checklist for quality standards
16
+
17
+ ## Core Responsibilities
18
+
19
+ 1. **Get code changes** - Use git diff to get uncommitted code
20
+ 2. **Check against specs** - Verify code follows guidelines
21
+ 3. **Self-fix** - Fix issues yourself, not just report them
22
+ 4. **Run verification** - typecheck and lint
23
+
24
+ ## Important
25
+
26
+ **Fix issues yourself**, don't just report them.
27
+
28
+ You have write and edit tools, you can modify code directly.
29
+
30
+ ---
31
+
32
+ ## Workflow
33
+
34
+ ### Step 1: Get Changes
35
+
36
+ ```bash
37
+ git diff --name-only # List changed files
38
+ git diff # View specific changes
39
+ ```
40
+
41
+ ### Step 2: Check Against Specs
42
+
43
+ Read relevant specs in `.trellis/spec/` to check code:
44
+
45
+ - Does it follow directory structure conventions
46
+ - Does it follow naming conventions
47
+ - Does it follow code patterns
48
+ - Are there missing types
49
+ - Are there potential bugs
50
+
51
+ ### Step 3: Self-Fix
52
+
53
+ After finding issues:
54
+
55
+ 1. Fix the issue directly (use edit tool)
56
+ 2. Record what was fixed
57
+ 3. Continue checking other issues
58
+
59
+ ### Step 4: Run Verification
60
+
61
+ Run project's lint and typecheck commands to verify changes.
62
+
63
+ If failed, fix issues and re-run.
64
+
65
+ ---
66
+
67
+ ## Report Format
68
+
69
+ ```markdown
70
+ ## Self-Check Complete
71
+
72
+ ### Files Checked
73
+
74
+ - src/components/Feature.tsx
75
+ - src/hooks/useFeature.ts
76
+
77
+ ### Issues Found and Fixed
78
+
79
+ 1. `<file>:<line>` - <what was fixed>
80
+ 2. `<file>:<line>` - <what was fixed>
81
+
82
+ ### Issues Not Fixed
83
+
84
+ (If there are issues that cannot be self-fixed, list them here with reasons)
85
+
86
+ ### Verification Results
87
+
88
+ - TypeCheck: Passed
89
+ - Lint: Passed
90
+
91
+ ### Summary
92
+
93
+ Checked X files, found Y issues, all fixed.
94
+ ```