Chuyển tới nội dung chính

beam_agents

beam_agents defines what an agent is and ships a tool-loop agent that talks to any OpenAI-compatible model.

beam_agents = { path = "../riverbeam/crates/beam_agents" }

Types​

ItemRole
AgentTrait: metadata(), stream(input, context), health_check()
AgentRegistryRegistered agents: register, get_metadata, dispatch_frames, dispatch_stream, list_agents
EchoAgentReplies Echo: <input>; for tests and demos
RigAgentRunnerTool loop over a completion client: new(name, client, tools, skill), for_skill(skill, client, tools)
CompletionClient, Completion, PendingToolCallThe model boundary
OpenAiCompatibleChat completions over HTTP: new, from_env, with_max_tokens, with_extra_body
EchoClient, ScriptedClientClients without a network, for development and tests
Tool, ToolSpec, json_paramsTools the model can call
sandbox_tools(Option<WorkingTree>)Nine file and git tools
RememberToolThe remember tool spec; invoking it returns BEM-109
Skill, builtin_skills(), skill_by_name()System prompts with tool allowlists
terminal_result, human_message_from_inputHelpers for agent authors

There are no feature flags.

Usage, the tool list, the skills and the current limitations are in Agents, tools and skills.