Skip to main content

Crate agent_block_core

Crate agent_block_core 

Source
Expand description

agent-block-core — host runtime + Lua stdlib bridge + EventBus.

Depends on agent-block-types (error / obs) and agent-block-mcp (rmcp wrapper). The bin crate agent-block is a thin CLI on top.

§Cargo features

All three are on by default, so the default build (and the agent-block CLI) keeps the full runtime surface. SDK embedders that only need a subset can opt out with default-features = false and re-enable individual axes:

FeatureEnablesPulls in
meshmesh.* Lua bridge, relay connect, Ed25519 mesh identityagent-mesh-core, agent-mesh-sdk
sqlitesql.* / kv.* / ts.* Lua bridges (SQLite-backed)rusqlite (bundled), mlua-batteries/{sql,kv}
mcp-httpmcp.connect_http (Streamable HTTP / SSE MCP transport)agent-block-mcp/mcp-http → rmcp HTTP-client transports

The stdio MCP transport (mcp.connect), http.*, tool.*, sh.*, log.*, bus.*, and the embedded StdPkg blocks are always available.

When a feature is off:

  • mesh: the mesh.* bridge is not registered; BlockConfig::relay_url / secret_key are accepted but ignored.
  • sqlite: the sql.* / kv.* / ts.* bridges are not registered; BlockConfig::sql_path / kv_path / ts_path are accepted but ignored (fields retained for API stability).
  • mcp-http: mcp.connect_http returns an explicit error when called.

Re-exports§

pub use host::run;
pub use host::BlockConfig;
pub use host::BlockConfigBuilder;
pub use host::HostContext;

Modules§

bridge
Lua Stdlib Bridge — injects all *.* global APIs into the Lua VM.
bus
EventBus: serial event dispatcher feeding Lua handlers registered via bus.on(kind, fn) / bus.on_any(fn).
host
Host — the thin Rust shell that wires up Lua VM, Mesh, HTTP, and MCP.