Session walkthrough · brainstorm

onboard v3 — research-grounded onboarding

A design session that rearchitects the onboard plugin so understanding a repo is driven by a deep, parallel, adversarially-verified research phase — not a single-pass analyzer. Research runs first and deep: it collapses the wizard into a confirm/override surface, grounds richer generation, and emits four new foundational artifacts. The engine is portable-first on subagents (Workflow tool as a power-up), the roster is extensible, recon is script-free, and every artifact is a render of one model — markdown always, interactive HTML when the walkthrough plugin is present.

7+
Research specialists
4
New artifacts
2
Engine backends
3.0
Target version
the gap

Why single-pass analysis falls short

Today onboard understands a repo in one pass: the codebase-analyzer agent runs three scripts and skims files into one flat report, which — with wizard answers — feeds generation.

A single context window can only skim a large repo, nobody cross-checks the analyzer's claims, and the 6-phase wizard then asks the developer questions the codebase could already answer. Plausible-but-wrong findings flow straight into the rules and CLAUDE.md the tool writes.

The core insight

The analysis is breadth-first and self-attested — one agent skims everything and grades its own work. The newer Claude Code primitives (the Workflow tool, parallel subagents, the deep-research fan-out then verify then synthesize pattern) are built precisely for deep, parallel, verified investigation.

three approaches

Three altitudes, one chosen

All three share the same heart — a portable research panel. They differ in how much of onboard gets rearchitected around it. We designed to B.

A
Research Panel
Bolt-on beside today's pipeline
ChosenB
Research-Grounded v3
Research becomes the spine
C
Dual-Engine Platform
B + re-runnable research

A · Research Panel (bolt-on)

Add the panel beside today's pipeline; keep the wizard and the v2 context shape intact.

Pros
  • Lower risk, ships fast (2.1)
  • No reorder of the flow
Cons
  • Research and wizard duplicate effort
  • Wizard stays a cold interrogation
payoff
50
effort
35
risk
30

B · Research-Grounded v3

Reorder onboard around research: Recon then Research then Dossier then a grounded Wizard then Generation. v3 context shape, dual-backend engine, all four artifacts first-class.

Pros
  • Wizard collapses to confirm/override
  • Generation is evidence-grounded
  • Four artifacts first-class
Cons
  • Major redesign
  • 3.0 version bump
payoff
90
effort
65
risk
55

C · Dual-Engine Platform

B plus a standalone /onboard:research, drift-aware re-research wired into evolve, and Workflow-native multi-vote verification as the default.

Pros
  • Re-runnable and self-maintaining
  • Deepest verification
Cons
  • Largest scope
  • Best as a follow-on to B
payoff
95
effort
90
risk
75
the spine

The research-grounded pipeline

Research runs first and deep, so everything downstream is grounded in evidence instead of asking the developer cold. Click a stage for detail.

stage 1
Recon — scope & route
stage 2
Deep Research panel
stage 3
Dossier + 4 artifacts
stage 4
Grounded Wizard
stage 5
Generation

The empty-repo guard still fires before research — a zero-source repo skips straight to the existing stub path, untouched.

the engine

Inside the research engine

One internal orchestrator, two interchangeable backends behind the same roster and verification logic. Specialist subagents each go deep on one dimension; an adversarial verifier refutes weak claims; a synthesizer merges what survives.

Portable by design

The Workflow tool is not guaranteed in every user's environment, so subagents are the default substrate. The engine detects the Workflow tool at runtime and uses it only as a power-up — deeper fan-out and multi-vote verification — degrading gracefully where it is absent.

A floor, not a fixed set

Teams add custom specialists (accessibility, i18n, a GraphQL-schema audit) and enable/disable built-ins via .claude/onboard-research.config.json. Custom findings follow the same schema, so they flow through the same verifier and synthesizer — extension never lowers the quality bar.

Depth is dialed by the existing presets, so the expensive part stays opt-in:

Minimal
Recon only

Essentially today's fast, cheap path — now script-free.

Standard
~4 specialists + verify

Core dimensions, single adversarial pass.

Comprehensive
Full 7 + multi-vote

Whole roster + any custom specialists; Workflow multi-vote when available.

decisions

The choices that shaped it

Beyond picking approach B, nine decisions were ratified across the brainstorm.

