Skip to content

feat: per-role agent assignment (Design, QA, Architect, etc.) + bug: OpenCode worker delegates to Codex exhausting quota #6917

Open

Description

@cuongdq88

Feature Request: Per-Role Agent Assignment

Currently AO assigns a single worker agent per session. In real workflows, different roles need different specialized agents:

Role Ideal Agent Why
Design opencode-v2 / kilocode / agy UI/UX, pixel art, mockup-to-prototype skills
QA opencode-v2 / codex Test generation, e2e, contract testing
Architect opencode-v2 / claude-code System design, ADR, tech decisions
Implementation opencode-v2 / kilocode Feature coding, refactoring
Code Review codex / copilot PR review, security audit

Proposed: Allow project/session config to map roles → agents:

# .ao/config.yaml or project config
agents:
  design: opencode-v2
  qa: opencode-v2
  architect: opencode-v2
  implementation: kilocode
  review: codex

Orchestrator would spawn the correct agent when a task with that role is queued.


Bug: OpenCode Worker Delegates to Codex (Quota Exhaustion)

Environment:

  • AO version: 0.14.2
  • Project: registered with ao project add
  • Worker agent configured: opencode-v2 (via --worker-agent opencode-v2 or project config)
  • Actual behavior: Tasks delegated to Codex, hitting 5-hour rate limit

Expected: When worker agent is opencode-v2, the spawned session should run OpenCode, not Codex.

Observed:

  • ao agent ls shows opencode-v2: authorized
  • Spawn command: ao spawn --project test --worker-agent opencode-v2 --name "feat-xyz"
  • Session starts but actual work done by Codex (visible in token usage / model name)
  • Codex free tier quota exhausted in < 1 hour

Suspected causes:

  1. Harness resolution falling back to Codex when OpenCode server not ready
  2. --worker-agent ignored, defaulting to project orchestrator.agent or global default
  3. Agent switch happening mid-session without user consent

Logs to check: ao hooks output, session agent_switches table, daemon logs.


Impact

  • Cannot use OpenCode for implementation (main use case)
  • Forced to wait 5 hours for Codex quota reset
  • No way to assign specialized agents per role

Suggested Priority

  1. Bug fix (P0): Ensure --worker-agent / project config is respected
  2. Per-role agent config (P1): Enable multi-agent workflows
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

needs-triageNew item has not been fully classified.

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions