solo-setup
npx skills add https://github.com/fortunto2/solo-factory --skill solo-setup
Agent 安装分布
Skill 文档
/setup
Auto-generate Conductor artifacts from existing PRD, CLAUDE.md, and stack template. Zero interactive questions â all answers are extracted from project data that already exists after /scaffold.
Replaces the old /conductor:setup (which asks 19 questions with answers already available).
When to use
After /scaffold creates a project, before /plan. The generated artifacts make /build work.
MCP Tools (use if available)
project_info(name)â get project details, detected stackkb_search(query)â search for dev principles, manifest, stack templatescodegraph_query(query)â check project dependencies in code graph
If MCP tools are not available, fall back to reading local files only.
Steps
-
Detect project root:
- If
$ARGUMENTSis provided, use~/startups/active/<name>as project root. - Otherwise use current working directory.
- Verify the directory exists and has
CLAUDE.md. - If not found, ask via AskUserQuestion.
- If
-
Check if already initialized:
- If
conductor/setup_state.jsonexists with"status": "complete", warn and ask whether to regenerate.
- If
-
Read project data (parallel â all reads at once):
CLAUDE.mdâ tech stack, architecture, commands, Do/Don’tdocs/prd.mdâ problem, users, solution, features, metrics, pricingpackage.jsonorpyproject.tomlâ exact dependency versionsMakefileâ available commands- Linter configs (
.eslintrc*,eslint.config.*,.swiftlint.yml,ruff.toml,detekt.yml) - Formatter configs (
.prettierrc*)
-
Read ecosystem sources (optional â enhances quality):
- Detect stack name from CLAUDE.md (look for “Stack:” or the stack name in tech section).
- If MCP
kb_searchavailable: search for stack template and dev-principles. - Otherwise: look for
1-methodology/stacks/<stack>.yamland1-methodology/dev-principles.mdrelative to solopreneur root (if accessible). - If neither available: derive all info from CLAUDE.md + package manifest (sufficient).
-
Detect languages from package manifest:
package.jsonâ TypeScriptpyproject.tomlâ Python*.xcodeprojorPackage.swiftâ Swiftbuild.gradle.ktsâ Kotlin- Multiple languages possible (e.g., TypeScript + Python monorepo).
-
Create
conductor/directory:mkdir -p conductor/code_styleguides -
Generate
conductor/product.md: Extract fromdocs/prd.md:# Product Definition â {ProjectName} ## Project Name {name} ## One-Liner {from PRD summary} ## Problem {from PRD problem section} ## Target Users {from PRD target users} ## Solution {from PRD solution/features} ## Key Differentiators {from PRD differentiators or competitive advantage} ## Success Metrics {from PRD metrics table} ## Pricing {from PRD pricing, if present} -
Generate
conductor/product-guidelines.md: Extract from CLAUDE.md Do/Don’t sections:# Product Guidelines â {ProjectName} ## Voice and Tone {infer from PRD/CLAUDE.md, default: "Friendly and approachable"} ## Design Principles 1. **Privacy** â user data stays local where possible 2. **Simplicity** â zero learning curve 3. **Speed** â responsive UI, fast processing {add more from CLAUDE.md Do/Don't} ## UI Principles {from CLAUDE.md architecture/design sections} -
Generate
conductor/tech-stack.md: Extract from CLAUDE.md tech stack +package.json/pyproject.tomlfor exact versions:# Tech Stack â {ProjectName} ## Languages | Language | Version | Role | |----------|---------|------| {detected languages with versions} ## Dependencies | Technology | Version | Purpose | |-----------|---------|---------| {from package manifest â key deps with versions} ## Dev Dependencies | Technology | Version | Purpose | |-----------|---------|---------| {dev deps} ## Infrastructure {from stack YAML or CLAUDE.md deploy/infra section} ## Package Manager {from CLAUDE.md or package manifest} -
Generate
conductor/workflow.md: Based on dev-principles (from MCP/KB or built-in defaults):# Workflow â {ProjectName} ## TDD Policy **Moderate** â Tests encouraged but not blocking. Write tests for: - Business logic and validation - API route handlers - Complex algorithms Tests optional for: UI components, one-off scripts, prototypes. ## Test Framework {from package manifest devDeps: vitest/jest/pytest/xctest} ## Commit Strategy **Conventional Commits** Format: `<type>(<scope>): <description>` Types: feat, fix, refactor, test, docs, chore, perf, style ## Code Review **Optional / self-review OK.** ## Verification Checkpoints **After each phase completion:** 1. Run tests â all pass 2. Run linter â no errors 3. Run build â successful (if applicable) 4. Manual smoke test 5. Mark phase as verified ## Task Lifecycle pending â in_progress â completed ## Branch Strategy - `main` â production-ready - `feat/<track-id>-<short-name>` â feature branches - `fix/<description>` â hotfixes -
Generate
conductor/tracks.md:# Tracks Registry | Status | Track ID | Title | Created | Updated | | ------ | -------- | ----- | ------- | ------- | <!-- Tracks registered by /plan --> -
Generate
conductor/code_styleguides/<lang>.mdfor each detected language: Read linter configs from the project and generate style guide. Include:- Formatting rules (from prettier/ruff/swiftlint config)
- Naming conventions (from stack conventions)
- Import ordering
- Key patterns (from CLAUDE.md architecture section)
-
Generate
conductor/index.md:# Conductor â {ProjectName} Navigation hub for project context. ## Core - [Product Definition](./product.md) - [Product Guidelines](./product-guidelines.md) - [Tech Stack](./tech-stack.md) - [Workflow](./workflow.md) ## Planning - [Tracks](./tracks.md) ## Code Style Guides {list detected language guides} -
Generate
conductor/setup_state.json:{ "status": "complete", "project_type": "brownfield", "current_section": "done", "current_question": 0, "completed_sections": ["product", "guidelines", "tech_stack", "workflow", "styleguides", "generation"], "answers": { "project_name": "{name}", "description": "{one-liner from PRD}", "problem": "{problem from PRD}", "target_users": "{users from PRD}", "key_goals": ["{goals from PRD}"], "voice_tone": "Friendly and approachable", "design_principles": ["Privacy", "Simplicity", "Speed"], "tech_stack_confirmed": true, "tdd_strictness": "moderate", "commit_strategy": "conventional", "code_review": "optional", "verification": "phase", "style_guides": ["{detected languages}"] }, "files_created": ["{list of created files}"], "started_at": "{ISO timestamp}", "last_updated": "{ISO timestamp}" } -
Show summary and suggest next step:
Conductor initialized for {ProjectName}! Created: conductor/product.md â from docs/prd.md conductor/product-guidelines.md â from CLAUDE.md conductor/tech-stack.md â from CLAUDE.md + package manifest conductor/workflow.md â TDD moderate, conventional commits conductor/tracks.md â empty registry conductor/code_styleguides/ â {languages} conductor/index.md â navigation hub conductor/setup_state.json â complete Next: /plan "Your first feature"
Compatibility Notes
setup_state.jsonmust have"status": "complete"â/buildchecks this.- All file formats match what
/buildreads (product.md, tech-stack.md, workflow.md, tracks.md). - Track format uses
## Phase N:and- [ ] Task N.Y:markers that implement.md parses. conductor/tracks/{id}/directories are created by/plan, not here.