feat(ultraplan-local)!: v2.4.0 — orchestrator agents as inline reference

Redefine research-orchestrator, planning-orchestrator, and
architect-orchestrator from "background executor" to "inline
reference documentation". The agent files remain as the canonical
workflow descriptions, but the /ultra* commands now execute the
phases directly in the main command context instead of spawning
these agents as sub-agents.

The /ultra* command markdowns are now the de-facto orchestrators.
Splitting work into a separate sub-agent was incompatible with the
harness's treatment of the Agent tool (not exposed to sub-agents).

BREAKING CHANGE: These agents are no longer invoked. Any external
integration that spawned them directly should now invoke the
corresponding /ultra* command instead.
This commit is contained in:
Kjell Tore Guttormsen 2026-04-19 21:24:45 +02:00
commit c8a6506384
3 changed files with 65 additions and 100 deletions

View file

@ -1,29 +1,14 @@
---
name: architect-orchestrator
description: |
Use this agent to run the full /ultra-cc-architect-local pipeline as a
background task. Receives a brief + research paths and produces an
architecture note that matches the task against available CC features,
with explicit coverage gaps.
<example>
Context: ultra-cc-architect default mode transitions to background
user: "/ultra-cc-architect-local --project .claude/projects/2026-04-18-jwt-auth"
assistant: "Inputs validated. Launching architect-orchestrator in background."
<commentary>
Phase 2 of ultra-cc-architect spawns this agent with the brief + research paths
to run Phases 37 autonomously.
</commentary>
</example>
<example>
Context: User wants to re-run architecture with updated research
user: "Re-run architecture after the new research brief was added"
assistant: "Launching architect-orchestrator with the updated project dir."
<commentary>
Re-run request triggers the orchestrator fresh against the current project state.
</commentary>
</example>
Inline reference (v2.4.0) — documents the architect workflow that
/ultra-cc-architect-local executes in main context. This file is NOT
spawned as a sub-agent anymore. The Claude Code harness does not expose
the Agent tool to sub-agents, so an orchestrator launched with
run_in_background: true cannot spawn the documented swarm (feature-matcher,
gap-identifier, architecture-critic) and would degrade to single-context
reasoning. The /ultra-cc-architect-local command now orchestrates the
phases below directly in the main session.
model: opus
color: cyan
tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash"]
@ -35,13 +20,21 @@ tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash"]
Orchestrator Phase 3 = Command Phase 5 (Synthesis — write overview.md)
Orchestrator Phase 4 = Command Phase 6 (Adversarial review)
Orchestrator Phase 5 = Command Phase 7 (Present + gaps.md + stats)
This agent handles Phases 37 when mode = default (background). -->
As of v2.4.0, /ultra-cc-architect-local runs these phases inline in
main context instead of spawning this agent. Keep this file as the
canonical reference for what those phases do. -->
You are the orchestrator for `/ultra-cc-architect-local`. You receive
a task brief, zero or more research briefs, and the skill catalog
path. You produce an architecture note that matches the task against
available Claude Code features, with explicit coverage gaps. You run
as a background agent while the user continues other work.
This document is the canonical workflow description for the ultra-cc-architect
pipeline as of v2.4.0. The `/ultra-cc-architect-local` command reads it as
reference and executes the phases below **inline in the main command
context**. It is no longer spawned as a background sub-agent — that mode
silently lost the Agent tool and degraded the swarm to single-context
reasoning.
The role of the "orchestrator" now belongs to the command markdown itself:
the main Opus session launches feature-matcher / gap-identifier /
architecture-critic via the Agent tool, collects their results, synthesizes
the architecture note, and writes overview.md + gaps.md.
## Input

View file

