- All agent profiles used the misspelled 'user-invokable' property, which
Copilot CLI silently ignores, so internal-only agents (scout, splitter,
builder, verifier, integrator, scribe) were never actually hidden from
the /agent picker. Renamed to the documented 'user-invocable'.
- conductor/architect instructions said only 'Run lh run event' with no
flags, forcing the model to trial-and-error discover --type/--status/
etc. Documented the exact lh run start/event/end CLI syntax inline.
conductor previously jumped straight to lh host, which succeeds even
without .agents/harness.config.json, then silently hit a hard failure
later reading .agents/memory/INDEX.md (lh doctor confirms: config not
initialised). New projects had no automatic recovery path — lh init
was documented as a manual step users had to remember.
- conductor now runs lh doctor first; if config is missing it runs
lh init --yes (non-interactive defaults) and re-checks, before lh host
- still stops and reports the exact failing check if lh doctor finds
something it can't self-heal (e.g. no verify commands configured)
- README/QUICKSTART updated: lh init/lh doctor documented as optional
manual pre-flight, not a required step, since conductor self-heals
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Parallel fleet audit (2 background agents) + direct work:
- src/commands/memory.mjs: `memory put --allow-secrets` was read as
`flags.allowSecrets` (camelCase) but the CLI parser only emits
kebab-case keys, so the flag was always undefined/false. Fixed to
`flags['allow-secrets']`.
- Docs: `lh graph --brief` was referenced 14x across 5 agent.md files,
harness.instructions.md, 4 SKILL.md files, onboard.prompt.md, and
README, but `lh graph` has no --brief flag (terse output is already
the default, --json/--severity are the only flags). Corrected every
reference to match actual CLI surface.
- .github/workflows/ci.yml: run npm install/validate/test on node 20+22.
- Self-dogfooded `lh init --yes` in this repo, producing .agents/
(harness.config.json, architecture.md, conventions.md, memory
shards). `lh doctor` now reports all required checks green.
- Deduped .gitignore harness block against init's auto-managed block.
Verified: 53/53 tests pass, validate 0 errors, doctor all-green.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Recovered from crashed session (Node OOM). Repo contains full P0-P6
scaffold: plugin.json/marketplace.json, AGENTS.md, ADRs 0001-0006,
lh CLI (init/index/graph/lane/run/memory/host/report/doctor), 10
.github/agents, 12 CLI skills, instructions, context7 mcp.json, and
unit/e2e test suite.
Fixed: run.mjs read --in-tokens/--out-tokens but tests and CLI docs
use --input-tokens/--output-tokens, so telemetry totals were always 0.
Now accepts both forms.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>