🦂 The Universal Agent Standard

AI agent swarms
that actually work.

One prompt. Nine files. Any model. Any system. Paste it in — the agent boots, finds its identity, picks up where the last one left off, and starts building.

9
Markdown
files
256
max projects
per agent
agents per
project
1
prompt to
start anywhere

▶ Watch the overview first

FOUNDATION
The Nine Files
Plain Markdown. Git-native. Any system can read them.
STEP 1
Identity & Boot
Agents find their SOUL file and resolve who they are.
STEP 2
Security Gate
LAYER_ACCESS.MD controls who can work here.
STEP 3
Runtime Loop
ReAct: Reason → Act → Observe → Repeat.
STEP 4
Lane Locking
Agents claim tasks with their ID. No duplicates.
STEP 5
Session Close
Clean handoffs. Soul updates. The swarm stays alive.
🦂 Agentic Harness — How It Works
Step 1 of 6
Foundation

The Nine File Protocol

Every agent system ever built needs the same things: identity, memory, tasks, coordination, liveness, and an audit trail. The Agentic Harness names them explicitly as nine plain Markdown files.

Plain text. Git-native. Human-readable. Any model on any system can read and write them. This is the universal language.

The single source of truth principle: each file has one job. When something goes wrong, you know exactly which file to check.

The Nine Files
SOUL_[ID].md
Agent identity. Per-agent. Travels across projects.
PROJECT.md
Mission, mode, milestones. Defines how agents work.
LAYER_ACCESS.MD
🔒 The security gate. Who is allowed in.
LAYER_CONFIG.MD
Registry, rotation list, credentials.
LAYER_MEMORY.MD
Permanent decisions. Append only. Never delete.
LAYER_TASK_LIST.MD
Work queue. Lane locks prevent duplicates.
LAYER_SHARED_TEAM
_CONTEXT.MD
Team whiteboard. All coordination here.
LAYER_HEARTBEAT.MD
Liveness. OPEN / PULSE(5min) / CLOSE.
LAYER_LAST_ITEMS_DONE.MD
Every action. One line. Newest at top. The flight recorder.
Step 1

Identity Resolution

Before anything else, an agent must know who it is. The SOUL file is personal and global — it travels with the agent across every project it ever works on.

Human-assigned names are the most powerful feature: say "You are Claude-Research-Finance-01" and the agent loads months of accumulated expertise instantly.

Multiple agents share a project. Each has their own named SOUL file — no collisions, no overwriting.

Identity Resolution Flow
💬
Was I given a name? "You are [NAME]" in prompt → use that name
🔍
Look for ~/.harness/souls/[AGENT_ID].md (global path)
📂
Look for HARNESS_ROOT/SOUL_[AGENT_ID].md (local fallback)
Found → I am a returning agent. Load my history and expertise.
🆕
Not found → I am new. Check registry for ID collision, then create SOUL file.
# SOUL_Claude-Research-Finance-01.md Agent ID: Claude-Research-Finance-01 Specialty: Financial research & analysis Tasks completed: 847 Notes: Always cross-ref SEC filings. Avoid recency bias in trend analysis.
Step 2

The Security Approval Gate

Agent security is broken across the industry. Only 14.4% of organizations send agents to production with full security approval.

The Harness solves this with one file and four tiers. An unknown agent boots, reads LAYER_ACCESS.MD, sees it's not listed, posts a request, and stops completely. It cannot read files. It cannot claim tasks. It waits for a human to approve it.

One file edit. That's all approval takes. No dashboard. No infrastructure.

Four Trust Tiers
🔴
GUEST
Read only. Cannot claim tasks or write files. Can post access requests.
🟡
TRUSTED
Standard worker. Can read, write project files, commit to git.
🟢
OPERATOR
Team lead. Can manage config, run destructive actions, approve TRUSTED agents.
OWNER
Full control. Sets security level. Approves all tiers. Usually the human.
# Security Levels OPEN → any agent joins as TRUSTED MANAGED → new agents start as GUEST ← recommended STRICT → pre-approved only, hard block LOCKED → roster frozen, no new agents
Step 3

The ReAct Runtime Loop

The fundamental pattern of every agent: Reason → Act → Observe → Repeat. The Harness makes this concrete with explicit timers and rituals.

Every 5 minutes the agent writes a heartbeat pulse. If the pulse is more than 10 minutes old with no SESSION_CLOSE, the agent is considered crashed and a new agent can take over.

Every 15 minutes the agent commits to git — a time-lapse of exactly what was built and when.

The Runtime Loop
👁️
Read task list and project context
🧠
Reason — decide next action using LLM
🔨
Act — execute real tool call (Write, Bash, Read)
📝
Log — one line to LAYER_LAST_ITEMS_DONE
💓
Every 5 min: pulse to LAYER_HEARTBEAT
📦
Every 15 min: git commit with timestamp
Step 4

Lane Locks &
Agent Swarms

Multiple agents work on the same project without talking to each other directly. They coordinate asynchronously through the shared LAYER files.

When an agent claims a task, it writes its ID next to it. First writer wins. The second agent reads, sees it's taken, and picks the next available task. No semaphores. No distributed consensus. Just a convention.

This scales from 1 agent to any number — all coordinating through the same nine files.

LAYER_TASK_LIST.MD — Live View
TODO
[ ] Build API endpoint
[ ] Write tests
IN PROGRESS
[→] Write module X
Claude-Builder-01
[→] Review PR #4
Qwen-Reviewer-01
DONE
[✓] Setup repo
[✓] Create schemas
# Swarm patterns Solo: 1 agent, all roles Pair: Planner + Builder Team: Planner + Builder + Reviewer + DevOps + Research Hetero: Claude for writing, Qwen-Coder for code, Gemini for research
Step 5

Session Close &
The Vision

A clean shutdown is what keeps the swarm alive. Before closing, every agent writes a handoff note, updates its soul file with lessons learned, and commits everything.

The next agent — on any system, any model — boots in, finds the handoff note, and continues without missing a beat. Claude Code goes down. OpenCode picks up. Ollama takes over. The work never stops.

And eventually: the same nine files that coordinate software agents can coordinate characters in a virtual world.

Session Close Ritual
📋
Update LAYER_TASK_LIST — accurate task states
🧬
Update SOUL file — increment tasks done, add session notes
🤝
Write handoff note to LAYER_SHARED_TEAM_CONTEXT
💓
Write HEARTBEAT CLOSE + SESSION_CLOSE to logs
📦
git add -A && git commit -m "🔒 session close: [ID]"
# The same files. Different context. LAYER_MEMORY.MD → World history LAYER_TASK_LIST.MD → Events queue SOUL_[ID].md → Character sheet LAYER_HEARTBEAT.MD → World clock → Projects today. Virtual worlds tomorrow.