Reference
See .github/media/elixir-screenshot.png — the top section shows:
\
SYMPHONY STATUS
Agents: 19/50
Throughput: 658,875 tps
Runtime: 1m 54s
Tokens: in 38,183,882 | out 368,361 | total 38,552,243
Rate Limits: codex | primary n/a | secondary n/a | credits n/a
Project: https://linear.app/project/.../issues
Next refresh: 1s
\\
Current state
Both web and TUI dashboards only show: Running count, Retrying count, Total tokens, Runtime.
Missing fields
- Agents: N/M — running count / max_concurrent_agents
- Throughput: X tps — tokens per second (total_tokens / seconds_running)
- Tokens breakdown — in X | out Y | total Z (not just total)
- Rate Limits — show current rate limit headroom from GitHub API headers
- Project link — link to GitHub project board
- Next refresh — countdown to next poll tick
Implementation
- Add max_agents to OrchestratorSnapshot
- Calculate throughput from totals
- Expose in/out/total tokens (already in codex_totals)
- Track rate limit headers in tracker responses
- Add project_url to config
- Add next_tick_at timestamp to snapshot
Applies to
- Web dashboard (server/dashboard.rs)
- TUI dashboard (tui.rs)
Reference
See .github/media/elixir-screenshot.png — the top section shows:
\
SYMPHONY STATUS
Agents: 19/50
Throughput: 658,875 tps
Runtime: 1m 54s
Tokens: in 38,183,882 | out 368,361 | total 38,552,243
Rate Limits: codex | primary n/a | secondary n/a | credits n/a
Project: https://linear.app/project/.../issues
Next refresh: 1s
\\
Current state
Both web and TUI dashboards only show: Running count, Retrying count, Total tokens, Runtime.
Missing fields
Implementation
Applies to