@blulotus/trellis 0.7.0 → 0.7.2
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 +2 -2
- package/dist/cli/index.js +2 -29
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/init.d.ts +0 -22
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +5 -12
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/mem.d.ts +2 -2
- package/dist/commands/mem.d.ts.map +1 -1
- package/dist/commands/mem.js +7 -40
- package/dist/commands/mem.js.map +1 -1
- package/dist/commands/uninstall.d.ts +1 -1
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +4 -34
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +2 -28
- package/dist/commands/update.js.map +1 -1
- package/dist/configurators/index.d.ts.map +1 -1
- package/dist/configurators/index.js +7 -73
- package/dist/configurators/index.js.map +1 -1
- package/dist/configurators/shared.d.ts +18 -70
- package/dist/configurators/shared.d.ts.map +1 -1
- package/dist/configurators/shared.js +20 -299
- package/dist/configurators/shared.js.map +1 -1
- package/dist/configurators/workflow.d.ts +0 -14
- package/dist/configurators/workflow.d.ts.map +1 -1
- package/dist/configurators/workflow.js +1 -37
- package/dist/configurators/workflow.js.map +1 -1
- package/dist/migrations/manifests/0.1.9.json +0 -12
- package/dist/migrations/manifests/0.2.14.json +0 -84
- package/dist/migrations/manifests/0.3.0-beta.0.json +0 -87
- package/dist/migrations/manifests/0.3.4.json +1 -13
- package/dist/migrations/manifests/0.4.0-beta.1.json +24 -176
- package/dist/migrations/manifests/0.5.0-beta.0.json +67 -1203
- package/dist/migrations/manifests/0.5.0-beta.15.json +0 -96
- package/dist/migrations/manifests/0.5.0-beta.5.json +0 -168
- package/dist/migrations/manifests/0.5.0-beta.9.json +0 -20
- package/dist/migrations/manifests/0.6.0-beta.23.json +0 -66
- package/dist/migrations/manifests/0.6.3.json +1 -16
- package/dist/migrations/manifests/0.6.6.json +1 -9
- package/dist/migrations/manifests/0.7.0.json +9 -0
- package/dist/migrations/manifests/0.7.1.json +9 -0
- package/dist/migrations/manifests/0.7.2.json +9 -0
- package/dist/migrations/manifests/0.8.0.json +9 -0
- package/dist/templates/codex/hooks/session-start.py +37 -13
- package/dist/templates/codex/hooks.json +5 -0
- package/dist/templates/common/bundled-skills/trellis-meta/SKILL.md +5 -5
- package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-agents.md +0 -10
- package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-hooks.md +1 -1
- package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/change-skills-or-commands.md +1 -13
- package/dist/templates/common/bundled-skills/trellis-meta/references/customize-local/overview.md +2 -2
- package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/bundled-skills.md +9 -28
- package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/generated-files.md +5 -5
- package/dist/templates/common/bundled-skills/trellis-meta/references/local-architecture/overview.md +1 -1
- package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/agents.md +1 -17
- package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/hooks-and-settings.md +4 -12
- package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/overview.md +6 -6
- package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/platform-map.md +5 -75
- package/dist/templates/common/bundled-skills/trellis-meta/references/platform-files/skills-and-commands.md +0 -16
- package/dist/templates/common/bundled-skills/trellis-session-insight/SKILL.md +1 -1
- package/dist/templates/common/bundled-skills/trellis-session-insight/references/cli-quick-reference.md +2 -3
- package/dist/templates/common/commands/continue.md +24 -4
- package/dist/templates/common/commands/finish-work.md +19 -9
- package/dist/templates/common/commands/start.md +38 -29
- package/dist/templates/extract.d.ts +0 -10
- package/dist/templates/extract.d.ts.map +1 -1
- package/dist/templates/extract.js +0 -24
- package/dist/templates/extract.js.map +1 -1
- package/dist/templates/markdown/spec/guides/code-reuse-thinking-guide.md.txt +7 -9
- package/dist/templates/markdown/spec/guides/cross-layer-thinking-guide.md.txt +4 -8
- package/dist/templates/markdown/spec/guides/cross-platform-thinking-guide.md.txt +5 -5
- package/dist/templates/shared-hooks/index.d.ts +11 -43
- package/dist/templates/shared-hooks/index.d.ts.map +1 -1
- package/dist/templates/shared-hooks/index.js +9 -86
- package/dist/templates/shared-hooks/index.js.map +1 -1
- package/dist/templates/shared-hooks/inject-spec-context.py +1 -1
- package/dist/templates/shared-hooks/inject-subagent-context.py +23 -85
- package/dist/templates/shared-hooks/inject-workflow-state.py +56 -86
- package/dist/templates/shared-hooks/session-start.py +76 -98
- package/dist/templates/trellis/config.yaml +8 -8
- package/dist/templates/trellis/index.d.ts +1 -4
- package/dist/templates/trellis/index.d.ts.map +1 -1
- package/dist/templates/trellis/index.js +1 -5
- package/dist/templates/trellis/index.js.map +1 -1
- package/dist/templates/trellis/scripts/add_session.py +12 -11
- package/dist/templates/trellis/scripts/common/__init__.py +2 -0
- package/dist/templates/trellis/scripts/common/active_task.py +80 -152
- package/dist/templates/trellis/scripts/common/config.py +7 -7
- package/dist/templates/trellis/scripts/common/git_context.py +1 -1
- package/dist/templates/trellis/scripts/common/session_context.py +2 -2
- package/dist/templates/trellis/scripts/common/spec_inject.py +2 -2
- package/dist/templates/trellis/scripts/common/task_store.py +8 -28
- package/dist/templates/trellis/scripts/common/workflow_phase.py +4 -8
- package/dist/templates/trellis/scripts/get_context.py +2 -2
- package/dist/templates/trellis/scripts/init_developer.py +1 -1
- package/dist/templates/trellis/scripts/task.py +90 -57
- package/dist/templates/trellis/workflow.md +44 -66
- package/dist/types/ai-tools.d.ts +10 -10
- package/dist/types/ai-tools.d.ts.map +1 -1
- package/dist/types/ai-tools.js +3 -434
- package/dist/types/ai-tools.js.map +1 -1
- package/dist/utils/uninstall-scrubbers.d.ts +3 -18
- package/dist/utils/uninstall-scrubbers.d.ts.map +1 -1
- package/dist/utils/uninstall-scrubbers.js +24 -154
- package/dist/utils/uninstall-scrubbers.js.map +1 -1
- package/package.json +2 -2
- package/dist/configurators/antigravity.d.ts +0 -7
- package/dist/configurators/antigravity.d.ts.map +0 -1
- package/dist/configurators/antigravity.js +0 -11
- package/dist/configurators/antigravity.js.map +0 -1
- package/dist/configurators/codebuddy.d.ts +0 -10
- package/dist/configurators/codebuddy.d.ts.map +0 -1
- package/dist/configurators/codebuddy.js +0 -24
- package/dist/configurators/codebuddy.js.map +0 -1
- package/dist/configurators/copilot.d.ts +0 -14
- package/dist/configurators/copilot.d.ts.map +0 -1
- package/dist/configurators/copilot.js +0 -46
- package/dist/configurators/copilot.js.map +0 -1
- package/dist/configurators/cursor.d.ts +0 -10
- package/dist/configurators/cursor.d.ts.map +0 -1
- package/dist/configurators/cursor.js +0 -23
- package/dist/configurators/cursor.js.map +0 -1
- package/dist/configurators/devin.d.ts +0 -8
- package/dist/configurators/devin.d.ts.map +0 -1
- package/dist/configurators/devin.js +0 -12
- package/dist/configurators/devin.js.map +0 -1
- package/dist/configurators/droid.d.ts +0 -10
- package/dist/configurators/droid.d.ts.map +0 -1
- package/dist/configurators/droid.js +0 -24
- package/dist/configurators/droid.js.map +0 -1
- package/dist/configurators/dsh.d.ts +0 -26
- package/dist/configurators/dsh.d.ts.map +0 -1
- package/dist/configurators/dsh.js +0 -76
- package/dist/configurators/dsh.js.map +0 -1
- package/dist/configurators/gemini.d.ts +0 -18
- package/dist/configurators/gemini.d.ts.map +0 -1
- package/dist/configurators/gemini.js +0 -39
- package/dist/configurators/gemini.js.map +0 -1
- package/dist/configurators/grok.d.ts +0 -17
- package/dist/configurators/grok.d.ts.map +0 -1
- package/dist/configurators/grok.js +0 -38
- package/dist/configurators/grok.js.map +0 -1
- package/dist/configurators/kilo.d.ts +0 -7
- package/dist/configurators/kilo.d.ts.map +0 -1
- package/dist/configurators/kilo.js +0 -11
- package/dist/configurators/kilo.js.map +0 -1
- package/dist/configurators/kimi.d.ts +0 -26
- package/dist/configurators/kimi.d.ts.map +0 -1
- package/dist/configurators/kimi.js +0 -74
- package/dist/configurators/kimi.js.map +0 -1
- package/dist/configurators/kiro.d.ts +0 -11
- package/dist/configurators/kiro.d.ts.map +0 -1
- package/dist/configurators/kiro.js +0 -30
- package/dist/configurators/kiro.js.map +0 -1
- package/dist/configurators/omp.d.ts +0 -6
- package/dist/configurators/omp.d.ts.map +0 -1
- package/dist/configurators/omp.js +0 -28
- package/dist/configurators/omp.js.map +0 -1
- package/dist/configurators/opencode.d.ts +0 -5
- package/dist/configurators/opencode.d.ts.map +0 -1
- package/dist/configurators/opencode.js +0 -84
- package/dist/configurators/opencode.js.map +0 -1
- package/dist/configurators/pi.d.ts +0 -5
- package/dist/configurators/pi.d.ts.map +0 -1
- package/dist/configurators/pi.js +0 -39
- package/dist/configurators/pi.js.map +0 -1
- package/dist/configurators/qoder.d.ts +0 -12
- package/dist/configurators/qoder.d.ts.map +0 -1
- package/dist/configurators/qoder.js +0 -30
- package/dist/configurators/qoder.js.map +0 -1
- package/dist/configurators/reasonix.d.ts +0 -17
- package/dist/configurators/reasonix.d.ts.map +0 -1
- package/dist/configurators/reasonix.js +0 -37
- package/dist/configurators/reasonix.js.map +0 -1
- package/dist/configurators/snow.d.ts +0 -25
- package/dist/configurators/snow.d.ts.map +0 -1
- package/dist/configurators/snow.js +0 -69
- package/dist/configurators/snow.js.map +0 -1
- package/dist/configurators/trae.d.ts +0 -16
- package/dist/configurators/trae.d.ts.map +0 -1
- package/dist/configurators/trae.js +0 -34
- package/dist/configurators/trae.js.map +0 -1
- package/dist/configurators/zcode.d.ts +0 -23
- package/dist/configurators/zcode.d.ts.map +0 -1
- package/dist/configurators/zcode.js +0 -63
- package/dist/configurators/zcode.js.map +0 -1
- package/dist/templates/codebuddy/agents/trellis-check.md +0 -115
- package/dist/templates/codebuddy/agents/trellis-implement.md +0 -115
- package/dist/templates/codebuddy/agents/trellis-research.md +0 -137
- package/dist/templates/codebuddy/index.d.ts +0 -15
- package/dist/templates/codebuddy/index.d.ts.map +0 -1
- package/dist/templates/codebuddy/index.js +0 -15
- package/dist/templates/codebuddy/index.js.map +0 -1
- package/dist/templates/codebuddy/settings.json +0 -69
- package/dist/templates/copilot/copilot-instructions.md +0 -11
- package/dist/templates/copilot/hooks/session-start.py +0 -564
- package/dist/templates/copilot/hooks.json +0 -19
- package/dist/templates/copilot/index.d.ts +0 -28
- package/dist/templates/copilot/index.d.ts.map +0 -1
- package/dist/templates/copilot/index.js +0 -61
- package/dist/templates/copilot/index.js.map +0 -1
- package/dist/templates/copilot/prompts/before-dev.prompt.md +0 -39
- package/dist/templates/copilot/prompts/brainstorm.prompt.md +0 -173
- package/dist/templates/copilot/prompts/break-loop.prompt.md +0 -129
- package/dist/templates/copilot/prompts/check-cross-layer.prompt.md +0 -170
- package/dist/templates/copilot/prompts/check.prompt.md +0 -110
- package/dist/templates/copilot/prompts/create-command.prompt.md +0 -116
- package/dist/templates/copilot/prompts/finish-work.prompt.md +0 -99
- package/dist/templates/copilot/prompts/integrate-skill.prompt.md +0 -223
- package/dist/templates/copilot/prompts/onboard.prompt.md +0 -362
- package/dist/templates/copilot/prompts/parallel.prompt.md +0 -204
- package/dist/templates/copilot/prompts/record-session.prompt.md +0 -66
- package/dist/templates/copilot/prompts/start.prompt.md +0 -63
- package/dist/templates/copilot/prompts/update-spec.prompt.md +0 -358
- package/dist/templates/cursor/agents/trellis-check.md +0 -114
- package/dist/templates/cursor/agents/trellis-implement.md +0 -114
- package/dist/templates/cursor/agents/trellis-research.md +0 -136
- package/dist/templates/cursor/hooks.json +0 -24
- package/dist/templates/cursor/index.d.ts +0 -13
- package/dist/templates/cursor/index.d.ts.map +0 -1
- package/dist/templates/cursor/index.js +0 -13
- package/dist/templates/cursor/index.js.map +0 -1
- package/dist/templates/droid/droids/trellis-check.md +0 -107
- package/dist/templates/droid/droids/trellis-implement.md +0 -107
- package/dist/templates/droid/droids/trellis-research.md +0 -137
- package/dist/templates/droid/index.d.ts +0 -15
- package/dist/templates/droid/index.d.ts.map +0 -1
- package/dist/templates/droid/index.js +0 -15
- package/dist/templates/droid/index.js.map +0 -1
- package/dist/templates/droid/settings.json +0 -69
- package/dist/templates/dsh/DSH.md +0 -80
- package/dist/templates/dsh/agents/trellis-check.md +0 -99
- package/dist/templates/dsh/agents/trellis-implement.md +0 -106
- package/dist/templates/dsh/agents/trellis-research.md +0 -134
- package/dist/templates/dsh/index.d.ts +0 -22
- package/dist/templates/dsh/index.d.ts.map +0 -1
- package/dist/templates/dsh/index.js +0 -27
- package/dist/templates/dsh/index.js.map +0 -1
- package/dist/templates/gemini/agents/trellis-check.md +0 -107
- package/dist/templates/gemini/agents/trellis-implement.md +0 -107
- package/dist/templates/gemini/agents/trellis-research.md +0 -136
- package/dist/templates/gemini/index.d.ts +0 -13
- package/dist/templates/gemini/index.d.ts.map +0 -1
- package/dist/templates/gemini/index.js +0 -13
- package/dist/templates/gemini/index.js.map +0 -1
- package/dist/templates/gemini/settings.json +0 -40
- package/dist/templates/grok/agents/trellis-check.md +0 -106
- package/dist/templates/grok/agents/trellis-implement.md +0 -121
- package/dist/templates/grok/agents/trellis-research.md +0 -146
- package/dist/templates/grok/index.d.ts +0 -16
- package/dist/templates/grok/index.d.ts.map +0 -1
- package/dist/templates/grok/index.js +0 -19
- package/dist/templates/grok/index.js.map +0 -1
- package/dist/templates/kimi/agents/trellis-check.md +0 -104
- package/dist/templates/kimi/agents/trellis-implement.md +0 -120
- package/dist/templates/kimi/agents/trellis-research.md +0 -144
- package/dist/templates/kimi/index.d.ts +0 -20
- package/dist/templates/kimi/index.d.ts.map +0 -1
- package/dist/templates/kimi/index.js +0 -23
- package/dist/templates/kimi/index.js.map +0 -1
- package/dist/templates/kiro/agents/trellis-check.json +0 -26
- package/dist/templates/kiro/agents/trellis-implement.json +0 -26
- package/dist/templates/kiro/agents/trellis-research.json +0 -30
- package/dist/templates/kiro/agents/trellis.json +0 -34
- package/dist/templates/kiro/hooks/trellis-workflow-state.kiro.hook +0 -14
- package/dist/templates/kiro/index.d.ts +0 -32
- package/dist/templates/kiro/index.d.ts.map +0 -1
- package/dist/templates/kiro/index.js +0 -28
- package/dist/templates/kiro/index.js.map +0 -1
- package/dist/templates/omp/agents/trellis-check.md +0 -41
- package/dist/templates/omp/agents/trellis-implement.md +0 -55
- package/dist/templates/omp/agents/trellis-research.md +0 -30
- package/dist/templates/omp/extensions/trellis/index.ts.txt +0 -592
- package/dist/templates/omp/index.d.ts +0 -4
- package/dist/templates/omp/index.d.ts.map +0 -1
- package/dist/templates/omp/index.js +0 -9
- package/dist/templates/omp/index.js.map +0 -1
- package/dist/templates/opencode/agents/trellis-check.md +0 -122
- package/dist/templates/opencode/agents/trellis-implement.md +0 -123
- package/dist/templates/opencode/agents/trellis-research.md +0 -145
- package/dist/templates/opencode/lib/context-visibility.js +0 -86
- package/dist/templates/opencode/lib/session-utils.js +0 -526
- package/dist/templates/opencode/lib/trellis-context.js +0 -627
- package/dist/templates/opencode/package.json +0 -5
- package/dist/templates/opencode/plugins/inject-spec-context.js +0 -121
- package/dist/templates/opencode/plugins/inject-subagent-context.js +0 -569
- package/dist/templates/opencode/plugins/inject-workflow-state.js +0 -340
- package/dist/templates/opencode/plugins/session-start.js +0 -74
- package/dist/templates/pi/agents/trellis-check.md +0 -37
- package/dist/templates/pi/agents/trellis-implement.md +0 -52
- package/dist/templates/pi/agents/trellis-research.md +0 -25
- package/dist/templates/pi/extensions/trellis/index.ts.txt +0 -2033
- package/dist/templates/pi/index.d.ts +0 -5
- package/dist/templates/pi/index.d.ts.map +0 -1
- package/dist/templates/pi/index.js +0 -12
- package/dist/templates/pi/index.js.map +0 -1
- package/dist/templates/pi/settings.json +0 -9
- package/dist/templates/qoder/agents/trellis-check.md +0 -108
- package/dist/templates/qoder/agents/trellis-implement.md +0 -108
- package/dist/templates/qoder/agents/trellis-research.md +0 -137
- package/dist/templates/qoder/index.d.ts +0 -15
- package/dist/templates/qoder/index.d.ts.map +0 -1
- package/dist/templates/qoder/index.js +0 -15
- package/dist/templates/qoder/index.js.map +0 -1
- package/dist/templates/qoder/settings.json +0 -59
- package/dist/templates/reasonix/agents/trellis-check.md +0 -36
- package/dist/templates/reasonix/agents/trellis-implement.md +0 -51
- package/dist/templates/reasonix/index.d.ts +0 -13
- package/dist/templates/reasonix/index.d.ts.map +0 -1
- package/dist/templates/reasonix/index.js +0 -16
- package/dist/templates/reasonix/index.js.map +0 -1
- package/dist/templates/shared-hooks/inject-shell-session-context.py +0 -292
- package/dist/templates/snow/SNOW.md +0 -86
- package/dist/templates/snow/agents/trellis-check.md +0 -136
- package/dist/templates/snow/agents/trellis-implement.md +0 -158
- package/dist/templates/snow/agents/trellis-research.md +0 -114
- package/dist/templates/snow/hooks/beforeSubAgentStart.json +0 -15
- package/dist/templates/snow/hooks/onSessionStart.json +0 -15
- package/dist/templates/snow/hooks/onUserMessage.json +0 -15
- package/dist/templates/snow/hooks/write-trellis-context.py +0 -644
- package/dist/templates/snow/index.d.ts +0 -26
- package/dist/templates/snow/index.d.ts.map +0 -1
- package/dist/templates/snow/index.js +0 -36
- package/dist/templates/snow/index.js.map +0 -1
- package/dist/templates/trae/agents/trellis-check.md +0 -108
- package/dist/templates/trae/agents/trellis-implement.md +0 -108
- package/dist/templates/trae/agents/trellis-research.md +0 -137
- package/dist/templates/trae/hooks.json +0 -39
- package/dist/templates/trae/index.d.ts +0 -15
- package/dist/templates/trae/index.d.ts.map +0 -1
- package/dist/templates/trae/index.js +0 -15
- package/dist/templates/trae/index.js.map +0 -1
- package/dist/templates/trellis/gitattributes.txt +0 -9
- package/dist/templates/trellis/scripts/common/cli_adapter.py +0 -982
- package/dist/templates/zcode/agents/trellis-check.md +0 -110
- package/dist/templates/zcode/agents/trellis-implement.md +0 -116
- package/dist/templates/zcode/agents/trellis-research.md +0 -133
- package/dist/templates/zcode/config.json +0 -52
- package/dist/templates/zcode/index.d.ts +0 -25
- package/dist/templates/zcode/index.d.ts.map +0 -1
- package/dist/templates/zcode/index.js +0 -29
- package/dist/templates/zcode/index.js.map +0 -1
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
# Trellis on DeepSeek Harness (dsh)
|
|
2
|
-
|
|
3
|
-
dsh is a **class-2 pull-based** Trellis host. It discovers Trellis skills from
|
|
4
|
-
the project, uses native continuable sub-agents for isolated implementation and
|
|
5
|
-
review roles, and exposes a stable `DSH_SESSION_ID` to every managed shell.
|
|
6
|
-
|
|
7
|
-
| Capability | Without companion plugin | With `dsh-trellis` |
|
|
8
|
-
| --- | --- | --- |
|
|
9
|
-
| Shared and entry skills | Works | Works |
|
|
10
|
-
| Session-scoped active task | Works through verified `DSH_SHELL=1` + `DSH_SESSION_ID`, including nested launches | Managed per-execution identity can forward a distinct child session |
|
|
11
|
-
| Implement/check/research roles | Foreground native sub-agent | Background native sub-agent |
|
|
12
|
-
| Per-turn workflow breadcrumb | Not available | Injected from `workflow.md` |
|
|
13
|
-
| Event-driven child wait | Not available | `trellis_wait` |
|
|
14
|
-
| Utility commands | Not available | `/trellis-status`, `/trellis-finish` |
|
|
15
|
-
|
|
16
|
-
## Quick start
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
trellis init --dsh -u your-name
|
|
20
|
-
dsh web # or: dsh --profile headless "start a Trellis task for ..."
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
In dsh:
|
|
24
|
-
|
|
25
|
-
1. Describe the work in natural language and load `trellis-start` when a
|
|
26
|
-
session needs explicit Trellis bootstrap.
|
|
27
|
-
2. The main session dispatches `trellis-agent-research`,
|
|
28
|
-
`trellis-agent-implement`, and `trellis-agent-check` through DSH's native
|
|
29
|
-
`subagent` tool. Each child loads exactly one matching role skill.
|
|
30
|
-
3. Finish through `trellis-finish-work`, which preserves the required order:
|
|
31
|
-
commit, archive, then journal.
|
|
32
|
-
|
|
33
|
-
## Companion plugin fallback contract
|
|
34
|
-
|
|
35
|
-
The Trellis adapter does not install a DSH profile plugin. Before dispatching a
|
|
36
|
-
role, check whether the `trellis_wait` tool is available:
|
|
37
|
-
|
|
38
|
-
- If available, use DSH's default continuable background mode, continue
|
|
39
|
-
independent work, then call `trellis_wait` once per dependent child id and
|
|
40
|
-
consume each native settlement notice before entering the dependent gate.
|
|
41
|
-
- If unavailable, dispatch every child with `run_in_background: false` from the outset
|
|
42
|
-
so the dependent workflow gate cannot overtake it.
|
|
43
|
-
|
|
44
|
-
Never replace either path with shell sleep, polling loops, `job_output`, or
|
|
45
|
-
repeated agent-list polling.
|
|
46
|
-
|
|
47
|
-
## Nested host sessions
|
|
48
|
-
|
|
49
|
-
DSH inherits ordinary environment variables from the process that launches it.
|
|
50
|
-
If that outer process is already an active Trellis session,
|
|
51
|
-
`TRELLIS_CONTEXT_ID` would otherwise override the inner `DSH_SESSION_ID`.
|
|
52
|
-
DSH rebuilds its complete `DSH_*` namespace for each managed shell, so the beta
|
|
53
|
-
adapter treats `DSH_SHELL=1` together with `DSH_SESSION_ID` as the current DSH
|
|
54
|
-
identity and resolves it before an inherited generic override, even without the
|
|
55
|
-
plugin. The optional plugin additionally contributes a trusted
|
|
56
|
-
`DSH_TRELLIS_CONTEXT_ID` when it must forward a child identity that differs
|
|
57
|
-
from the shell's own session id.
|
|
58
|
-
|
|
59
|
-
## File map
|
|
60
|
-
|
|
61
|
-
- `.agents/skills/` — shared workflow and bundled skills, byte-identical to
|
|
62
|
-
the other Agent Skills writers.
|
|
63
|
-
- `.dsh/skills/trellis-{start,continue,finish-work}/` — DSH-private entry
|
|
64
|
-
skills.
|
|
65
|
-
- `.dsh/skills/trellis-agent-{research,implement,check}/` — child-only role
|
|
66
|
-
skills; implement/check include the pull-based task context prelude.
|
|
67
|
-
- `.dsh/DSH.md` — this operator guide.
|
|
68
|
-
- `.trellis/` — workflow, specs, tasks, workspace journal, and shared scripts.
|
|
69
|
-
|
|
70
|
-
## Notes
|
|
71
|
-
|
|
72
|
-
- Generated Python commands use `python3` in source templates and are rendered
|
|
73
|
-
to the detected Windows launcher during `trellis init` / `trellis update`.
|
|
74
|
-
- Role dispatch prompts start with `Active task: <task path>`. This exact task
|
|
75
|
-
path is the child's primary context source; children must not guess globally.
|
|
76
|
-
- Each `dsh --profile headless` invocation creates a fresh DSH session. Do not
|
|
77
|
-
expect an active-task pointer to persist across separate headless calls; keep
|
|
78
|
-
the workflow in one session or explicitly resume its returned session id.
|
|
79
|
-
- The optional companion plugin is maintained separately at
|
|
80
|
-
<https://github.com/SajoLuo/dsh-trellis>.
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: trellis-check
|
|
3
|
-
user-invocable: false
|
|
4
|
-
description: |
|
|
5
|
-
Child-agent-only quality role for Trellis. Main sessions must not load this
|
|
6
|
-
skill directly. Reviews code changes against specs and self-fixes issues.
|
|
7
|
-
---
|
|
8
|
-
# Check Agent
|
|
9
|
-
|
|
10
|
-
You are the Check Agent in the Trellis workflow.
|
|
11
|
-
|
|
12
|
-
## Recursion Guard
|
|
13
|
-
|
|
14
|
-
You are already the `trellis-check` sub-agent that the main session dispatched. Do the review and fixes directly.
|
|
15
|
-
|
|
16
|
-
- Do NOT spawn another `trellis-check` or `trellis-implement` sub-agent.
|
|
17
|
-
- If workflow.md, workflow-state breadcrumbs, or the parent prompt say to dispatch `trellis-implement` / `trellis-check`, treat that as a main-session instruction that is already satisfied by your current role.
|
|
18
|
-
- Only the main session may dispatch Trellis implement/check agents. If more implementation work is needed, report that recommendation instead of spawning.
|
|
19
|
-
|
|
20
|
-
dsh does not auto-inject SessionStart task context. Always pull context as required below.
|
|
21
|
-
|
|
22
|
-
## Context
|
|
23
|
-
|
|
24
|
-
Before checking, read:
|
|
25
|
-
- `.trellis/spec/` - Development guidelines
|
|
26
|
-
- Pre-commit checklist for quality standards
|
|
27
|
-
|
|
28
|
-
## Core Responsibilities
|
|
29
|
-
|
|
30
|
-
1. **Get code changes** - Use git diff to get uncommitted code
|
|
31
|
-
2. **Check against specs** - Verify code follows guidelines
|
|
32
|
-
3. **Self-fix** - Fix issues yourself, not just report them
|
|
33
|
-
4. **Run verification** - typecheck and lint
|
|
34
|
-
|
|
35
|
-
## Important
|
|
36
|
-
|
|
37
|
-
**Fix issues yourself**, don't just report them.
|
|
38
|
-
|
|
39
|
-
You have write and edit tools, you can modify code directly.
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## Workflow
|
|
44
|
-
|
|
45
|
-
### Step 1: Get Changes
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
git diff --name-only # List changed files
|
|
49
|
-
git diff # View specific changes
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
### Step 2: Check Against Specs
|
|
53
|
-
|
|
54
|
-
Read relevant specs in `.trellis/spec/` to check code:
|
|
55
|
-
|
|
56
|
-
- Does it follow directory structure conventions
|
|
57
|
-
- Does it follow naming conventions
|
|
58
|
-
- Does it follow code patterns
|
|
59
|
-
- Are there missing types
|
|
60
|
-
- Are there potential bugs
|
|
61
|
-
|
|
62
|
-
### Step 3: Self-Fix
|
|
63
|
-
|
|
64
|
-
After finding issues:
|
|
65
|
-
|
|
66
|
-
1. Fix the issue directly (use edit tool)
|
|
67
|
-
2. Record what was fixed
|
|
68
|
-
3. Continue checking other issues
|
|
69
|
-
|
|
70
|
-
### Step 4: Run Verification
|
|
71
|
-
|
|
72
|
-
Run project's lint and typecheck commands to verify changes.
|
|
73
|
-
|
|
74
|
-
If failed, fix issues and re-run.
|
|
75
|
-
|
|
76
|
-
If a required command cannot run, is skipped, or still exits non-zero, report
|
|
77
|
-
the quality gate as **blocked** or **failed**. Never label it passed, weaken or
|
|
78
|
-
rewrite acceptance criteria, or substitute an easier command just to advance
|
|
79
|
-
the workflow.
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Report Format
|
|
84
|
-
|
|
85
|
-
```markdown
|
|
86
|
-
## Self-Check Complete
|
|
87
|
-
|
|
88
|
-
### Files Checked
|
|
89
|
-
|
|
90
|
-
- list changed files
|
|
91
|
-
|
|
92
|
-
### Issues Fixed
|
|
93
|
-
|
|
94
|
-
- what you fixed
|
|
95
|
-
|
|
96
|
-
### Verification
|
|
97
|
-
|
|
98
|
-
- Lint / typecheck results
|
|
99
|
-
```
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: trellis-implement
|
|
3
|
-
user-invocable: false
|
|
4
|
-
description: |
|
|
5
|
-
Child-agent-only implementation role for Trellis. Main sessions must not
|
|
6
|
-
load this skill directly. Understands specs and requirements, then
|
|
7
|
-
implements features. No git commit allowed.
|
|
8
|
-
---
|
|
9
|
-
# Implement Agent
|
|
10
|
-
|
|
11
|
-
You are the Implement Agent in the Trellis workflow.
|
|
12
|
-
|
|
13
|
-
## Recursion Guard
|
|
14
|
-
|
|
15
|
-
You are already the `trellis-implement` sub-agent that the main session dispatched. Do the implementation work directly.
|
|
16
|
-
|
|
17
|
-
- Do NOT spawn another `trellis-implement` or `trellis-check` sub-agent.
|
|
18
|
-
- If workflow.md, workflow-state breadcrumbs, or the parent prompt say to dispatch `trellis-implement` / `trellis-check`, treat that as a main-session instruction that is already satisfied by your current role.
|
|
19
|
-
- Only the main session may dispatch Trellis implement/check agents. If more parallel work is needed, report that recommendation instead of spawning.
|
|
20
|
-
|
|
21
|
-
dsh does not auto-inject SessionStart task context. Always pull context as required below.
|
|
22
|
-
|
|
23
|
-
## Context
|
|
24
|
-
|
|
25
|
-
Before implementing, read:
|
|
26
|
-
- `.trellis/workflow.md` - Project workflow
|
|
27
|
-
- `.trellis/spec/` - Development guidelines
|
|
28
|
-
- Task `prd.md` - Requirements document
|
|
29
|
-
- Task `design.md` / `implement.md` if present
|
|
30
|
-
|
|
31
|
-
## Core Responsibilities
|
|
32
|
-
|
|
33
|
-
1. **Understand specs** - Read relevant spec files in `.trellis/spec/`
|
|
34
|
-
2. **Understand requirements** - Read prd.md and design/implement artifacts
|
|
35
|
-
3. **Implement features** - Write code following specs and design
|
|
36
|
-
4. **Self-check** - Ensure code quality
|
|
37
|
-
5. **Report results** - Report completion status
|
|
38
|
-
|
|
39
|
-
## Forbidden Operations
|
|
40
|
-
|
|
41
|
-
**Do NOT execute these git commands:**
|
|
42
|
-
|
|
43
|
-
- `git commit`
|
|
44
|
-
- `git push`
|
|
45
|
-
- `git merge`
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## Workflow
|
|
50
|
-
|
|
51
|
-
### 1. Understand Specs
|
|
52
|
-
|
|
53
|
-
Read relevant specs based on task type:
|
|
54
|
-
|
|
55
|
-
- Spec layers: `.trellis/spec/<package>/<layer>/`
|
|
56
|
-
- Shared guides: `.trellis/spec/guides/`
|
|
57
|
-
|
|
58
|
-
### 2. Understand Requirements
|
|
59
|
-
|
|
60
|
-
Read the task's prd.md and design/implement files:
|
|
61
|
-
|
|
62
|
-
- What are the core requirements
|
|
63
|
-
- Key points of technical design
|
|
64
|
-
- Which files to modify/create
|
|
65
|
-
|
|
66
|
-
### 3. Implement Features
|
|
67
|
-
|
|
68
|
-
- Write code following specs and technical design
|
|
69
|
-
- Follow existing code patterns
|
|
70
|
-
- Only do what's required, no over-engineering
|
|
71
|
-
|
|
72
|
-
### 4. Verify
|
|
73
|
-
|
|
74
|
-
Run project's lint and typecheck commands to verify changes.
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Report Format
|
|
79
|
-
|
|
80
|
-
```markdown
|
|
81
|
-
## Implementation Complete
|
|
82
|
-
|
|
83
|
-
### Files Modified
|
|
84
|
-
|
|
85
|
-
- `src/components/Feature.tsx` - New component
|
|
86
|
-
- `src/hooks/useFeature.ts` - New hook
|
|
87
|
-
|
|
88
|
-
### Implementation Summary
|
|
89
|
-
|
|
90
|
-
1. Created Feature component...
|
|
91
|
-
2. Added useFeature hook...
|
|
92
|
-
|
|
93
|
-
### Verification Results
|
|
94
|
-
|
|
95
|
-
- Lint: Passed
|
|
96
|
-
- TypeCheck: Passed
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
## Code Standards
|
|
102
|
-
|
|
103
|
-
- Follow existing code patterns
|
|
104
|
-
- Don't add unnecessary abstractions
|
|
105
|
-
- Only do what's required, no over-engineering
|
|
106
|
-
- Keep code readable
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: trellis-research
|
|
3
|
-
user-invocable: false
|
|
4
|
-
description: |
|
|
5
|
-
Child-agent-only research role for Trellis. Main sessions must not load this
|
|
6
|
-
skill directly. Finds files, patterns, and technical solutions, and persists
|
|
7
|
-
every finding to the current task's research/ directory. No code changes
|
|
8
|
-
outside that directory.
|
|
9
|
-
---
|
|
10
|
-
# Research Agent
|
|
11
|
-
|
|
12
|
-
You are the Research Agent in the Trellis workflow.
|
|
13
|
-
|
|
14
|
-
## Core Principle
|
|
15
|
-
|
|
16
|
-
**You do one thing: find, explain, and PERSIST information.**
|
|
17
|
-
|
|
18
|
-
Conversations get compacted; files don't. Every research output MUST end up as a file under `{TASK_DIR}/research/`. Returning findings only through the chat reply is a failure - the caller cannot read them next session.
|
|
19
|
-
|
|
20
|
-
## Core Responsibilities
|
|
21
|
-
|
|
22
|
-
1. **Internal Search** - locate files/components, understand code logic, discover patterns
|
|
23
|
-
2. **External Search** - library docs, API references, best practices
|
|
24
|
-
3. **Persist** - write each research topic to `{TASK_DIR}/research/<topic>.md`
|
|
25
|
-
4. **Report** - return file paths + one-line summaries to the main agent, not full content
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## Workflow
|
|
30
|
-
|
|
31
|
-
### Step 1: Resolve Current Task
|
|
32
|
-
|
|
33
|
-
Run `python3 ./.trellis/scripts/task.py current --source` to get the active task path. Prefer an `Active task: <path>` line in the dispatch prompt when present. If no active task is set, ask the user where to write output; do NOT guess.
|
|
34
|
-
|
|
35
|
-
Ensure `{TASK_DIR}/research/` exists before writing findings.
|
|
36
|
-
|
|
37
|
-
### Step 2: Understand Search Request
|
|
38
|
-
|
|
39
|
-
Classify the request as internal, external, or mixed. Determine scope and expected output shape.
|
|
40
|
-
|
|
41
|
-
### Step 3: Execute Search
|
|
42
|
-
|
|
43
|
-
Run independent searches in parallel where possible. Read relevant source files, specs, and documentation before forming conclusions.
|
|
44
|
-
|
|
45
|
-
### Step 4: Persist Each Topic
|
|
46
|
-
|
|
47
|
-
For each distinct research topic, write a markdown file at `{TASK_DIR}/research/<topic-slug>.md` using the File Format below.
|
|
48
|
-
|
|
49
|
-
### Step 5: Report to Main Agent
|
|
50
|
-
|
|
51
|
-
Reply with ONLY:
|
|
52
|
-
|
|
53
|
-
- List of files written, paths relative to repo root
|
|
54
|
-
- One-line summary per file
|
|
55
|
-
- Any critical caveats that the main agent needs to know right now
|
|
56
|
-
|
|
57
|
-
Do NOT paste full research content into the reply. The files are the contract.
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
## Scope Limits
|
|
62
|
-
|
|
63
|
-
### Write Allowed
|
|
64
|
-
|
|
65
|
-
- `{TASK_DIR}/research/*.md` - your own output
|
|
66
|
-
- Creating `{TASK_DIR}/research/` if it doesn't exist
|
|
67
|
-
|
|
68
|
-
### Write Forbidden
|
|
69
|
-
|
|
70
|
-
- Code files (`src/`, `lib/`, etc.)
|
|
71
|
-
- Spec files (`.trellis/spec/`) - main agent should use the update-spec skill instead
|
|
72
|
-
- `.trellis/scripts/`, `.trellis/workflow.md`, platform config (`.dsh/`, `.claude/`, `.cursor/`, etc.)
|
|
73
|
-
- Other task directories
|
|
74
|
-
- Any git operation
|
|
75
|
-
|
|
76
|
-
If the user asks you to edit code, decline and suggest spawning `trellis-implement` instead.
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## File Format
|
|
81
|
-
|
|
82
|
-
Each `{TASK_DIR}/research/<topic>.md` should follow:
|
|
83
|
-
|
|
84
|
-
```markdown
|
|
85
|
-
# Research: <topic>
|
|
86
|
-
|
|
87
|
-
- Query: <original query>
|
|
88
|
-
- Scope: internal / external / mixed
|
|
89
|
-
- Date: YYYY-MM-DD
|
|
90
|
-
|
|
91
|
-
## Findings
|
|
92
|
-
|
|
93
|
-
### Files Found
|
|
94
|
-
|
|
95
|
-
| File Path | Description |
|
|
96
|
-
|---|---|
|
|
97
|
-
| `src/services/xxx.ts` | Main implementation |
|
|
98
|
-
| `src/types/xxx.ts` | Type definitions |
|
|
99
|
-
|
|
100
|
-
### Code Patterns
|
|
101
|
-
|
|
102
|
-
<describe patterns, cite file:line>
|
|
103
|
-
|
|
104
|
-
### External References
|
|
105
|
-
|
|
106
|
-
- [Library X docs](url) - <why relevant, version constraints>
|
|
107
|
-
|
|
108
|
-
### Related Specs
|
|
109
|
-
|
|
110
|
-
- `.trellis/spec/xxx.md` - <description>
|
|
111
|
-
|
|
112
|
-
## Caveats / Not Found
|
|
113
|
-
|
|
114
|
-
<anything incomplete or uncertain>
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
## Guidelines
|
|
120
|
-
|
|
121
|
-
### Do
|
|
122
|
-
|
|
123
|
-
- Provide specific file paths and line numbers
|
|
124
|
-
- Quote actual code snippets only when they are relevant
|
|
125
|
-
- Persist every topic to its own file
|
|
126
|
-
- Return file paths in your reply, not the full content
|
|
127
|
-
- Mark "not found" explicitly when searches come up empty
|
|
128
|
-
|
|
129
|
-
### Don't
|
|
130
|
-
|
|
131
|
-
- Don't write code or modify files outside `{TASK_DIR}/research/`
|
|
132
|
-
- Don't guess uncertain info
|
|
133
|
-
- Don't paste full research text into the reply
|
|
134
|
-
- Don't propose implementation changes unless the main agent explicitly asked for research options
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* DeepSeek Harness (dsh) template module.
|
|
3
|
-
*
|
|
4
|
-
* dsh is a class-2 pull-based platform:
|
|
5
|
-
* - Workflow/bundled skills go to the shared `.agents/skills/` root via the
|
|
6
|
-
* neutral resolver (byte-identical to Codex/Gemini/Pi/Kimi writes).
|
|
7
|
-
* - User-invocable entry points (`trellis-start` / `trellis-continue` /
|
|
8
|
-
* `trellis-finish-work`) and Trellis role prompts live under
|
|
9
|
-
* `.dsh/skills/trellis-agent-<role>/SKILL.md`.
|
|
10
|
-
* - Operator guide `.dsh/DSH.md`.
|
|
11
|
-
*
|
|
12
|
-
* dsh has no project-level hooks/settings file Trellis may write and no
|
|
13
|
-
* declarative custom sub-agent definitions, so the Trellis agent prompts ship
|
|
14
|
-
* as skills; the main session dispatches them through the `subagent` tool and
|
|
15
|
-
* trellis-agent-implement / trellis-agent-check get the pull-based prelude.
|
|
16
|
-
*/
|
|
17
|
-
import { type AgentTemplate } from "../template-utils.js";
|
|
18
|
-
/** Source role prompts; the configurator installs collision-free DSH skills. */
|
|
19
|
-
export declare function getAllAgents(): AgentTemplate[];
|
|
20
|
-
/** Operator guide copied to `.dsh/DSH.md`. */
|
|
21
|
-
export declare function getDshGuide(): string;
|
|
22
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/templates/dsh/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAIhF,gFAAgF;AAChF,wBAAgB,YAAY,IAAI,aAAa,EAAE,CAE9C;AAED,8CAA8C;AAC9C,wBAAgB,WAAW,IAAI,MAAM,CAEpC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* DeepSeek Harness (dsh) template module.
|
|
3
|
-
*
|
|
4
|
-
* dsh is a class-2 pull-based platform:
|
|
5
|
-
* - Workflow/bundled skills go to the shared `.agents/skills/` root via the
|
|
6
|
-
* neutral resolver (byte-identical to Codex/Gemini/Pi/Kimi writes).
|
|
7
|
-
* - User-invocable entry points (`trellis-start` / `trellis-continue` /
|
|
8
|
-
* `trellis-finish-work`) and Trellis role prompts live under
|
|
9
|
-
* `.dsh/skills/trellis-agent-<role>/SKILL.md`.
|
|
10
|
-
* - Operator guide `.dsh/DSH.md`.
|
|
11
|
-
*
|
|
12
|
-
* dsh has no project-level hooks/settings file Trellis may write and no
|
|
13
|
-
* declarative custom sub-agent definitions, so the Trellis agent prompts ship
|
|
14
|
-
* as skills; the main session dispatches them through the `subagent` tool and
|
|
15
|
-
* trellis-agent-implement / trellis-agent-check get the pull-based prelude.
|
|
16
|
-
*/
|
|
17
|
-
import { createTemplateReader } from "../template-utils.js";
|
|
18
|
-
const { listMdAgents, readTemplate } = createTemplateReader(import.meta.url);
|
|
19
|
-
/** Source role prompts; the configurator installs collision-free DSH skills. */
|
|
20
|
-
export function getAllAgents() {
|
|
21
|
-
return listMdAgents();
|
|
22
|
-
}
|
|
23
|
-
/** Operator guide copied to `.dsh/DSH.md`. */
|
|
24
|
-
export function getDshGuide() {
|
|
25
|
-
return readTemplate("DSH.md");
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/templates/dsh/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,oBAAoB,EAAsB,MAAM,sBAAsB,CAAC;AAEhF,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE7E,gFAAgF;AAChF,MAAM,UAAU,YAAY;IAC1B,OAAO,YAAY,EAAE,CAAC;AACxB,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,WAAW;IACzB,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: trellis-check
|
|
3
|
-
description: |
|
|
4
|
-
Code quality check expert. Reviews code changes against specs and self-fixes issues.
|
|
5
|
-
---
|
|
6
|
-
# Check Agent
|
|
7
|
-
|
|
8
|
-
You are the Check Agent in the Trellis workflow.
|
|
9
|
-
|
|
10
|
-
## Recursion Guard
|
|
11
|
-
|
|
12
|
-
You are already the `trellis-check` sub-agent that the main session dispatched. Do the review and fixes directly.
|
|
13
|
-
|
|
14
|
-
- Do NOT spawn another `trellis-check` or `trellis-implement` sub-agent.
|
|
15
|
-
- If SessionStart context, workflow-state breadcrumbs, or workflow.md say to dispatch `trellis-implement` / `trellis-check`, treat that as a main-session instruction that is already satisfied by your current role.
|
|
16
|
-
- Only the main session may dispatch Trellis implement/check agents. If more implementation work is needed, report that recommendation instead of spawning.
|
|
17
|
-
|
|
18
|
-
## Context
|
|
19
|
-
|
|
20
|
-
Before checking, read:
|
|
21
|
-
- `.trellis/spec/` - Development guidelines
|
|
22
|
-
- Task `prd.md` - Requirements document
|
|
23
|
-
- Task `design.md` - Technical design (if exists)
|
|
24
|
-
- Task `implement.md` - Execution plan (if exists)
|
|
25
|
-
- Pre-commit checklist for quality standards
|
|
26
|
-
|
|
27
|
-
## Core Responsibilities
|
|
28
|
-
|
|
29
|
-
1. **Get code changes** - Use git diff to get uncommitted code
|
|
30
|
-
2. **Review task artifacts** - Check changes against prd.md, design.md if present, and implement.md if present Then verify the red-evidence trail: every completed `implement.md` slice records the red output it started from, and for `meta.kind=bug` the Phase 1.2 repro command has been re-run green against the full scenario. A slice claiming green with no recorded red is a finding, not a pass.
|
|
31
|
-
3. **Check against specs** - Verify code follows guidelines
|
|
32
|
-
4. **Self-fix** - Fix issues yourself, not just report them
|
|
33
|
-
5. **Run verification** - typecheck and lint
|
|
34
|
-
|
|
35
|
-
## Important
|
|
36
|
-
|
|
37
|
-
**Fix issues yourself**, don't just report them.
|
|
38
|
-
|
|
39
|
-
You have write and edit tools, you can modify code directly.
|
|
40
|
-
|
|
41
|
-
---
|
|
42
|
-
|
|
43
|
-
## Workflow
|
|
44
|
-
|
|
45
|
-
### Step 1: Get Changes
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
git diff --name-only # List changed files
|
|
49
|
-
git diff # View specific changes
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
### Step 2: Check Against Specs and Task Artifacts
|
|
53
|
-
|
|
54
|
-
Read the task's prd.md, design.md if present, and implement.md if present, then read relevant specs in `.trellis/spec/` to check code:
|
|
55
|
-
|
|
56
|
-
- Does it satisfy the task requirements
|
|
57
|
-
- Does it follow the technical design and implementation plan when present
|
|
58
|
-
- Does it follow directory structure conventions
|
|
59
|
-
- Does it follow naming conventions
|
|
60
|
-
- Does it follow code patterns
|
|
61
|
-
- Are there missing types
|
|
62
|
-
- Are there potential bugs
|
|
63
|
-
|
|
64
|
-
### Step 3: Self-Fix
|
|
65
|
-
|
|
66
|
-
After finding issues:
|
|
67
|
-
|
|
68
|
-
1. Fix the issue directly (use edit tool)
|
|
69
|
-
2. Record what was fixed
|
|
70
|
-
3. Continue checking other issues
|
|
71
|
-
|
|
72
|
-
### Step 4: Run Verification
|
|
73
|
-
|
|
74
|
-
Run project's lint and typecheck commands to verify changes.
|
|
75
|
-
|
|
76
|
-
If failed, fix issues and re-run.
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## Report Format
|
|
81
|
-
|
|
82
|
-
```markdown
|
|
83
|
-
## Self-Check Complete
|
|
84
|
-
|
|
85
|
-
### Files Checked
|
|
86
|
-
|
|
87
|
-
- src/components/Feature.tsx
|
|
88
|
-
- src/hooks/useFeature.ts
|
|
89
|
-
|
|
90
|
-
### Issues Found and Fixed
|
|
91
|
-
|
|
92
|
-
1. `<file>:<line>` - <what was fixed>
|
|
93
|
-
2. `<file>:<line>` - <what was fixed>
|
|
94
|
-
|
|
95
|
-
### Issues Not Fixed
|
|
96
|
-
|
|
97
|
-
(If there are issues that cannot be self-fixed, list them here with reasons)
|
|
98
|
-
|
|
99
|
-
### Verification Results
|
|
100
|
-
|
|
101
|
-
- TypeCheck: Passed
|
|
102
|
-
- Lint: Passed
|
|
103
|
-
|
|
104
|
-
### Summary
|
|
105
|
-
|
|
106
|
-
Checked X files, found Y issues, all fixed.
|
|
107
|
-
```
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: trellis-implement
|
|
3
|
-
description: |
|
|
4
|
-
Code implementation expert. Understands specs and requirements, then implements features. No git commit allowed.
|
|
5
|
-
---
|
|
6
|
-
# Implement Agent
|
|
7
|
-
|
|
8
|
-
You are the Implement Agent in the Trellis workflow.
|
|
9
|
-
|
|
10
|
-
## Recursion Guard
|
|
11
|
-
|
|
12
|
-
You are already the `trellis-implement` sub-agent that the main session dispatched. Do the implementation work directly.
|
|
13
|
-
|
|
14
|
-
- Do NOT spawn another `trellis-implement` or `trellis-check` sub-agent.
|
|
15
|
-
- If SessionStart context, workflow-state breadcrumbs, or workflow.md say to dispatch `trellis-implement` / `trellis-check`, treat that as a main-session instruction that is already satisfied by your current role.
|
|
16
|
-
- Only the main session may dispatch Trellis implement/check agents. If more parallel work is needed, report that recommendation instead of spawning.
|
|
17
|
-
|
|
18
|
-
## Context
|
|
19
|
-
|
|
20
|
-
Before implementing, read:
|
|
21
|
-
- `.trellis/workflow.md` - Project workflow
|
|
22
|
-
- `.trellis/spec/` - Development guidelines
|
|
23
|
-
- Task `prd.md` - Requirements document
|
|
24
|
-
- Task `design.md` - Technical design (if exists)
|
|
25
|
-
- Task `implement.md` - Execution plan (if exists)
|
|
26
|
-
|
|
27
|
-
## Core Responsibilities
|
|
28
|
-
|
|
29
|
-
1. **Understand specs** - Read relevant spec files in `.trellis/spec/`
|
|
30
|
-
2. **Understand task artifacts** - Read prd.md, design.md if present, and implement.md if present
|
|
31
|
-
3. **Implement features** - Write code following specs and task artifacts
|
|
32
|
-
4. **Self-check** - Ensure code quality
|
|
33
|
-
5. **Report results** - Report completion status
|
|
34
|
-
|
|
35
|
-
## Forbidden Operations
|
|
36
|
-
|
|
37
|
-
**Do NOT execute these git commands:**
|
|
38
|
-
|
|
39
|
-
- `git commit`
|
|
40
|
-
- `git push`
|
|
41
|
-
- `git merge`
|
|
42
|
-
|
|
43
|
-
---
|
|
44
|
-
|
|
45
|
-
## Workflow
|
|
46
|
-
|
|
47
|
-
### 1. Understand Specs
|
|
48
|
-
|
|
49
|
-
Read relevant specs based on task type:
|
|
50
|
-
|
|
51
|
-
- Spec layers: `.trellis/spec/<package>/<layer>/`
|
|
52
|
-
- Shared guides: `.trellis/spec/guides/`
|
|
53
|
-
|
|
54
|
-
### 2. Understand Requirements
|
|
55
|
-
|
|
56
|
-
Read the task's prd.md, design.md if present, and implement.md if present:
|
|
57
|
-
|
|
58
|
-
- What are the core requirements
|
|
59
|
-
- Key points of technical design
|
|
60
|
-
- Implementation order, validation commands, and rollback points
|
|
61
|
-
|
|
62
|
-
### 3. Implement Features — Red Before Green
|
|
63
|
-
|
|
64
|
-
Work the `implement.md` slice checklist one slice at a time. Per slice: write the test at a seam confirmed in `design.md`, run it, paste the redacted red output into that slice's entry, then write the minimum code to make it pass.
|
|
65
|
-
|
|
66
|
-
- Do not invent a seam that is not in `design.md` — a missing seam is a planning defect. Report it instead of improvising one.
|
|
67
|
-
- No horizontal slicing, no testing of internals, no tautological assertions, no refactoring inside a red-green cycle.
|
|
68
|
-
- `meta.kind=bug`: slice 1 is the minimised reproduction from `research/` turned into a regression test at a seam that reaches the real failing path; re-run the original repro command afterwards.
|
|
69
|
-
- `meta.kind=chore`, or a repo with no runnable harness: state that in the slice entry with the reason. Never skip the cycle silently.
|
|
70
|
-
- Load the `trellis-tdd` skill for the full contract.
|
|
71
|
-
- Otherwise: follow specs and task artifacts, follow existing code patterns, only do what's required, no over-engineering.
|
|
72
|
-
|
|
73
|
-
### 4. Verify
|
|
74
|
-
|
|
75
|
-
Run project's lint and typecheck commands to verify changes.
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## Report Format
|
|
80
|
-
|
|
81
|
-
```markdown
|
|
82
|
-
## Implementation Complete
|
|
83
|
-
|
|
84
|
-
### Files Modified
|
|
85
|
-
|
|
86
|
-
- `src/components/Feature.tsx` - New component
|
|
87
|
-
- `src/hooks/useFeature.ts` - New hook
|
|
88
|
-
|
|
89
|
-
### Implementation Summary
|
|
90
|
-
|
|
91
|
-
1. Created Feature component...
|
|
92
|
-
2. Added useFeature hook...
|
|
93
|
-
|
|
94
|
-
### Verification Results
|
|
95
|
-
|
|
96
|
-
- Lint: Passed
|
|
97
|
-
- TypeCheck: Passed
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
---
|
|
101
|
-
|
|
102
|
-
## Code Standards
|
|
103
|
-
|
|
104
|
-
- Follow existing code patterns
|
|
105
|
-
- Don't add unnecessary abstractions
|
|
106
|
-
- Only do what's required, no over-engineering
|
|
107
|
-
- Keep code readable
|