shipshitdev

project-init-orchestrator

4
0
# Install this skill:
npx skills add shipshitdev/library --skill "project-init-orchestrator"

Install specific skill from multi-skill repository

# Description

Orchestrates complete project initialization by coordinating agent-folder-init, linter-formatter-init, husky-test-coverage, and other setup skills. Use this skill when starting a new project that needs full AI-first development infrastructure with code quality enforcement.

# SKILL.md


name: project-init-orchestrator
description: Orchestrates complete project initialization by coordinating agent-folder-init, linter-formatter-init, husky-test-coverage, and other setup skills. Use this skill when starting a new project that needs full AI-first development infrastructure with code quality enforcement.


Project Init Orchestrator

Overview

This skill orchestrates multiple initialization skills to set up a complete, production-ready project environment. Instead of manually invoking each skill, this orchestrator coordinates them in the correct sequence with proper dependencies.

When to Use This Skill

This skill activates automatically when users:

  • Start a new project from scratch
  • Want full project setup with one command
  • Need AI-first development infrastructure + code quality tools
  • Say "initialize project", "set up new project", "bootstrap project"
  • Want consistent setup across multiple projects

Skills Orchestrated

Order Skill Purpose Required
1 agent-folder-init AI documentation & standards Yes
2 linter-formatter-init ESLint + Prettier + pre-commit Yes
3 husky-test-coverage Test coverage enforcement Optional
4 project-scaffold Backend/Frontend/Mobile scaffolding Optional

Orchestration Flow

┌─────────────────────────────────────────────────────────────┐
│              PROJECT INIT ORCHESTRATOR                       │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 1: GATHER CONTEXT                                    │
│  • Project name and path                                    │
│  • Tech stack (Next.js, NestJS, Expo, Plasmo)              │
│  • Package manager preference (bun, pnpm, npm)             │
│  • Test coverage threshold (default: 80%)                  │
│  • Additional scaffolding needs                            │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 2: AGENT FOLDER INIT                                 │
│  • Create .agent/ directory structure                       │
│  • Set up SESSIONS/, TASKS/, SYSTEM/ folders               │
│  • Generate coding standards and rules                      │
│  • Copy agent configs (.claude/, .codex/, .cursor/)        │
│  ──────────────────────────────────────────────────────────│
│  Invocation:                                                │
│  python3 ~/.claude/skills/agent-folder-init/               │
│          agent-folder-init/scripts/scaffold.py             │
│          --root /path/to/project                           │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 3: LINTER FORMATTER INIT                             │
│  • Detect project tech stack                                │
│  • Install ESLint + Prettier (or Biome)                    │
│  • Configure framework-specific rules                       │
│  • Set up lint-staged for pre-commit                       │
│  • Create .vscode/settings.json                            │
│  ──────────────────────────────────────────────────────────│
│  Invocation:                                                │
│  Use linter-formatter-init skill guidance                   │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 4: HUSKY TEST COVERAGE (if tests exist)             │
│  • Detect test runner (Jest, Vitest, Mocha)                │
│  • Configure coverage thresholds                            │
│  • Add pre-commit hook for test coverage                   │
│  ──────────────────────────────────────────────────────────│
│  Invocation:                                                │
│  Use husky-test-coverage skill guidance                     │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 5: PROJECT SCAFFOLD (optional)                       │
│  • Scaffold additional components if requested:            │
│    - Backend (NestJS)                                       │
│    - Frontend (Next.js)                                     │
│    - Mobile (Expo)                                          │
│    - Extension (Plasmo)                                     │
│  ──────────────────────────────────────────────────────────│
│  Invocation:                                                │
│  python3 ~/.claude/skills/project-scaffold/                │
│          project-scaffold/scripts/scaffold.py              │
└─────────────────────────────────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│  PHASE 6: VERIFICATION                                      │
│  • Verify all configurations created                        │
│  • Run lint check (should pass)                            │
│  • Confirm git hooks installed                             │
│  • Generate setup summary                                   │
└─────────────────────────────────────────────────────────────┘

Usage

When user says "initialize my project" or "set up new project":

1. Ask for project context:
   - Project path (default: current directory)
   - Tech stack (Next.js, NestJS, Node.js, etc.)
   - Package manager (bun, pnpm, npm)
   - Test coverage threshold (default: 80%)
   - Need additional scaffolding? (backend, frontend, mobile, extension)

2. Execute phases in order:
   Phase 2 → Phase 3 → Phase 4 → Phase 5 (if needed) → Phase 6

Manual Orchestration

If you need to run phases individually:

Phase 2: Agent Folder Init

