vault-cli: flip analyze default to Opus, --haiku/--sonnet step down
Opus draws the auto-fix/flag line correctly (Haiku over-fixed on judgment calls, verified apples-to-apples against the same vault baseline). At ~$0.14/run it's cheap enough to run nightly. --sonnet/--haiku now step DOWN; --opus kept as an explicit identity flag; raw -m/--provider still override entirely. Hermes host defaults (config.yaml default preset, delegation/compression models) are unchanged — this only affects which model the vault CLI's own hermes -z spawn uses.
This commit is contained in:
@@ -15,11 +15,11 @@ Subcommands:
|
||||
vault sync-data reconcile /data skeleton to match manifest (create missing dirs)
|
||||
vault manifest regenerate the topology manifest note
|
||||
vault report [--pretty] deterministic Librarian report (delegates to vault-librarian.py)
|
||||
vault analyze [--sonnet|--opus] [-m MODEL] [--provider PROVIDER]
|
||||
spawn a Hermes Librarian pass. DEFAULT: Haiku/Bedrock
|
||||
(cheap+fast — the nightly/weekly tier). --sonnet / --opus
|
||||
step up intelligence & cost for harder judgment calls.
|
||||
-m/--provider override entirely (future/non-Bedrock models).
|
||||
vault analyze [--haiku|--sonnet|--opus] [-m MODEL] [--provider PROVIDER]
|
||||
spawn a Hermes Librarian pass. DEFAULT: Opus (smart —
|
||||
draws the auto-fix/flag line correctly, ~$0.14/run so cheap
|
||||
enough for nightly). --sonnet / --haiku step DOWN for
|
||||
cheaper/faster passes; -m/--provider override entirely.
|
||||
"""
|
||||
import os, re, sys, subprocess
|
||||
|
||||
@@ -32,9 +32,9 @@ HERMES = "/run/current-system/sw/bin/hermes"
|
||||
LIBRARIAN = os.path.join(_SELF_DIR, "vault-librarian.py")
|
||||
PROMPT = os.path.join(_SELF_DIR, "vault-librarian-prompt.md")
|
||||
|
||||
# `vault analyze` model tiers. Default is Haiku — cheap+fast for the nightly/weekly
|
||||
# pass. --sonnet / --opus step up intelligence & cost inline. IDs verified against
|
||||
# this host's Hermes config + the active Bedrock provisioning.
|
||||
# `vault analyze` model tiers. Default is Opus — smart enough to draw the auto-fix/
|
||||
# flag line correctly, and ~$0.14/run so cheap enough for a nightly pass. --sonnet /
|
||||
# --haiku step DOWN. IDs verified against this host's Hermes config + Bedrock provisioning.
|
||||
ANALYZE_TIERS = {
|
||||
"haiku": "us.anthropic.claude-haiku-4-5-20251001-v1:0",
|
||||
"sonnet": "global.anthropic.claude-sonnet-5",
|
||||
@@ -148,12 +148,15 @@ def main():
|
||||
sys.exit(subprocess.run([sys.executable, LIBRARIAN] + argv).returncode)
|
||||
elif cmd == "analyze":
|
||||
prompt = open(PROMPT, encoding="utf-8").read()
|
||||
# Model tier: default Haiku (cheap nightly). --sonnet/--opus step up.
|
||||
# Model tier: default Opus (smart — draws the auto-fix/flag line correctly,
|
||||
# ~$0.14/run so cheap enough to run nightly). --haiku/--sonnet step DOWN.
|
||||
# Raw -m/--provider override the tier entirely (escape hatch for future models
|
||||
# or non-Bedrock providers). Tier flags are last-wins if combined.
|
||||
tier = "haiku"
|
||||
tier = "opus"
|
||||
if "--sonnet" in argv:
|
||||
tier = "sonnet"
|
||||
if "--haiku" in argv:
|
||||
tier = "haiku"
|
||||
if "--opus" in argv:
|
||||
tier = "opus"
|
||||
model = ANALYZE_TIERS[tier]
|
||||
@@ -179,8 +182,8 @@ def main():
|
||||
print(f" model: {model}", file=sys.stderr)
|
||||
print(" output is buffered; a full pass can take 1–3 min before you see anything.",
|
||||
file=sys.stderr)
|
||||
if tier == "haiku":
|
||||
print(" step up: vault analyze --sonnet (or --opus) for harder judgment calls",
|
||||
if tier == "opus":
|
||||
print(" step DOWN: vault analyze --sonnet (or --haiku) for cheaper/faster passes",
|
||||
file=sys.stderr)
|
||||
sys.stderr.flush()
|
||||
subprocess.run(hcmd)
|
||||
|
||||
Reference in New Issue
Block a user