claude-plugins · onboard

Lifecycle manager for AI configs.

onboard analyzes a codebase with deep, verified research and generates evidence-grounded Claude tooling on day one — CLAUDE.md, path-scoped rules, skills, agents, hooks, and a verify backlog. Then it detects code-vs-config drift as the project evolves and offers to realign.

plugin codebase-analysis claude-md quality-gates
installbash
claude plugin install onboard@apurvbazari-plugins

Then run /onboard:start to launch the grounded, research-first guided workflow.

7
skills
7
start phases
3
agents
3
research profiles
0
CDN deps
01 — what it does

From evidence-grounded setup to continuous upkeep

Generating a CLAUDE.md is well-covered in 2026 — Claude Code's /init, Copilot, Codex, Cursor, and several web tools all do it. onboard's focus is the step after: grounding the configs in verified research, and keeping them aligned as your code grows.

The first run does not cold-prompt you. A read-only analyzer scans the codebase, a research engine fans out specialists and adversarially verifies their claims, and the wizard asks you to confirm or override what the research already inferred. Nothing is written until you approve a full preview. After that, the drift loop takes over.

Not just generation — alignment

The differentiator is the lifecycle: every generated artifact carries a self-maintaining header, and /onboard:evolve watches code-vs-config drift and proposes targeted realignments you approve one at a time.

02 — research-first start

A grounded, research-first first run

/onboard:start is the main entry point. Instead of a cold questionnaire, it recons the code, researches it, and lets you confirm what the research inferred — behind a hard write gate.

Recon runs the codebase-analyzer agent (read-only, script-free — native Glob/Grep/Read plus git one-liners) to detect languages, frameworks, testing, CI/CD, and structure; its output stays in context, never on disk. Deep Research (onboard:research) fans out specialists per dimension, adversarially verifies their claims, and synthesizes a research dossier plus four artifacts — research-dossier, architecture, risk-register, and glossary. The grounded wizard then surfaces research.wizardInferences for you to confirm or override — autonomy level is always asked cold, never inferred. An empty-repo guard offers a 3-option menu (abort / placeholder / canonical stub) before any of this runs.

03 — the drift loop

The drift-detection loop

/onboard:evolve is the heart of the lifecycle. When /onboard:start runs in enriched mode it installs auto-evolution hooks that quietly track change, and evolve drains them into targeted, approve-by-item updates.

FileChanged hooks on package.json, tsconfig.json, pyproject.toml, lockfiles, and structural anchors log diffs to .claude/greenfield-drift.json; a SessionStart hook summarises pending drift at the start of each session. Then /onboard:evolve reads that log, compares against the original snapshot, categorises the change (new dependencies, structural shifts, config diffs, missing hooks, stale rules), and proposes updates. You decide which to apply; the snapshot then updates so the next run is incremental.

You stay in control

Drift detection never silently rewrites your tooling — every proposed update is shown and applied only on your approval. The snapshot advances after each run, keeping subsequent passes incremental.

04 — pipeline

The seven-phase start pipeline

/onboard:start runs a fixed, model-before-markup pipeline. Nothing is written to disk until Phase 5's hard gate is approved. Click a phase for detail.

The work is split across components: the codebase-analyzer agent recons read-only; the research engine grounds the wizard with verified claims; the wizard is the confirm/override surface; the config-generator agent takes the combined v3 context (recon + research + wizard) and writes every artifact.

05 — reference

Seven skills, three agents

All skills use the /onboard:<name> slash syntax. Read-only helpers can auto-invoke; the three destructive entry points require explicit invocation; generate is an internal step hidden from the menu.

SkillInvocationWhat it does
/onboard:startuser-onlyMain entry point — the grounded, research-first guided workflow: recon → research → wizard → preview gate → generation → handoff. Includes the empty-repo guard.
/onboard:updateuser-onlyRe-aligns tooling against the latest Claude Code best practices and live docs, preserving your manual customisations.
/onboard:adoptuser-onlyRetrofits hand-crafted tooling into an onboard baseline (mode:retrofit + snapshots) so update works — without modifying any hand-crafted file. Every adopted artifact is tracked origin:adopted.
/onboard:evolveautoThe drift loop. Reads greenfield-drift.json, compares against the snapshot, and proposes targeted realignments you approve.
/onboard:verifyautoIndependent feature verification — spawns the feature-evaluator agent in worktree isolation to test features against docs/feature-list.json. Single-feature, sprint, or all-incomplete modes.
/onboard:checkautoQuick health check — last run date, generated artifacts, integrity status, and recommendations.
/onboard:generateinternalInternal generation step invoked by start / update / evolve. Consumes the v3 context; mode:plan computes the manifest for the gate without writing, mode:write runs the full pipeline.

Three agents do the heavy lifting: the codebase-analyzer (read-only recon), the config-generator (writes all artifacts from the v3 context), and the feature-evaluator (independent feature testing, spawned by verify).

06 — profiles

