Parent
Source: PLAN Phase A4, topic plugin-audit-port — plan locked at commit 40a64b5c on
feat/plugin-audit-port.
What to build
context-guard setup skill (disable-model-invocation: true, check/apply contract per
PLUGIN-PHILOSOPHY "Setup is explicit and repeatable"):
- check (read-only): jq presence; statusline wiring state — the stale-path detection compares
the wired path against the currently resolved ${CLAUDE_PLUGIN_ROOT} so exists-but-outdated
cache paths are caught, not just missing files; snapshot freshness probe for the live session;
prints the exact operator settings.json statusline edit (wrapped and standalone variants) —
NEVER writes settings; dotfiles-tracking reminder (surface only, run nothing).
- apply: scoped to the ONE file the plugin owns the schema of — seed/refresh
~/.claude/context-guard/zones.json from the shipped defaults on explicit request; idempotent,
preserves unrecognized keys in an existing file, reports what it wrote. Nothing else — statusline
wiring stays print-only (owner-approved EXEC-SHAPE decision).
- Setup evals (
skills/setup/evals/evals.json) — setup skills are warrantable; the
rate-limit-guard setup eval is the model.
Acceptance criteria
Blocked by
- Reader-contract slice (native edge).
Parent
Source: PLAN Phase A4, topic
plugin-audit-port— plan locked at commit40a64b5confeat/plugin-audit-port.What to build
context-guardsetup skill (disable-model-invocation: true, check/apply contract perPLUGIN-PHILOSOPHY "Setup is explicit and repeatable"):
the wired path against the currently resolved
${CLAUDE_PLUGIN_ROOT}so exists-but-outdatedcache paths are caught, not just missing files; snapshot freshness probe for the live session;
prints the exact operator
settings.jsonstatusline edit (wrapped and standalone variants) —NEVER writes settings; dotfiles-tracking reminder (surface only, run nothing).
~/.claude/context-guard/zones.jsonfrom the shipped defaults on explicit request; idempotent,preserves unrecognized keys in an existing file, reports what it wrote. Nothing else — statusline
wiring stays print-only (owner-approved EXEC-SHAPE decision).
skills/setup/evals/evals.json) — setup skills are warrantable; therate-limit-guard setup eval is the model.
Acceptance criteria
/skill-quality:checkpasses on the setup skillvalidate-evalspasses onskills/setup/evals/evals.json~/.claude/context-guard/zones.json${CLAUDE_PLUGIN_ROOT}even when the old file still exists
Blocked by