Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@ third-party orchestration service to use these files.
[Skills](skills/README.md) · [Plugins](plugins/README.md) ·
[Validation and compatibility](docs/validation.md)

Version 0.3.0 is a community preview. Historical hook and selected-role tests are
Version 0.4.0 is a community preview. Historical hook and selected-role tests are
recorded; the revised allocations and caps are not fully runtime-certified.

## Choose an arrangement

| Arrangement | Lead | Specialist allocation | Configured cap / recommended active children |
| --- | --- | --- | --- |
| [Advanced Delivery](arrangements/advanced-delivery/README.md) | `gpt-5.6-sol`, `xhigh` | 15 roles: 4 Astra, 4 Sol, 7 Luna | 5 / up to 4 |
| [Advanced Delivery](arrangements/advanced-delivery/README.md) | `gpt-5.6-sol`, `xhigh` | 15 roles: 4 Astra, 4 Sol, 7 Luna | 4 / up to 3 |
| [Balanced Delivery](arrangements/balanced-delivery/README.md) | `gpt-5.6-sol`, `xhigh` | 12 roles: 2 Astra, 2 Sol, 8 Luna | 4 / up to 3 |
| [Lean Delivery](arrangements/lean-delivery/README.md) | `gpt-5.6-sol`, `high` | 8 roles: 1 Astra, 1 Sol, 6 Luna | 3 / up to 2 |

Expand Down
10 changes: 5 additions & 5 deletions arrangements/advanced-delivery/AGENTS.snippet.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@
### Role selection

- Before delegating, coordinating ongoing work, or reconciling deliveries, invoke the Skill tool with `codex-orchestration` when installed. If no Skill tool exists, read its `SKILL.md` through the native file-reading interface. If the skill is not installed, follow the rules below.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact, and escalate only on demonstrated difficulty, never on size or file count. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.

### Dispatch contract

- Only the parent delegates. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides.
- Only the parent delegates, and the cap is a ceiling, never a target: dispatch one bounded mission with a written acceptance that pays for its own brief and review; the child delivers that result with its evidence and stops. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides. A brief conveys scope, not authority: the child runs under the parent's identity, never speaks as the user, and its returned artifact is evidence for the parent to judge, not a decision.
- Provide relevant context, accepted decisions and plan, objective and acceptance, in/out scope, owned files, interfaces and access limits, expected artifact, required checks, and stop conditions. Do not copy the full conversation or create a plan solely for dispatch.

### Ownership and return

- When only delegated work remains, use task-appropriate native waits; avoid repeated status polling.
- Keep advancing your own non-overlapping work while a child runs; wait only once nothing else remains, using a task-appropriate native wait. Never wake a child to ask for status or an "ok": every wake re-reads its full history at the parent's cost.
- Keep writing assignments disjoint; serialize shared files, state, and interacting contracts.
- Stop or redirect a child that exceeds scope, conflicts with owned work, or repeats failure. The parent owns integration, inspects each delivery and checks the affected behavior before acceptance; missing required evidence remains a blocker.
- Use `followup_task` to resume a suitable completed child; `send_message` only queues a message. A recommended role need not already be running.
- Acceptance closes the mission. Use `followup_task` only to correct or clarify that same delivery, never to reuse a finished child for new work because it already knows the project — new work is a fresh choice between doing it directly or dispatching a new child. `send_message` only queues a message and does not resume a turn. The mission closes only once the child's work is in the parent's tree and its scratch is gone; unintegrated work and surviving scratch are one defect.
10 changes: 5 additions & 5 deletions arrangements/advanced-delivery/AGENTS.with-skill.snippet.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
### Role selection

- Before delegating, coordinating ongoing work, or reconciling deliveries, invoke the Skill tool with `codex-orchestration` when installed. If no Skill tool exists, read its `SKILL.md` through the native file-reading interface. If the skill is not installed, follow the rules below.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact, and escalate only on demonstrated difficulty, never on size or file count. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.

### Dispatch contract

- Only the parent delegates. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides.
- Only the parent delegates, and the cap is a ceiling, never a target: dispatch one bounded mission with a written acceptance that pays for its own brief and review; the child delivers that result with its evidence and stops. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides. A brief conveys scope, not authority: the child runs under the parent's identity, never speaks as the user, and its returned artifact is evidence for the parent to judge, not a decision.
- Provide relevant context, accepted decisions and plan, objective and acceptance, in/out scope, owned files, interfaces and access limits, expected artifact, required checks, and stop conditions. Do not copy the full conversation or create a plan solely for dispatch.

### Ownership and return