Three research profiles

During start you pick a profile. It sets how deep the research goes and how much tooling is generated — there is no Custom path.

ProfileResearch depthGeneration scope
MinimalShallow researchCore tooling only
Standard recommendedBalanced researchBalanced tooling
ComprehensiveFull researchEnriched tooling

Autonomy level is a separate, always-cold question — never inferred from the codebase. It decides whether Claude only suggests (always ask), runs a balanced set of auto-format + advisory-lint + blocking pre-commit gates, or fully enforces them (autonomous).

07 — output

What it generates

Generation has two tiers. Core artifacts are always produced; Enriched artifacts are added only when the wizard enables them. Every file carries a self-maintaining version + date header.

coreAlways generated
  • Root CLAUDE.md — overview, tech stack, commands, conventions, critical rules.
  • Subdirectory CLAUDE.md files — context-specific guidance for major directories.
  • .claude/rules/*.md — path-scoped rules for testing, APIs, components, security.
  • .claude/skills/ + .claude/agents/ — stack-specific skills and plugin-aware agents (skips capabilities an installed plugin already covers).
  • .claude/output-styles/ — a project-scoped output style tuned to archetype (onboarding / teaching / production-ops / research / solo).
  • Hook entries in .claude/settings.json — auto-format and lint checks tailored to your tooling.
  • PR template + commit conventions and .claude/onboard-meta.json — the generation manifest.
enrichedWhen the wizard enables it
  • CI/CD pipelines — GitHub Actions: ci, tooling-audit, pr-review.
  • Harness artifactsdocs/progress.md, docs/HARNESS-GUIDE.md.
  • Auto-evolution hooks — FileChanged + SessionStart plus the drift-detection scripts that power /onboard:evolve.
  • Sprint contractsdocs/sprint-contracts/.
  • Agent team support — quality hooks and env vars.
08 — coverage

Supported project types & prerequisites

onboard handles single-language, mixed-language, and monorepo projects across the common stacks. Recon itself is script-free; only the evolution and CI-audit scripts need bash.

node / typescript
JS ecosystem

React, Next.js, Express, NestJS, and more.

python
Python

Django, Flask, FastAPI, and more.

go · rust
Systems

Go and Rust projects.

java / kotlin · ruby
JVM & Rails

Java / Kotlin and Ruby on Rails.

monorepos
Workspaces

npm / yarn / pnpm workspaces, Turborepo, Nx, Lerna.

mixed-language
Polyglot

Projects spanning several languages at once.

prerequisites
bash
Required

Evolution + CI-audit scripts and generated hooks. Ships on macOS and Linux.

git
Required

Repository analysis and contributor detection.

tree
Optional

Directory visualisation — falls back to find.

jq
Optional

JSON parsing in hooks — generated hooks include a python3 fallback.

09 — example

A run, then drift two weeks later

/onboard:start on an existing Next.js 15 project, then /onboard:evolve two weeks later detecting drift after the team added Playwright and extracted a workspace.

/onboard:start → /onboard:evolvetranscript
> /onboard:start

Phase 1: Recon
━━━━━━━━━━━━━━
Scanning codebase… (script-free — native search + git)

  Languages    TypeScript (94%), CSS (6%)
  Framework    Next.js 15 (App Router)
  Testing      Vitest + React Testing Library
  CI/CD        GitHub Actions (1 workflow)
  Size         48 files, 3,200 LOC

Phase 2: Research — profile select
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  (a) Minimal   (b) Standard  ← recommended   (c) Comprehensive
> b

Fanning out specialists → verifying → synthesizing dossier…
  Wrote research-dossier, architecture, risk-register, glossary

Phase 3: Grounded Wizard
━━━━━━━━━━━━━━━━━━━━━━━━
From the research I inferred — confirm or override:
  Testing philosophy   TDD   (vitest + RTL, co-located)   > confirm
  Autonomy level?  (asked cold)  > b (Balanced)

Phase 5: Preview & Gate
━━━━━━━━━━━━━━━━━━━━━━━
  research: 3 risks, architecture map, glossary
  + 12 files (CLAUDE.md, 3 rules, 1 skill, 1 agent, settings.json, …)
  Approve & generate?  [Approve / Adjust / Cancel]   > Approve

Phase 6: Generation → 12 artifacts written
Phase 7: Handoff → "Your project is set up. Try /onboard:check anytime."

# ── two weeks later — team added Playwright + extracted packages/shared ──

> /onboard:evolve

Drift detected:
  + new dependency     @playwright/test in apps/web
  + structural change  packages/shared workspace appeared
  ~ tsconfig changes   paths added for @repo/shared

Proposed updates:
  • Add rule        testing/e2e-conventions.md (Playwright)
  • Update CLAUDE.md → mark monorepo, document workspace boundaries
Apply all? [Y/n]  > Y

Snapshot updated. AI configs realigned to current code.
onboard · v3.0.0 · MIT · by Apurv Bazari