Expand description
§Bob Adapters
Adapter implementations for the Bob Agent Framework ports.
§Overview
This crate provides concrete implementations of the port traits defined in bob_core:
- LLM Adapters: Connect to language models via various providers
- Tool Adapters: Integrate with external tools and MCP servers
- Storage Adapters: Persist session state
- Observability Adapters: Log and monitor agent events
§Features
All adapters are feature-gated to minimize dependencies:
llm-genai(default): LLM adapter using thegenaicratemcp-rmcp(default): Tool adapter for MCP servers viarmcpskills-agent(default): Skill loading and composition viaagent-skillsstore-memory(default): In-memory session storageobserve-tracing(default): Event sink usingtracing
§Example
ⓘ
use bob_adapters::{
llm_genai::GenAiLlmAdapter,
mcp_rmcp::McpToolAdapter,
store_memory::InMemorySessionStore,
observe::TracingEventSink,
};
use genai::Client;
// LLM adapter
let client = Client::default();
let llm = GenAiLlmAdapter::new(client);
// Tool adapter (MCP server)
let tools = McpToolAdapter::connect_stdio(
"filesystem",
"npx",
&["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
&[],
).await?;
// Session store
let store = InMemorySessionStore::new();
// Event sink
let events = TracingEventSink::new();§Adapters
§LLM Adapters (llm-genai)
Connects to LLM providers through the genai crate, supporting:
- OpenAI (GPT-4, GPT-4o-mini, etc.)
- Anthropic (Claude)
- Google (Gemini)
- Groq
- And more…
§Tool Adapters (mcp-rmcp)
Connects to MCP (Model Context Protocol) servers:
- Filesystem operations
- Shell commands
- Database queries
- Custom tools
§Storage Adapters (store-memory)
In-memory session storage for development and testing:
- Fast in-process storage
- No external dependencies
- Suitable for single-instance deployments
§Observability (observe-tracing)
Event sink using the tracing ecosystem:
- Structured logging
- Integration with observability tools
- Configurable log levels
§Related Crates
bob_core- Domain types and portsbob_runtime- Runtime orchestration
Re-exports§
pub use bob_core as core;
Modules§
- approval_
static - Static approval adapter for tool-call guardrails.
- artifact_
memory - In-memory artifact store adapter.
- builtin_
tools - Built-in Tool Port
- checkpoint_
memory - In-memory turn checkpoint store adapter.
- cost_
simple - Simple in-memory cost meter adapter.
- llm_
genai - GenAi LLM Adapter
- mcp_
rmcp - MCP Tool Adapter
- observe
- Tracing Event Sink
- policy_
static - Static tool-policy adapter composed from runtime and request policies.
- skills_
agent - Agent Skills
- store_
memory - In-Memory Session Store
- tape_
memory - In-Memory Tape Store