What is Bedrock?
Bedrock handles the hard parts of building AI agents:- Persistent State — Agents use Bedrock-owned adapter state for contacts, messages, documents, projects, and notifications
- Tool Execution — Connect agents to SMS, email, calendars, or your own APIs via webhooks
- Autonomous Runtime — Agents run independently, waking and sleeping on schedules
- Full Observability — Every LLM call, tool invocation, and decision is traced
Core Architecture
- Organization — your top-level tenant. Owns every template, agent, adapter, and API key. Holds the org-wide OpenAI / Anthropic keys used when Bedrock talks to a provider.
- AgentTemplate — a named blueprint: system prompt, default model, adapter set + per-adapter config, harness git ref, tool call secret.
- Agent 1, Agent 2, … — created from the template. Each agent snapshots the template’s configuration + adapter configs at creation time. Template edits don’t retroactively change live agents.
- AgentTemplate — a named blueprint: system prompt, default model, adapter set + per-adapter config, harness git ref, tool call secret.
AdapterConfig rows; each agent gets its own immutable AgentAdapterConfig snapshot.
Key Concepts
- Organization — Tenant account. Holds users, billing, LLM provider keys, and API keys.
- AgentTemplate — Blueprint for agents: prompt, model, adapter set, tool-call secret. Think of it like a Docker image.
- Agent — A running instance created from a template (or ad-hoc) with its own adapter state. Carries a
purpose(production|eval|dev) and free-form tags. - Adapter — An integration module (SMS, Email, CRM, etc.) that provides tools.
- Tool — A callable function an agent can invoke, either built-in or a webhook to your API.
Organizations
Accounts, members, invites, and organization-scoped API keys.
Templates
Blueprints for agents: prompt, model, adapters, tool-call secret.
Agents
Deploy autonomous AI instances with their own adapter state.
Adapters
Built-in integrations for SMS, email, calendars, and more.
Custom Adapters
Build your own adapters to connect agents to any API.
Notifications
Priority-based attention system that drives agent wake/sleep behavior.
Tracing
Full observability into every LLM call, tool execution, and decision.
Evaluations
End-to-end simulations driven by the external harness.
Built-in Adapters
Bedrock includes these default integrations:Custom Integrations
Build your own adapters to connect agents to any system:- Create an adapter — a named container for related tools
- Add webhook tools — each tool POSTs to your API when called
- Verify requests — check the
X-Agent-Secretheader to authenticate - Return data — your JSON response becomes the tool result the agent sees
How Agents Run
Every run spawns an isolatedbedrock-harness subprocess (pinned to the template’s harness_git_ref, or latest main if unset):
- Wake agent (API call or scheduled)
- Load memory context
- Build prompt with tools
- Call LLM (OpenAI / Anthropic)
- Execute tool calls
- Log to memory
- Repeat until agent sleeps
Use Your Own LLM Keys
Bedrock uses your LLM provider accounts:- You control costs directly with OpenAI / Anthropic
- Use any model available on your account
- Prompt caching with Claude reduces costs significantly
openai_api_key / anthropic_api_key). If unset, Bedrock falls back to OPENAI_API_KEY / ANTHROPIC_API_KEY environment variables.
Quick Links
Quickstart
Create a template and deploy your first agent
Custom Adapters
Connect agents to your own APIs
API Reference
Full endpoint documentation
Authentication
API key setup and usage