alec3318

spawn-agent

Spawn worker agents (Gemini CLI or Codex CLI) to keep main context clean. Use for implementation, codebase research, context gathering, or any scoped work that would pollute the orchestrator's context.

alec3318 1 Updated 2mo ago

Resources

8
GitHub

Install

npx skillscat add alec3318/spawn-agent

Install via the SkillsCat registry.

SKILL.md

Spawn Agent

Orchestration & Delegation pattern: The main agent acts as the orchestrator (plan, delegate, review). Worker agents (Gemini/Codex) execute specific tasks and report results.

When to Use

Use when:

  • Implementation task has a clear scope (fix bug, add function, refactor file)
  • You need to research/query the codebase without polluting the main context
  • The task is independent and doesn't need intermediate human review
  • You want to keep the main context clean for high-level reasoning

Do NOT use when:

  • Task requires interactive discussion with the user
  • Scope is too broad (refactoring an entire module)
  • Multiple files with complex inter-dependencies need coordination
  • Task needs browser interaction or external API calls

Choosing an Agent

Agent CLI Strengths Best for
Gemini gemini Fast, good at codebase understanding, reads project context Research, context gathering, quick implementations
Codex codex exec Strong reasoning, sandboxed execution, code review capability Complex implementation, refactoring, bug fixing

[!TIP]
Choose the agent based on the task — don't stick to one CLI. Each has its own strengths.

Delegation Protocol

Step 1: DEFINE — Clearly define the task

Before spawning, the orchestrator must determine:

  • Goal: What should the task achieve?
  • Scope: Which files/directories are involved?
  • Agent: Is Gemini or Codex more suitable?
  • Constraints: What must NOT be modified?
  • Expected output: What result is expected (code changes, summary, list)?

Step 2: COMPOSE — Write the prompt file using a template

Choose the appropriate template and fill it in. Save to .agent/spawn_agent_tasks/<name>.md.

[!NOTE]
Create the directory if it doesn't exist: mkdir -p .agent/spawn_agent_tasks
Add .agent/spawn_agent_tasks/ to .gitignore if you don't want to track task files.

Template Selection Guide

Task type Template Key sections
Complex implementation templates/implementation-task.md Architecture context, File Map, Step-by-step, Conventions, Acceptance criteria
Codebase research templates/research-task.md Where to look, Questions to answer, Output format
Bug fix templates/bugfix-task.md Bug description, Suspected location, Fix approach

[!IMPORTANT]
Headless worker = no Q&A. The worker agent cannot ask clarifying questions.
The more detailed the template, the more accurate the output. Each missing section = one point where the agent may go wrong.

Quick inline prompt (for simple tasks)

# Task: <short name>
## Goal: <one sentence describing the objective>
## Files: <files to modify>
## Constraints: DO NOT modify files outside <scope>
## When done: Summarize changes made and any issues found.

Step 3: SPAWN — Call the worker agent

# Gemini — implementation task
spawn-agent.sh --gemini --auto-edit --timeout 300 \
  -f .agent/spawn_agent_tasks/<name>.md

# Codex — implementation task
spawn-agent.sh --codex --auto-edit --timeout 300 \
  -f .agent/spawn_agent_tasks/<name>.md

# Gemini — research (yolo is fine for read-only research)
spawn-agent.sh --gemini --yolo --timeout 120 \
  -f .agent/spawn_agent_tasks/<name>.md

# Quick task — any agent
spawn-agent.sh --codex --yolo --timeout 60 \
  -p "Fix typo 'recieve' -> 'receive' in auth.service.ts"

Approval modes (mapped per agent):

Mode Flag Gemini Codex
Auto-edit --auto-edit auto_edit auto-edit
Full auto --yolo yolo full-auto
Safest --safe default suggest

Step 4: REVIEW — Read the output

Output is saved to .agent/spawn_agent_tasks/output-<timestamp>.log.

cat .agent/spawn_agent_tasks/output-*.log | tail -100

Verify:

  • Did the task achieve the goal?
  • Are there changes outside the defined scope?
  • Are there errors/warnings that need handling?

Step 5: REPORT — Summarize for the user

  • ✅ Success: summarize changes
  • ❌ Failure: root cause + next steps
  • ⚠️ Partial: what was completed, what still needs to be done

Anti-Patterns

Delegating too broadly: "Refactor the entire backend"
Specific scope: "Refactor auth.service.ts to extract token logic into token.service.ts"

No constraints: Agent may modify files outside scope
Set boundaries: "DO NOT modify files outside packages/backend/src/auth/"

Not reading output: Spawning and assuming success
Always review: Read output, verify changes, check errors

Delegation chain: Spawn A → output feeds spawn B → ...
Orchestrator controls flow: Read result A, decide next step, then spawn B if needed

Categories