- a library-first runtime
- with a practical product layer
- exposed through multiple peer surfaces
- a Rust crate embedded in your app
- a Python or TypeScript SDK backend
- a CLI for hands-on work
- a REST / JSON-RPC / MCP integration surface
- a multi-agent runtime
Why this matters
Because Meerkat is composable:- the surfaces are not separate products with separate semantics
- examples should usually treat the major surfaces as peers
- concepts such as realms, sessions, tools, and mobs should make sense across surfaces
- advanced builder/developer docs can still be part of the public docs set, because the “developer” and “operator” roles often overlap
The Practical Consequence
Composability means the same decisions show up across surfaces:- model and provider choice is resolved through one model registry
- tools, skills, hooks, and memory are composed into one agent build path
- persistent state is scoped by realm rather than by one CLI invocation
- mobs coordinate multiple sessions without inventing a second agent runtime
- release and deployment choices affect real users because SDKs and binaries share the same runtime surfaces
One construction path
Public surfaces compose agents through the facadeAgentFactory. The factory
resolves model identity, realm-owned credentials, stores, tools, hooks, skills,
memory, compaction, and runtime handles before it crosses the sealed core
builder seam. The lower-level core AgentBuilder is an implementation detail,
not a second public assembly path with weaker policy.
This matters because an override replaces one typed dependency without
discarding the surrounding contract. Examples include an AgentLlmClient,
tool dispatcher, session store, blob store, detached-job store, or compaction
curator. Model/provider identity and runtime authority are still validated at
the factory boundary.
Two runtime modes
RuntimeBuildMode makes the ownership boundary explicit:
Queue-only ephemeral services are useful substrates, but they are not a
durable control plane. Features that require session-owned authority fail
closed instead of manufacturing a local substitute.