@ -1,36 +1,14 @@
---
name: planning-orchestrator
description: |
Use this agent to run the full ultraplan planning pipeline (exploration, research,
synthesis, planning, adversarial review) as a background task. Receives a task
brief and produces a complete implementation plan.
<example>
Context: Ultraplan default mode transitions to background after brief is available
user: "/ultraplan-local --project .claude/projects/2026-04-18-websocket-notifications"
assistant: "Brief loaded. Launching planning-orchestrator in background."
<commentary>
Phase 3 of ultraplan spawns this agent with the brief file to run Phases 4-10 in background.
</commentary>
</example>
<example>
Context: User plans from a brief produced by /ultrabrief-local
user: "/ultraplan-local --brief .claude/projects/2026-04-18-jwt-auth/brief.md"
assistant: "Brief loaded. Launching planning-orchestrator in background."
<commentary>
Brief-driven mode spawns this agent immediately with the provided brief.
</commentary>
</example>
<example>
Context: User wants to re-run planning with an updated brief
user: "Re-plan with the updated brief"
assistant: "I'll launch the planning-orchestrator with the updated brief file."
<commentary>
Re-planning request triggers the orchestrator with the revised brief.
</commentary>
</example>
Inline reference (v2.4.0) — documents the planning workflow that
/ultraplan-local executes in main context. This file is NOT spawned as a
sub-agent anymore. The Claude Code harness does not expose the Agent tool
to sub-agents, so an orchestrator launched with run_in_background: true
cannot spawn the exploration swarm (architecture-mapper, task-finder,
plan-critic, etc.) and would degrade to single-context reasoning. The
/ultraplan-local command now orchestrates the phases below directly in the
main session.
model: opus
color: cyan
tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash", "TaskCreate", "TaskUpdate"]
@ -45,11 +23,19 @@ tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash", "TaskCreate",
Orchestrator Phase 5 = Command Phase 8 (Deep planning)
Orchestrator Phase 6 = Command Phase 9 (Adversarial review)
Orchestrator Phase 7 = Command Phase 10 (Completion)
This agent handles Phases 410 when mode = default (background). -->
As of v2.4.0, /ultraplan-local runs these phases inline in main context
instead of spawning this agent. Keep this file as the canonical
reference for what those phases do. -->
You are the ultraplan planning orchestrator. You receive a task brief and produce
a complete, adversarially-reviewed implementation plan. You run as a background
agent while the user continues other work.
This document is the canonical workflow description for the ultraplan
pipeline as of v2.4.0. The `/ultraplan-local` command reads it as reference
and executes the phases below **inline in the main command context**. It is
no longer spawned as a background sub-agent — that mode silently lost the
Agent tool and degraded the exploration swarm to single-context reasoning.
The role of the "orchestrator" now belongs to the command markdown itself:
the main Opus session launches exploration and review agents via the Agent
tool, collects their results, synthesizes the plan, and writes it to disk.
## Input

View file

@ -1,36 +1,13 @@
---
name: research-orchestrator
description: |
Use this agent to run the full ultraresearch pipeline (parallel local + external
research, triangulation, synthesis) as a background task. Receives a research
question and produces a structured research brief.
<example>
Context: Ultraresearch default mode transitions to background after interview
user: "/ultraresearch-local Should we use Redis or Memcached for session caching?"
assistant: "Interview complete. Launching research-orchestrator in background."
<commentary>
Phase 3 of ultraresearch spawns this agent with the research question to run Phases 4-8 in background.
</commentary>
</example>
<example>
Context: Ultraresearch foreground mode runs the full pipeline inline
user: "/ultraresearch-local --fg What authentication approach fits our architecture?"
assistant: "Running research pipeline in foreground."
<commentary>
Foreground mode runs this agent's logic inline rather than in background.
</commentary>
</example>
<example>
Context: Ultraresearch with local-only mode
user: "/ultraresearch-local --local How is error handling structured in this codebase?"
assistant: "Launching research-orchestrator with local-only agents."
<commentary>
Local mode skips external agents and gemini bridge, only launches codebase analysis agents.
</commentary>
</example>
Inline reference (v2.4.0) — documents the research workflow that
/ultraresearch-local executes in main context. This file is NOT spawned as
a sub-agent anymore. The Claude Code harness does not expose the Agent tool
to sub-agents, so an orchestrator launched with run_in_background: true
cannot spawn the research swarm and would degrade to single-context
reasoning. The /ultraresearch-local command now orchestrates the phases
below directly in the main session.
model: opus
color: cyan
tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash"]
@ -43,11 +20,20 @@ tools: ["Agent", "Read", "Glob", "Grep", "Write", "Edit", "Bash"]
Orchestrator Phase 4 = Command Phase 7 (Triangulation)
Orchestrator Phase 5 = Command Phase 8 (Synthesis + write brief)
Orchestrator Phase 6 = Command Phase 9 (Completion)
This agent handles Phases 49 when mode = default or foreground. -->
As of v2.4.0, /ultraresearch-local runs these phases inline in main
context instead of spawning this agent. Keep this file as the canonical
reference for what those phases do. -->
You are the ultraresearch research orchestrator. You receive a research question and
produce a structured research brief that combines local codebase analysis with external
knowledge. You run as a background agent while the user continues other work.
This document is the canonical workflow description for the ultraresearch
pipeline as of v2.4.0. The `/ultraresearch-local` command reads it as
reference and executes the phases below **inline in the main command
context**. It is no longer spawned as a background sub-agent — that mode
silently lost the Agent tool and degraded the swarm to single-context
reasoning.
The role of the "orchestrator" now belongs to the command markdown itself:
the main Opus session launches local + external agents via the Agent tool,
collects their results, triangulates, and writes the research brief.
## Design principle: Context Engineering