Press → or click to begin
This layer describes the structural patterns of the Anokye System — the shape of the town, not the materials it’s built from. Everything here is implementation-agnostic: these patterns hold whether you build on GitHub Actions, Temporal, Kubernetes, local processes, or anything else.
The Anokye System is animated by a continuous loop drawn from John Boyd’s Observe-Orient-Decide-Act framework, extended from tactical decision-making to the entire product lifecycle.
| Phase | Question It Answers | Agent Roles |
|---|---|---|
| Observe | What is happening? | Scouts ingest telemetry, user behavior, feedback, market signals, experiment results, agent activity |
| Orient | What does it mean? | Oracles synthesize observations into understanding: pattern detection, root cause analysis, opportunity identification |
| Decide | What should we do? | The Omanhene (human) and Chief/Okyerema generate specifications, prioritize work, design experiments |
| Act | Do it. | Asafo execute: write code, run experiments, deploy, document, communicate. Witnesses verify. Smiths integrate. |
The loop runs simultaneously at four cadences:
Unlike Boyd’s sequential loop (designed for a single fighter pilot), the Anokye System runs many parallel loops simultaneously, at different timescales, feeding into each other. The Orient phase is where loops cross-pollinate: a micro-loop observation (a crash log) may inform a macro-loop orientation (our architecture doesn’t handle this class of failure).
Every existing exemplar (GasTown, StrongDM, Anthropic’s tooling) covers only Decide/Act — the “build” phases. None closes the loop through systematic Observe/Orient. The Anokye System’s architecture is designed from the ground up to support the complete cycle.
Agents in the Anokye System are organized in a supervision hierarchy — each agent has a supervisor responsible for monitoring its health, progress, and alignment. This mirrors both human organizational management and Erlang/OTP supervision trees.
Omanhene (Human)
└─ Okyeame (Personal Agent — the human's interface)
└─ Okyerema (Rhythm Engine — domain orchestrator)
├─ Ohemaa (Governance Daemon — monitors all, veto power)
├─ Ahene Council (Domain Coordinators)
│ ├─ Nifahene (Implementation)
│ ├─ Benkumhene (Quality/Testing)
│ ├─ Kyidomhene (Security)
│ ├─ Twafohene (Research/Exploration)
│ ├─ Gyaasehene (Infrastructure)
│ ├─ Sanaahene (Resource/Cost)
│ └─ Krontihene (Release/Deployment)
└─ Asafo Companies (Implementation Agents)
├─ Code agents
├─ Test agents
├─ Documentation agents
└─ Research agents
| Pattern | Description |
|---|---|
| Watchdog | Periodic “are you alive and productive?” checks (the Sankofa patrols) |
| Recursive supervision | Supervisors are themselves supervised (the meta-loop) |
| Verification gate | Output must be externally verified before advancing (the Witness) |
| Escalation | Agent escalates to supervisor when stuck; supervisor escalates to Omanhene when unable to resolve |
| Restart on failure | Failed ephemeral agents are torn down and replaced; work resumes from checkpoint |
Flat agent topologies fail because:
The hierarchy provides these at the cost of token overhead — a cost that pays for itself in reliability.
Not every project needs every role. A small project may have only the Omanhene, an Okyeame, an Okyerema, and a few Asafo. A large project activates the full Ahene Council. The architecture scales by activating roles as complexity demands.
The substrate is the shared infrastructure on which the town operates. It is not a phase of the OODA loop but the medium through which all phases communicate and persist.
All substrate state must be:
The Anokye System is fundamentally async, reactive, and event-driven. Components communicate through events, not synchronous calls.
| Synchronous | Asynchronous |
|---|---|
| Caller blocks waiting for response | Caller continues; response arrives as event |
| Bottleneck propagates through chain | Components decouple; failure isolates |
| Hard to parallelize | Natural parallelism |
| Poor fit for multiple timescales | Each loop runs at its own pace |
| Event | Source | Consumer |
|---|---|---|
observation.telemetry | Scout | Oracle |
observation.feedback | Scout | Oracle |
insight.generated | Oracle | Chief / Okyeame |
spec.created | Chief / Omanhene | Artisan (Asafo) |
work.assigned | Okyerema | Asafo |
work.completed | Asafo | Witness |
work.verified | Witness | Smith |
work.merged | Smith | Herald / Okyeame |
agent.stalled | Herald (Sankofa) | Okyerema |
agent.failed | Runtime | Herald |
governance.violation | Ohemaa | Omanhene |
governance.escalation | Ohemaa | Okyeame |
meta.process_friction | Herald | Oracle (meta-loop) |
The immutable event log enables:
The Anokye System supports multiple independent domains, each a self-contained Oman.
Each Oman has its own:
When domains need to interact:
Human-mediated: The Okyeame is the natural bridge. Since each person has one Okyeame that communicates with all their Okyeremas, it can relay requests and status between domains.
Automated: Dedicated inter-domain coordination agents pass work requests and messages between Okyeremas. These agents use the Event Bus and operate under governance constraints.
The clean boundary is preserved: each Okyerema owns its domain’s rhythm. Cross-domain coordination flows through explicit channels.
This is a critical architectural point. The user doesn’t need separate interfaces for each domain. One Okyeame presents a unified view: “Your software project has 3 blocked tasks. Your family calendar has a scheduling conflict. Your research program has a new finding relevant to the software project.” Cross-domain insights emerge naturally.
The Anokye System is designed to grow incrementally. Not every implementation needs every capability. The maturity model describes five levels, each building on the previous.
The system is a tool. The human drives.
Contracts required: Work Ledger (basic), Agent Runtime (basic), Governance Engine (basic), Personal Agent (basic)
The drummer beats steadily. The human checks in.
Contracts required: + Event Bus, Rhythm Engine
Multiple instruments play in coordination.
Contracts required: + Observation Pipeline (basic)
The system runs. The human supervises.
Contracts required: + Orientation Engine, all contracts enhanced
The system evolves itself.
Contracts required: All contracts at full capability, meta-loop operational
Omanhene (Human)
│
│ sets direction, resolves stalemates
▼
Okyeame (Personal Agent)
│
│ translates intent, surfaces status, coordinates across domains
▼
Okyerema (Rhythm Engine) ◄────────► Ohemaa (Governance Daemon)
│ │
│ dispatches work, maintains │ monitors all agents
│ cadence, runs health patrols │ enforces policies
│ │ can halt or redirect
├───────┬───────┬───────┐ │
▼ ▼ ▼ ▼ │
Ahene Council (Coordinators) │
[Nifahene] [Benkumhene] [Twafohene] │
│ │ │ │
▼ ▼ ▼ │
Asafo Companies (Agents) │
[Code] [Test] [Research] [Security] │
│ │ │ │
▼ ▼ ▼ │
Adwoma (Work Ledger) ──────────────────►│
│
│ feeds status back to all agents
▼
(cycle continues)
The key insight: the circular flow. Adwoma feeds information back to Okyeame, Okyerema, and Ohemaa — each operates its own OODA loop against the shared state. Even when individual agents fail or humans are unavailable, the rhythm continues.