- When only delegated work remains, use task-appropriate native waits; avoid repeated status polling.
- Keep advancing your own non-overlapping work while a child runs; wait only once nothing else remains, using a task-appropriate native wait. Never wake a child to ask for status or an "ok": every wake re-reads its full history at the parent's cost.
- Keep writing assignments disjoint; serialize shared files, state, and interacting contracts.
- Stop or redirect a child that exceeds scope, conflicts with owned work, or repeats failure. The parent owns integration, inspects each delivery and checks the affected behavior before acceptance; missing required evidence remains a blocker.
- Use `followup_task` to resume a suitable completed child; `send_message` only queues a message. A recommended role need not already be running.
- Acceptance closes the mission. Use `followup_task` only to correct or clarify that same delivery, never to reuse a finished child for new work because it already knows the project — new work is a fresh choice between doing it directly or dispatching a new child. `send_message` only queues a message and does not resume a turn. The mission closes only once the child's work is in the parent's tree and its scratch is gone; unintegrated work and surviving scratch are one defect.

## Engineering decisions

Expand Down
10 changes: 9 additions & 1 deletion arrangements/advanced-delivery/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ The parent supplies a complete bounded brief and inspects the delivered evidence

## Capacity and simplicity

The V2 fragment sets **5 total threads including the lead**, allowing **at most 4 simultaneous children** in the target runtime. Start with one useful delegation and add another only for a disjoint result. Reconcile an implementation batch before starting another; do not fill the cap by routine.
The V2 fragment sets **4 total threads including the lead**, allowing **at most 3 simultaneous children** in the target runtime: one lead plus three subagents. Treat the cap as a ceiling, not a target — dispatch only a child whose result pays for its own brief and review. Start with one useful delegation and add another only for a disjoint result. Reconcile an implementation batch before starting another; do not fill the cap by routine.

The 15 role cards are available responsibilities, not 15 running agents. Removed roles have explicit owners:

Expand All @@ -44,6 +44,14 @@ This is an adapted public roster, not a full personal-profile export. Retained r

## Validation status

