Skip to content

Releases: zeikar/hyperclaude

v1.9.2 — docs-review skill grammar accepts any file type

Choose a tag to compare

@zeikar zeikar released this 16 Jul 10:56

Fixed

/hyperclaude:hyper-docs-review and /hyperclaude:hyper-docs-loop slash grammars now accept any existing file as a --docs-path target, not just .md files — so a non-markdown doc like site/index.html can be reviewed via the skill in the same set as README.md and docs/*.md. This closes the gap from v1.9.0: the bridge already accepted any file, but the skill grammar was .md-only. The skill now discriminates file-vs-directory by an existence check ([ -f ] / [ -d ]) instead of the file extension.

--docs-dir (directory mode) is unchanged: still non-recursive, still top-level .md-only inside a directory. Only the explicit --docs-path file tokens were widened.

v1.9.1 — recap diagrams: implemented content, not the loop arc

Choose a tag to compare

@zeikar zeikar released this 15 Jul 13:21

Changed

hyper-recap's diagram guidance now targets the cycle's implemented content — the architecture, data flow, or design structure that was actually built — instead of the generic hyper-* process/loop arc (plan-loop → implement → review), which was identical every cycle and carried no cycle-specific signal.

Diagrams remain optional: included only when a picture genuinely aids understanding, skipped when prose and tables already suffice.

v1.9.0 — repeatable --docs-path for docs-review

Choose a tag to compare

@zeikar zeikar released this 15 Jul 13:12

What's new

docs-review mode now accepts a repeatable --docs-path flag — review several scattered docs in a single Codex pass instead of only one file or one non-recursive directory:

docs-review --docs-path README.md --docs-path docs/workflow.md --docs-path docs/architecture.md
  • Repeated --docs-path flags append (later values never overwrite earlier ones); duplicate paths are deduped.
  • The 200KB payload cap holds across the whole set; per-file markers use the full path (both --docs-path and --docs-dir branches).
  • --docs-path stays mutually exclusive with --docs-dir.
  • Multi-file artifacts get a <first-file-slug>-plus-<n-1> slug; resume identity is order-insensitive set-equality over the reviewed file set. Legacy single-string docs-target artifacts still resume (treated as a 1-element set).
  • The hyper-docs-review / hyper-docs-loop skills accept multiple .md targets, each mapped to a --docs-path flag.

Out of scope (deliberately deferred)

  • Glob / recursive directory walk for the file list.
  • Extending repeatable --docs-path to plan-review / code-review modes.

See docs/decisions.md for the rationale.

Notes

Additive and backward-compatible — no migration needed. New feature → MINOR bump per the pre-adoption policy.

v1.8.0 — --review-brief channel

Choose a tag to compare

@zeikar zeikar released this 15 Jul 10:27

--review-brief — tell Codex what the user actually approved

A new bridge flag on the plan-review and code-review modes carries a caller-composed summary of the user's stated requirements and approved decisions into the Codex review prompt, so Codex stops flagging the user's own approved work as scope creep.

Why: the plan-review prompt asked Codex to flag steps "not traceable to the user's task" — but never showed it the task. A v1.7.0 cycle had a requested feature (recap diagram guidance) flagged as scope creep, fresh and again on resume. --review-brief closes that blind spot.

Contract

  • Accepted on plan-review and code-review only.
  • Allowed together with --resume (unlike --background, which is rejected with --resume). A re-supplied brief overrides the value carried forward from the prior artifact's frontmatter.
  • Rendered into a {{REVIEW_BRIEF}} slot on all four review prompts (fresh + resumed, both modes), inside a guardrail paragraph that marks it DATA, not instructions: it has bounded authority (scope only) and can never waive correctness / security / data-loss findings.
  • Persisted as a review-brief: frontmatter scalar and auto-carried on resume so a caller cannot forget it; a supplied brief survives a --resume auto → fresh fallback.
  • Caller-composed (written by Claude), never labelled user-authored. Sources are limited to what the user said in conversation; no admissible source → the flag is omitted. Rules live in references/review-brief.md, pointed at by all four review-caller skills.
  • Not a resume-identity field — a changed brief never breaks resume continuity.

Also in this release

  • references/review-brief.md — shared brief-composition rules (source / omission / bound / shell-safety), single-sourced for the four caller skills.
  • references/bridge-review-calls.md — new shared reference single-sourcing the bridge's stdout JSON envelope + --resume semantics, pointed at by the six review-mode caller skills; removes the near-verbatim duplication that lived across each skill.
  • Template versions: plan-review 2→3, code-review 3→4 (both gained the {{REVIEW_BRIEF}} slot).

Compatibility

Non-breaking. All existing flags and contracts are unchanged; --background behaves exactly as before. No migration needed.

v1.7.0 — hyper-auto auto-runs hyper-recap at cycle completion

Choose a tag to compare

@zeikar zeikar released this 14 Jul 11:57

What's new

Terminal auto-recap in hyper-auto — on a clean composed exit (plan-loop clean AND implement-loop review convergence AND a successful/skipped fix(review): convergence commit with a clean tree), hyper-auto now auto-runs /hyperclaude:hyper-recap <canonical-plan-path> as its terminal action BEFORE the composed report, and the report quotes the actual written recap path. This reverses the original interview's never-auto-run decision for exactly this one path — evidence-backed by real dogfooding (see docs/decisions.md 2026-07-14). Standalone hyper-implement-loop keeps its recommendation-only line.

Details

  • Path-bound, never no-arg: the recap targets the exact cycle's plan (captured at the plan-loop boundary; hyper-recap's archival-relocation resolves it in plans/done/) — a no-arg newest-by-mtime pick could recap the wrong cycle.
  • Non-clean exits never recap: loop cap/failure STOPs surface the underlying report; a failed convergence commit yields an explicit auto-recap skipped (<reason>) line instead of the stale recommendation.
  • hyper-recap terminal reporting contract: success reports the exact written path; ANY non-success terminal reports the reason and no path — the defined outcome hyper-auto consumes (and standalone runs now state it too).
  • Diagram guidance in the recap contract: diagrams only for structure prose/tables can't show cheaply; single mermaid flowchart LR (≤10 nodes, evidence-grounded labels) or an ASCII fallback that replaces it; never decorative.
  • Docs synced across workflow / gates-and-agents / README / site / architecture; failed-convergence branch verified by a deterministic tabletop contract evaluation; smoke manual-acceptance items 5b/10 extended.

No breaking changes.

v1.6.0 — hyper-recap: Claude-only cycle-recap skill

Choose a tag to compare

@zeikar zeikar released this 13 Jul 22:27

What's new

/hyperclaude:hyper-recap — a new Claude-only gate skill (no Codex spawn, no agent dispatch) that collapses ONE completed cycle (a plan archived under .hyperclaude/plans/done/) into a single human-readable recap at .hyperclaude/recaps/<timestamp>[-<slug>].md. Kills cycle cognitive debt: the request, the decisions taken (and rejected), what actually changed, and the critic rounds — in one screen.

Highlights

  • Two context modes: context: live (originating session — verbatim request, per-commit change set incl. the implement-loop's fix(review): convergence commit) and context: artifacts-only (fresh session — explicitly partial, with an "Unrecoverable gaps" note; never fabricates commits, associations, or rationale).
  • Exact cycle linkage where provable, caveats where not: plan-reviews match by frontmatter plan-path + cwd full-path resolution; research/specs are slug-matched with an ambiguity caveat (skipped entirely for empty-slug / collision-ambiguous plan names); code-reviews are live-only.
  • Story over ledger: TL;DR-first content contract — area-level "what changed" with commit range, one-line critic-verdict arcs, decision table scoped to outcome-shaping decisions only.
  • Loop integration: hyper-implement-loop Step 9 (and hyper-auto's relay, exactly once) now recommend /hyperclaude:hyper-recap at cycle completion — recommendation only, never auto-run.
  • Registered in the smoke required-files roster + a new manual-acceptance item (5b) with per-scenario fixtures; docs roster updated across architecture / gates-and-agents ("Gate skills (12)") / workflow / README / site.

Hardened through 8 Codex plan-review rounds and 3 Codex code-review rounds (path-traversal-safe target resolution, evidence-only rationale rule in both modes, JSON-serialized slug:/plan: frontmatter).

No breaking changes.

v1.5.0 — docs anti-bloat counter-pressure + shared resume version gate

Choose a tag to compare

@zeikar zeikar released this 11 Jul 23:56

Docs anti-bloat counter-pressure

Docs edits were append-heavy with nothing pushing back — docs-review explicitly excluded prose, so verbosity was never flagged anywhere in the pipeline. Split by ownership:

  • documenter agent now carries an authoring-time brevity constraint: amend existing sentences over appending paragraphs, match surrounding prose density.
  • docs-review template v2 adds redundancy to its strict scope — unnecessary repetition within one document, reported as a Minor finding with its own Duplicated claim: / Locations: evidence schema. Deliberate cross-doc propagation is explicitly exempt (flagged only when copies contradict), and style/prose stay out of scope.
  • hyper-docs-loop classifies redundancy-only findings as non-blocking (reported, never auto-fixed), so loop convergence is unaffected.

Shared template-version resume gate

--resume in every resumable mode (plan-review / docs-review / code-review) now enforces that the prior artifact's template-version matches the current fresh template — one shared gate in scripts/codex/resume.mjs (previously code-review-only). A resumed thread keeps the prior prompt's semantics while the artifact is stamped with the current version; a mismatch is now rejected instead of mislabeled:

  • --resume auto → silently falls back to a fresh run (codex-resume-status: fallback, stderr note)
  • explicit --resume <path>ok:false with resume rejected

Practical effect: plan-review / docs-review artifacts produced before this release's template versions (plan-review 2, docs-review 2) are no longer resumable — auto degrades gracefully to fresh.

Notes

  • The code-review gate's error message unified into the generic per-mode wording (prior <mode> artifact template-version differs from the current template (or predates it); not resumable).
  • Tests: unit 373/373, smoke 183/0. Codex code-review converged Clean.

v1.4.3 — hyper-setup is now an invoke-only skill

Choose a tag to compare

@zeikar zeikar released this 09 Jul 12:38

Patch release. Internal relocation — user-facing invocation and behavior are unchanged (/hyperclaude:hyper-setup works exactly as before).

What changed

  • hyper-setup moved from the commands/ layer to an invoke-only skill. Claude Code merged plugin commands into skills; commands/hyper-setup.mdskills/hyper-setup/SKILL.md with disable-model-invocation: true, which keeps it explicit-invoke-only (the reason it was a command). The inline ! probe body is unchanged. The commands/ layer is removed entirely.
  • Docs de-dup: workflow.md and gates-and-agents.md now point at decisions.md for the run_in_background: false rationale instead of each restating it. The pin and all gating behavior are unchanged.

Note

The invoke-only guard relies on a Claude Code that honors disable-model-invocation (present since ~v2.1.126). On an older host that ignores the flag, hyper-setup could become auto-triggerable by its description — accepted, as the plugin tracks recent Claude Code.

No migration steps required.

v1.4.2 — run_in_background:false hardening (Claude Code 2.1.198)

Choose a tag to compare

@zeikar zeikar released this 04 Jul 08:53

What's in v1.4.2

Hardens the plugin's non-loop skills against Claude Code 2.1.198, which flipped Agent-tool subagents to background-by-default. Sequential / inline-result dispatches now pin run_in_background: false, so the deterministic gating no longer relies on the old synchronous-by-default behavior.

Pinned run_in_background: false

  • hyper-implement — the 5 per-task gate dispatches (implementer, spec-compliance review, fix-loop re-dispatch, code-quality review, verifier)
  • hyper-plan — the 3 planner dispatches (Step 3, Milestone-1 expansion, milestone expansion M-4)
  • hyper-docs-sync — the sequential documenter dispatch
  • hyper-research — the single-Claude path (the default-parallel backgrounded researcher stays run_in_background: true by design)
  • hyper-interview — the Explore dispatch
  • Direct one-step "dispatch the implementer directly" guidance (agents/implementer.md, skip-hints, docs) gains the same note for consistency

Intentionally left background

The *-loop skills' teammate spawns (planner / fixer / documenter) are not annotated — those persistent-teammate spawns must stay background for the agent-teams / SendMessage model to work.

Docs & tooling

  • docs/gates-and-agents.md, docs/workflow.md, docs/decisions.md record the change and the 2.1.198 rationale
  • Adds a repo-local (non-distributed) cc-changelog dev skill under .claude/skills/ that diffs a stored Claude Code version against the latest changelog

Patch release — fix/internal only; no new distributed plugin feature, not breaking.

v1.4.1 — clean hyper-memory candidate Claim labels

Choose a tag to compare

@zeikar zeikar released this 01 Jul 22:17

Fix

The hyper-memory candidate ## Claim was a hard 120-char slice of the source bullet — it cut mid-word with no ellipsis, so a candidate looked truncated/broken even though the full text was right below it in ## Evidence.

## Claim is now a clean deterministic label:

  • research → Research '<slug>': <heading> (e.g. Research 'codex-bridge-codex-exec-spawn': Pitfalls)
  • implemented-plan → Implemented plan '<slug>'

## Evidence still carries the full verbatim span (unchanged). This also removes the claim/evidence duplication. A regression test now asserts the Claim is a label, not a truncated copy of the evidence.

Patch — no migration. (Note: the candidate compound key includes the claim, so this one-time label change reshuffles candidate filenames on the next extraction; the local .hyperclaude/memory/ store simply re-mines fresh.)