Add portability-checker agent
Read-only subagent that audits a repo against the vendor-neutral / hot-swap standard: AGENTS.md canonical with a CLAUDE.md symlink, scoped guides symlinked from .claude/rules with index lines, thin wrappers, and relative correctly-directed symlinks. Substance in guides/, thin Claude wrapper in adapters/, catalogued in the subagents handbook.
This commit is contained in:
+11
-6
@@ -84,6 +84,7 @@ least one.
|
||||
| reviewer | independence | Fresh-eyes review of a diff before commit | ✅ in kit |
|
||||
| security-auditor | independence | Hostile persona: vulns, secrets, dependency CVEs | ✅ in kit |
|
||||
| spec-checker | independence | Compliance vs Start9 community registry requirements | ✅ in kit (`start9-spec-checker`) |
|
||||
| portability-checker | independence | Compliance vs my vendor-neutral / hot-swap standard | ✅ in kit |
|
||||
| exerciser | containment | Black-box QA: run it, feed it normal + hostile inputs | ✅ in kit |
|
||||
| researcher | compression | Multi-source web research → cited brief | ✅ in kit |
|
||||
| test-runner | compression | Run the suite, return only failures + causes | build when a repo has a real suite |
|
||||
@@ -130,9 +131,9 @@ the catalog. The security-auditor runs them.
|
||||
capability ceiling. Both live in the wrapper frontmatter; frontmatter effort
|
||||
overrides the session level while that agent runs. Match the dial to where the cost
|
||||
actually lives: evaluator and security-auditor are **opus/high** because the report
|
||||
*is* the reasoning; reviewer, researcher, exerciser, and spec-checker are
|
||||
**sonnet/medium** because their cost is dominated by frequency, tool-call turns, or
|
||||
procedure-following — not thinking depth. The deep insight: a well-proceduralized
|
||||
*is* the reasoning; reviewer, researcher, exerciser, spec-checker, and
|
||||
portability-checker are **sonnet/medium** because their cost is dominated by frequency,
|
||||
tool-call turns, or procedure-following — not thinking depth. The deep insight: a well-proceduralized
|
||||
guide is *pre-computed reasoning*, so every hour spent tightening a guide lowers
|
||||
the model+effort that task needs forever. `low` is for truly mechanical agents
|
||||
(migrator, test-runner) once their guides are trusted; `xhigh` is the upgrade if an
|
||||
@@ -192,8 +193,8 @@ softened.
|
||||
|
||||
### Length budgets
|
||||
|
||||
Reviewer ≤ 70 lines · exerciser & spec-checker ≤ 80 · researcher & security-auditor
|
||||
≤ 100 · evaluator ≤ 120. Tighten freely; loosen only with cause.
|
||||
Reviewer ≤ 70 lines · exerciser, spec-checker & portability-checker ≤ 80 · researcher &
|
||||
security-auditor ≤ 100 · evaluator ≤ 120. Tighten freely; loosen only with cause.
|
||||
|
||||
---
|
||||
|
||||
@@ -279,7 +280,9 @@ Per repo, in order:
|
||||
1. **Retrofit first** (per `retrofit-playbook.md`): AGENTS.md with Current state, the
|
||||
CLAUDE.md symlink. Subagents load this file — the evaluator literally reads it to
|
||||
judge the build against your stated intent. Eval before retrofit = grading against
|
||||
a blank rubric.
|
||||
a blank rubric. Confirm the retrofit's structure with **portability-checker** before
|
||||
moving on — especially on repos retrofitted under an older playbook, where AGENTS.md
|
||||
may still be a real CLAUDE.md or rules may not yet be symlinks into docs/guides.
|
||||
2. **`/full-eval`** in a fresh session. Walk away; read one synthesized report.
|
||||
3. **Triage** into the repo's AGENTS.md Current state: P0/P1 become the work queue,
|
||||
P2 becomes a "known debt" list, P3+ gets deleted or done in bulk.
|
||||
@@ -296,6 +299,8 @@ Per repo, in order:
|
||||
- **Every meaningful diff:** reviewer, before commit. This is the habit that compounds.
|
||||
- **Before any release:** exerciser + security-auditor in parallel.
|
||||
- **Before registry submission:** start9-spec-checker.
|
||||
- **After retrofitting or converting a repo:** portability-checker, to confirm it follows
|
||||
the vendor-neutral / hot-swap standard before you rely on it being swappable.
|
||||
- **Quarterly-ish:** `/full-eval` on actively maintained repos; drift accumulates
|
||||
silently.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user