Skip to content

Same Name, Different Layer: meta-harness, ACP, HarnessAgent and Flue

Aug 26, 2026 1 min
TL;DR meta-harness means two things: Databricks' control plane and Stanford's outer-loop optimizer. This post uses a four-layer model (MCP/ACP/Runtime/meta-harness) to place Omnigent, Zed ACP, Vercel HarnessAgent and Cloudflare Flue.
Table of Contents
  1. Align the term: two meta-harnesses
  2. Four layers: MCP / ACP / Runtime / meta-harness
  3. Where each project sits
    1. Omnigent — reference control plane
    2. Zed ACP — LSP for agents
    3. Vercel HarnessAgent — swap harnesses in code
    4. Cloudflare Flue + Dynamic Workflows — cloud scale
    5. Conductor — desktop lightweight
  4. Common misjudgments
  5. Next
  6. References

🌏 中文版

The previous post on Omnigent's meta-harness used "a layer above harnesses" repeatedly. The same week, Stanford published a paper also called Meta-Harness meaning "an outer loop that rewrites harness code". Meanwhile Zed ACP, Vercel HarnessAgent and Cloudflare Flue all shipped. Easy to conflate four battles into one.

This post places them on a four-layer map and shows why most are complementary.

Align the term: two meta-harnesses

UsageWhat it meansExamples
Control plane (Databricks)Unified access, scheduling and governance above harnessesOmnigent, loopx
Outer-loop optimizer (Stanford)Search for better harness code with an agentstanford-iris-lab/meta-harness, SuperagenticAI/metaharness

"meta-harness" below means the first; the second is explicitly called "Stanford meta-harness (optimizer)".

Four layers: MCP / ACP / Runtime / meta-harness

Borrowing codepick's guide:

You

 ├─ meta-harness  you ↔ many full agents (Omnigent, loopx, mission-control)
 ├─ ACP           agent ↔ editor (Zed ACP)
 ├─ Runtime       single agent execution/recovery/isolation (Cloudflare Agents SDK)
 └─ MCP           agent ↔ tools/data (Anthropic MCP)
  • MCP = how an agent calls tools (inside each harness)
  • ACP = how an editor connects to an agent (any agent ↔ any editor)
  • Runtime = how a single agent runs reliably (durable execution, hibernation)
  • meta-harness = how you manage many agents (swap harnesses, govern, share)

Mnemonic: MCP owns tools, ACP owns access, Runtime owns execution, meta-harness owns you ↔ many agents.

Where each project sits

Omnigent — reference control plane

Covered in depth in part 1: Runner + Server + Omnibox, common API messages/files in → streams/tool calls out, three-layer Policies, 10 cloud sandboxes. Value is composition + control + collaboration at once.

Zed ACP — LSP for agents

Zed ACP standardizes the protocol — JSON-RPC over stdio, editors (Zed, JetBrains, Neovim, Emacs) and agents (Cline, Cursor, Gemini CLI, OpenCode, Goose) each implement an adapter, with an ACP Registry for implement once, work everywhere.

Complementary to Omnigent: ACP solves access, Omnigent solves scheduling/governance. Stack as ACP → Omnigent → MCP.

Vercel HarnessAgent — swap harnesses in code

Vercel AI SDK 7's HarnessAgent extends "swap models without rewriting" to harnesses:

import { HarnessAgent } from '@ai-sdk/harness/agent';
import { createClaudeCode } from '@ai-sdk/harness-claude-code';
const agent = new HarnessAgent({ harness: createClaudeCode() });

The new @ai-sdk/harness-acp is a meta-adapter over the ACP protocol so any ACP-compatible harness can be driven via HarnessAgent. Use direct adapters for Claude Code/Codex, ACP for the rest.

Difference to Omnigent: Vercel swaps in code, Omnigent swaps in YAML + Server. Former suits product embedding, latter suits team control plane.

Cloudflare Flue + Dynamic Workflows — cloud scale

Flue on Cloudflare Agents SDK (Durable Objects) plus ~300-line MIT Dynamic Workflows argues for tens of millions of concurrent sessions with hibernation. Flue's model is "describe the context an agent needs, not the loop". Each Flue agent is a Durable Object with runFiber/stash/onFiberRecovered.

Omnigent can use Flue/Cloudflare as a host; Flue turns harnesses into horizontally scalable services.

Conductor — desktop lightweight

Conductor (Melty Labs, closed Mac app) gives each agent a git worktree and runs Claude Code/Codex in parallel on one dashboard — the single-machine simplified form of the meta-harness idea, ideal for validating "does parallelism actually help?" before adopting Omnigent.

Common misjudgments

  • MCP vs meta-harness — not a choice; MCP is inside the harness, meta-harness above it.
  • Omnigent vs ACP — different layers; governance vs access.
  • Stanford meta-harness vs Omnigent — same name, different meaning; one rewrites harness code, one governs many harnesses.

Next

Four layers are stabilizing. The combination worth borrowing: Omnigent's Runner/Server/Policy + ACP's protocol + Flue's hibernation + Vercel's in-code switch. Next post implements the same task (Polly's parallel worktree + cross-vendor review) four ways: Omnigent YAML vs LangGraph vs CrewAI vs Goose.

References