pipeline-onboard

New project onboarding pipeline: tech-stack (profile) → CLAUDE.md setup → memory init → skill-routing.md check. Brings a new or inherited project into the agency in one command. Trigger when: starting

SKILL.md

GitHub

Pipeline: Onboard

Bring a project into this system. One command, four stages.

Anti-redundancy: This pipeline calls tech-stack (profiler mode) in Stage 1. Do NOT add a separate /tech-stack call after running this pipeline.


Inputs

Required:

  • Project slug: the short name used in /pd-spawn, /recall, medium-term.md
  • Project path: absolute path to the project root (e.g. ~/projects/my-app)

Optional:

  • PD needed: yes if this project needs a PD registered in medium-term.md
  • Description: one-line description for medium-term.md

Stage 1 — Tech Stack Profile (tech-stack profiler)

Invoke /tech-stack in profiler mode:

  • Project: {project-path}
  • Output: ~/.claude/projects/{slug}/memory/tech-profile.md

This scans package.json, CLAUDE.md, docker-compose.yml, deployment configs, and source structure. Output is a structured tech-profile.md.


Stage 2 — CLAUDE.md Completeness Check

Read {project-path}/CLAUDE.md (if it exists). Verify it has:

Required field Check
Project overview (what it is) present / missing
Dev server command present / missing
Test command present / missing
Build command present / missing
Deploy command present / missing
Directory structure present / missing
Key conventions present / missing

For each missing field:

  1. Infer from tech-profile.md (package.json scripts, etc.)
  2. Add it to CLAUDE.md if confident
  3. Leave a # TODO: verify comment if uncertain — never invent commands

If no CLAUDE.md exists: create one at {project-path}/CLAUDE.md with all detected fields pre-filled from tech-profile.md. Include a header:

# CLAUDE.md — {project-name}
# Auto-generated by /pipeline-onboard on {date}. Verify all commands before use.

Stage 3 — Memory Init

Create the standard memory structure at ~/.claude/projects/{slug}/memory/:

memory/
  heartbeat.md          — session state, phase, blockers
  decisions.md          — locked decisions
  next-session.md       — startup briefing for PD
  tasks/
    ongoing/            — active tasks
    completed/          — finished tasks
    revisions/          — revision requests
  inter-spawn-tasks/
    incoming/           — tasks from other PDs
    completed/          — processed tasks
    index.md            — SSOT for inter-spawn state
  sessions/             — session logs (YYYY-MM-DD.md)
  lessons/              — stack-specific lessons
  qa/                   — QA reports and screenshots
  agents/               — PD + Coord scratch files
    coords/
    executors/
  brand-guidelines.md   — brand reference (stub if unknown)
  tech-profile.md       — from Stage 1

For any file that already exists: skip (do not overwrite).

Write heartbeat.md:

# {slug} Heartbeat

## Phase Status
Phase: ONBOARDING
Next: First PD session — read next-session.md

## Blockers
none

## Session End — {date}
### Completed This Session
- Project onboarded via /pipeline-onboard

### In Progress
- none

### Top 3 Priorities
1. Run first PD session to define project roadmap
2. Verify CLAUDE.md commands are correct
3. Set up any missing environment variables

Write next-session.md:

# {slug}
Phase: ONBOARDED — ready for first PD session
Next: Run /pd-spawn {slug} to start project work, or /recall {slug} to review setup
Blockers: none
Decisions: none
Mid-flight: none
Delegated: none
Last saved: {date}

Write inter-spawn-tasks/index.md:

# Inter-Spawn Tasks — {slug}

## Active Summary
_(no active inter-spawn tasks)_

Stage 4 — Skill Routing Check

Read ~/.claude/memory/skill-routing.md.

From tech-profile.md, identify the relevant tech domains:

  • If Next.js detected: note pipeline-feature, pipeline-deploy, pipeline-content are relevant
  • If Python detected: note that different pipeline-deploy targets apply
  • If mobile (React Native / Flutter): note design-review pipeline differences

Print a brief "relevant skills for this stack" summary:

SKILL ROUTING CHECK — {slug}
Stack: {language} + {framework} + {deployment}
Relevant pipelines: pipeline-feature, pipeline-deploy, pipeline-content
Key anti-redundancy rules:
  - Use autoplan only (not autoplan + plan-ceo-review separately)
  - Use pipeline-deploy only (not security-critique + canary alongside it)
  - Quality gate: content-critique → content-polish (not atomics)
Full rules: ~/.claude/memory/skill-routing.md

Stage 5 — Register in medium-term.md (optional)

If PD needed = yes:

Read ~/.claude/memory/medium-term.md. In the Active Projects table, add:

| {slug} | {description} | {project-path} | ACTIVE |

If the project is already in the table: skip.


Completion Report

PIPELINE-ONBOARD COMPLETE — {slug}

Stage 1 — Tech Profile:    ~/.claude/projects/{slug}/memory/tech-profile.md
Stage 2 — CLAUDE.md:       {project-path}/CLAUDE.md ({N fields verified, M added})
Stage 3 — Memory:          ~/.claude/projects/{slug}/memory/ ({N dirs created, M skipped)
Stage 4 — Skill Routing:   {N relevant rules identified}
Stage 5 — medium-term.md:  {added / skipped / not requested}

Next steps:
1. Verify commands in {project-path}/CLAUDE.md
2. Run: /pd-spawn {slug}  (or /recall {slug} to review without spawning)