PATTERN Cited by 1 source
Framework-harness-runtime layering¶
Problem¶
Building production agents conflates three distinct concerns: developer experience (project structure, CLI, integrations), the agentic loop (tool calling, context, continuation), and platform infrastructure (durable state, sandboxing, compute). Mixing them creates monolithic systems that are hard to swap, extend, or target to different runtimes.
Solution¶
Separate the agent platform into three layers with clean contracts:
- Framework — owns DX, project conventions, integrations, CLI.
- Harness — owns the agentic loop: model calls, tool dispatch, context management.
- Runtime/Platform — owns compute, state, and storage primitives.
Each layer can be swapped independently. Multiple frameworks can target the same harness; multiple harnesses can target the same runtime.
(Source: Agents platform post.)
Known uses¶
- Flue (framework) → Pi (harness) → Agents SDK (runtime)
- Project Think (harness) → Agents SDK (runtime)
Seen in¶
Related¶
- concepts/three-layer-agent-platform-stack — the concept this pattern implements