- Architecture comparison (OpenClaw daemon vs AgentCore serverless) - Component compatibility analysis - Fargate analysis - AgentCore rebuild plan (Telegram, zero always-on compute) - Memory strategy: AgentCore Memory + factbase as structured KB - Serverless relay patterns per channel - All open questions resolved - OpenClaw feature delta March→May 2026 - Build phases and cost estimates
1.8 KiB
1.8 KiB
Framework & Runtime Notes
OpenClaw's Agent Framework
OpenClaw does not use any mainstream agent framework. No LangChain, LangGraph, CrewAI, Strands, or similar.
Custom Stack: pi-mono
The agent runtime is built on pi-mono by Mario Zechner (@mariozechner), a custom TypeScript agent runtime:
| Package | Role |
|---|---|
@mariozechner/pi-agent-core |
Core agent loop: LLM call → tool parse → execute → loop |
@mariozechner/pi-ai |
LLM provider abstraction (Bedrock, Anthropic, OpenAI, Ollama, etc.) |
@mariozechner/pi-coding-agent |
Coding agent runtime (Codex/Claude Code style sub-agents) |
@mariozechner/pi-tui |
Terminal UI for interactive sessions |
OpenClaw Owns Everything Else
On top of pi-mono, OpenClaw implements:
- Session management (JSONL transcripts, compaction, pruning)
- Channel routing (inbound message → agent → response → channel)
- Tool wiring (exec, read, write, edit, browser, canvas, nodes, message, etc.)
- Context engine (system prompt construction, bootstrap file injection)
- Heartbeat / Cron scheduling
- Device pairing and trust
- Config management and hot-reload
- Multi-agent routing
- Webhook/hook system
Observability
No LangSmith, LangFuse, Arize, or OpenTelemetry integration.
- Internal JSONL session transcripts
- stdout/stderr logging (CloudWatch-compatible)
openclaw logs --followfor live tailing- Control UI for session inspection
Implications for AgentCore
- No off-the-shelf framework adapter for AgentCore (unlike LangGraph/Strands starters)
- Would need custom
/invocations+/pingHTTP wrapper around pi-mono - LLM provider layer (
pi-ai) could potentially be swapped for direct Bedrock SDK calls - Tool definitions would need to be re-expressed as AgentCore-compatible tool schemas
Added 2026-03-10