agentleFS
gannonhgannonh/kata-code/.agents/skills/astra-orchestrator/SKILL.md

astra-orchestrator

Skill1 starsChanged 40 days agoMITView on GitHub

Orchestrate complex Codex coding work for the Pro profile with GPT-6 Astra at medium reasoning as planner/integrator, Luna subagents for exploration, implementation, testing, and research, and an Astra reviewer. Use for multi-file features, debugging across components, repo-wide changes, parallelizable workstreams, or whenever the user asks to delegate or use subagents. Do not use for trivial one-file edits or simple questions.

The file

Show its rules and text

We split this skill into the rules it gives an agent

52 rules. About 0 are common, 46 are distinctive, and 6 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈46

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 6

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the root agent as the high-quality orchestrator.

    line 12
  2. Distinctive:

    Use Luna for all routine subagent execution.

    line 25
  3. Distinctive:

    Do not override a Luna subagent to a more expensive model unless the user explicitly asks for escalation or a Luna worker reports that the …

    line 31
  4. Distinctive:

    Before doing substantive repository work, classify the task as either:

    line 37
  5. Distinctive:

    Use root-only only when the task is genuinely small, localized, and does not materially benefit from independent exploration, …

    line 42
  6. Very specific:

    When a task qualifies for delegation, the root MUST call spawn_agent before performing the delegated work itself.

    line 56
  7. Distinctive:

    Do not merely describe, simulate, or internally reason about delegation.

    line 58
  8. Very specific:

    If spawn_agent is unavailable or fails, explicitly report that failure.

    line 62
  9. Distinctive:

    Do not silently fall back to doing required delegated work in the root thread.

    line 64
  10. Distinctive:

    Do not create subagents solely to satisfy this rule when the task is genuinely root-only.

    line 68
  11. Distinctive:

    When spawning agents, use these models by default:

    line 98
  12. Distinctive:

    wait for required agents before final synthesis

    line 115
  13. Distinctive:

    Do not silently substitute the root agent for a required Luna worker.

    line 117
  14. Very specific:

    Do not spawn Astra workers except for the reviewer role unless:

    line 119
  15. Distinctive:

    Every delegated task should include:

    line 131
  16. Distinctive:

    Prefer narrow tasks that can finish independently.

    line 140
  17. Distinctive:

    Run independent tasks in parallel.

    line 205
  18. Distinctive:

    When two or more delegated tasks are independent, spawn all of them before waiting for any one of them.

    line 207
  19. Distinctive:

    wait for all three

    line 214
  20. Distinctive:

    Do not do this:

    line 217
  21. Distinctive:

    Do not send multiple workers to edit the same files unless the root explicitly coordinates ownership.

    line 244
  22. Distinctive:

    Prefer one writer per file or subsystem.

    line 246
  23. Distinctive:

    wait for exploration results

    line 255
  24. Distinctive:

    Do not spawn every role mechanically.

    line 266
  25. Distinctive:

    Use only the roles that materially improve the task.

    line 268
  26. Distinctive:

    use Astra reviewer for high-risk or non-obvious fixes

    line 284
  27. Distinctive:

    Do not let multiple workers independently attempt competing fixes unless the root intentionally requests alternative approaches.

    line 286
  28. Distinctive:

    When current or version-specific external information matters:

    line 292
  29. Distinctive:

    Do not mix speculative external claims into implementation decisions without verification.

    line 299
  30. Distinctive:

    Use Luna for routine subagent execution.

    line 305
  31. Distinctive:

    Keep the root context focused on:

    line 307
  32. Distinctive:

    Do not paste large raw logs or entire files back into the root when a concise evidence summary is enough.

    line 316
  33. Distinctive:

    Avoid returning large amounts of irrelevant raw output.

    line 327
  34. Distinctive:

    If a subagent fails:

    line 354
  35. Distinctive:

    do not silently ignore the failed delegation

    line 358
  36. Distinctive:

    do not claim the delegated work completed successfully

    line 359
  37. Very specific:

    If spawn_agent itself fails, explicitly note the failure.

    line 361
  38. Distinctive:

    If a required worker fails repeatedly, the root may continue directly when reasonable, but should record that the fallback occurred.

    line 363
  39. Distinctive:

    Before producing the final answer for a delegated task, confirm that:

    line 369
  40. Distinctive:

    every required subagent was actually spawned

    line 371
  41. Distinctive:

    every required subagent either completed or explicitly failed

    line 372
  42. Distinctive:

    no required agent is still running

    line 376
  43. Distinctive:

    Do not finish while required subagents are still running.

    line 378
  44. Very specific:

    Do not claim delegation occurred unless spawn_agent was actually called successfully.

    line 380
  45. Distinctive:

    Before claiming completion, the root should:

    line 386
  46. Distinctive:

    check material reviewer findings

    line 390
  47. Distinctive:

    run or confirm the highest-value tests

    line 391
  48. Distinctive:

    verify that delegated results were integrated correctly

    line 392
  49. Distinctive:

    Do not narrate every subagent action unless the user asks for detailed orchestration visibility.

    line 408
  50. Distinctive:

    When useful, briefly mention which agents contributed.

    line 417
  51. Distinctive:

    If the user explicitly asks to see delegation, report:

    line 419
  52. Very specific:

    Do not claim a Luna agent was used unless the trace contains a successful spawn_agent call using gpt-5.6-luna.

    line 426

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Astra Orchestrator — Pro Profile

