Skip to content
D-CSIL

Lab Note · Agent Architecture · 2026-07-18

From Hermes and OpenClaw to Remy: consolidating the lab's agents

TL;DR

Two agents became one. Remy imported Hermes's Telegram and email identities and OpenClaw's channels, wrapped them in a deterministic policy engine with git-backed reversible edits, and added a budget-aware sub-agent hive — verified live across four providers with a $0.02 budget correctly blocking a cloud call.

Why consolidate

Hermes and OpenClaw each carried their own credentials, channels, and quirks. Remy's auth importer pulled both identities into one runtime with one policy engine, one session store, and one memory client — so the lab has a single agent to trust, audit, and improve.

The parts that matter

Policy is deterministic — allow/deny rules the model can't rewrite, across ask/plan/edit/auto modes. Every file edit is a git-backed checkpoint. Memory is Cortex, not a bespoke store ('intentionally not built', per the feature matrix). And spawn_agents gives Remy a hive: per-worker models, routing strategies, fallback chains, and hard token/cost budgets.

spawn_agents:
  route: prefer_local | cheapest | fastest | best
  budget: { cloud_usd: 0.02 }
  fallback: [ollama, mlx-lm, cloud]

Verified, not vibes

The router verification ran live: five sub-agents across Ollama, MLX-LM, Gemini, and ChatGPT-OAuth; a dead endpoint failed over automatically; the cloud budget blocked a Gemini call and rerouted to local. 35/35 router tests, 27/27 CLI tests, clean typecheck across all eight packages.