Scope — both, integrated (v3)
Research and generation improve together as one coherent v3, rather than patching either half alone. Appetite: a bold redesign shipping as 3.0.
Portability — portable-first, optional power-up
Subagents are universal; the Workflow tool is detected and used only as a power-up. The core research phase degrades gracefully where newer primitives are absent.
Recon — script-free (native tools)
Retire analyze-structure / detect-stack / measure-complexity; recon uses native Glob/Grep/Read plus the odd inline git ls-files. Pure markdown+JSON, cross-platform, no shellcheck/path-bug surface. The generated target-repo drift hooks are unaffected.
Roster — extensible + tunable
Users add custom research specialists and enable/disable built-in dimensions via .claude/onboard-research.config.json. Custom findings follow the same schema and flow through the same verifier + synthesizer.
Artifacts — markdown + optional interactive HTML
Markdown stays canonical; when the walkthrough plugin is present, onboard-research.json also renders to self-contained interactive HTML via walkthrough:render, markdown fallback if absent. Mirrors the lens pattern.
± Artifact location — ask per-run, no default
No baked-in default — teams differ, so synthesis prompts committed docs/onboard/, local .claude/ only, or none. This overrode the recommended committed-by-default.
overrode recommendation
Verify backlog — seed feature-list.json
The risk / test-gap register seeds docs/feature-list.json so findings become checkable items onboard:verify can act on — staying within the register's scope, no new subsystem.
Research depth — tied to existing presets
Minimal / Standard / Comprehensive gate research depth, bounding cost — consistent with how presets already gate scope.
Context shape — v3 primary, v2 via adapter
generate accepts v3 (primary) and v2 through an adapter (research-absent mode = today's behavior); v1 is still rejected. Keeps the internal contract migratable.
new artifacts

Four new foundational artifacts

Human-readable docs plus one machine-readable companion — and every doc is a render of that one model. Location is chosen per run, but the research object always flows to the wizard and generation regardless.

docs/onboard/research-dossier.md
Research dossier

Per-dimension findings, each with file:line evidence + confidence. The re-runnable evidence base.

docs/onboard/architecture.md
Architecture + data-flow map

Layers, entry points, persistence, external deps.

docs/onboard/risk-register.md
Risk & test-gap register

Fragile / under-tested / security hotspots — seeds the verify backlog.

docs/onboard/glossary.md + adr/
Glossary + ADR seeds

Domain terms + ADRs seeded as proposed for the team to ratify.

.claude/onboard-research.json
Canonical research data

What the wizard + generation actually read; the docs render from it.

One model, many renders

.claude/onboard-research.json is the single source of truth. Markdown stays canonical — diffable, committable, ADRs ratifiable. When the walkthrough plugin is present, the same model also renders to a self-contained interactive HTML (architecture → live diagram, risk register → filterable cards, findings → clickable evidence) via walkthrough:render; markdown-only if it is absent.

plugin changes

What changes in the plugin

A new research skill, two specialist agents, three schemas (incl. the custom-roster config), and the v3 context shape — plus reorders to the existing skills and the retirement of the three recon scripts. Writes are additive, so rollback is clean.

onboard/ ├── skills/research/SKILL.md new · orchestrator ├── agents/research-specialist.md new · parameterized ├── agents/research-verifier.md new · adversarial ├── schemas/research-findings.json new ├── schemas/research-dossier.json new ├── schemas/research-config.json new · custom roster ├── schemas/context-shape-v3.json new ├── skills/start/SKILL.md edited · reorder phases ├── skills/wizard/SKILL.md edited · confirm/override ├── skills/generate/SKILL.md edited · accept v3 ├── skills/generation/SKILL.md edited · consume research ├── agents/codebase-analyzer.md edited · recon, script-free ├── scripts/analyze-structure.sh removed ├── scripts/detect-stack.sh removed ├── scripts/measure-complexity.sh removed └── .claude-plugin/plugin.json edited · 3.0.0

The marketplace entry (.claude-plugin/marketplace.json) bumps to 3.0.0 in lockstep. The retired recon scripts go script-free; the generated target-repo drift hooks (detect-*-changes.sh) are unaffected. Rollback = delete the additive docs/onboard/ + .claude/onboard-research.json and restore the existing CLAUDE.md.pre-onboard backup, or pin onboard@2.0.1 for the old single-pass flow.

deferred

What we deferred — the C roadmap

Three capabilities are explicitly out of scope for 3.0; each is a natural follow-on once the spine is proven.

1
A standalone, re-runnable /onboard:research decoupled from setup.
2
Drift-aware incremental re-research wired into onboard:evolve, so the dossier stays live.
3
Promoting Workflow-native multi-vote verification from a power-up to a first-class deep mode.
Engine · portable-first

Inside the research engine

One internal orchestrator with two interchangeable backends behind the same roster and verification logic. Subagents are the default substrate; if the Workflow tool is detected, it is used for deeper fan-out and multi-vote verification.

docs/superpowers/specs/2026-06-13-onboard-research-grounded-v3-design.md
  • Roster — 7 built-in specialists, each deep on one dimension: architecture, data model, testing, security, conventions, domain, dependencies/risk.
  • Extensible — a floor, not a fixed set: users add custom specialists and toggle built-ins via .claude/onboard-research.config.json; custom findings flow through the same verifier.
  • Each specialist returns schema-validated findings: claims + file:line evidence + confidence.
  • Verifier — an adversarial pass that tries to refute each claim; unsupported claims are dropped or down-confidence-ed and recorded in droppedClaims for transparency.
  • Synthesizer — merges verified findings into the four artifacts and the research object; it runs in the skill's own context because it needs all findings at once.
  • A specialist that fails leaves its dimension marked not assessed — never fabricated.