brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
migrate-aiboardingUse when a repo has a legacy AIBOARDING.md (v1 layout) and should move to the standard AGENTS.md + CLAUDE.md layout with the .aiboarding/state.json sidecar. One-shot, preview-first migration that preserves the existing onboarding content and rewires the hooks.
Independent GitHub snapshot · Automated classification · Original documentation governs
One-shot migration from the v1 custom-injection layout to the standard-files
layout. The onboarding knowledge in AIBOARDING.md is an investment - carry it
over; never regenerate from scratch and never delete anything without approval.
Announce at start: "Using migrate-aiboarding to move this repo to the AGENTS.md layout."
Precondition: AIBOARDING.md exists at the repo root. If it does not, stop and
suggest create-agent-onboarding. If AGENTS.md also already exists, stop and ask
the user which file is authoritative before writing anything.
Read the AIBOARDING.md frontmatter (aiboarding_version, generated,
last_synced_commit). These seed .aiboarding/state.json:
aiboarding_version: 2generated: today's datelast_synced_commit: carried over verbatim (empty stays empty - the repair
semantics of an empty pointer are preserved).Map the three v1 H1 sections onto the v2 schema (see create-agent-onboarding's Shared contracts for the exact section list and order):
| v1 source | v2 target sections |
|---|---|
# 1. Engineering Basics | Stack and Runtime, Build, Test, Run, Architecture Map |
# 2. Domain & Business Logic | Project Purpose, Domain Model |
# 3. AI-Specific Context | Agent Guardrails, Known Failure Modes |
Preserve the compressed density of the source text; split it, don't rewrite it. Backtick-quote any command, identifier, path, or error string that isn't already.
Two v2 sections have no v1 source: Verification Before Completion and
Escalation - Ask the User When. Run a short, scoped grilling pass (the
one-question-at-a-time style from create-agent-onboarding) ONLY for these gaps.
Follow create-agent-onboarding Phase 6: CLAUDE.md (@AGENTS.md + fenced
Claude-notes block), state.json, config.json, .aiboarding/.gitignore, the six
hook files, and its complete current tool set including write-evidence.
Repo-local hook/settings steps are Claude Code-only. Codex plugin hooks are native,
optional, and require /hooks trust review; standalone skills use manual
update-agent-onboarding after meaningful commits.
In <repo>/.claude/settings.json:
SessionStart full-injection entry with the current template's entry
(the modern session-start is a fallback warner, not an injector).PreToolUse[Task] entry (pre-task is retired - SubagentStart
is native now).PostToolUse entry so it dispatches drift-check (not post-commit).SubagentStart and InstructionsLoaded entries from the template.
Delete <repo>/.aiboarding/hooks/pre-task and <repo>/.aiboarding/hooks/post-commit.
All edits idempotent: match aiboarding entries by command containing
.aiboarding/hooks/run-hook.cmd; never duplicate; leave non-aiboarding hooks alone.Ask the user to choose (default: archive):
AIBOARDING.md to docs/archive/AIBOARDING.md
unchanged. Git history preserves it either way; nothing at the root keeps stale
onboarding discoverable by tools.AIBOARDING.md in place and prepend a deprecation
banner via inject-fenced AIBOARDING.md deprecation <banner-file> pointing to
AGENTS.md. The drift hook keeps honoring the legacy layout only when
state.json is absent, so with both present the sidecar wins.
Never delete AIBOARDING.md outright unless the user explicitly asks.Before writing ANYTHING, present the full migration plan in one preview: every file to be created, modified (with the settings diff), moved, or deleted. One approval covers the whole batch; a rejection means nothing was touched.
Run create-agent-onboarding's Phase 7 validation gate, then audit-agent-onboarding
if available. Report the file-by-file outcome, and remind the user to commit the new
layout (the drift hook stays silent for onboarding-only commit ranges).