| name | onboarding |
| description | Create developer onboarding guides, setup documentation, and knowledge base articles for software teams. Use this skill whenever someone asks to create onboarding docs, setup instructions, a getting started guide, team documentation, runbooks, or says things like "help new devs get started", "document our setup process", "write the onboarding guide", "create a runbook for X", or "how should we document this for the team". Also trigger when someone asks about reducing onboarding time, knowledge transfer, or team documentation strategy. |
| model | haiku |
Onboarding Guide Builder
Create onboarding documentation that gets a new developer productive in days, not weeks. Good onboarding docs are the highest-leverage documentation a team can write — they pay dividends on every hire for years.
Onboarding Workflow
Step 1: Prerequisites
Verify the new developer has the following installed and configured:
Required Tools
- Git: Version 2.30+ with SSH key configured for the repository host.
- Runtime: The project's language runtime at the version specified in
.tool-versions, .nvmrc, runtime.txt, or equivalent.
- Package manager: npm/yarn/pnpm (Node.js), pip/poetry (Python), bundler (Ruby), etc.
- Docker: Docker Desktop or Docker Engine with Compose for local service dependencies.
- IDE/Editor: Recommended IDE with project-specific extensions/plugins installed.
- Database client: CLI or GUI tool for the project's database.
Accounts and Access
Step 2: Repository Setup
git clone {repository-url}
cd {project-name}
{install-command}
cp .env.example .env
docker-compose up -d
{migration-command}
{seed-command}
{test-command}
{dev-command}
After setup, verify:
Step 3: Architecture Walkthrough
Present the high-level architecture to the new developer:
System Overview
- Draw or show the system architecture diagram.
- Explain each service/component and its responsibility.
- Identify the boundaries: what this service owns vs. what it depends on.
- Explain the data flow for a typical user request.
Project Structure
Walk through the directory structure:
src/
api/ # HTTP handlers, routes, middleware
services/ # Business logic layer
models/ # Data models and database entities
repositories/ # Data access layer
utils/ # Shared utilities
config/ # Application configuration
tests/
unit/ # Unit tests
integration/ # Integration tests
e2e/ # End-to-end tests
fixtures/ # Test data factories
docs/ # Project documentation
scripts/ # Development and deployment scripts
Explain the conventions:
- Where new features should be added.
- How layers communicate (controllers call services, services call repositories).
- How configuration is loaded and used.
- Where tests go and how they are organized.
Key Design Patterns
Walk through the 3-5 most important patterns used in the project:
- Authentication and authorization flow.
- Error handling pattern.
- Data validation approach.
- Async job processing (if applicable).
- Event-driven communication (if applicable).
Step 4: Development Workflow
Daily Workflow
- Pull latest changes from the main branch.
- Create a feature branch from main:
git checkout -b feature/{ticket-id}-{description}.
- Make changes, write tests, verify locally.
- Commit with descriptive messages (see commit conventions below).
- Push the branch and create a pull request.
- Address review feedback.
- Merge after approval.
Commit Message Convention
{type}({scope}): {description}
{optional body}
{optional footer}
Types: feat, fix, refactor, test, docs, chore, perf, ci
Examples:
feat(auth): add password reset flow
fix(orders): correct tax calculation for international orders
refactor(users): extract validation into middleware
Branch Naming
- Feature:
feature/{ticket-id}-{short-description}
- Bug fix:
fix/{ticket-id}-{short-description}
- Hotfix:
hotfix/{ticket-id}-{short-description}
Pull Request Process
- Fill out the PR template completely.
- Link the related ticket/issue.
- Add screenshots or recordings for UI changes.
- Request review from at least one team member.
- Address all review comments or discuss disagreements.
- Squash and merge after approval (or per team convention).
Step 5: Code Review Process
As a Reviewer
- Review within
{review-sla} of being requested. Fill this in from the team's actual
agreement — do not invent it. This plugin does not set your SLA, and neither CLAUDE.md nor
the std-git-workflow skill pins one; a number that appears only in an onboarding doc is a
number nobody agreed to, and a new developer has no way to tell the difference.
- Check for correctness, readability, test coverage, and adherence to conventions.
- Use the code-reviewer skill for systematic reviews.
- Be constructive — suggest alternatives, not just criticize.
- Approve when the code is good enough, not when it is perfect.
As an Author
- Keep PRs small and focused (under 400 lines of changes).
- Write a clear PR description explaining what and why.
- Self-review your PR before requesting review.
- Respond to all comments, even if just acknowledging.
Step 6: Testing Expectations
- Write tests for all new code.
- Run the full test suite before pushing.
- Tests must pass in CI before merge.
- Use the test-generator skill for guidance on test structure.
- Coverage target: 80% line coverage for new code.
Step 7: Deployment Process
- Staging deploys happen automatically on merge to main (or manually triggered).
- Production deploys are scheduled and coordinated with the team.
- Use the deploy skill for deployment procedures.
- Never deploy directly to production without the deployment checklist.
Step 8: Getting Help
- Code questions: Search the codebase, read tests for examples, ask on the team channel.
- Architecture questions: Check documentation in
docs/, ask the tech lead.
- Process questions: Refer to this onboarding guide and the dev-handbook.
- Blocked on access/tools: Contact the team lead immediately.
Step 9: Web Frontend Setup
Vite SPA Setup
cd web/
npm install
npm run dev
npm run test
npm run build
Next.js Setup
cd next/
npm install
npm run dev -- -p 3001
npm run test
npm run build
Web Project Structure Walkthrough
web/ # Vite SPA (React + React Router)
├── src/
│ ├── pages/ # One page per route (lazy-loaded)
│ ├── components/ # Shared UI components
│ ├── hooks/ # Custom hooks (business logic)
│ ├── api/ # TanStack Query hooks + axios client
│ ├── stores/ # Zustand stores (client-only state)
│ ├── domain/ # TypeScript domain types
│ ├── router/ # React Router configuration
│ └── i18n/ # Internationalization
next/ # Next.js App Router (SSR/SSG)
├── app/ # App Router pages and layouts
│ ├── layout.tsx # Root layout
│ ├── page.tsx # Home page (Server Component)
│ └── (dashboard)/ # Route group
├── src/
│ ├── actions/ # Server actions (mutations)
│ ├── components/ # Shared components
│ ├── hooks/ # Client-side hooks
│ └── api/ # Rails API client
├── middleware.ts # Auth, locale detection
Key Conventions for Web
- All frontends share the same Rails API — React Native, Vite SPA, and Next.js.
- TanStack Query for server data, Zustand for client-only state (same pattern across all frontends).
- Tailwind CSS for web styling (not used in React Native).
- Vitest for web testing (not Jest).
Step 10: Agent Teams
Agent teams let multiple Claude Code instances work in parallel on complex tasks. They are useful for full-stack feature development, comprehensive code reviews, and incident response.
Using Team Templates
Ask Claude to use a pre-defined team template:
"Use the Feature Team to build a user profile feature" — spawns architecture-advisor (lead), rails-architect, reactjs-dev, test-generator, security-auditor
"Use the Review Team to review this PR" — spawns code-reviewer (lead), security-auditor, clean-architecture, test-generator
"Use the Incident Team" — spawns incident-responder (lead), devops-engineer, rails-architect
"Use the Refactor Team to extract the payment module" — spawns architecture-advisor (lead), refactor-specialist, test-generator, code-reviewer
"Use the Infrastructure Team for the Terraform migration" — spawns devops-engineer (lead), security-auditor, architecture-advisor
Working with Teammates
- Each teammate works on a distinct set of files — no two teammates edit the same file
- Communicate via messages (the system handles delivery automatically)
- Check the task list (
TaskList) to see available work and progress
- Mark tasks completed when done — quality gate hooks will validate your work
Quality Gates
Two hooks enforce team quality automatically:
- TeammateIdle — checks that you produced actual deliverables (not just research)
- TaskCompleted — validates your work matches the task description and passes basic linting
When Teams Are Suggested
Claude will suggest a team when:
- The task spans 3+ layers (backend, frontend, tests, infrastructure)
- You ask to review or audit across multiple dimensions
- The work contains multiple independent deliverables
First Week Plan
| Day | Focus | Goal |
|---|
| Day 1 | Setup | Environment running, tests passing, architecture overview |
| Day 2 | Exploration | Read key modules, trace a request end-to-end, review recent PRs |
| Day 3 | First task | Pick a small bug fix or documentation improvement |
| Day 4 | First PR | Submit PR, go through the review process |
| Day 5 | Review | Review a teammate's PR, deeper dive into a module |
Deep guides (read on demand, do not preload)
- Tech-stack deep dive, code review process, testing strategy, environment variables, incident response, getting help →
references/dev-handbook.md