Skip to content

v0.13.0 — Opus 4.7 agents + /aih-calibrate survives updates

Choose a tag to compare

@overdrive-dev overdrive-dev released this 16 Apr 23:53
· 442 commits to main since this release

v0.13.0 — Opus 4.7 agents + /aih-calibrate that survives updates

Two milestones ship together: M008 brings Opus 4.7 adoption and the new /aih-calibrate skill; M009 closes the loop so calibration survives /aih-update byte-identically on every documented platform path.

Headline

  • 43 agents adopt Opus 4.7 effort tier + vision note. Planners and adversarial reviewers get deeper default deliberation; coding agents run at xhigh on Claude Code ≥ v2.1.111 (older releases transparently fall back to high).
  • New /aih-calibrate skill. Retune per-agent effort and flip permissions.defaultMode via four presets (cost-optimized, balanced, quality-first, auto-mode-safe) or target a single agent. Every edit atomic, committed, reversible.
  • Calibration now survives /aih-update. User-owned .aihaus/.calibration sidecar (schema v1) lives at the .aihaus/ root outside the refreshed subdirs. All four documented update paths — update.sh, install.sh --update, install.ps1 -Update, and install.ps1 native install merge — restore effort tiers and preserve defaultMode byte-identically.

What changed

M008 — Opus 4.7 agent upgrade + /aih-calibrate

  • c11f7ca — 43 agents adopt effort: xhigh (Opus 4.7) + optional vision note; Claude Code ≥ v2.1.111 required for the new tier to take effect (older versions auto-fall-back to high).
  • 772bb75 — /aih-calibrate skill lands with 4 presets + per-agent override. Auto-mode opt-in path prints the full caveat matrix before applying (drops Bash(*) wildcard, ignores subagent permissionMode).
  • 9157f4a — Cursor COMPAT-MATRIX summary count synced 11 → 12 skills.
  • d09a3c4 — Cost-optimized preset applied across 26 agents as the shipped default (keeps Opus 4.6 behavior while users evaluate 4.7).

M009 — Calibration survives /aih-update

  • 7bebbfd — .aihaus/.calibration sidecar + restore_calibration() in update.sh + post-merge defaultMode preserve in merge-settings.sh + Phase 4 write in /aih-calibrate + new annex state-file.md + smoke-test Check 27 with 5 fixtures.
  • 9ae04e1 — install.ps1 Windows-native install-merge branch mirrors the defaultMode preserve (PS-native users were still silently reverting to bypassPermissions); jq-less Python fallback in merge-settings.sh now produces byte-identical output to jq (trailing newline + matching separators); 7 em-dashes replaced with -- in install.ps1 (pre-existing parse bug on Windows pt-BR ANSI codepage — cp1252 couldn't decode U+2014 in UTF-8-without-BOM .ps1 files).
  • 52115ec — restore_calibration extracted into pkg/scripts/lib/restore-calibration.sh; sourced from both update.sh and install.sh --update so the bash install-update path restores calibration too. auto-mode-safe !! warning deduped to one canonical emission per update run. Check 27 sources the shared lib directly to eliminate test/prod drift.

Binding decisions (ADRs)

  • ADR-M008-A — /aih-calibrate uses in-place frontmatter edits (not a sidecar strategy for the write path).
  • ADR-M008-B — bypassPermissions + Bash(*) is the default install posture; auto is opt-in via --preset auto-mode-safe.
  • ADR-M008-C — Adversarial agents (plan-checker, reviewer, verifier, security-auditor, integration-checker, contrarian) are preset-immune — presets never lower their effort; explicit --agent <name> override still works.
  • ADR-M009-A — .aihaus/.calibration ownership model: user-owned, never-committed, derived-state at the .aihaus/ root. Companion to .install-mode / .install-platform / .install-source / .version precedent. Schema-versioned (v1); unknown version → loud warning + silent skip.

Usage

Retune effort / permission mode

# Interactive
/aih-calibrate

# Apply a preset across 43 agents
/aih-calibrate --preset balanced

# Target a single agent
/aih-calibrate --agent plan-checker --effort max

# Opt into auto mode (drops Bash(*), hooks-gated auto-approve stays)
/aih-calibrate --preset auto-mode-safe

Effort presets:

  • cost-optimized — all opus agents at effort: high (keeps Opus 4.6 baseline)
  • balanced — 22 opus agents at xhigh, 6 max untouched (default after v0.13.0)
  • quality-first — adds max to coding/adversarial agents (use sparingly; docs warn "prone to overthinking")
  • auto-mode-safe — switches permission mode only; keeps balanced effort

Survive /aih-update

Nothing to do — the sidecar is written automatically post-calibrate, and every subsequent /aih-update (or bash install.sh --update / pwsh install.ps1 -Update) restores calibrated effort tiers plus permissions.defaultMode before re-linking. Missing sidecar = silent skip (fresh installs never notice).

Auto-mode-safe side effects (heads-up)

auto-mode-safe also widens hook SAFE_PATTERNS and removes permissionMode: bypassPermissions from worktree-agent frontmatter. Those side effects are not auto-replayed after /aih-update — you'll see a loud !! stdout block telling you to re-run /aih-calibrate --preset auto-mode-safe to re-apply. (Replaying them silently would require Claude Code to expose an agent-spawn hook; it does not. See F-009 in the M009 plan.)

Upgrade notes

Pre-v0.13.0 hand-edited frontmatter

If you previously edited pkg/.aihaus/agents/*.md by hand to change effort: tiers, run /aih-calibrate --preset <your-intended-preset> once on v0.13.0 to populate .aihaus/.calibration. The first /aih-update after v0.13.0 without a sidecar will restore package defaults (silent skip = no restore). This is a one-time user action; documented in pkg/.aihaus/skills/aih-calibrate/annexes/state-file.md and CLAUDE.md.

Claude Code version

  • effort: xhigh requires Claude Code ≥ v2.1.111. Older releases silently fall back to effort: high.
  • permissions.defaultMode: auto requires Claude Code ≥ v2.1.83. Older releases ignore the field.

Pre-existing update_aihaus_dir crash window (R11)

Unchanged: update.sh still does rm -rf <dst> && cp -R <src> <dst> inside update_aihaus_dir. A Ctrl-C between the two commands can leave .aihaus/agents/ empty. Out of scope for this release; dedicated follow-up plan if prioritized.

Full changelog

See the merged PRs: