From 7ec48adcc8d95135432a346e6ec6f52f105b2f46 Mon Sep 17 00:00:00 2001 From: timkjr Date: Wed, 26 Aug 2026 20:19:24 -0500 Subject: [PATCH] fix(omp): keep external-CLI mode enumerations complete in skill docs Two prose lists in skills/codeman/ named some but not all external CLI modes after the omp-mode rebase, which is exactly the drift test/agent-skill-mode-lists.test.ts exists to catch: SKILL.md's no-hook-signals list was missing omp, and endpoints.md's version-probe sentence named pi/grok/omp as a bare 3-mode run with no matching class. --- skills/codeman/SKILL.md | 2 +- skills/codeman/reference/endpoints.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/skills/codeman/SKILL.md b/skills/codeman/SKILL.md index 59f90473..3e0c336d 100644 --- a/skills/codeman/SKILL.md +++ b/skills/codeman/SKILL.md @@ -422,7 +422,7 @@ Harness TUI reports `idle`/`working`/`blocked` to Codeman over the supervisor co implements, so dsh is the one external CLI with definitive `stop`/`blocked` signals instead of guessed-from-silence ones — and it writes a structured transcript, which is what `last-response` reads for it. `shell`, `opencode`, `codex`, `gemini`, `antigravity`, -`pi` and `grok` have neither and still need markers ([§5.5](reference/verbs.md#55-markers-for-hook-less-workers)). +`pi`, `grok` and `omp` have neither and still need markers ([§5.5](reference/verbs.md#55-markers-for-hook-less-workers)). Three things to know before you spawn one: diff --git a/skills/codeman/reference/endpoints.md b/skills/codeman/reference/endpoints.md index d02d42a2..c9ab7d43 100644 --- a/skills/codeman/reference/endpoints.md +++ b/skills/codeman/reference/endpoints.md @@ -351,8 +351,8 @@ the mode yourself: `GET /api/v1/claude/status`, `GET /api/v1/opencode/status`, Pi's, grok's and OMP's also carry `.data.version`, because `pi` is a short generic name, `grok` is a name with npm squatters, and `omp` is a similarly short name, so an unrelated binary on `$PATH` can shadow any of them: the resolver rejects one whose `--version` is -not version-shaped, so `available:false` there can mean "a different `pi`/`grok`/`omp` is -in front" rather than "nothing is installed". `shell` has no CLI to probe. +not version-shaped, so `available:false` there can mean "a different program of the same +name is in front" rather than "nothing is installed". `shell` has no CLI to probe. ⚠️ **Branch on `.success` before reading `.data.sessionId`.** On any failure the field is absent, `jq -r` prints the literal string `null`, and every later call then targets