diff --git a/README.md b/README.md
index 8c369f6..44b50cb 100644
--- a/README.md
+++ b/README.md
@@ -46,60 +46,25 @@ Before you act, **classify your action against [oikos/policy.yaml](oikos/policy.
### The Oikos OODA Loop + Decision Tree
-```
-┌─────────────────────────────────────────────────────────────┐
-│ Observe │
-│ (probes, drift detectors, agent signals) │
-└────────────────────┬────────────────────────────────────────┘
- │
-┌────────────────────▼────────────────────────────────────────┐
-│ Orient │
-│ (ontology, context, state, entity relations) │
-└────────────────────┬────────────────────────────────────────┘
- │
-┌────────────────────▼────────────────────────────────────────┐
-│ Decide: Classify against oikos/policy.yaml │
-│ │
-│ ├─ read_only → [unattended, no ledger] │
-│ ├─ reversible_low → [unattended + ledger entry] │
-│ ├─ config_mutation → [ESCALATE: operator approval]│
-│ └─ destructive → [ESCALATE + confirmation] │
-└────────────────────┬────────────────────────────────────────┘
- │
- ┌────────────┴────────────┐
- │ │
- ┌────▼─────┐ ┌──────▼──────┐
- │ Auto-act │ │ Escalate │
- └────┬─────┘ │ (get approval
- │ │ via homelab │
-┌───────▼──────────────────┴──────────┐ │
-│ Act │ │
-│ (homelab CLI, runbooks, skills) │ │
-└────────────────┬─────────────────────┘ │
- │ │
- ┌────▼────────────────────────┘
- │
-┌───────────▼──────────────────────────────┐
-│ Verify │
-│ (checklist from SKILL.md) │
-└───────────┬──────────────────────────────┘
- │
-┌───────────▼──────────────────────────────┐
-│ Ledger │
-│ (mutation record: who/what/risk) │
-└───────────┬──────────────────────────────┘
- │
-┌───────────▼──────────────────────────────┐
-│ Document │
-│ (wiki update, same-session rule) │
-└───────────┬──────────────────────────────┘
- │
- └─────────────────┐
- │
- ┌─────────▼─────────┐
- │ Loop back to │
- │ Observe │
- └───────────────────┘
+```mermaid
+flowchart TD
+ Observe["**Observe**
probes, drift detectors, agent signals"]
+ Orient["**Orient**
ontology, context, state, entity relations"]
+ Decide{"**Decide**
classify against oikos/policy.yaml"}
+ Auto["Auto-act
(unattended)"]
+ Escalate["Escalate
homelab approval request"]
+ Act["**Act**
homelab CLI, runbooks, skills"]
+ Verify["**Verify**
checklist from SKILL.md"]
+ Ledger["**Ledger**
mutation record: who/what/risk"]
+ Document["**Document**
wiki update, same-session rule"]
+
+ Observe --> Orient --> Decide
+ Decide -->|read_only, reversible_low| Auto
+ Decide -->|config_mutation, destructive| Escalate
+ Auto --> Act
+ Escalate -->|approval granted| Act
+ Act --> Verify --> Ledger --> Document
+ Document -.loop.-> Observe
```
### Risk Classes (enforced, not advisory)