| name | project-orchestrator |
| description | Guide any software project from an idea or existing codebase to an approved specification, governed implementation, verification, and handoff. Use for creating, extending, migrating, refactoring, or taking over mini programs, web apps, mobile or desktop apps, APIs, backend services, automations, and other software; for both 0-to-1 projects and 1-to-100 existing or legacy projects. Trigger when a user says they have an idea, wants to build or change a product, asks to plan before coding, needs project rules or architecture, wants an existing repository audited, or wants guided, assisted, or automatic project execution with reusable preferences. |
Project Orchestrator
Turn natural-language intent into an approved project contract, then keep implementation inside that contract.
Non-negotiable rules
- Do not start implementation before the user explicitly approves execution.
- Ask one decision question at a time in guided or assisted discovery. Do not send a questionnaire wall.
- Reuse information the user already supplied. Never ask the same question twice unless the answer conflicts or materially changed.
- Audit an existing project before proposing a new structure. Preserve uncommitted work and established patterns.
- Make decisions visible in repository-owned documents. Do not leave critical rules only in chat history.
- Use one primary UI component system and shared design tokens when a UI exists.
- Test and self-check every implementation milestone against the approved rules before reporting completion.
- Never store a durable preference without user confirmation. Never mix one client or project with another.
- Require separate approval for production deployment, payment, destructive data changes, external messages, permission changes, and credential handling, even in automatic mode.
- Apply this priority when rules conflict: current user instruction > project rules > client rules > confirmed user preferences > agent defaults.
Start by locating the project state
Determine whether this is:
- a new project with no existing implementation;
- an existing project receiving a feature or redesign;
- a legacy project being repaired, migrated, or refactored;
- a continuation with an existing project contract and state.
For an existing or continuing project:
- Read repository instructions such as
AGENTS.md, CLAUDE.md, GEMINI.md, .github/copilot-instructions.md, and equivalent platform files.
- Read
PROJECT_STATE.md, DEVELOPMENT_RULES.md, DECISIONS.md, and every specification they index.
- Inspect relevant code, tests, Git status, dependencies, and recent history without modifying them.
- Classify affected existing work as keep, repair, replace, or confirm.
- Report contradictions or missing state before continuing.
Read references/discovery.md whenever starting, resuming, or materially replanning a project.
Select an operating mode per phase
Use assisted mode by default unless the user chose otherwise:
- Guided: ask through decisions one at a time.
- Assisted: recommend low-risk defaults and ask only high-impact or uncertain questions.
- Automatic: infer from confirmed rules, complete the phase, and submit the result for review.
Do not treat automatic mode as blanket authorization. Read references/memory-automation.md when selecting modes, reusing preferences, working with clients, or proposing memory.
Run the project workflow
1. Define the outcome
Clarify the users, problem, primary scenario, business outcome, success metrics, deadline, budget, platforms, constraints, compliance needs, and non-goals.
Prioritize questions by decision impact. Ask the question that would most change scope, architecture, cost, risk, or user flow next.
2. Shape the product
Define roles, primary flow, feature priority, data objects, edge cases, MVP boundary, acceptance criteria, and later scope.
When more than one approach is viable:
- Present two or three concrete options.
- State the important trade-offs.
- Recommend one and explain why it best fits the known constraints.
- Ask the user to decide only when the choice is material.
3. Establish design and technical rules
For UI projects, decide in this order:
visual direction → primary palette → component system → interaction → design tokens
Use reference screenshots for layout, hierarchy, and design reasoning. Keep project colors, typography, spacing, radii, and component themes authoritative unless the user approves a change.
For every project, define stack versions, runtime, directory boundaries, modules, interfaces, data, security, configuration, secrets, errors, observability, testing, release, and rollback in proportion to project risk.
Read references/design-architecture.md when a project has UI, architecture, data, integration, security, or delivery decisions.
4. Materialize the project contract
Choose a pack profile:
- Minimal for small, low-risk work:
PROJECT_BRIEF.md, DEVELOPMENT_RULES.md, IMPLEMENTATION_PLAN.md, DECISIONS.md, PROJECT_STATE.md.
- Standard for products or multi-milestone work: add
PRODUCT_SPEC.md, ARCHITECTURE.md, and AUTOMATION_PROFILE.md.
- Add
DESIGN_SPEC.md whenever the project has a user interface.
Generate a pack without overwriting existing files:
python <skill-dir>/scripts/init_project_pack.py <project-dir> --profile standard --ui
Use the templates under assets/templates/. Adapt their language and depth to the project. Merge documents for genuinely small work only when the merged document retains decisions, acceptance criteria, execution approval, and current state.
Index the project documents from the platform entry file so future agents read them before work.
5. Review before execution
Before requesting approval:
- Summarize the proposed outcome and scope.
- List assumptions, open decisions, risks, and rejected alternatives.
- Confirm the specification and implementation plan agree.
- Validate the pack:
python <skill-dir>/scripts/validate_project_pack.py <project-dir> --profile standard --ui
- Ask the user explicitly whether to approve execution.
Record the result in PROJECT_STATE.md as Execution Approved: yes or no. Do not interpret praise, silence, or approval of one design section as approval to implement the whole project.
6. Implement under governance
After explicit approval, read references/execution.md and execute one milestone at a time:
read contract → implement → test → self-check → update state and decisions → report
Do not silently expand scope. Record a material deviation in DECISIONS.md, explain its impact, and obtain approval when it changes outcome, cost, schedule, architecture, risk, or acceptance criteria.
7. Verify and hand off
Verify the delivered behavior against success metrics and acceptance criteria. Produce release evidence, rollback readiness, unresolved issues, maintenance notes, and a retrospective.
Propose remembering a preference only when it appears stable and reusable. State its exact scope and wait for confirmation before saving it.
Milestone self-check
Before reporting a milestone complete, confirm:
- files follow the approved directory map;
- repeated display or business patterns were evaluated for reuse after their second occurrence;
- dependencies and UI components follow the chosen system;
- UI values come from tokens or documented exceptions;
- security, error, loading, empty, permission, and recovery paths are covered as required;
- tests and acceptance criteria pass with fresh evidence;
DECISIONS.md and PROJECT_STATE.md reflect the actual result;
- no external or destructive action exceeded the approved authority.
Fix drift before reporting completion. If the contract itself is wrong, stop and revise it with the user instead of working around it.
Communication protocol
- Match the user’s language.
- Lead with the current outcome or decision.
- Keep discovery to one question per turn unless the user explicitly requests batch automation.
- Distinguish confirmed facts, assumptions, recommendations, and unresolved choices.
- Explain why a question matters when its impact is not obvious.
- In automatic phases, provide a concise decision summary and surface only material exceptions.
- At handoff, report what changed, how it was verified, remaining risks, and the next action.
Resources
- references/discovery.md: adaptive discovery and existing-project audit.
- references/design-architecture.md: design, tokens, architecture, quality, and delivery decisions.
- references/memory-automation.md: stage automation and scoped memory.
- references/execution.md: governed implementation, verification, release, and handoff.
assets/templates/: specification pack templates intended to be copied and completed.
scripts/init_project_pack.py: deterministic pack creation without overwrites.
scripts/validate_project_pack.py: deterministic completeness and placeholder validation.