Skip to main content

Agent Monitor (experimental)

A rough orchestration sample bundled with the TermFlow source tree that watches agent CLIs running in terminals and chains prompts through them. Treat it as a reference to read, not a shipped feature to rely on.

Reference sample, not a polished feature

agent-monitor (v2.0.0) is an early prototype that predates TermFlow's current ports and auth model. It still points at legacy sample ports and needs a freshly minted token on every run. Nothing below is a supported product surface — it is example code you can learn from or adapt.

What it is

agent-monitor is a small Node/TypeScript program that lives in the agent-monitor/ folder of the TermFlow source repository. It connects to the local API over REST + WebSocket and:

  • Detects agent CLIs (Claude, Gemini, ChatGPT-style tools) by watching terminal output,
  • Tracks the prompt lifecycle — when a prompt starts, when it finishes, and how long it took,
  • Chains prompts — keeps a queue and sends the next prompt only after the current one completes,
  • Streams events from the API over WebSocket, with automatic reconnection.

Why it is experimental

The sample was written against an older build, so its defaults no longer match a current TermFlow install. You would have to change them by hand before it connects to anything.

SettingSample default (legacy)Current TermFlow default
REST API basehttp://localhost:3001http://127.0.0.1:42031
WebSocketws://localhost:9876ws://127.0.0.1:42031/ws
Autha bearer token minted from a running instancethe config authToken shown in Settings → Connections

The token is the biggest sharp edge: the sample expects you to paste a fresh token into its .env, and it does not survive an app restart. In today's TermFlow the credential that actually matters is the authToken in Settings → Connections, and on the default localhost binding every endpoint is unauthenticated anyway (see Local API and auth). So the sample's token dance is mostly historical friction.

An honest note: This code is kept for reference, not maintained as a feature. Ports, endpoints, and the token flow have moved on since it was written, so expect to read the source and adjust it before it runs. If you just want the described behavior — detect an agent, wait for it to finish, send the next prompt — you will get further building it fresh on the documented API than resurrecting this sample.

What to use instead

Everything agent-monitor demonstrates is available on the stable, documented surface:

Next steps