All projects

Selected work / Case study

Eyrie

A local control room for AI agents.

Build & tests checked

Overview

Coordinate agents across ZeroClaw, OpenClaw, Hermes, PicoClaw, and Codex. A Go backend connects to a React dashboard over SSE and WebSockets, with SQLite for storage. Runs locally, with no public demo.

  • Go
  • Cobra
  • SSE
  • WebSockets
  • SQLite
  • React 19
  • TypeScript
  • Vite
  • Tailwind

The problem

Agents in ZeroClaw, OpenClaw, and other frameworks expose different interfaces. Eyrie's goal is to manage their projects, sessions, and lifecycle from a shared local control room, with a hierarchy of commanders, captains, and specialist talons.

My contribution

I built the Go command-line application and React dashboard for agent discovery, lifecycle controls, project hierarchies, and streaming chat. Framework adapters translate a shared agent interface into each framework's gateway calls.

How it's built

The CLI and dashboard share the adapter and discovery core. The Go executable embeds the built React application. SSE carries live updates; adapters use framework-specific HTTP or WebSocket connections. Configuration and project stores use local files, with SQLite used for ZeroClaw session access.

Simplified local architectureThe React dashboard exchanges HTTP requests, server-sent events, and terminal WebSocket traffic with a local Go server. The server uses discovery and framework adapters to reach agent runtimes. Project and instance data use local JSON files. The ZeroClaw adapter can read session history from SQLite.

Simplified local architecture

The Go executable embeds the built React dashboard. The browser calls its HTTP API, receives server-sent events, and connects to terminal sessions over WebSocket. The paired arrows show requests and responses.

Discovery finds configured agents and probes their health. Adapters expose a shared Agent interface for framework-specific operations. The command-line interface also uses discovery and lifecycle controls.

Projects and instances use local JSON files. The ZeroClaw adapter can also read session history directly from a local SQLite database, including when the gateway is unavailable.

This diagram shows selected paths in the source. Live agent workflows remain unverified. Eyrie is a local-only alpha without authentication.

What's verified

Build, go test, go vet, and 7 web tests pass.

Eyrie checked the build, go test, go vet, and 7 web tests on October 29, 2026. The screenshots show the empty first-run state, not active agent workflows. Local only; no public demo.

What remains unverified

The approved captures show an empty first run. Live agent lifecycle, LLM chat, terminal sessions, and provisioning were not verified. Eyrie is an early local-only alpha with no authentication; it is not a hosted multi-user service.

Captured screens

Eyrie mission control with zero active projects, no running agents, an empty timeline, and a commander setup panel.
Mission control, first run. No projects or agents running.
Eyrie setup page with commander, frameworks, and projects steps, plus an empty API key field.
Home, first run. Commander setup awaits an API key.
Eyrie framework catalog showing ZeroClaw, OpenClaw, Hermes Agent, PicoClaw, and Codex App Server install cards.
Framework catalog, first run. Frameworks are not installed.
Eyrie persona catalog with cards including Life Coach, Executive Strategist, and Marketing Lead, with none installed.
Persona catalog, first run. No personas installed.

All projects