beam_core
beam_core provides RiverBeam, the object that runs every invocation, and the BEM-* error
catalogue the other crates raise.
beam_core = { path = "../riverbeam/crates/beam_core" }
RiverBeam
| Method | Purpose |
|---|---|
new(BeamConfig) | A pipeline with in-memory defaults |
register_agent(Arc<dyn Agent>), register_echo_agent(name) | Add agents |
invoke(req) -> Value, invoke_result(req) -> AgentResult | Run the pipeline |
with_store / set_store, store() | Execution store (default InMemoryStore) |
with_stream / set_stream | Publish stream frames |
with_knowledge / set_knowledge, knowledge() | Retrieval |
set_memory, memory() | Memory manager |
with_security / set_security | Security manager |
set_usage(guard, tracker, plan) | Quotas |
set_audit | Audit logger |
memory_remember, memory_forget | Store and delete memory facts |
ingest_knowledge_document, delete_knowledge_document | Knowledge task bodies (JSON in, JSON out) |
checkin_catalog() | Write registered agents to the store |
list_agents(), registry(), router(), config() | Accessors |
The phases are described in Invoke pipeline.
BeamConfig
| Field | Default |
|---|---|
worker_namespace | "riverbeam-worker" |
sql_schema | "ref_beam" |
knowledge_enabled | true |
knowledge_embedding_dim | 1536 |
knowledge_max_context_tokens | 2000 |
default_model | None |
security_enabled | true |
usage_enabled | true |
Only default_model changes the pipeline today; see
Current limitations.
Errors
beam_core re-exports RiverbaseError and RiverbaseResult from riverbase_core and declares
every BEM-* error as a constant (BEM_020, BEM_061, …). The list is in
Error codes.