The user's explicit instructions take precedence over this skill.

Goal

Use the root agent as the high-quality orchestrator.

Delegate bounded execution work to specialized subagents, then have the root integrate, verify, and present the final result.

The expected default topology is:

  • root: GPT-6 Astra at medium reasoning
  • explorer: GPT-5.6 Luna at max reasoning
  • worker: GPT-5.6 Luna at max reasoning
  • tester: GPT-5.6 Luna at max reasoning
  • reviewer: GPT-6 Astra at low reasoning
  • researcher: GPT-5.6 Luna at max reasoning

Use Luna for all routine subagent execution.

This is a requirement, not a preference.

The root and reviewer use Astra; routine execution subagents use Luna.

Do not override a Luna subagent to a more expensive model unless the user explicitly asks for escalation or a Luna worker reports that the task requires higher-level reasoning.


Delegation gate

Before doing substantive repository work, classify the task as either:

  • root-only
  • delegated

Use root-only only when the task is genuinely small, localized, and does not materially benefit from independent exploration, implementation, testing, research, or review.

The task MUST be delegated when at least one of the following is true:

  • the task spans multiple files, modules, services, or components
  • there are two or more independent workstreams
  • repository exploration is needed before implementation
  • implementation and verification benefit from separate context
  • debugging requires tracing across components
  • multiple modules or services need inspection
  • external or version-specific facts need verification
  • an independent post-change review is materially useful
  • the user explicitly asks for delegation, parallelism, agents, or subagents

When a task qualifies for delegation, the root MUST call spawn_agent before performing the delegated work itself.

Do not merely describe, simulate, or internally reason about delegation.

Actual subagents must be spawned.

If spawn_agent is unavailable or fails, explicitly report that failure.

Do not silently fall back to doing required delegated work in the root thread.

For every delegated task, spawn at least one subagent.

Do not create subagents solely to satisfy this rule when the task is genuinely root-only.


Root-agent responsibilities

The root agent owns:

  1. understanding the user's actual goal
  2. choosing the architecture and implementation direction
  3. decomposing the task
  4. deciding which tasks can run in parallel
  5. spawning the appropriate subagents
  6. giving each subagent a bounded contract
  7. resolving conflicting subagent findings
  8. integrating changes
  9. reviewing the final diff
  10. running or coordinating final verification
  11. presenting the final result to the user

Subagents provide evidence and bounded execution.

They do not own the overall direction.

The root must not offload architectural ownership to a subagent.


Spawn policy

When spawning agents, use these models by default:

  • explorer: gpt-5.6-luna at max reasoning
  • worker: gpt-5.6-luna at max reasoning
  • tester: gpt-5.6-luna at max reasoning
  • researcher: gpt-5.6-luna at max reasoning
  • reviewer: gpt-6-astra at low reasoning

The root keeps the Pro profile configuration from .codex/config.toml: GPT-6 Astra at medium reasoning. The role files in .codex/agents/ explicitly set Luna reasoning to max and reviewer reasoning to low. Preserve those efforts when spawning agents unless the user requests a change. Do not change the root model from within a session.

For every delegated task:

  1. call spawn_agent
  2. give the agent a descriptive task name using underscores
  3. explicitly specify the intended model
  4. give the subagent a bounded delegation contract
  5. retain the returned task name or identifier
  6. wait for required agents before final synthesis

Do not silently substitute the root agent for a required Luna worker.

Do not spawn Astra workers except for the reviewer role unless:

  • the user explicitly requests Astra
  • Luna reports a genuinely difficult reasoning blocker
  • the root determines that a high-risk architectural or security review needs Astra

Routine execution should remain on Luna.


Delegation contract

Every delegated task should include:

  • Objective: one concrete outcome
  • Scope: exact files, module, subsystem, or question when known
  • Context: only the information needed to succeed
  • Constraints: what must not change
  • Deliverable: what the subagent must return or implement
  • Acceptance criteria: how success will be checked

Prefer narrow tasks that can finish independently.

Bad:

Fix the backend.

Good:

Trace where POST /invoices validates currency. Return the responsible files, validation path, and existing tests. Do not edit files.

For implementation tasks, explicitly state file ownership when possible.

For exploration tasks, tell the agent not to edit files.

For review tasks, tell the agent to report findings rather than silently modify unrelated code.


Role selection

Use explorer for:

  • repository mapping
  • tracing execution or data flow
  • locating symbols and tests
  • dependency inspection
  • configuration inspection
  • identifying implementation boundaries

Use worker for:

  • bounded implementation
  • small refactors with explicit scope
  • targeted fixes
  • adding requested code
  • modifying clearly owned files

Use tester for:

  • reproduction
  • targeted test execution
  • validation
  • regression checks
  • adding tests when requested or clearly required by the task

