@mindfoldhq/trellis 0.4.0-beta.1 → 0.4.0-beta.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.
- package/README.md +19 -5
- package/dist/cli/index.js +3 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/init.d.ts +3 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +48 -23
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +52 -41
- package/dist/commands/update.js.map +1 -1
- package/dist/configurators/codebuddy.d.ts +11 -0
- package/dist/configurators/codebuddy.d.ts.map +1 -0
- package/dist/configurators/codebuddy.js +58 -0
- package/dist/configurators/codebuddy.js.map +1 -0
- package/dist/configurators/codex.d.ts +7 -4
- package/dist/configurators/codex.d.ts.map +1 -1
- package/dist/configurators/codex.js +40 -10
- package/dist/configurators/codex.js.map +1 -1
- package/dist/configurators/copilot.d.ts +9 -0
- package/dist/configurators/copilot.d.ts.map +1 -0
- package/dist/configurators/copilot.js +34 -0
- package/dist/configurators/copilot.js.map +1 -0
- package/dist/configurators/index.d.ts +11 -1
- package/dist/configurators/index.d.ts.map +1 -1
- package/dist/configurators/index.js +72 -4
- package/dist/configurators/index.js.map +1 -1
- package/dist/configurators/opencode.d.ts +1 -1
- package/dist/configurators/opencode.js +1 -1
- package/dist/configurators/windsurf.d.ts +8 -0
- package/dist/configurators/windsurf.d.ts.map +1 -0
- package/dist/configurators/windsurf.js +18 -0
- package/dist/configurators/windsurf.js.map +1 -0
- package/dist/configurators/workflow.d.ts +1 -1
- package/dist/configurators/workflow.d.ts.map +1 -1
- package/dist/configurators/workflow.js +4 -2
- package/dist/configurators/workflow.js.map +1 -1
- package/dist/migrations/manifests/0.3.10.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.10.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.2.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.3.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.4.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.5.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.6.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.7.json +9 -0
- package/dist/migrations/manifests/0.4.0-beta.8.json +34 -0
- package/dist/migrations/manifests/0.4.0-beta.9.json +9 -0
- package/dist/templates/claude/commands/trellis/record-session.md +3 -2
- package/dist/templates/claude/hooks/inject-subagent-context.py +8 -1
- package/dist/templates/claude/hooks/ralph-loop.py +18 -10
- package/dist/templates/claude/hooks/session-start.py +33 -9
- package/dist/templates/claude/hooks/statusline.py +211 -0
- package/dist/templates/claude/settings.json +4 -0
- package/dist/templates/codebuddy/commands/trellis/before-dev.md +29 -0
- package/dist/templates/codebuddy/commands/trellis/brainstorm.md +487 -0
- package/dist/templates/codebuddy/commands/trellis/break-loop.md +107 -0
- package/dist/templates/codebuddy/commands/trellis/check-cross-layer.md +153 -0
- package/dist/templates/codebuddy/commands/trellis/check.md +25 -0
- package/dist/templates/codebuddy/commands/trellis/create-command.md +154 -0
- package/dist/templates/codebuddy/commands/trellis/finish-work.md +143 -0
- package/dist/templates/codebuddy/commands/trellis/integrate-skill.md +219 -0
- package/dist/templates/codebuddy/commands/trellis/onboard.md +358 -0
- package/dist/templates/codebuddy/commands/trellis/record-session.md +61 -0
- package/dist/templates/codebuddy/commands/trellis/start.md +373 -0
- package/dist/templates/codebuddy/commands/trellis/update-spec.md +354 -0
- package/dist/templates/codebuddy/index.d.ts +25 -0
- package/dist/templates/codebuddy/index.d.ts.map +1 -0
- package/dist/templates/codebuddy/index.js +45 -0
- package/dist/templates/codebuddy/index.js.map +1 -0
- package/dist/templates/codex/agents/check.toml +23 -0
- package/dist/templates/codex/agents/implement.toml +19 -0
- package/dist/templates/codex/agents/research.toml +26 -0
- package/dist/templates/codex/codex-skills/parallel/SKILL.md +194 -0
- package/dist/templates/codex/config.toml +5 -0
- package/dist/templates/codex/hooks/session-start.py +228 -0
- package/dist/templates/codex/hooks.json +16 -0
- package/dist/templates/codex/index.d.ts +27 -5
- package/dist/templates/codex/index.d.ts.map +1 -1
- package/dist/templates/codex/index.js +60 -8
- package/dist/templates/codex/index.js.map +1 -1
- package/dist/templates/codex/skills/before-dev/SKILL.md +1 -1
- package/dist/templates/codex/skills/brainstorm/SKILL.md +1 -1
- package/dist/templates/codex/skills/break-loop/SKILL.md +1 -1
- package/dist/templates/codex/skills/check/SKILL.md +1 -1
- package/dist/templates/codex/skills/check-cross-layer/SKILL.md +1 -1
- package/dist/templates/codex/skills/create-command/SKILL.md +1 -1
- package/dist/templates/codex/skills/finish-work/SKILL.md +1 -1
- package/dist/templates/codex/skills/improve-ut/SKILL.md +69 -0
- package/dist/templates/codex/skills/integrate-skill/SKILL.md +1 -1
- package/dist/templates/codex/skills/onboard/SKILL.md +1 -1
- package/dist/templates/codex/skills/record-session/SKILL.md +4 -3
- package/dist/templates/codex/skills/start/SKILL.md +1 -1
- package/dist/templates/codex/skills/update-spec/SKILL.md +1 -1
- package/dist/templates/copilot/hooks/session-start.py +218 -0
- package/dist/templates/copilot/hooks.json +11 -0
- package/dist/templates/copilot/index.d.ts +23 -0
- package/dist/templates/copilot/index.d.ts.map +1 -0
- package/dist/templates/copilot/index.js +54 -0
- package/dist/templates/copilot/index.js.map +1 -0
- package/dist/templates/copilot/prompts/before-dev.prompt.md +33 -0
- package/dist/templates/copilot/prompts/brainstorm.prompt.md +491 -0
- package/dist/templates/copilot/prompts/break-loop.prompt.md +129 -0
- package/dist/templates/copilot/prompts/check-cross-layer.prompt.md +157 -0
- package/dist/templates/copilot/prompts/check.prompt.md +29 -0
- package/dist/templates/copilot/prompts/create-command.prompt.md +116 -0
- package/dist/templates/copilot/prompts/finish-work.prompt.md +157 -0
- package/dist/templates/copilot/prompts/integrate-skill.prompt.md +223 -0
- package/dist/templates/copilot/prompts/onboard.prompt.md +362 -0
- package/dist/templates/copilot/prompts/parallel.prompt.md +196 -0
- package/dist/templates/copilot/prompts/record-session.prompt.md +66 -0
- package/dist/templates/copilot/prompts/start.prompt.md +397 -0
- package/dist/templates/copilot/prompts/update-spec.prompt.md +358 -0
- package/dist/templates/cursor/commands/trellis-record-session.md +3 -2
- package/dist/templates/extract.d.ts +36 -0
- package/dist/templates/extract.d.ts.map +1 -1
- package/dist/templates/extract.js +64 -0
- package/dist/templates/extract.js.map +1 -1
- package/dist/templates/gemini/commands/trellis/record-session.toml +3 -2
- package/dist/templates/iflow/commands/trellis/record-session.md +3 -2
- package/dist/templates/iflow/hooks/inject-subagent-context.py +8 -1
- package/dist/templates/iflow/hooks/ralph-loop.py +8 -1
- package/dist/templates/iflow/hooks/session-start.py +33 -9
- package/dist/templates/kilo/workflows/record-session.md +3 -2
- package/dist/templates/kiro/skills/before-dev/SKILL.md +1 -1
- package/dist/templates/kiro/skills/brainstorm/SKILL.md +1 -1
- package/dist/templates/kiro/skills/break-loop/SKILL.md +1 -1
- package/dist/templates/kiro/skills/check/SKILL.md +1 -1
- package/dist/templates/kiro/skills/check-cross-layer/SKILL.md +1 -1
- package/dist/templates/kiro/skills/create-command/SKILL.md +1 -1
- package/dist/templates/kiro/skills/finish-work/SKILL.md +1 -1
- package/dist/templates/kiro/skills/integrate-skill/SKILL.md +1 -1
- package/dist/templates/kiro/skills/onboard/SKILL.md +1 -1
- package/dist/templates/kiro/skills/record-session/SKILL.md +4 -3
- package/dist/templates/kiro/skills/start/SKILL.md +1 -1
- package/dist/templates/kiro/skills/update-spec/SKILL.md +1 -1
- package/dist/templates/markdown/agents.md +4 -0
- package/dist/templates/markdown/spec/backend/directory-structure.md +1 -1
- package/dist/templates/markdown/workspace-index.md +2 -0
- package/dist/templates/opencode/agents/dispatch.md +20 -19
- package/dist/templates/opencode/commands/trellis/record-session.md +3 -2
- package/dist/templates/opencode/lib/trellis-context.js +42 -2
- package/dist/templates/opencode/{plugin → plugins}/session-start.js +7 -27
- package/dist/templates/qoder/skills/before-dev/SKILL.md +1 -1
- package/dist/templates/qoder/skills/brainstorm/SKILL.md +1 -1
- package/dist/templates/qoder/skills/break-loop/SKILL.md +1 -1
- package/dist/templates/qoder/skills/check/SKILL.md +1 -1
- package/dist/templates/qoder/skills/check-cross-layer/SKILL.md +1 -1
- package/dist/templates/qoder/skills/create-command/SKILL.md +1 -1
- package/dist/templates/qoder/skills/finish-work/SKILL.md +1 -1
- package/dist/templates/qoder/skills/integrate-skill/SKILL.md +1 -1
- package/dist/templates/qoder/skills/onboard/SKILL.md +1 -1
- package/dist/templates/qoder/skills/record-session/SKILL.md +4 -3
- package/dist/templates/qoder/skills/start/SKILL.md +1 -1
- package/dist/templates/qoder/skills/update-spec/SKILL.md +1 -1
- package/dist/templates/trellis/scripts/add_session.py +69 -16
- package/dist/templates/trellis/scripts/common/__init__.py +2 -0
- package/dist/templates/trellis/scripts/common/cli_adapter.py +133 -21
- package/dist/templates/trellis/scripts/common/config.py +40 -0
- package/dist/templates/trellis/scripts/common/developer.py +2 -2
- package/dist/templates/trellis/scripts/common/packages_context.py +9 -4
- package/dist/templates/trellis/scripts/common/paths.py +57 -6
- package/dist/templates/trellis/scripts/common/session_context.py +98 -2
- package/dist/templates/trellis/scripts/common/task_context.py +27 -1
- package/dist/templates/trellis/scripts/common/task_store.py +6 -4
- package/dist/templates/trellis/scripts/common/task_utils.py +14 -8
- package/dist/templates/trellis/scripts/create_bootstrap.py +1 -1
- package/dist/templates/trellis/scripts/multi_agent/plan.py +7 -6
- package/dist/templates/trellis/scripts/multi_agent/start.py +16 -11
- package/dist/templates/trellis/scripts/task.py +1 -1
- package/dist/templates/trellis/scripts-shell-archive/create-bootstrap.sh +1 -1
- package/dist/templates/trellis/workflow.md +17 -4
- package/dist/templates/windsurf/index.d.ts +21 -0
- package/dist/templates/windsurf/index.d.ts.map +1 -0
- package/dist/templates/windsurf/index.js +44 -0
- package/dist/templates/windsurf/index.js.map +1 -0
- package/dist/templates/windsurf/workflows/trellis-before-dev.md +31 -0
- package/dist/templates/windsurf/workflows/trellis-brainstorm.md +491 -0
- package/dist/templates/windsurf/workflows/trellis-break-loop.md +111 -0
- package/dist/templates/windsurf/workflows/trellis-check-cross-layer.md +157 -0
- package/dist/templates/windsurf/workflows/trellis-check.md +27 -0
- package/dist/templates/windsurf/workflows/trellis-create-command.md +154 -0
- package/dist/templates/windsurf/workflows/trellis-finish-work.md +147 -0
- package/dist/templates/windsurf/workflows/trellis-integrate-skill.md +220 -0
- package/dist/templates/windsurf/workflows/trellis-onboard.md +362 -0
- package/dist/templates/windsurf/workflows/trellis-record-session.md +66 -0
- package/dist/templates/windsurf/workflows/trellis-start.md +373 -0
- package/dist/templates/windsurf/workflows/trellis-update-spec.md +358 -0
- package/dist/types/ai-tools.d.ts +15 -3
- package/dist/types/ai-tools.d.ts.map +1 -1
- package/dist/types/ai-tools.js +42 -2
- package/dist/types/ai-tools.js.map +1 -1
- package/dist/utils/project-detector.d.ts +5 -0
- package/dist/utils/project-detector.d.ts.map +1 -1
- package/dist/utils/project-detector.js +7 -0
- package/dist/utils/project-detector.js.map +1 -1
- package/dist/utils/template-fetcher.d.ts +24 -3
- package/dist/utils/template-fetcher.d.ts.map +1 -1
- package/dist/utils/template-fetcher.js +129 -16
- package/dist/utils/template-fetcher.js.map +1 -1
- package/package.json +1 -1
- /package/dist/templates/opencode/{plugin → plugins}/inject-subagent-context.js +0 -0
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<strong>A multi-platform AI coding framework that rules</strong><br/>
|
|
11
|
-
<sub>Supports Claude Code, Cursor, OpenCode, iFlow, Codex, Kilo, Kiro, Gemini CLI, Antigravity, and
|
|
11
|
+
<sub>Supports Claude Code, Cursor, OpenCode, iFlow, Codex, Kilo, Kiro, Gemini CLI, Antigravity, Windsurf, Qoder, CodeBuddy, and GitHub Copilot.</sub>
|
|
12
12
|
</p>
|
|
13
13
|
|
|
14
14
|
<p align="center">
|
|
@@ -21,10 +21,19 @@
|
|
|
21
21
|
|
|
22
22
|
<p align="center">
|
|
23
23
|
<a href="https://www.npmjs.com/package/@mindfoldhq/trellis"><img src="https://img.shields.io/npm/v/@mindfoldhq/trellis.svg?style=flat-square&color=2563eb" alt="npm version" /></a>
|
|
24
|
+
<a href="https://www.npmjs.com/package/@mindfoldhq/trellis"><img src="https://img.shields.io/npm/dw/@mindfoldhq/trellis?style=flat-square&color=cb3837&label=downloads" alt="npm downloads" /></a>
|
|
24
25
|
<a href="https://github.com/mindfold-ai/Trellis/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-AGPL--3.0-16a34a.svg?style=flat-square" alt="license" /></a>
|
|
25
26
|
<a href="https://github.com/mindfold-ai/Trellis/stargazers"><img src="https://img.shields.io/github/stars/mindfold-ai/Trellis?style=flat-square&color=eab308" alt="stars" /></a>
|
|
26
27
|
<a href="https://docs.trytrellis.app/"><img src="https://img.shields.io/badge/docs-trytrellis.app-0f766e?style=flat-square" alt="docs" /></a>
|
|
27
28
|
<a href="https://discord.com/invite/tWcCZ3aRHc"><img src="https://img.shields.io/badge/Discord-Join-5865F2?style=flat-square&logo=discord&logoColor=white" alt="Discord" /></a>
|
|
29
|
+
<a href="https://github.com/mindfold-ai/Trellis/issues"><img src="https://img.shields.io/github/issues/mindfold-ai/Trellis?style=flat-square&color=e67e22" alt="open issues" /></a>
|
|
30
|
+
<a href="https://github.com/mindfold-ai/Trellis/pulls"><img src="https://img.shields.io/github/issues-pr/mindfold-ai/Trellis?style=flat-square&color=9b59b6" alt="open PRs" /></a>
|
|
31
|
+
<a href="https://deepwiki.com/mindfold-ai/Trellis"><img src="https://img.shields.io/badge/Ask-DeepWiki-blue?style=flat-square" alt="Ask DeepWiki" /></a>
|
|
32
|
+
<a href="https://chatgpt.com/?q=Explain+the+project+mindfold-ai/Trellis+on+GitHub"><img src="https://img.shields.io/badge/Ask-ChatGPT-74aa9c?style=flat-square&logo=openai&logoColor=white" alt="Ask ChatGPT" /></a>
|
|
33
|
+
</p>
|
|
34
|
+
|
|
35
|
+
<p align="center">
|
|
36
|
+
<img src="assets/trellis-demo.gif" alt="Trellis workflow demo" width="100%">
|
|
28
37
|
</p>
|
|
29
38
|
|
|
30
39
|
## Why Trellis?
|
|
@@ -36,7 +45,12 @@
|
|
|
36
45
|
| **Parallel agent execution** | Run multiple AI tasks side by side with git worktrees instead of turning one branch into a traffic jam. |
|
|
37
46
|
| **Project memory** | Journals in `.trellis/workspace/` preserve what happened last time, so each new session starts with real context. |
|
|
38
47
|
| **Team-shared standards** | Specs live in the repo, so one person’s hard-won workflow or rule can benefit the whole team. |
|
|
39
|
-
| **Multi-platform setup** | Bring the same Trellis structure to
|
|
48
|
+
| **Multi-platform setup** | Bring the same Trellis structure to 13 AI coding platforms instead of rebuilding your workflow per tool. |
|
|
49
|
+
|
|
50
|
+
## Prerequisites
|
|
51
|
+
|
|
52
|
+
- **Node.js** ≥ 18
|
|
53
|
+
- **Python** ≥ 3.10 (required for hooks and automation scripts)
|
|
40
54
|
|
|
41
55
|
## Quick Start
|
|
42
56
|
|
|
@@ -52,7 +66,7 @@ trellis init --cursor --opencode --codex -u your-name
|
|
|
52
66
|
```
|
|
53
67
|
|
|
54
68
|
- `-u your-name` creates `.trellis/workspace/your-name/` for personal journals and session continuity.
|
|
55
|
-
- Platform flags can be mixed and matched. Current options include `--cursor`, `--opencode`, `--iflow`, `--codex`, `--kilo`, `--kiro`, `--gemini`, `--antigravity`, and `--
|
|
69
|
+
- Platform flags can be mixed and matched. Current options include `--cursor`, `--opencode`, `--iflow`, `--codex`, `--kilo`, `--kiro`, `--gemini`, `--antigravity`, `--windsurf`, `--qoder`, `--codebuddy`, and `--copilot`.
|
|
56
70
|
- For platform-specific setup, entry commands, and upgrade paths, use the docs:
|
|
57
71
|
[Quick Start](https://docs.trytrellis.app/guide/ch02-quick-start) •
|
|
58
72
|
[Supported Platforms](https://docs.trytrellis.app/guide/ch13-multi-platform) •
|
|
@@ -89,7 +103,7 @@ Trellis keeps the core workflow in `.trellis/` and generates the platform-specif
|
|
|
89
103
|
└── scripts/ # Utilities that power the workflow
|
|
90
104
|
```
|
|
91
105
|
|
|
92
|
-
Depending on the platforms you enable, Trellis also creates tool-specific integration files such as `.claude/`, `.cursor/`, `AGENTS.md`, `.agents/`, `.kilocode/`, and `.
|
|
106
|
+
Depending on the platforms you enable, Trellis also creates tool-specific integration files such as `.claude/`, `.cursor/`, `AGENTS.md`, `.agents/`, `.codex/`, `.kilocode/`, `.kiro/`, `.github/copilot/`, and `.github/hooks/`. For Codex, Trellis now installs both project skills under `.agents/skills/` and project-scoped config/custom agents under `.codex/`.
|
|
93
107
|
|
|
94
108
|
At a high level, the workflow is simple:
|
|
95
109
|
|
|
@@ -129,7 +143,7 @@ Those files are useful, but they tend to become monolithic. Trellis adds structu
|
|
|
129
143
|
<details>
|
|
130
144
|
<summary><strong>Is Trellis only for Claude Code?</strong></summary>
|
|
131
145
|
|
|
132
|
-
No. Trellis currently supports Claude Code, Cursor, OpenCode, iFlow, Codex, Kilo, Kiro, Gemini CLI, and
|
|
146
|
+
No. Trellis currently supports Claude Code, Cursor, OpenCode, iFlow, Codex, Kilo, Kiro, Gemini CLI, Antigravity, Windsurf, Qoder, CodeBuddy, and GitHub Copilot. The detailed setup and entry command for each tool lives in the supported platforms guide.
|
|
133
147
|
|
|
134
148
|
</details>
|
|
135
149
|
|
package/dist/cli/index.js
CHANGED
|
@@ -52,7 +52,10 @@ program
|
|
|
52
52
|
.option("--kiro", "Include Kiro Code skills")
|
|
53
53
|
.option("--gemini", "Include Gemini CLI commands")
|
|
54
54
|
.option("--antigravity", "Include Antigravity workflows")
|
|
55
|
+
.option("--windsurf", "Include Windsurf workflows")
|
|
55
56
|
.option("--qoder", "Include Qoder commands")
|
|
57
|
+
.option("--codebuddy", "Include CodeBuddy commands")
|
|
58
|
+
.option("--copilot", "Include GitHub Copilot hooks")
|
|
56
59
|
.option("-y, --yes", "Skip prompts and use defaults")
|
|
57
60
|
.option("-u, --user <name>", "Initialize developer identity with specified name")
|
|
58
61
|
.option("-f, --force", "Overwrite existing files without asking")
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AA8XA,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA2DD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmtB9D"}
|
package/dist/commands/init.js
CHANGED
|
@@ -12,30 +12,54 @@ import { DIR_NAMES, FILE_NAMES, PATHS } from "../constants/paths.js";
|
|
|
12
12
|
import { VERSION } from "../constants/version.js";
|
|
13
13
|
import { agentsMdContent } from "../templates/markdown/index.js";
|
|
14
14
|
import { setWriteMode, writeFile, } from "../utils/file-writer.js";
|
|
15
|
-
import { detectProjectType, detectMonorepo, } from "../utils/project-detector.js";
|
|
15
|
+
import { detectProjectType, detectMonorepo, sanitizePkgName, } from "../utils/project-detector.js";
|
|
16
16
|
import { initializeHashes } from "../utils/template-hash.js";
|
|
17
17
|
import { fetchTemplateIndex, probeRegistryIndex, downloadTemplateById, downloadRegistryDirect, parseRegistrySource, TIMEOUTS, TEMPLATE_INDEX_URL, } from "../utils/template-fetcher.js";
|
|
18
18
|
import { setupProxy, maskProxyUrl } from "../utils/proxy.js";
|
|
19
19
|
/**
|
|
20
|
-
* Detect available Python command (python3 or python)
|
|
20
|
+
* Detect available Python command (python3 or python) and verify version >= 3.10
|
|
21
21
|
*/
|
|
22
22
|
function getPythonCommand() {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
const MIN_MAJOR = 3;
|
|
24
|
+
const MIN_MINOR = 10;
|
|
25
|
+
function checkVersion(cmd) {
|
|
26
|
+
try {
|
|
27
|
+
const output = execSync(`${cmd} --version`, { stdio: "pipe" })
|
|
28
|
+
.toString()
|
|
29
|
+
.trim();
|
|
30
|
+
const match = output.match(/Python (\d+)\.(\d+)/);
|
|
31
|
+
if (!match)
|
|
32
|
+
return false;
|
|
33
|
+
const [, major, minor] = match.map(Number);
|
|
34
|
+
return major > MIN_MAJOR || (major === MIN_MAJOR && minor >= MIN_MINOR);
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (checkVersion("python3"))
|
|
26
41
|
return "python3";
|
|
42
|
+
if (checkVersion("python"))
|
|
43
|
+
return "python";
|
|
44
|
+
// Check if Python exists but is too old
|
|
45
|
+
try {
|
|
46
|
+
const output = execSync("python3 --version", { stdio: "pipe" })
|
|
47
|
+
.toString()
|
|
48
|
+
.trim();
|
|
49
|
+
console.warn(chalk.yellow(`⚠️ ${output} detected, but Trellis requires Python ≥ 3.10`));
|
|
27
50
|
}
|
|
28
51
|
catch {
|
|
29
|
-
// Fall back to python (common on Windows)
|
|
30
52
|
try {
|
|
31
|
-
execSync("python --version", { stdio: "pipe" })
|
|
32
|
-
|
|
53
|
+
const output = execSync("python --version", { stdio: "pipe" })
|
|
54
|
+
.toString()
|
|
55
|
+
.trim();
|
|
56
|
+
console.warn(chalk.yellow(`⚠️ ${output} detected, but Trellis requires Python ≥ 3.10`));
|
|
33
57
|
}
|
|
34
58
|
catch {
|
|
35
|
-
//
|
|
36
|
-
return "python3";
|
|
59
|
+
// No Python at all
|
|
37
60
|
}
|
|
38
61
|
}
|
|
62
|
+
return "python3";
|
|
39
63
|
}
|
|
40
64
|
// =============================================================================
|
|
41
65
|
// Bootstrap Task Creation
|
|
@@ -49,7 +73,7 @@ function getBootstrapPrdContent(projectType, packages) {
|
|
|
49
73
|
Welcome to Trellis! This is your first task.
|
|
50
74
|
|
|
51
75
|
AI agents use \`.trellis/spec/\` to understand YOUR project's coding conventions.
|
|
52
|
-
**
|
|
76
|
+
**Starting from scratch = AI writes generic code that doesn't match your project style.**
|
|
53
77
|
|
|
54
78
|
Filling these guidelines is a one-time setup that pays off for every future AI session.
|
|
55
79
|
|
|
@@ -102,7 +126,7 @@ Many projects already have coding conventions documented. **Check these first**
|
|
|
102
126
|
| File / Directory | Tool |
|
|
103
127
|
|------|------|
|
|
104
128
|
| \`CLAUDE.md\` / \`CLAUDE.local.md\` | Claude Code |
|
|
105
|
-
| \`AGENTS.md\` | Claude Code |
|
|
129
|
+
| \`AGENTS.md\` | Codex / Claude Code / agent-compatible tools |
|
|
106
130
|
| \`.cursorrules\` | Cursor |
|
|
107
131
|
| \`.cursor/rules/*.mdc\` | Cursor (rules directory) |
|
|
108
132
|
| \`.windsurfrules\` | Windsurf |
|
|
@@ -164,12 +188,13 @@ After completing this task:
|
|
|
164
188
|
// Monorepo: generate per-package sections
|
|
165
189
|
for (const pkg of packages) {
|
|
166
190
|
const pkgType = pkg.type === "unknown" ? "fullstack" : pkg.type;
|
|
167
|
-
|
|
191
|
+
const specName = sanitizePkgName(pkg.name);
|
|
192
|
+
content += `\n### Package: ${pkg.name} (\`spec/${specName}/\`)\n`;
|
|
168
193
|
if (pkgType !== "frontend") {
|
|
169
|
-
content += `\n- Backend guidelines: \`.trellis/spec/${
|
|
194
|
+
content += `\n- Backend guidelines: \`.trellis/spec/${specName}/backend/\`\n`;
|
|
170
195
|
}
|
|
171
196
|
if (pkgType !== "backend") {
|
|
172
|
-
content += `\n- Frontend guidelines: \`.trellis/spec/${
|
|
197
|
+
content += `\n- Frontend guidelines: \`.trellis/spec/${specName}/frontend/\`\n`;
|
|
173
198
|
}
|
|
174
199
|
}
|
|
175
200
|
}
|
|
@@ -198,7 +223,7 @@ function getBootstrapTaskJson(developer, projectType, packages) {
|
|
|
198
223
|
status: "pending",
|
|
199
224
|
}));
|
|
200
225
|
subtasks.push({ name: "Add code examples", status: "pending" });
|
|
201
|
-
relatedFiles = packages.map((pkg) => `.trellis/spec/${pkg.name}/`);
|
|
226
|
+
relatedFiles = packages.map((pkg) => `.trellis/spec/${sanitizePkgName(pkg.name)}/`);
|
|
202
227
|
}
|
|
203
228
|
else if (projectType === "frontend") {
|
|
204
229
|
subtasks = [
|
|
@@ -292,7 +317,7 @@ function writeMonorepoConfig(cwd, packages) {
|
|
|
292
317
|
}
|
|
293
318
|
const lines = ["\n# Auto-detected monorepo packages", "packages:"];
|
|
294
319
|
for (const pkg of packages) {
|
|
295
|
-
lines.push(` ${pkg.name}:`);
|
|
320
|
+
lines.push(` ${sanitizePkgName(pkg.name)}:`);
|
|
296
321
|
lines.push(` path: ${pkg.path}`);
|
|
297
322
|
if (pkg.isSubmodule) {
|
|
298
323
|
lines.push(" type: submodule");
|
|
@@ -430,7 +455,7 @@ export async function init(options) {
|
|
|
430
455
|
name: "specSource",
|
|
431
456
|
message: `Spec source for ${pkg.name} (${pkg.path}):`,
|
|
432
457
|
choices: [
|
|
433
|
-
{ name: "
|
|
458
|
+
{ name: "From scratch (Trellis default)", value: "blank" },
|
|
434
459
|
{ name: "Download remote template", value: "remote" },
|
|
435
460
|
],
|
|
436
461
|
default: "blank",
|
|
@@ -438,7 +463,7 @@ export async function init(options) {
|
|
|
438
463
|
]);
|
|
439
464
|
if (specSource === "remote") {
|
|
440
465
|
// Use existing template download flow, targeting spec/<name>/
|
|
441
|
-
const destDir = path.join(cwd, PATHS.SPEC, pkg.name);
|
|
466
|
+
const destDir = path.join(cwd, PATHS.SPEC, sanitizePkgName(pkg.name));
|
|
442
467
|
console.log(chalk.blue(`📦 Select template for ${pkg.name}...`));
|
|
443
468
|
// Fetch templates if not already done
|
|
444
469
|
const templates = await fetchTemplateIndex();
|
|
@@ -460,7 +485,7 @@ export async function init(options) {
|
|
|
460
485
|
const result = await downloadTemplateById(cwd, templateId, templateStrategy, templates.find((t) => t.id === templateId), undefined, destDir);
|
|
461
486
|
if (result.success) {
|
|
462
487
|
console.log(chalk.green(` ${result.message}`));
|
|
463
|
-
remoteSpecPackages.add(pkg.name);
|
|
488
|
+
remoteSpecPackages.add(sanitizePkgName(pkg.name));
|
|
464
489
|
}
|
|
465
490
|
else {
|
|
466
491
|
console.log(chalk.yellow(` ${result.message}`));
|
|
@@ -476,10 +501,10 @@ export async function init(options) {
|
|
|
476
501
|
else if (options.template) {
|
|
477
502
|
// --template as default for all packages
|
|
478
503
|
for (const pkg of detected) {
|
|
479
|
-
const destDir = path.join(cwd, PATHS.SPEC, pkg.name);
|
|
504
|
+
const destDir = path.join(cwd, PATHS.SPEC, sanitizePkgName(pkg.name));
|
|
480
505
|
const result = await downloadTemplateById(cwd, options.template, templateStrategy, undefined, registry, destDir);
|
|
481
506
|
if (result.success && !result.skipped) {
|
|
482
|
-
remoteSpecPackages.add(pkg.name);
|
|
507
|
+
remoteSpecPackages.add(sanitizePkgName(pkg.name));
|
|
483
508
|
}
|
|
484
509
|
}
|
|
485
510
|
}
|
|
@@ -588,7 +613,7 @@ export async function init(options) {
|
|
|
588
613
|
? specTemplates
|
|
589
614
|
: [
|
|
590
615
|
{
|
|
591
|
-
name: "
|
|
616
|
+
name: "from scratch (default)",
|
|
592
617
|
value: "blank",
|
|
593
618
|
},
|
|
594
619
|
...specTemplates,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,uBAAuB,CAAC;AA8B/B,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AA2LD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA6DzD;AA6rBD;;;GAGG;AACH,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAgCnE;AAED;;;;GAIG;AACH,0CAA0C;AAC1C,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,aAAa,EAAE,GAC1B,aAAa,EAAE,CAajB;AAsLD;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA+qBlE"}
|
package/dist/commands/update.js
CHANGED
|
@@ -9,15 +9,7 @@ import { loadHashes, saveHashes, updateHashes, isTemplateModified, removeHash, r
|
|
|
9
9
|
import { compareVersions } from "../utils/compare-versions.js";
|
|
10
10
|
import { setupProxy } from "../utils/proxy.js";
|
|
11
11
|
// Import templates for comparison
|
|
12
|
-
import {
|
|
13
|
-
// Python scripts - package init
|
|
14
|
-
scriptsInit,
|
|
15
|
-
// Python scripts - common
|
|
16
|
-
commonInit, commonPaths, commonDeveloper, commonGitContext, commonWorktree, commonTaskQueue, commonTaskUtils, commonPhase, commonRegistry, commonCliAdapter, commonConfig,
|
|
17
|
-
// Python scripts - multi_agent
|
|
18
|
-
multiAgentInit, multiAgentStart, multiAgentCleanup, multiAgentStatus, multiAgentCreatePr, multiAgentPlan,
|
|
19
|
-
// Python scripts - main
|
|
20
|
-
getDeveloperScript, initDeveloperScript, taskScript, getContextScript, addSessionScript, createBootstrapScript,
|
|
12
|
+
import { getAllScripts,
|
|
21
13
|
// Configuration
|
|
22
14
|
configYamlTemplate, worktreeYamlTemplate, gitignoreTemplate, } from "../templates/trellis/index.js";
|
|
23
15
|
import { ALL_MANAGED_DIRS, getConfiguredPlatforms, collectPlatformTemplates, isManagedPath, isManagedRootDir, } from "../configurators/index.js";
|
|
@@ -205,37 +197,39 @@ export function loadUpdateSkipPaths(cwd) {
|
|
|
205
197
|
* Collect all template files that should be managed by update
|
|
206
198
|
* Only collects templates for platforms that are already configured (have directories)
|
|
207
199
|
*/
|
|
208
|
-
|
|
200
|
+
/**
|
|
201
|
+
* Detect if legacy Codex upgrade is needed.
|
|
202
|
+
*
|
|
203
|
+
* Old Trellis versions used `.agents/skills/` as codex's configDir.
|
|
204
|
+
* New versions use `.codex/` for Codex-specific config and `.agents/skills/`
|
|
205
|
+
* as a shared layer.
|
|
206
|
+
*
|
|
207
|
+
* Detection: Trellis-tracked hashes contain `.agents/skills/` entries
|
|
208
|
+
* but `.codex/` does not exist. This avoids misclassifying repos that
|
|
209
|
+
* have `.agents/skills/` from other tools (Kimi CLI, Amp, etc.).
|
|
210
|
+
*
|
|
211
|
+
* Returns true if upgrade is needed. Does NOT perform the upgrade —
|
|
212
|
+
* caller should run configurePlatform("codex") after backup/confirm.
|
|
213
|
+
*/
|
|
214
|
+
function needsCodexUpgrade(cwd) {
|
|
215
|
+
if (fs.existsSync(path.join(cwd, ".codex"))) {
|
|
216
|
+
return false;
|
|
217
|
+
}
|
|
218
|
+
const hashes = loadHashes(cwd);
|
|
219
|
+
return Object.keys(hashes).some((key) => key.startsWith(".agents/skills/"));
|
|
220
|
+
}
|
|
221
|
+
function collectTemplateFiles(cwd, extraPlatforms) {
|
|
209
222
|
const files = new Map();
|
|
210
223
|
const platforms = getConfiguredPlatforms(cwd);
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
files.set(`${PATHS.SCRIPTS}/common/task_utils.py`, commonTaskUtils);
|
|
221
|
-
files.set(`${PATHS.SCRIPTS}/common/phase.py`, commonPhase);
|
|
222
|
-
files.set(`${PATHS.SCRIPTS}/common/registry.py`, commonRegistry);
|
|
223
|
-
files.set(`${PATHS.SCRIPTS}/common/cli_adapter.py`, commonCliAdapter);
|
|
224
|
-
files.set(`${PATHS.SCRIPTS}/common/config.py`, commonConfig);
|
|
225
|
-
// Python scripts - multi_agent
|
|
226
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/__init__.py`, multiAgentInit);
|
|
227
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/start.py`, multiAgentStart);
|
|
228
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/cleanup.py`, multiAgentCleanup);
|
|
229
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/status.py`, multiAgentStatus);
|
|
230
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/create_pr.py`, multiAgentCreatePr);
|
|
231
|
-
files.set(`${PATHS.SCRIPTS}/multi_agent/plan.py`, multiAgentPlan);
|
|
232
|
-
// Python scripts - main
|
|
233
|
-
files.set(`${PATHS.SCRIPTS}/init_developer.py`, initDeveloperScript);
|
|
234
|
-
files.set(`${PATHS.SCRIPTS}/get_developer.py`, getDeveloperScript);
|
|
235
|
-
files.set(`${PATHS.SCRIPTS}/task.py`, taskScript);
|
|
236
|
-
files.set(`${PATHS.SCRIPTS}/get_context.py`, getContextScript);
|
|
237
|
-
files.set(`${PATHS.SCRIPTS}/add_session.py`, addSessionScript);
|
|
238
|
-
files.set(`${PATHS.SCRIPTS}/create_bootstrap.py`, createBootstrapScript);
|
|
224
|
+
if (extraPlatforms) {
|
|
225
|
+
for (const p of extraPlatforms) {
|
|
226
|
+
platforms.add(p);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
// Python scripts (single source of truth: getAllScripts())
|
|
230
|
+
for (const [scriptPath, content] of getAllScripts()) {
|
|
231
|
+
files.set(`${PATHS.SCRIPTS}/${scriptPath}`, content);
|
|
232
|
+
}
|
|
239
233
|
// Configuration
|
|
240
234
|
files.set(`${DIR_NAMES.WORKFLOW}/config.yaml`, configYamlTemplate);
|
|
241
235
|
files.set(`${DIR_NAMES.WORKFLOW}/worktree.yaml`, worktreeYamlTemplate);
|
|
@@ -1071,8 +1065,13 @@ export async function update(options) {
|
|
|
1071
1065
|
console.log(chalk.gray(" Template updates will still be applied."));
|
|
1072
1066
|
console.log(chalk.gray(" Safe file cleanup will still run (hash-verified).\n"));
|
|
1073
1067
|
}
|
|
1068
|
+
// Detect legacy Codex (has .agents/skills/ tracked by Trellis but no .codex/)
|
|
1069
|
+
const codexUpgradeNeeded = needsCodexUpgrade(cwd);
|
|
1070
|
+
if (codexUpgradeNeeded) {
|
|
1071
|
+
console.log(chalk.yellow(" Legacy Codex detected: .agents/skills/ tracked without .codex/ — will create .codex/ directory"));
|
|
1072
|
+
}
|
|
1074
1073
|
// Collect templates (used for both migration classification and change analysis)
|
|
1075
|
-
const templates = collectTemplateFiles(cwd);
|
|
1074
|
+
const templates = collectTemplateFiles(cwd, codexUpgradeNeeded ? new Set(["codex"]) : undefined);
|
|
1076
1075
|
// Load update.skip paths (used for both safe-file-delete and template collection)
|
|
1077
1076
|
const skipPaths = loadUpdateSkipPaths(cwd);
|
|
1078
1077
|
// Collect safe-file-delete items from ALL manifests (hash match is the safety net)
|
|
@@ -1398,11 +1397,23 @@ export async function update(options) {
|
|
|
1398
1397
|
// Check if task already exists
|
|
1399
1398
|
if (!fs.existsSync(taskDir)) {
|
|
1400
1399
|
fs.mkdirSync(taskDir, { recursive: true });
|
|
1401
|
-
// Get current developer for assignee
|
|
1400
|
+
// Get current developer for assignee.
|
|
1401
|
+
// `.developer` is a key=value file (written by init_developer.py):
|
|
1402
|
+
// name=<developer-name>
|
|
1403
|
+
// initialized_at=<iso8601>
|
|
1404
|
+
// Reading it raw and .trim()-ing embeds the entire file contents
|
|
1405
|
+
// (including the `name=` prefix and the `initialized_at` line) into
|
|
1406
|
+
// the assignee field, producing bogus assignees like
|
|
1407
|
+
// "name=suyuan\ninitialized_at=2026-04-07T23:41:21.978312" that
|
|
1408
|
+
// later break session-start task rendering.
|
|
1402
1409
|
const developerFile = path.join(cwd, DIR_NAMES.WORKFLOW, ".developer");
|
|
1403
1410
|
let currentDeveloper = "unknown";
|
|
1404
1411
|
if (fs.existsSync(developerFile)) {
|
|
1405
|
-
|
|
1412
|
+
const raw = fs.readFileSync(developerFile, "utf-8");
|
|
1413
|
+
const nameMatch = raw.match(/^\s*name\s*=\s*(.+?)\s*$/m);
|
|
1414
|
+
if (nameMatch) {
|
|
1415
|
+
currentDeveloper = nameMatch[1];
|
|
1416
|
+
}
|
|
1406
1417
|
}
|
|
1407
1418
|
// Build task.json
|
|
1408
1419
|
const taskTitle = `Migrate to v${cliVersion}`;
|