Skip to content

feat: expose team specialists as top-level agents#20

Merged
ashpreetbedi merged 2 commits intomainfrom
feat/expose-subagents
Apr 16, 2026
Merged

feat: expose team specialists as top-level agents#20
ashpreetbedi merged 2 commits intomainfrom
feat/expose-subagents

Conversation

@Mustafa-Esoofally
Copy link
Copy Markdown
Contributor

@Mustafa-Esoofally Mustafa-Esoofally commented Apr 15, 2026

Summary

  • AgentOS previously only received teams=[coda], so the 5 specialists (Explorer, Researcher, Coder, Planner, Triager) were reachable only via team delegation and didn't appear in the AgentOS sidebar.
  • Imports them from coda.agents.* and passes them directly to AgentOS(..., agents=[...]) alongside the existing teams=[coda].
  • Each specialist stays as a member of the coda team, so delegation flows and share_member_interactions continue to work unchanged — they just become individually addressable as well.

Test plan

  • Verified /config response on a local AgentOS boot (uvicorn app.main:app --port 8001) returns all 5 specialists under "agents" and coda still listed under "teams":
    ```
    "agents": [
    { "id": "explorer", "name": "Explorer", "db_id": "coda-db" },
    { "id": "researcher", "name": "Researcher", "db_id": "coda-db" },
    { "id": "coder", "name": "Coder", "db_id": "coda-db" },
    { "id": "planner", "name": "Planner", "db_id": "coda-db" },
    { "id": "triager", "name": "Triager", "db_id": "coda-db" }
    ]
    ```
  • Slack interface still loads (the existing interfaces=[Slack(team=coda, ...)] wiring is untouched).
  • After deploy: refresh os.agno.com and confirm the 5 specialists appear under AGENTS in the sidebar alongside the existing `coda` team entry.
image

Notes / Caveats

  • `researcher` is `Optional[Agent]` in `coda/agents/researcher.py` — only constructed when `PARALLEL_API_KEY` is set. Railway already has this key, so prod is fine. If the key is ever removed, startup will `AttributeError` on `researcher.db` because `_initialize_agents` doesn't null-check. Kept the array plain (no filter) since `PARALLEL_API_KEY` is a hard requirement for Coda anyway.

@ashpreetbedi ashpreetbedi merged commit 66fade3 into main Apr 16, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants