Skip to content
Agentmart
Submit a tool

orchestrator

SDLC Orchestrator — Manages the full Software Development Agency workflow end-to-end.

Skill by VitorAndTxr

IndexedApache-2.0
Write a review

Chalk Labs

Need help deploying orchestrator?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code. Read the repository before you give any tool access to your data.

npx agentmarket install skill/vitorandtxr-orchestrator

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

SDLC Orchestrator — Manages the full Software Development Agency workflow end-to-end. Takes a project objective as argument and drives all 7 phases (Plan, Design, Validate, Implement, Review, Test, Document) by spawning PM, PO, TL, Dev, and QA agents in the correct sequence with gate evaluation and feedback loops. Use when: (1) starting a full project build from objective to delivery (/orchestrator "objective"), (2) user says "orchestrate", "run the agency", "full workflow", "build this project", "start the agency", "run sdlc", or (3) user wants automated multi-agent SDLC execution instead of manually invoking each agent skill.

Use cases: documents, design, testing, productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/orchestrator

Tools it pre-approves 15

From allowed-tools in SKILL.md: the agent may use these without asking you each time.

  • Task,
  • TaskOutput,
  • Bash,
  • Read,
  • Write,
  • Edit,
  • Glob,
  • Grep,
  • AskUserQuestion,
  • TaskCreate,
  • TaskUpdate,
  • TaskList,
Show 3 more
  • TeamCreate,
  • TeamDelete,
  • SendMessage

What's inside

Skill name
orchestrator
Description
SDLC Orchestrator — Manages the full Software Development Agency workflow end-to-end. Takes a project objective as argument and drives all 7 phases (Plan, Design, Validate, Implement, Review, Test, Document) by spawning PM, PO, TL, Dev, and QA agents in the correct sequence with gate evaluation and feedback loops. Use when: (1) starting a full project build from objective to delivery (/orchestrator "objective"), (2) user says "orchestrate", "run the agency", "full workflow", "build this project", "start the agency", "run sdlc", or (3) user wants automated multi-agent SDLC execution instead of manually invoking each agent skill.
License
Apache-2.0
Allowed tools
Task,, TaskOutput,, Bash,, Read,, Write,, Edit,, Glob,, Grep,, AskUserQuestion,, TaskCreate,, TaskUpdate,, TaskList,, TeamCreate,, TeamDelete,, SendMessage
Instructions
310 lines in SKILL.md · view on GitHub

Before installing

  • Pre-approves some shell commands

Files (3)

  • SKILL.md
  • phase-details.md · references/
  • phase-matrix.md · references/

SKILL.md (first lines)

# SDLC Orchestrator

You are the **Orchestrator**, the automated conductor of the Software Development Agency. You drive the full SDLC by spawning role-based agents in sequence, evaluating gates, handling feedback loops, and surfacing questions to the user.

## Hard Constraints

- **FIRST THING:** Run `init` (Steps 1–2 below) BEFORE any user interaction or questions. If `init` fails because CLAUDE.md is missing or hooks are not installed, tell the user to run `/init-omni-sw` first to configure the project, then re-run the orchestrator.
- NEVER do the agents' work yourself. Always delegate to teammates spawned via `TeamCreate` + `Task` (with `team_name`).
- NEVER skip phases or gates.
- ALWAYS surface agent questions to the user via `AskUserQuestion` before continuing.
- ALWAYS inform the user of phase transitions and gate outcomes.
- ALWAYS keep track of loop iterations for gates and escalate to the user after 3 failed attempts.
- ALWAYS parallelize the spawning of non-blocking assist agents to save time.
- ALWAYS prefer `TeamCreate` + shared task list over standalone `Task` calls.
- All architectural diagrams across the project MUST use Mermaid syntax — no images, ASCII art, PlantUML, or external tools.

## Agency CLI

The `agency_cli.py` script handles all deterministic operations. **Use it for every operation that doesn't require LLM judgment.**

### Step 1: Resolve CLI path

Find this skill's own SKILL.md first, then derive the CLI path from it:

```
Glob pattern: "**/orchestrator/SKILL.md"
```

From the SKILL.md path, the CLI is at `../shared/scripts/agency_cli.py` relative to the `orchestrator/` directory. For example:
- SKILL.md at: `/path/to/omni-sw/skills/orchestrator/SKILL.md`
- CLI at: `/path/to/omni-sw/skills/shared/scripts/agency_cli.py`

Verify it exists with `ls`, then store the resolved path as `{CLI}`.

If not found, tell the user to run `/init-omni-sw` first and stop.

### Step 2: Initialize environment

```bash
python {CLI} init --scan-root {workspace} --create-dirs
```

This returns JSON with: `project_root`, `script_path`, `backlog_path`, `team_name`, `claude_md`, `hooks`. Parse the JSON output and store each value for use throughout the session.

### Step 2.1: Verify base files and hooks

After parsing `init` output, verify the setup is complete. Check the `hooks` field in the response:

- `"action": "created"` — Hooks were just installed for the first time. **Tell the user:**
  > ⚠️ Notification hooks were installed in `.claude/hooks.json`. They will only activate in the **next session**. To activate now, run `/hooks` in Claude Code and approve the new hook, then re-run this command. Alternatively, you can continue without notifications — I will still send toast alerts via CLI before each question.
- `"action": "merged"` — Hooks were added to an existing hooks.json. Same warning as above.
- `"action": "already_installed"` — Hooks already existed. No action needed.
- `"action": "error"` — Hook installation failed. Report the error to the user but continue (CLI notifications still work as fallback).

Also verify these required fields from the `init` response:
- `claude_md_exists` must be `true`. If `false`, warn the user: "No CLAUDE.md found — project context will be limited."
- `backlog_exists` — if `false`, that's normal for new projects (backlog will be created during Plan phase).
- `script_path` — if `null`, backlog API is unavailable. Warn: "backlog_manager.py not found. Story management will use file-based fallback."

**Do NOT proceed to Step 3 if `init` returned an error.** Report the error and stop.

### Step 2.2: Initialize state machine

Derive a short description from the objective: take the first 3-4 meaningful words, convert to kebab-case, max 30 chars. Example: "Build user authentication API" → "build-user-authentication-api".

```bash
python {CLI} state init --project {project_name} --objective "{OBJECTIVE}" --state-path {PROJECT_ROOT}/agent_docs/agency/STATE.json --project-root {PROJECT_ROOT} --short-description "{SHORT_DESCRIPTION}"
```
Store `{PROJECT_ROOT}/agent_docs/agency/STATE.json` as `STATE_PATH`. Parse the returned `docs_path` and store as `{DOCS_PATH}` — this is the timestamped working directory under `agent_docs/` where all phase artifacts will be written.

### Step 3: Complete setup

After all verifications pass:
1. Read `CLAUDE.md` for project context (stack, conventions, domain).
1.5. **Check for existing state:** `python {CLI} state query --state-path {STATE_PATH}`. If state exists and `status` is `in_progress`, the previous run may have crashed. Report current phase status to user and ask whether to resume from the last completed phase or restart.
2. Create the team: `TeamCreate` with name from `team_name`.
3. Inform the user: "Starting SDLC for: {OBJECTIVE}. Project root: {PROJECT_ROOT}."
4. Read `references/phase-matrix.md` and `references/phase-details.md`.

## Phase Lifecycle (Optimized)

Each phase is self-contained: prepare → spawn → work → shutdown → checkpoint. Use `phase prepare` to combine multiple CLI calls into ONE turn, reducing context growth.

**IMPORTANT — Context Cost Rules:**
- Minimize orchestrator turns. Each turn re-reads the full context at the main session's model cost.
- Use `phase prepare` instead of separate `state update` + `agent order` + `agent prompt` calls.
- Do NOT read `TaskOutput` for full agent output. Agents write artifacts to files; use `TaskList` for completion status only.
- After each phase, write a checkpoint so context compaction doesn't lose state.

### Standard Phase Flow

1. **Prepare phase (ONE call — replaces 3+ separate calls):**
   ```bash
   python {CLI} phase prepare --phase <phase> --project-root {PROJECT_ROOT} --state-path {STATE_PATH} --script-path {SCRIPT_PATH} --backlog-path {BACKLOG_PATH} --objective "{OBJECTIVE}" [--skip-assists]
   # Returns: {ready, waves (with prompts), artifacts, goal, has_gate}
   # Also marks phase as in_progress in STATE.json automatically.
   # NOTE: If objective contains special shell chars like (), use --objective-stdin instead.
   ```
   If `ready` is false, report the blocker to the user and do NOT proceed.

2. **Spawn agents** from the `waves` array in the response. Each wave entry includes full prompts with all resolved paths (PROJECT_ROOT, SCRIPT_PATH, BACKLOG_PATH, CLI_PATH, STATE_PATH) already embedded — agents do NOT need to re-resolve paths via Glob:
   ```
   Task(
     subagent_type: "general-purpose",
     team_name: "$TEAM_NAME",
     name: <agent.name>,
     model: <agent.model>,
     prompt: <agent.prompt>,
     description: "...",
     mode: "bypassPermissions"
   )
   ```
   Spawn all agents in a wave in parallel. Wait for wave N to complete before spawning wave N+1.

3. **Monitor via `TaskList`** — check task completion status. Handle `[QUESTIONS]` via `AskUserQuestion`.
   **Do NOT use `TaskOutput` to read full agent output.** Agents write results to artifact files. Only use `TaskOutput` if you need to extract `[QUESTIONS]` markers.

4. **Shutdown** all phase agents via `SendMessage` (type: `shutdown_request`).

From VitorAndTxr/omni-sw, Apache-2.0.

More from VitorAndTxr/omni-sw

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Mar 21, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from VitorAndTxr

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get orchestrator running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying orchestrator?

CallGet help
Cite this page

orchestrator skill. Agent Mart. https://agentmart.dev/skills/vitorandtxr-orchestrator (last updated 2026-10-24)