Local manager

Coordigent keeps its record of this machine in ~/.tower, and a background daemon keeps that record current. This page covers the daemon, the This machine view and the local API.

The daemon

The daemon is a small background process. It works with or without a login. Among other things, it:

  • notices when an agent's app has exited and marks the agent Ended;
  • watches Codex and Kiro, which have no hooks of their own, and records what they do;
  • releases files an agent stopped editing 15 minutes ago;
  • works out what needs you, and raises a desktop notification when an agent becomes Blocked;
  • warns two agents whose tasks look like the same work;
  • logged in, notices an agent in a repo this machine has not connected and asks whether to connect it (Connect a repo);
  • logged in, sends what your agents did to your project, and brings back your teammates' files in use, so the warning before an edit needs no network.

Agent hooks never wait on the network: they hand their work to the daemon and return. If the daemon is not running, the next hook or the live view starts it.

Keep it always on

coord connect asks once whether to keep Coordigent running in the background. Yes installs the daemon as a login service: launchd on macOS, a systemd user service on Linux. You can also do it yourself:

coord daemon install
CommandDoes
coord daemon statusShows whether the service is installed and the daemon is running
coord daemon start / stopStarts or stops it; with the service, it starts again at your next login
coord daemon uninstallRemoves the service

coord doctor reports the daemon too. Its problems, and any hook errors, are written to ~/.tower/emit.log.

Desktop notifications go off with {"desktopNotifications": false} in ~/.tower/preferences.json, or with Toggle desktop notifications in the VS Code extension.

autoConnectRepos in the same file decides what happens in a repo this machine has not connected: "ask" (the default) raises the question, "always" connects it without asking, and "never" does neither. Answering Always for my repos sets it to "always".

The This machine view

In the live view, press L for This machine: every agent on this machine in the last hour, across every repo, read straight from ~/.tower. It works offline and logged out. Agents that need you come first, marked ⚑, with the reason. Select one and press d for its diff, m to message it, x to stop it, or Enter for its transcript.

coord sessions prints the same list once, with what needs you on top.

The local API

The daemon answers editors and tools on this machine through a local API. It is served on a socket at ~/.tower/daemon.sock that only your user can open; there is no network port and no token. The VS Code extension uses it for everything it shows and does: the snapshot of agents, Needs you, runs and files in use, and actions such as messaging or stopping an agent.

When the daemon is not running, coord api answers the same methods and prints JSON:

coord api hello

The methods are listed in the local API reference.

Next

See how runs use this machine to start agents in their own worktrees, or go back to the CLI.