一键导入
vc-autoresearch
Loop: find gaps → fix → repeat until agents find no gaps or a metric goal is hit. Shared loop primitive for PVL, EVL, and standalone quality runs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Loop: find gaps → fix → repeat until agents find no gaps or a metric goal is hit. Shared loop primitive for PVL, EVL, and standalone quality runs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Pull latest agent harness improvements from the remote kit repository. Shows a dry-run diff summary, waits for confirmation, then applies updates.
Audit agent harness health: Claude/Codex agent parity, skill registry consistency, README.md sync, and protocol file wiring. Use when agents, skills, README.md, or development-protocol files move, split, or drift.
Use when publishing harness improvements to the remote kit repo. Diffs managed files, shows what changed, bumps version, and pushes. Counterpart to vc-update (pull).
Emit and validate the provisional goal block for Autopilot Mode. Owns the 9-field format and resume detection from a pasted goal block.
Interactive harness setup for any project. Detects stack, scaffolds process dirs, deep-scans the codebase, populates context. Works on fresh and existing projects — always asks before reorganizing.
Audit project context routing, shared-skill discoverability, and Claude/Codex wiring. Use when context docs or skill surfaces move, split, or drift.
| name | vc-autoresearch |
| description | Loop: find gaps → fix → repeat until agents find no gaps or a metric goal is hit. Shared loop primitive for PVL, EVL, and standalone quality runs. |
| argument-hint | [domain] [corpus path(s)] [verify: command] [max_iterations: N] |
| trigger_keywords | autoresearch, harden spec, fix all errors, improve coverage, iterative improvement, gap loop |
| layer | contract |
| metadata | {"author":"vibecode-pro-max-kit","version":"1.0.0"} |
Output style: Follow
process/development-protocols/communication-standards.md— answer-first, plain language, no unexplained jargon, TL;DR on long responses.
Reusable loop primitive. Runs: find gaps → write report → fix → check → repeat.
Used directly for spec/doc/UX hardening. Wired into PVL (plan-validate-fix loop — the fix cycle between writing a plan and approving EXECUTE) and EVL (execute-validate-fix loop — the confirmation run after EXECUTE) as the shared bookkeeping layer.
Do NOT invoke during RESEARCH or INNOVATE phases.
The ORCHESTRATOR is the loop driver. It executes every bookkeeping step itself:
results.tsv tracking file.results.tsv after each cycle.Subagents (vc-validate-agent, vc-tester, vc-plan-agent, vc-execute-agent) are fire-and-forget: they emit a verdict and terminate. They cannot invoke this skill on the orchestrator's behalf, cannot loop themselves, and cannot spawn each other.
If no one runs Step 0, the loop never exists and verdicts silently become "proceed" — that failure mode is exactly what this section forbids.
Per-verdict routing tables: process/development-protocols/orchestration.md §PVL/EVL Loop Routing.
| Subcommand | Does | Stops when |
|---|---|---|
vc-autoresearch (core) | find gaps → fix → repeat | agents find no gaps OR metric goal hit |
vc-autoresearch:probe | 8 personas interrogate the corpus until saturation | no new constraints for 3 rounds |
vc-autoresearch:reason | adversarial debate with blind judges until convergence | judges converge or iteration cap |
vc-autoresearch:evals | analyze TSV results — trends, plateaus, recommendations | N/A (analysis only) |
Not ported (already covered by existing vc-system skills): debug → vc-debugger, security → vc-security, scenario → vc-scenario, predict → vc-predict.
| Parameter | Required | Default | Notes |
|---|---|---|---|
domain: | yes | — | spec / tests / ux / docs / plan / errors |
corpus: | yes | — | file glob(s) or path list to investigate |
verify: | no | — | shell command that outputs a number; required for "hit the metric goal" mode |
target: | no | 0 | the number verify: must reach (lower-is-better assumed; use target_direction: higher to flip) |
guard: | no | — | safety shell command that must pass after every fix batch |
frozen_files: | no | — | glob pattern(s); any file matching is excluded from the fix corpus and must never be modified by a fix agent |
max_iterations: | no | per domain | hard cap on loop cycles |
severity_escalation_at: | no | 7 | after this many iterations, stop fixing CONCERN findings (move to backlog) |
consecutive_all_clear: | no | 2 | how many consecutive zero-gap iterations before SUCCESS |
research_agents: | no | per domain | number of parallel research agents |
fix_agents: | no | per domain | number of parallel fix agents |
feature: | no | inferred | feature folder name for report output paths |
task_slug: | no | auto | task folder slug; auto-generated as autoresearch-{domain}-{YYMMDD} |
auto_run: | no | prompt | true = no pauses; false = confirm before each fix batch; under /goal always true |
Full configs in process/development-protocols/vc-autoresearch-spec.md §Canonical domain configs.
| Domain | Research agents | Fix agents | Max iterations | Escalation at | Guard |
|---|---|---|---|---|---|
spec | 2 | 3 | 15 | 7 | none |
tests | 2 | 2 | 20 | — | pnpm test |
ux | 2 | 2 | 10 | 5 | pnpm typecheck |
docs | 1 | 2 | 8 | — | node validator script |
plan | 1 | 1 | 3 | — | none |
errors | 1 | 2 | 20 | — | none |
harness | 2 | 2 | 10 | — | pnpm test:runtime-harness:unit |
* harness full config: .claude/skills/vc-autoresearch/domains/harness.md
auto_run: not set and NOT under /goal: prompt once — "Auto-run (no pauses) or confirm before each fix batch?" Choice is sticky for the full loop.process/features/{feature}/active/{task_slug}_{dd-mm-yy}/{task_folder}/results.tsv with header row and baseline row (iteration 0, gaps_found: TBD, loop_status: baseline)Spawn research_agents: parallel agents. Each agent:
Collect all findings. Count: gaps_found, fail_count, concern_count.
Apply severity floor: if iteration > severity_escalation_at, discard CONCERN findings (add to backlog section of report — do not fix).
"Until agents find no gaps" (no verify: param):
consecutive_all_clear counterconsecutive_all_clear: → SUCCESS"Hit the metric goal" (verify: param set):
target: → SUCCESSCheck in priority order:
gaps_found unchanged or increased for 3 consecutive iterations → HALT_PLATEAUiteration >= max_iterations → HALT_CAP/goal)If none triggered: continue to Step 4.
Write a NEW per-iteration report file:
{task_folder}/{task_slug}-iteration-{NNN}_REPORT_{dd-mm-yy}.md — {NNN} is the
zero-padded 3-digit iteration number (001, 002, … 042), so files sort correctly and
every iteration is uniquely named no matter how many run.
ONE FILE PER ITERATION — hard rule. NEVER append iterations to a single rolling file
(no ITERATION-NOTES.md, no shared {task_slug}_REPORT_*.md updated in place). The
rolling cross-iteration view is results.tsv, nothing else.
Append a row to {task_folder}/results.tsv.
If auto_run: false: surface gap summary, wait for user confirmation before fixing.
Spawn fix_agents: parallel agents. Each agent:
If guard: is set: run guard command.
Increment iteration counter. Go to Step 1.
On any terminal state, write final iteration report with loop_status: set, then emit:
AUTORESEARCH COMPLETE
Domain: {domain}
Iterations run: N
Terminal state: SUCCESS | HALT_PLATEAU (no progress after 3 cycles) | HALT_CAP (10-cycle hard limit) | HALT_REGRESSION (passing test now fails) | HALT_SEVERITY (critical gap found)
Gaps remaining: N (FAIL: N, CONCERN: N)
Files updated: [list]
Report: {task_folder}/{task_slug}-iteration-{NNN}_REPORT_{dd-mm-yy}.md (final iteration)
TSV: {task_folder}/results.tsv
When vc-autoresearch is the bookkeeper for a PVL (plan-validate-fix loop):
domain: plan, corpus: = the plan .md filevc-validate-findings (Layer 1 dimension agents + Layer 2 feasibility agents) — that parallelism is owned by vc-validate-agent.fix_agents: defaults to the count of independent gap groups (cap to the plan-domain default unless raised). Each fixer is scoped to its assigned gap IDs only. When gaps are interdependent or touch one section, fall back to a single plan-fix agent.{task_folder}/{plan-slug}-pvl-iteration-{NNN}_REPORT_{dd-mm-yy}.md (zero-padded {NNN})
capturing: gaps found (with severity), fixes applied vs backlogged, and the validate verdict
for that cycle. Never a single rolling notes file.Boundary:
SUPPLEMENT_APPLIEDWhen vc-autoresearch is the bookkeeper for an EVL (execute-validate-fix loop):
domain: tests, verify: = validate-contract gate commands (read from contract — never invented){task_folder}/{plan-slug}-evl-iteration-{NNN}_REPORT_{dd-mm-yy}.md (zero-padded {NNN})
capturing: which gates ran, which failed (with trimmed failure output), fixes applied, and
the re-run result for that cycle. Never a single rolling notes file.Boundary:
See process/development-protocols/vc-autoresearch-spec.md §Iteration report for full frontmatter schema and body sections.
Gap entry format:
### GAP-I{N}-{ID} — {short title}
- **SEVERITY:** FAIL | CONCERN | OBSERVATION
- **LOCATION:** {file} §{section}
- **GAP:** {what is missing or wrong}
- **RESOLUTION:** {what was changed}
- **STATUS:** APPLIED | BACKLOG
Each iteration report is written inside the active task folder as
{slug}-iteration-{NNN}_REPORT_{dd-mm-yy}.md with {NNN} zero-padded to 3 digits
(task-folder artefact colocation — never a sibling reports/ dir). One file per
iteration; PVL/EVL cycles use the {plan-slug}-pvl-iteration-{NNN} /
{plan-slug}-evl-iteration-{NNN} slug variants.
Header row:
iteration timestamp gaps_found fail_count concern_count applied saturation_status loop_status notes
loop_status: baselinesaturation_status: ACTIVE | PLATEAU | SATURATEDloop_status: CONTINUE | HALTED_SUCCESS | HALTED_PLATEAU | HALTED_CAP | HALTED_REGRESSIONRun vc-autoresearch:evals {task_folder}/results.tsv to analyze trends and get a plateau/recommendation report.
iteration-context.cjs — injects last 3 TSV rows at UserPromptSubmit; must scan process/features/*/active/*/results.tsv (not project-root autoresearch/ paths)session-init.cjs — active plan summary at SessionStart; adapted to scan process/general-plans/active/ and process/features/*/active/stop-notify.cjs — terminal notification at SessionEnd; no changes neededscout-block.cjs or privacy-block.cjs from the autoresearch reference repo — vc-system settings.json has superior versions; registering them would cause conflicts