/predict
5 expert personas debate proposed changes before implementation
> /plugin marketplace add uditgoenka/autoresearch > /plugin install autoresearch@autoresearch
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/predict
Context preview
What this command does when you run it.
5 expert personas debate proposed changes before implementation
Command definition
predict.mdname: autoresearch:predict
description: "5 expert personas debate proposed changes before implementation"
argument-hint: "[Scope: <glob>] [Goal: <text>] [--depth shallow|standard|deep] [--adversarial] [--chain <targets>]"
EXECUTE IMMEDIATELY.
Parse Arguments
Extract from $ARGUMENTS:
- `Scope:` or `--scope` — file globs to analyze
- `Goal:` or `--goal` — focus area for analysis
- `Depth:` or `--depth` — shallow (3 personas, 1 round), standard (5, 2), deep (8, 3)
- `--personas N` — override persona count (3-8)
- `--rounds N` — override debate rounds (1-3)
- `--adversarial` — use hostile reviewer personas instead of default
- `--budget N` — max findings across all personas (default 40)
- `--fail-on <severity>` — CI gate: exit non-zero if findings at/above threshold
- `--incremental` — reuse existing knowledge files, update only changed files
- `--chain`, `--<subcommand>`
Remaining text not matching flags = goal description.
Setup (if Scope or Goal missing)
AskUserQuestion (single batch): Q1 (Scope): "Which files to analyze?" — suggested globs + entire codebase Q2 (Goal): "What should personas focus on?" — code quality, security, performance, architecture, all Q3 (Depth): "How deep?" — shallow (3 personas, 1 round), standard (5, 2 — recommended), deep (8, 3) Q4 (Chain): "After analysis, chain to?" — debug, security, fix, ship, scenario, no chain If all provided → skip.
Phase 1: Reconnaissance
Scan all in-scope files. Build structured knowledge:
- File inventory with purpose annotations
- Dependency graph (imports/exports)
- API surface (routes, handlers, types)
- Data flow (inputs → processing → outputs → storage)
- Existing test coverage map
Phase 2: Persona Generation
Load `references/predict-personas.md` for persona definitions.
**Default set (5):** Architect, Security Analyst, Performance Engineer, Reliability Engineer, Devil's Advocate. **Adversarial set (--adversarial):** Breaker, Cheater, Scaler, Newbie, Malicious Insider.
Each persona receives: task description + codebase knowledge + their specific evaluation criteria. Personas are isolated — no shared context between them.
Phase 3: Independent Analysis
Each persona analyzes the codebase independently:
- Read relevant code through their lens
- Produce findings with: title, severity, confidence (0-100%), file:line, recommendation
- Max findings per persona: budget / persona_count
Phase 4: Debate (per round)
For each debate round: 1. Present all personas' findings to each other 2. Each persona can: challenge findings, raise new issues, change confidence 3. Cross-examination: personas must respond to challenges with evidence 4. No persona can dismiss without counter-evidence
Phase 5: Consensus
Synthesizer aggregates all findings: 1. Deduplicate (same file:line + same issue = merge, keep highest severity) 2. Resolve conflicts (if personas disagree, note dissent) 3. **Anti-herd check:** if all personas agree on everything, synthesizer MUST find at least 1 counter-argument 4. Rank by: severity × average confidence × persona agreement count
Phase 6: Report
Create output directory: `autoresearch/predict-{YYMMDD}-{HHMM}/`
Write:
- `summary.md` — top findings, consensus view, risk assessment
- `debate.md` — full persona analysis + debate transcript
- Per-persona sections with individual findings
Print to console: top 10 findings ranked by severity × confidence.
Phase 7: CI Gate
If `--fail-on` set: check findings against threshold. Exit non-zero if exceeded.
Chain Handoff
Write handoff.json: version "2.1.0", source "predict", timestamp, status (COMPLETE|ERROR), findings = consensus findings with severity + confidence + file:line, config{scope, goal, depth}. Invoke next target in --chain order.
Read more
name: autoresearch:predict description: "5 expert personas debate proposed changes before implementation" argument-hint: "[Scope: <glob>] [Goal: <text>] [--depth shallow|standard|deep] [--adversarial] [--chain <targets>]"
EXECUTE IMMEDIATELY.
Parse Arguments
Extract from $ARGUMENTS:
- `Scope:` or `--scope` — file globs to analyze
- `Goal:` or `--goal` — focus area for analysis
- `Depth:` or `--depth` — shallow (3 personas, 1 round), standard (5, 2), deep (8, 3)
- `--personas N` — override persona count (3-8)
- `--rounds N` — override debate rounds (1-3)
- `--adversarial` — use hostile reviewer personas instead of default
- `--budget N` — max findings across all personas (default 40)
- `--fail-on <severity>` — CI gate: exit non-zero if findings at/above threshold
- `--incremental` — reuse existing knowledge files, update only changed files
- `--chain`, `--<subcommand>`
Remaining text not matching flags = goal description.
Setup (if Scope or Goal missing)
AskUserQuestion (single batch): Q1 (Scope): "Which files to analyze?" — suggested globs + entire codebase Q2 (Goal): "What should personas focus on?" — code quality, security, performance, architecture, all Q3 (Depth): "How deep?" — shallow (3 personas, 1 round), standard (5, 2 — recommended), deep (8, 3) Q4 (Chain): "After analysis, chain to?" — debug, security, fix, ship, scenario, no chain If all provided → skip.
Phase 1: Reconnaissance
Scan all in-scope files. Build structured knowledge:
- File inventory with purpose annotations
- Dependency graph (imports/exports)
- API surface (routes, handlers, types)
- Data flow (inputs → processing → outputs → storage)
- Existing test coverage map
Phase 2: Persona Generation
Load `references/predict-personas.md` for persona definitions.
**Default set (5):** Architect, Security Analyst, Performance Engineer, Reliability Engineer, Devil's Advocate. **Adversarial set (--adversarial):** Breaker, Cheater, Scaler, Newbie, Malicious Insider.
Each persona receives: task description + codebase knowledge + their specific evaluation criteria. Personas are isolated — no shared context between them.
Phase 3: Independent Analysis
Each persona analyzes the codebase independently:
- Read relevant code through their lens
- Produce findings with: title, severity, confidence (0-100%), file:line, recommendation
- Max findings per persona: budget / persona_count
Phase 4: Debate (per round)
For each debate round: 1. Present all personas' findings to each other 2. Each persona can: challenge findings, raise new issues, change confidence 3. Cross-examination: personas must respond to challenges with evidence 4. No persona can dismiss without counter-evidence
Phase 5: Consensus
Synthesizer aggregates all findings: 1. Deduplicate (same file:line + same issue = merge, keep highest severity) 2. Resolve conflicts (if personas disagree, note dissent) 3. **Anti-herd check:** if all personas agree on everything, synthesizer MUST find at least 1 counter-argument 4. Rank by: severity × average confidence × persona agreement count
Phase 6: Report
Create output directory: `autoresearch/predict-{YYMMDD}-{HHMM}/`
Write:
- `summary.md` — top findings, consensus view, risk assessment
- `debate.md` — full persona analysis + debate transcript
- Per-persona sections with individual findings
Print to console: top 10 findings ranked by severity × confidence.
Phase 7: CI Gate
If `--fail-on` set: check findings against threshold. Exit non-zero if exceeded.
Chain Handoff
Write handoff.json: version "2.1.0", source "predict", timestamp, status (COMPLETE|ERROR), findings = consensus findings with severity + confidence + file:line, config{scope, goal, depth}. Invoke next target in --chain order.
Turn Claude Code, OpenCode, or OpenAI Codex into a relentless improvement engine. Based on Karpathy's autoresearch — constraint + mechanical metric + autonomous iteration = compounding gains.
Repo: uditgoenka/autoresearch
Other commands on autoresearch.
- /autoresearch
Autonomous iteration loop: modify, verify, keep/discard against any metric
Open command - /debug
Hunt bugs with scientific method: hypothesize, test, falsify, repeat
Open command - /evals
Analyze iteration results: trends, plateaus, regressions, recommendations
Open command - /fix
Crush errors one-by-one until zero remain: tests, types, lint, build
Open command - /improve
Research ICP challenges, discover improvements, generate PRDs
Open command - /learn
Scout codebase and auto-generate docs — or a navigable wiki knowledge base — with validation-fix loop
Open command

