How AgentField works
Primitives, control plane, sync and async execution, and cross-agent calls.
You write agent functions. AgentField exposes them as infrastructure: HTTP, routing, memory, tracing, policy, async, and audit.
AgentField has two moving parts:
- Control plane: routes execution, tracks workflows, manages shared memory, applies policy, records audit data, and exposes HTTP APIs.
- Agent nodes: your Python, TypeScript, or Go processes. Each node registers reasoners and skills with the control plane.
Core Primitives
| Piece | Role |
|---|---|
| Agent | A deployable node. Each reasoner or skill becomes a discoverable backend capability. |
| Reasoner | An LLM-backed function. Use app.ai(...) for structured model calls. |
| Skill | A deterministic tool: API calls, file operations, calculations, database reads, or other code. |
| Router | Programmatic routing between functions. |
| Harness | A bridge from Claude Code, Codex, Gemini CLI, and OpenCode into the control plane. |
The SDK gives your agent code a small set of runtime calls:
{
"app.ai": "structured model calls",
"app.call": "cross-agent execution",
"app.memory": "shared state and vector search",
"app.pause": "human approval",
"app.harness": "dispatch harness work"
}Request Flow
All cross-agent calls go through the control plane. That keeps routing, policy, execution history, and workflow DAGs consistent.
Sync And Async
Use synchronous execution when the caller should wait for a result:
client -> control plane -> agent -> resultUse async execution when work may run long, wait on tools, or pause for a human:
client -> control plane -> execution id
worker -> agent -> tools/agents/humans -> webhook or polling resultThe important design point is that the agent stays a callable backend capability even when the work takes longer than a normal HTTP request.
Why The Control Plane Exists
Without a control plane, each agent app has to solve the same infrastructure problems:
| Backend concern | AgentField responsibility |
|---|---|
| Discovery | Agents register capabilities and health with the control plane. |
| Routing | app.call("node.function") resolves through the control plane. |
| State | Shared memory scopes and vector search live outside any one process. |
| Execution | Sync, async, polling, and webhooks share one execution model. |
| Policy | Runtime access checks happen at the service boundary. |
| Audit | Workflow DAGs, notes, DIDs, and verifiable credentials record what happened. |
Next: Production capabilities for the full surface, or Building Blocks for implementation details.