HACKER Q&A
📣 denis4inet

What is the "Control Plane" for local AI agents?


Agents-Orchestration

I’ve been running an increasing number of local coding agents (Claude Code, Codex CLI, OpenCode, etc.) and I’ve hit a wall: orchestration and state visibility.

When you have multiple agents working on different sub-tasks in a single repo, terminal logs become unmanageable. I find myself needing a "Mission Control" — a centralized tracking system that acts as a bridge between my local terminal sessions and a high-level UI.

The Architecture I’m testing: I’m currently experimenting with using GitHub Issues as a temporary backend for agent state:

On Session Start: The agent hits a hook and creates/updates a GitHub Issue.

On Idle/Output: The agent posts its findings/diffs as a comment.

Human-in-the-loop: I can reply to the issue from my phone/web, and the local CLI picks up the comment to continue or pivot.

The Problem: GitHub Issues (and Jira/Trello) weren't built for the high-frequency event loop of an AI agent. The UX feels sluggish, and there’s no native concept of a "streaming session" or "agent heartbeats."

My Questions to HN:

Is there an emerging SaaS or self-hosted solution that acts as a Jira for Agents?

Are people building custom "Agent Dashboards" that integrate with local CLIs, or is everyone just piping everything to stdout?

If you’re managing 5+ agents working on a codebase simultaneously, how do you track their progress and intervene without context-switching between 5 terminal tabs?

I’ve sketched out a flow where GitHub Issues acts as the hub (linking Codex, Claude Code, and OpenClaw), but I’m looking for something more purpose-built.

Has anyone seen a project that addresses the Control Plane problem for local agents?


  👤 jlongo78 Accepted Answer ✓
the control plane question is the right one to be asking. most people slap agents into tmux and call it done, then wonder why they cant reproduce what happened last tuesday.

the insight nobody talks about: session identity matters more than session management. if you cant address a specific agent conversation later, search it, or resume it mid-thought, youre just herding cats in a terminal. persistnece + indexing is the real primitive here.


👤 akssassin907
Ended up solving this with OpenClaw as the gateway layer. Each agent has its own persistent session, heartbeat files for state (HEARTBEAT.md, TODAY-TASKS.md in each agent's workspace), and Telegram as the human-in-the-loop channel — I can check in, redirect, or kill a task from my phone without touching a terminal.

The file-based state store sounds basic but it works really well for the "what is each agent currently doing" problem. Each agent writes its status on every heartbeat. The orchestrator reads them all and compiles a brief. No database, no SaaS, just files and a shared filesystem.

The GitHub Issues approach you're describing hits the same wall everyone does — it's too slow for the event loop and there's no concept of streaming state. What you actually want is something closer to a supervisor process that owns the session lifecycle and can inject context mid-run. That's the piece that's missing from most setups.

The 5+ agent tab problem: Telegram channels per-agent solved it for me. Each bot reports to its own DM, I have a group for fleet-wide alerts. No terminal tabs.


👤 cgr-ciprian
I'm building something that I called control plane for agents, but it's only solving half of the problem you're mentioning. Basically it allows me to connect to my agents remotely from anywhere, so I have one running on my server and several running on my home PC. I generally just use something like notion or beads for issue tracking.

Another thing I do is I have a custom Claude skill that runs every night and goes through all my repositories and Claude conversations and then updates my dashboard and tasks in notion with progress.

https://github.com/amurg-ai/amurg


👤 KurSix
There's no off-the-shelf "Jira for AI" product out there right now tbh. Most sane teams are either hacking together thin SQLite + WebSockets dashboards, or just sucking it up and staring at raw stdout across 5 tmux panes. If you need a self-hosted setup with tracing, Langfuse should do the trick and cover like 90% of your pain points. Honestly, if you actually polish this control plane concept and open-source it, the demand will be massive