python3 ~/.claude/skills/agent-folder-init/agent-folder-init/scripts/scaffold.py --root /path/to/project

Phase 3: Linter Formatter
Follow the linter-formatter-init skill to:

  • Install dependencies based on detected stack
  • Configure ESLint rules
  • Set up Prettier
  • Configure lint-staged

Phase 4: Test Coverage
Follow the husky-test-coverage skill to:

  • Detect test runner
  • Configure coverage thresholds
  • Add pre-commit hook

Phase 5: Project Scaffold (optional)

python3 ~/.claude/skills/project-scaffold/project-scaffold/scripts/scaffold.py

Configuration Presets

Minimal (AI docs + linting)

Phases: 2, 3
Output:
├── .agent/
├── .eslintrc.js
├── .prettierrc
├── .husky/pre-commit (lint-staged)
└── .vscode/settings.json

Standard (+ test coverage)

Phases: 2, 3, 4
Output:
├── .agent/
├── .eslintrc.js
├── .prettierrc
├── .husky/pre-commit (lint-staged + tests)
├── jest.config.js (coverage thresholds)
└── .vscode/settings.json

Full Stack (+ scaffolding)

Phases: 2, 3, 4, 5
Output:
├── .agent/
├── apps/
│   ├── web/          (Next.js)
│   ├── api/          (NestJS)
│   ├── mobile/       (Expo)
│   └── extension/    (Plasmo)
├── packages/
│   └── shared/
├── .eslintrc.js
├── .prettierrc
├── .husky/pre-commit
└── .vscode/settings.json

Generated Structure

After full orchestration, your project will have:

project-root/
├── .agent/                          # AI-first documentation
│   ├── SESSIONS/                    # Daily session logs
│   ├── TASKS/                       # Task tracking
│   │   └── INBOX.md
│   ├── SYSTEM/                      # Architecture docs
│   │   ├── ARCHITECTURE.md
│   │   └── RULES.md
│   └── README.md
│
├── .claude/                         # Claude Code configs
│   ├── commands/
│   ├── rules/
│   └── skills/
│
├── .husky/                          # Git hooks
│   └── pre-commit                   # Runs lint-staged + tests
│
├── .vscode/                         # Editor settings
│   └── settings.json                # Format on save
│
├── .eslintrc.js                     # ESLint configuration
├── .prettierrc                      # Prettier configuration
├── .lintstagedrc                    # Lint-staged configuration
│
└── [app directories if scaffolded]

Best Practices

Sequencing

  • Always run agent-folder-init FIRST (establishes standards)
  • Run linter-formatter-init BEFORE husky-test-coverage (both use Husky)
  • Run project-scaffold LAST (depends on base setup)

Customization

  • Each phase can be skipped if already configured
  • Phases are idempotent (safe to re-run)
  • Configuration can be customized after orchestration

Verification Checklist

After orchestration, verify:

  • [ ] .agent/ folder exists with proper structure
  • [ ] npm run lint or bun lint works
  • [ ] npm run format or bun format works
  • [ ] Git commit triggers pre-commit hooks
  • [ ] Tests run on commit (if Phase 4 enabled)

Example Interaction

User: "Set up my new project at ~/projects/my-saas"

Orchestrator Response:

I'll initialize your project with full AI-first infrastructure.

Let me gather some context:
1. Tech stack: [Next.js / NestJS / Node.js / Other]
2. Package manager: [bun / pnpm / npm]
3. Test coverage threshold: [80% default]
4. Need scaffolding? [backend / frontend / mobile / extension]

[After user responds]

Starting orchestration...

✓ Phase 2: Agent Folder Init
  - Created .agent/ with 13 files
  - Copied agent configs (.claude/, .codex/, .cursor/)

✓ Phase 3: Linter Formatter Init
  - Detected: Next.js + TypeScript
  - Installed: eslint, prettier, lint-staged
  - Created: .eslintrc.js, .prettierrc, .lintstagedrc

✓ Phase 4: Husky Test Coverage
  - Detected: Jest
  - Set threshold: 80%
  - Added pre-commit hook

✓ Phase 6: Verification
  - All configs created ✓
  - Lint check passed ✓
  - Git hooks installed ✓

Project initialized successfully!

Troubleshooting

Phase fails to complete

  • Check if dependencies are installed (node, python3)
  • Verify write permissions to project directory
  • Check if conflicting configs exist

Linting errors after setup

  • Run npm run lint:fix to auto-fix
  • Check .eslintrc.js matches your stack
  • Verify TypeScript config if using TS

Pre-commit hook not running

  • Run npx husky install manually
  • Check .husky/pre-commit exists and is executable
  • Verify prepare script in package.json

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.