Use reviewer for:

  • independent post-change review
  • correctness checks
  • security review
  • regression analysis
  • missing-test analysis
  • architectural consistency checks

Use researcher for:

  • current API or framework behavior
  • dependency or version questions
  • primary documentation verification
  • external compatibility questions

Parallelism

Run independent tasks in parallel.

When two or more delegated tasks are independent, spawn all of them before waiting for any one of them.

Good parallel set:

  1. spawn backend explorer
  2. spawn frontend explorer
  3. spawn API researcher
  4. wait for all three
  5. synthesize findings

Do not do this:

  1. spawn backend explorer
  2. wait
  3. spawn frontend explorer
  4. wait
  5. spawn researcher
  6. wait

unless later tasks genuinely depend on earlier results.

Good parallel examples:

  • explorer maps backend path
  • explorer maps frontend path
  • researcher verifies external API behavior

Serialize dependent work:

  1. explore
  2. decide architecture
  3. implement
  4. test
  5. review
  6. fix material findings
  7. final verification

Do not send multiple workers to edit the same files unless the root explicitly coordinates ownership.

Prefer one writer per file or subsystem.


Default coding workflow

For non-trivial implementation tasks, prefer this sequence:

  1. spawn one or more Luna explorers if repository understanding is needed
  2. wait for exploration results
  3. root decides implementation direction
  4. spawn Luna worker or workers with bounded ownership
  5. wait for implementation
  6. spawn Luna tester
  7. wait for validation
  8. spawn Astra reviewer when an independent review is materially useful
  9. resolve material findings
  10. run final verification
  11. present the result

Do not spawn every role mechanically.

Use only the roles that materially improve the task.

However, once the delegation gate is satisfied, at least one real subagent must be spawned.


Debugging workflow

For cross-component bugs:

  1. spawn explorers for independent suspected areas
  2. reproduce the issue when possible
  3. collect evidence before selecting a fix
  4. root determines the likely root cause
  5. assign a bounded Luna worker to implement the fix
  6. assign Luna tester to reproduce the original failure and validate the fix
  7. use Astra reviewer for high-risk or non-obvious fixes

Do not let multiple workers independently attempt competing fixes unless the root intentionally requests alternative approaches.


Research workflow

When current or version-specific external information matters:

  1. spawn a Luna researcher
  2. require primary or authoritative sources when possible
  3. return concise findings and compatibility implications
  4. let the root decide how those findings affect implementation

Do not mix speculative external claims into implementation decisions without verification.


Cost and context discipline

Use Luna for routine subagent execution.

Keep the root context focused on:

  • architectural decisions
  • summarized evidence
  • important diffs
  • test results
  • reviewer findings
  • unresolved risks

Do not paste large raw logs or entire files back into the root when a concise evidence summary is enough.

Subagents should return:

  • conclusions
  • relevant file paths
  • important line or symbol references
  • commands run
  • test results
  • risks or blockers

Avoid returning large amounts of irrelevant raw output.


Escalation behavior

A subagent should report back instead of expanding scope when it encounters:

  • an architectural decision
  • a breaking API or schema change
  • a new dependency
  • a security-sensitive design choice
  • unclear requirements with materially different outcomes
  • unexpected changes outside its assigned scope
  • changes that affect another worker's ownership
  • a blocker that requires substantially broader reasoning

The root decides what to do next.

Luna should not independently escalate itself to a more expensive model.

The root owns model escalation decisions.


Failure handling

If a subagent fails:

  1. inspect the failure reason
  2. decide whether the task should be retried, narrowed, reassigned, or handled by the root
  3. do not silently ignore the failed delegation
  4. do not claim the delegated work completed successfully

If spawn_agent itself fails, explicitly note the failure.

If a required worker fails repeatedly, the root may continue directly when reasonable, but should record that the fallback occurred.


Delegated-task completion gate

Before producing the final answer for a delegated task, confirm that:

  • every required subagent was actually spawned
  • every required subagent either completed or explicitly failed
  • material findings were integrated
  • conflicting findings were resolved
  • required verification was performed
  • no required agent is still running

Do not finish while required subagents are still running.

Do not claim delegation occurred unless spawn_agent was actually called successfully.


Final verification

Before claiming completion, the root should:

  1. inspect the final diff
  2. confirm the requested behavior is actually implemented
  3. check material reviewer findings
  4. run or confirm the highest-value tests
  5. verify that delegated results were integrated correctly
  6. state any validation that could not be performed

For implementation tasks, prefer checking:

  • syntax or type checks
  • targeted unit tests
  • integration tests where relevant
  • build success where relevant
  • the original reproduction path
  • final diff for unintended changes

User-facing behavior

Do not narrate every subagent action unless the user asks for detailed orchestration visibility.

The final answer should focus on:

  • what changed
  • what was verified
  • important findings
  • remaining risks or limitations

When useful, briefly mention which agents contributed.

If the user explicitly asks to see delegation, report:

  • subagent name
  • model
  • assigned task
  • completion status

Do not claim a Luna agent was used unless the trace contains a successful spawn_agent call using gpt-5.6-luna.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.