jaan-init

SKILL.md

jaan-init

Activate jaan-to for the current project.

Context Files

  • ${CLAUDE_PLUGIN_ROOT}/scripts/bootstrap.sh - Bootstrap script that creates directories and seeds files
  • $JAAN_LEARN_DIR/jaan-to-jaan-init.learn.md - Past lessons (loaded in Pre-Execution)
  • ${CLAUDE_PLUGIN_ROOT}/docs/extending/language-protocol.md - Language resolution protocol

Input

Arguments: $ARGUMENTS

No arguments required. This skill initializes jaan-to in the current project directory.


Pre-Execution Protocol

MANDATORY — Read and execute ALL steps in: ${CLAUDE_PLUGIN_ROOT}/docs/extending/pre-execution-protocol.md Skill name: jaan-init Execute: Step 0 (Init Guard) → A (Load Lessons) → B (Resolve Template) → C (Offer Template Seeding)

Language Settings

Read and apply language protocol: ${CLAUDE_PLUGIN_ROOT}/docs/extending/language-protocol.md Override field for this skill: language_jaan-init


PHASE 1: Analysis (Read-Only)

Step 1: Check Current State

Check if jaan-to/ directory already exists in the project root.

If jaan-to/ exists: Tell the user: "jaan-to is already initialized for this project. Bootstrap runs automatically on each session." Stop here — do not proceed.

If jaan-to/ does NOT exist: Continue to Step 2.

Step 2: Explain What Will Be Created

Show the user what initialization will create:

jaan-to/
  config/settings.yaml    — Project configuration
  context/                 — Project context files (tech.md, team.md, etc.)
  templates/               — Custom template overrides (initially empty; read from plugin at runtime)
  outputs/                 — Generated outputs from skills
  learn/                   — Project-specific lessons (initially empty; created via /jaan-to:learn-add)
  docs/                    — Reference docs (STYLE.md, create-skill.md)

Also mention: jaan-to/ will be added to .gitignore.


HARD STOP - Human Review Gate

Ask the user:

Initialize jaan-to for this project?

This will create the jaan-to/ directory with config, context, templates,
outputs, learn, and docs subdirectories.

Proceed? [y/n]

Do NOT proceed without explicit approval.


PHASE 2: Generation (Write Phase)

Step 3: Run Bootstrap

Execute the bootstrap script to create directories and seed all files:

${CLAUDE_PLUGIN_ROOT}/scripts/bootstrap.sh

Note: The bootstrap script creates the jaan-to/ directory and all subdirectories internally. It handles:

  1. Creating all subdirectories (outputs, learn, context, templates, config, docs)
  2. Copying seed context files (tech.md, team.md, integrations.md, etc.)
  3. Copying reference docs
  4. Initializing settings.yaml
  5. Adding jaan-to/ to .gitignore

Templates and learn files are loaded from the plugin at runtime (lazy loading). Customize templates by copying them to jaan-to/templates/. Add project lessons via /jaan-to:learn-add.

Step 4: Report Result

Show the user the bootstrap output and summarize:

jaan-to initialized successfully.

Next steps:
- Edit jaan-to/context/tech.md with your project's tech stack
- Run /jaan-to:detect-pack for a full project analysis
- Run any skill: /jaan-to:pm-prd-write "feature name"

Step 5: Detect UI Stack

Check the project root for frontend indicators:

  • package.json containing react, vue, or svelte in dependencies/devDependencies
  • components/ or src/components/ directory
  • .storybook/ directory (Storybook installed)
  • components.json (shadcn/ui configured)

If any frontend indicator found, append to the Step 4 output:

Frontend stack detected. Consider seeding `jaan-to/context/design.md`
for design system context.

For enhanced frontend skills, configure Storybook MCP, shadcn MCP,
and Playwright MCP.

Available frontend skills:
  /jaan-to:frontend-design
  /jaan-to:frontend-scaffold
  /jaan-to:frontend-story-generate
  /jaan-to:frontend-visual-verify
  /jaan-to:frontend-component-fix

If no frontend indicator found, skip silently.

Step 6: Capture Feedback

Ask the user:

Have feedback to improve future initializations?
Use: /jaan-to:learn-add "jaan-init" "lesson"

Skill Alignment

  • Two-phase workflow with HARD STOP for human approval
  • Single source of truth (no duplication)
  • Plugin-internal automation
  • Maintains human control over changes

Definition of Done

  • jaan-to/ directory exists with subdirectories: outputs/, learn/, context/, templates/, config/, docs/
  • jaan-to/config/settings.yaml exists
  • Context seed files copied to jaan-to/context/
  • .gitignore contains jaan-to/ entry
  • User informed of next steps
  • User has approved final result

Error Handling

Permission Error

"Could not create jaan-to/ directory. Check file permissions for the project root."

Bootstrap Script Missing

"Bootstrap script not found at ${CLAUDE_PLUGIN_ROOT}/scripts/bootstrap.sh. Plugin may be corrupted — try reinstalling."


Trust Rules

  1. NEVER create directories without user confirmation
  2. ALWAYS show what will be created before proceeding
  3. ALWAYS check if already initialized before acting
Weekly Installs
8
Repository
parhumm/jaan-to
GitHub Stars
9
First Seen
Feb 23, 2026
Installed on
amp8
github-copilot8
codex8
kimi-cli8
gemini-cli8
cursor8