cohorte 1.2.4 → 1.2.6
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/CHANGELOG.md +17 -0
- package/bin/cli.js +9 -2
- package/core/commands/doctor.md +4 -2
- package/core/commands/update-pipeline.md +8 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,23 @@
|
|
|
3
3
|
Entries are shown by `/update-pipeline` ("What's new") after a core refresh. Keep them short,
|
|
4
4
|
user-facing, most recent first. One `## <version> — <YYYY-MM-DD>` section per release.
|
|
5
5
|
|
|
6
|
+
## 1.2.6 — 2026-07-30
|
|
7
|
+
|
|
8
|
+
- **`npx cohorte install` never installed the `smoke` agent.** It copied only `review.md` and
|
|
9
|
+
`release.md`, so `/smoke` was there but the agent it dispatches was not — the run failed
|
|
10
|
+
saying `/smoke` is not installed. The shell installers always copied it; only the npm port
|
|
11
|
+
drifted. It now copies every non-template agent in `core/agents/`, so nothing to keep in sync.
|
|
12
|
+
Fix an affected install by re-running `npx cohorte install --global` (or `install --repo`).
|
|
13
|
+
|
|
14
|
+
## 1.2.5 — 2026-07-29
|
|
15
|
+
|
|
16
|
+
- **`.claude/pipeline.json`'s `core_version` never updated on global installs.** The installer
|
|
17
|
+
bumps it in bundled mode, but a global core is shared — it cannot know which repos point at
|
|
18
|
+
it, so nothing bumped the field and it drifted forever. Repos running a current core were
|
|
19
|
+
still claiming `1.0.0`. `/update-pipeline` now syncs the pointer in both modes.
|
|
20
|
+
- `/doctor` no longer reports that drift as a broken install: a global-mode pointer lagging the
|
|
21
|
+
VERSION file is ⚠️ with the one-command fix, not ❌. The core was never the problem.
|
|
22
|
+
|
|
6
23
|
## 1.2.4 — 2026-07-29
|
|
7
24
|
|
|
8
25
|
> **If you installed with `npx cohorte`, this is the release that makes 1.2.3 actually
|
package/bin/cli.js
CHANGED
|
@@ -156,8 +156,15 @@ function scrubTddGate() {
|
|
|
156
156
|
// the fixed (non-rendered) agents: the dev review/release pipeline agents
|
|
157
157
|
function copyFixedAgents() {
|
|
158
158
|
fs.mkdirSync(path.join(dest, 'agents'), { recursive: true });
|
|
159
|
-
|
|
160
|
-
|
|
159
|
+
// Every agent in core/agents/ EXCEPT the *.template.md ones, which /init-pipeline renders
|
|
160
|
+
// per-surface. Until 1.2.6 this was a hardcoded ['review.md', 'release.md'] that never grew
|
|
161
|
+
// the `smoke.md` the shell installers copy, so `npx cohorte install` shipped the /smoke
|
|
162
|
+
// command with no `smoke` agent to dispatch — the run reported /smoke as not installed.
|
|
163
|
+
// Reading the directory needs no list to keep in sync with the shell installers.
|
|
164
|
+
const agentDir = path.join(src, 'core', 'agents');
|
|
165
|
+
for (const f of fs.readdirSync(agentDir)) {
|
|
166
|
+
if (!f.endsWith('.md') || f.endsWith('.template.md')) continue;
|
|
167
|
+
fs.copyFileSync(path.join(agentDir, f), path.join(dest, 'agents', f));
|
|
161
168
|
}
|
|
162
169
|
// 0.1.19 split the bi-mode questionnaire-researcher into research-agent + questionnaire-architect;
|
|
163
170
|
// copy-over never deletes, so scrub the retired agent lest a dead subagent_type linger.
|
package/core/commands/doctor.md
CHANGED
|
@@ -14,8 +14,10 @@ fix only with the human's go-ahead (or hand them the command).
|
|
|
14
14
|
|
|
15
15
|
1. **Core & pointer.** A core exists (`~/.claude/pipeline/VERSION` global, and/or
|
|
16
16
|
`.claude/pipeline/VERSION` bundled); `.claude/pipeline.json` names a mode + `core_version`
|
|
17
|
-
coherent with the VERSION file.
|
|
18
|
-
|
|
17
|
+
coherent with the VERSION file. A **global**-mode pointer lagging the VERSION file is ⚠️, not ❌:
|
|
18
|
+
nothing bumped that field before 1.2.5, so the core itself is fine and only the pointer is stale
|
|
19
|
+
⇒ fix by running `/update-pipeline` (§3 syncs it now), or by editing the one field. Compare
|
|
20
|
+
against `npm view cohorte version` — behind ⇒ suggest `/update-pipeline`. Read `pipeline/CHANGELOG.md` for what they're missing. The router
|
|
19
21
|
commands' step files are present — `templates/steps/init-pipeline/` non-empty (a router whose
|
|
20
22
|
`templates/steps/<cmd>/` dir is missing is a partial/stale install ⇒
|
|
21
23
|
re-run install/update). **Shipped scripts present and executable** in `<core>/pipeline/scripts/`:
|
|
@@ -51,7 +51,14 @@ the human's choices — so `/init-pipeline` never needs re-running for an upgrad
|
|
|
51
51
|
## 3. Report old → new
|
|
52
52
|
|
|
53
53
|
Re-read the VERSION file(s) and print `old → new`. If unchanged, say the core was already up to date.
|
|
54
|
-
|
|
54
|
+
|
|
55
|
+
**Sync the pointer — in BOTH modes.** If this repo has a `.claude/pipeline.json` whose `core_version`
|
|
56
|
+
differs from the core you just installed, rewrite that one field (leave every other field untouched)
|
|
57
|
+
and tell the human to commit it. In **bundled** mode the installer already did it; in **global** mode
|
|
58
|
+
**nothing does** — the installer refreshes one shared core and cannot know which repos point at it,
|
|
59
|
+
so before 1.2.5 the field simply drifted forever (a repo on a current core still claiming `1.0.0`).
|
|
60
|
+
`/doctor` check 1 requires the pointer to be coherent with the VERSION file, so a drifted field reads
|
|
61
|
+
as a broken install when nothing is broken.
|
|
55
62
|
|
|
56
63
|
Then print **What's new**: read the installed `<core>/pipeline/CHANGELOG.md` and show the entries
|
|
57
64
|
between the old and new versions (most recent first). File absent ⇒ the old core predates 0.1.14 —
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cohorte",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.6",
|
|
4
4
|
"description": "Portable, stack-agnostic multi-agent development pipeline for Claude Code — install the core, run /init-pipeline, and it adapts to your project's stack.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"cohorte": "bin/cli.js"
|