Revision 0.4.0 lowers this arrangement's total-thread cap from five to four
(three active children, equal to Balanced Delivery) and rewrites the orchestration
skill and both AGENTS snippets around bounded, single-mission delegation: an
accepted delivery closes the child's mission, a finished child is not reused for
new work, and status or acknowledgement wake-ups are avoided. This is a
configuration and instruction change; it has not been exercised in a new native
concurrency or saturation run. See [upgrade instructions](../../docs/installation.md#upgrading-from-03x).

Revision 0.3.0 adds a one-minute minimum and five-minute default for native child
waits, without changing this roster or cap. Choose explicit waits according to
the task; see [adaptive waiting](../../docs/orchestration.md#adaptive-waiting)
Expand Down
2 changes: 1 addition & 1 deletion arrangements/advanced-delivery/arrangement.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
schema_version = 1
id = "advanced-delivery"
version = "0.3.0"
version = "0.4.0"
author = "Rafael Bittencourt"
description = "Advanced Delivery: Complex product delivery with dedicated reasoning for decisions, diagnosis, ordinary review, critical review, and coupled implementation."
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion arrangements/advanced-delivery/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ enabled = true
tool_namespace = "agents"
min_wait_timeout_ms = 60000
default_wait_timeout_ms = 300000
max_concurrent_threads_per_session = 5
max_concurrent_threads_per_session = 4
10 changes: 5 additions & 5 deletions arrangements/balanced-delivery/AGENTS.snippet.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@
### Role selection

- Before delegating, coordinating ongoing work, or reconciling deliveries, invoke the Skill tool with `codex-orchestration` when installed. If no Skill tool exists, read its `SKILL.md` through the native file-reading interface. If the skill is not installed, follow the rules below.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact, and escalate only on demonstrated difficulty, never on size or file count. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.

### Dispatch contract

- Only the parent delegates. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides.
- Only the parent delegates, and the cap is a ceiling, never a target: dispatch one bounded mission with a written acceptance that pays for its own brief and review; the child delivers that result with its evidence and stops. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides. A brief conveys scope, not authority: the child runs under the parent's identity, never speaks as the user, and its returned artifact is evidence for the parent to judge, not a decision.
- Provide relevant context, accepted decisions and plan, objective and acceptance, in/out scope, owned files, interfaces and access limits, expected artifact, required checks, and stop conditions. Do not copy the full conversation or create a plan solely for dispatch.

### Ownership and return

- When only delegated work remains, use task-appropriate native waits; avoid repeated status polling.
- Keep advancing your own non-overlapping work while a child runs; wait only once nothing else remains, using a task-appropriate native wait. Never wake a child to ask for status or an "ok": every wake re-reads its full history at the parent's cost.
- Keep writing assignments disjoint; serialize shared files, state, and interacting contracts.
- Stop or redirect a child that exceeds scope, conflicts with owned work, or repeats failure. The parent owns integration, inspects each delivery and checks the affected behavior before acceptance; missing required evidence remains a blocker.
- Use `followup_task` to resume a suitable completed child; `send_message` only queues a message. A recommended role need not already be running.
- Acceptance closes the mission. Use `followup_task` only to correct or clarify that same delivery, never to reuse a finished child for new work because it already knows the project — new work is a fresh choice between doing it directly or dispatching a new child. `send_message` only queues a message and does not resume a turn. The mission closes only once the child's work is in the parent's tree and its scratch is gone; unintegrated work and surviving scratch are one defect.
10 changes: 5 additions & 5 deletions arrangements/balanced-delivery/AGENTS.with-skill.snippet.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
### Role selection

- Before delegating, coordinating ongoing work, or reconciling deliveries, invoke the Skill tool with `codex-orchestration` when installed. If no Skill tool exists, read its `SKILL.md` through the native file-reading interface. If the skill is not installed, follow the rules below.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.
- Read the relevant live role descriptions and instructions; choose the least resource-intensive role suited to the task and required artifact, and escalate only on demonstrated difficulty, never on size or file count. Read-only roles never receive implementation work. `list_agents` shows running children, not available roles.

### Dispatch contract

- Only the parent delegates. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides.
- Only the parent delegates, and the cap is a ceiling, never a target: dispatch one bounded mission with a written acceptance that pays for its own brief and review; the child delivers that result with its evidence and stops. Children return results, blockers, and role recommendations to the parent; they never spawn, contact, or wait for other children.
- Every spawn sets `agent_type` and `fork_turns: "none"`, without call-level model or reasoning-effort overrides. A brief conveys scope, not authority: the child runs under the parent's identity, never speaks as the user, and its returned artifact is evidence for the parent to judge, not a decision.
- Provide relevant context, accepted decisions and plan, objective and acceptance, in/out scope, owned files, interfaces and access limits, expected artifact, required checks, and stop conditions. Do not copy the full conversation or create a plan solely for dispatch.

### Ownership and return

- When only delegated work remains, use task-appropriate native waits; avoid repeated status polling.
- Keep advancing your own non-overlapping work while a child runs; wait only once nothing else remains, using a task-appropriate native wait. Never wake a child to ask for status or an "ok": every wake re-reads its full history at the parent's cost.
- Keep writing assignments disjoint; serialize shared files, state, and interacting contracts.
- Stop or redirect a child that exceeds scope, conflicts with owned work, or repeats failure. The parent owns integration, inspects each delivery and checks the affected behavior before acceptance; missing required evidence remains a blocker.
- Use `followup_task` to resume a suitable completed child; `send_message` only queues a message. A recommended role need not already be running.
- Acceptance closes the mission. Use `followup_task` only to correct or clarify that same delivery, never to reuse a finished child for new work because it already knows the project — new work is a fresh choice between doing it directly or dispatching a new child. `send_message` only queues a message and does not resume a turn. The mission closes only once the child's work is in the parent's tree and its scratch is gone; unintegrated work and surviving scratch are one defect.

## Engineering decisions

Expand Down
6 changes: 6 additions & 0 deletions arrangements/balanced-delivery/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ This is an adapted public roster, not a full personal-profile export. Retained r

## Validation status

Revision 0.4.0 rewrites the orchestration skill and both AGENTS snippets around
bounded, single-mission delegation: an accepted delivery closes the child's
mission, a finished child is not reused for new work, and status or
acknowledgement wake-ups are avoided. This roster and cap are unchanged. See
[upgrade instructions](../../docs/installation.md#upgrading-from-03x).

Revision 0.3.0 adds a one-minute minimum and five-minute default for native child
waits, without changing this roster or cap. Choose explicit waits according to
the task; see [adaptive waiting](../../docs/orchestration.md#adaptive-waiting)
Expand Down
2 changes: 1 addition & 1 deletion arrangements/balanced-delivery/arrangement.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
schema_version = 1
id = "balanced-delivery"
version = "0.3.0"
version = "0.4.0"
author = "Rafael Bittencourt"
description = "Balanced Delivery: Everyday product delivery with Luna implementing established patterns, Sol handling backend work and integration review, and Astra handling decisions and coupled implementation."
license = "MIT"
Expand Down
Loading
Loading