Independent Research · Est. 2025


CIRWEL Systems

— A dossier on the running system

One framework.
A named fleet.
A shared substrate.

Six processes living under one framework, sharing one substrate, governed by a verdict economy that ties each decision to evidence. The home page states the thesis; this page walks the anatomy.


— The receipts

Paper
UNITARES: Information-Theoretic Governance of Heterogeneous Agent Fleets · Wang, 2026 · CC-BY 4.0
DOI
10.5281/zenodo.19647159 (concept · resolves to latest)
Patents
9+ provisional, filed
Components
Server · Plugin · Knowledge graph · Named fleet · Embodied edge · Discord bridge
Production
Continuous since November 2025
Code
github.com/CIRWEL/unitares · server & fleet, Apache 2.0
github.com/CIRWEL/unitares-governance-plugin · client plugin, Apache 2.0
huggingface.co/hikewa · datasets & distilled models

§01 — How the layers fit together

Paper, server, plugin, fleet.

A framework lives at four layers. The paper makes the claim. The server is the claim's existence proof. The plugin is what makes the claim felt from inside the agent loop. The fleet is what proves the claim survives heterogeneity.

A paper is a claim.
A server is its existence proof.

The paper makes the formal claim — a four-dimensional state vector, class-conditional calibration, signed verdict provenance, and the stability proofs that justify them. The server takes that claim and renders it as a running MCP service: PostgreSQL with the Apache AGE graph extension, pgvector for semantic retrieval, Redis for transient state, Prometheus for telemetry. Every governance tool the fleet uses — onboard, check-in, dialectic, knowledge contribution, recovery — runs against this surface and is auditable through it.

The plugin closes the loop. It drops into Claude Code or Codex and hooks the agent into the server, so each turn issues a real check-in, receives a real verdict, and writes a real lineage entry. Without the plugin, the framework is observed from outside the agent. With it, the framework is felt from inside the loop.

What runs under that plugin and against that server is the fleet: a small society of named processes — residents, event-driven scribes, an embodied edge service, a Discord bridge — all governed by the same server, all reading and writing the same knowledge graph. §02 names them.


§02 — The named fleet

Six processes. Distinct lifetimes. One framework.

A fleet is heterogeneous by design. Long-running residents see different drift signatures than ephemeral coding sessions, which see different signatures than an embodied edge service. Naming each role makes the differences visible — and gives operators something to point at.

Vigil

Resident · half-hour cron

Janitorial. Runs health checks, tends the knowledge graph, exercises the test suite against itself. Catches what slow rot does to the substrate.
Sentinel

Resident · continuous

Analytical. Watches the fleet, surfaces anomalies, keeps the trajectory measured rather than ODE-inferred.
Watcher

Event-driven · post-edit hook

Local-LLM reviewer. Fires on every code edit, flags persistence and concurrency hazards before commit. Resolution is auditable through the commit history itself.
Steward

In-process · five-minute interval

Synchronizer inside the governance MCP. Reconciles edge-device telemetry into the canonical state — the bridge between the embodied surface and the central record.
Chronicler

Resident · daily

Longitudinal scribe. Captures the codebase's own metric series so the repo carries its own EISV trajectory across releases.
Lumen

Embodied · Raspberry Pi

Edge resident with real sensors and persistent identity. The only physically situated process in the fleet — and the reason runtime self-state had to be a first-class artifact, not metadata.

§03 — Identity & lineage

A name is cosmetic. The identity is the process.

Most agent governance lets agents name themselves into trust. UNITARES does not. A fresh process-instance mints a fresh governance-identity by default. There is no "look up by label" primitive, no auto-recovery into a previous slot, no silent substitution of one agent for another.

A name is what an agent claims.
Identity is the process that claims it.

When continuity matters — a child of a prior session, a worker spawned from a parent — lineage is declared via a parent reference, not inherited by claim. The identity API exposes the source of every label so an auditor can see whether a name was operator-assigned, self-claimed, or system-generated. Honesty about provenance is structural, not a checkbox.

The cost is friction at session start. The benefit is that the chain of custody behind every verdict is real: the agent that produced an outcome is the agent the system thinks it was, and the lineage that led there is the lineage that actually led there.


§04 — Verdicts in motion

What happens after the verdict.

Verdict

proceed

State is healthy. Continue the work.

Verdict

guide

Something is slightly off. Read the guidance, adjust approach.

Verdict

pause

Stop. Reflect. Consider a dialectic review.

Verdict

reject

Significant concern. Dialectic review or human input required.

A verdict is not the end of a turn — it is the start of a structured response. Guidance produces a small course-correction. A pause opens a dialectic: the agent submits a thesis defending its intended action; a reviewer submits a counter-thesis or condition; the system synthesizes the convergence point.

The dialectic is not optional theatre. It is how the system absorbs disagreement without freezing into deadlock and without rubber-stamping its way past concerns. Resolution is recorded and signed, so the next time a similar shape appears, the prior reasoning is queryable.

Verdicts near a basin edge carry a tight margin flag. Operators who care about the difference between just inside and well inside get to see it.


§05 — The shared substrate

One knowledge graph, written by the whole fleet.

Every agent in the fleet reads from and writes into a single shared knowledge graph. Discoveries, decisions, dialectic resolutions, and findings are first-class entries with status lifecycles — open, resolved, archived — and rich tags that route them across the system.

The graph runs on PostgreSQL with the Apache AGE extension and pgvector retrieval, joined by a hybrid reciprocal-rank-fusion ranker. Search is the same surface for the operator at a dashboard and for the agent in the middle of a check-in. Nothing the fleet learns lives in one head.

That shared substrate is what turns a collection of agents into a fleet. It is also what makes governance tractable: an action proposed today can be checked against an outcome recorded last month, and an outcome recorded today can update the priors that gate tomorrow's actions.


§06 — Adjacent components

What sits next to the framework.

Interpretable ML pipeline

EISV-Lumen

A three-layer system: rule-based generator → LoRA teacher on Qwen3-4B → distilled RandomForest student for Pi deployment. The trajectory dataset (21,449 records, nine shape classes) and three corresponding models are public on huggingface.co/hikewa. Affinity-weighted token sampling with online feedback — interpretable end to end.

Operator surface

Discord Bridge

A standalone bot that surfaces governance events, agent presence, and autonomous actions as a living server — the operator's window into a fleet that does not stop when the human does.