Website · Docs · Discord · Install · Commands
Beacon captures agent session history across Claude Code, Cursor, Codex, OpenCode, and 20+ other harnesses, then turns useful workflows, corrections, and debugging patterns into reusable knowledge for future agents.
A problem solved by one agent shouldn't need to be learned from scratch by another.
Beacon Overview
Beacon is an open-source memory layer for AI coding agents that learns from your work across Claude Code, Cursor, Codex, OpenCode, and 20+ other harnesses. It captures full session history, identifies useful workflows, corrections, and debugging patterns, and makes that knowledge reusable by future agents. Built for developers who want agent knowledge to compound across tools instead of disappearing when a session ends.
Key Capabilities:
- Cross-harness history - sessions from Claude Code, Cursor, Codex, OpenCode, Cline, and 20+ harnesses in one place
- Knowledge that compounds - workflows, corrections, debugging patterns, and repo conventions that survive beyond a single session
- Shared agent memory - reviewed knowledge future agents can retrieve through MCP or Agent Skills
- Exact session replay - prompts, responses, tools, commands, edits, approvals, MCP activity, and tokens in one trace
- Local-first portability - durable JSONL, explicit destinations, and no harness lock-in
🚀 Quick Start
Beacon is open source and local-first. Interactive endpoint setup signs in through beacon.sh and preselects Beacon Managed, with an explicit Local opt-out. Nothing is forwarded until the separate connect step. System, package, MDM, and CI installation paths remain noninteractive and account-free.
1. Install Beacon
macOS
brew trust asymptote-labs/tap
brew tap asymptote-labs/tap
brew install beacon
beacon endpoint installLinux
Download the .deb or .rpm from the latest release.
sudo apt install ./beacon_<version>_linux_amd64.debor:
sudo dnf install ./beacon_<version>_linux_amd64.rpmWindows
Download the x64 MSI from the latest release.
msiexec /i BeaconEndpointAgent-<version>-x64.msiFor silent installation:
msiexec /i BeaconEndpointAgent-<version>-x64.msi /qn2. Use your agents normally
Open Claude Code, Cursor, Codex, or any other supported harness.
Beacon continuously captures your session history in the background
3. Explore your history
beacon tracesThis opens a local terminal browser for traces, event timelines, token usage, and retained content. Nothing is sent anywhere. To use the local web view instead:
beacon endpoint dashboardOr inspect the raw event stream:
~/.beacon/endpoint/logs/runtime.jsonl[!NOTE] Local until connected: signing in or accepting the preselected Managed option does not enable forwarding. The onboarding wizard records Standard or Metadata-only privacy;
beacon endpoint connectuses that choice, or--privacy-modeoverrides it.
Inspect the account used during interactive setup:
beacon whoami🧠 Turn Session History Into Memory
Every agent session contains potentially useful knowledge about your codebase.
Beacon creates a loop around that history:
Run agents
↓
Capture session history
↓
Evaluate what worked
↓
Extract useful knowledge
↓
Review + approve
↓
Reuse across future agentsThat could be:
- the right way to run a migration
- a debugging path that finally fixed an obscure issue
- a testing convention agents repeatedly get wrong
- a repository-specific workflow
- the right sequence of internal tools
- a correction you've given multiple agents
Instead of disappearing into old sessions, that knowledge becomes reusable.
🔀 Cross-Harness by Design
Most agent memory belongs to a single harness.
Beacon sits across the harness layer.
Claude Code ─┐
Cursor ──────┤
Codex ───────┼──→ Beacon ──→ shared project knowledge
OpenCode ────┤
Cline ───────┘Because Beacon captures and normalizes session history across tools, knowledge learned through Claude Code doesn't have to stay in Claude Code.
Your Cursor sessions can improve Codex.
Your Codex sessions can improve OpenCode.
Your history keeps compounding even as you switch tools.
Your agent session history belongs to you, not the harness.
🔎 One Trace Format for Every Agent
Beacon captures agent execution where it happens and normalizes it into a common OpenTelemetry-based event model.
That includes:
- sessions
- prompts and responses
- tool calls
- commands
- file activity
- approvals
- MCP interactions
- token usage
Instead of separate proprietary histories for every coding tool, you get one dataset you can inspect, search, learn from, and build on.
🖥️ Local Dashboard
Beacon ships with a local, read-only dashboard:
beacon endpoint dashboardUse it to explore session history across harnesses and understand what your agents actually did.
The underlying JSONL remains directly accessible, so you're never dependent on the UI.
Supported Agents
Beacon supports local agents, browser agents, cloud agents, CI workflows, and agent SDKs.
Local Agent Coverage
| Runtime | Collection | Session | Prompt | Tool | Command | File | Approval | MCP | Tokens |
|---|---|---|---|---|---|---|---|---|---|
| Antigravity CLI | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | – | – | – |
| Claude Code | OTLP + hooks + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Claude Cowork | OTLP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Cline | Plugin + poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ✅ |
| Codex CLI | OTLP + hooks + poll | ✅ | ✅ | ✅ | ✅ | – | ✅ | – | ✅ |
| Codex Desktop | OTLP | ✅ | ✅ | ✅ | ✅ | – | ✅ | – | ✅ |
| Cursor | Hooks + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – |
| DeepSeek Harness | Hooks + poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ✅ |
| Devin CLI | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – |
| Devin Desktop | Hooks | – | ✅ | ✅ | ✅ | ✅ | – | ✅ | – |
| Factory Droid | OTLP + hooks + poll | ✅ | ✅ | ✅ | – | ✅ | ✅ | – | – |
| fx (Vercel Labs) | Poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ✅ |
| Gemini CLI | OTLP | – | ✅ | ✅ | – | ✅ | ✅ | ✅ | – |
| GitHub Copilot CLI | OTLP + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ |
| goose | Adapter only; manual hooks/OTLP | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ✅ |
| Grok Build | Hooks + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – | – |
| Hermes Agent | Hooks + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – |
| Kimi Code | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – |
| Kiro | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | – |
| Muse Code | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – | – |
| Oh My Pi | Extension | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| OpenClaw Gateway | Plugin + OTLP + poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ~ |
| OpenCode | Plugin + poll | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| OpenHands | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | – |
| Pi | Extension + poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | ✅ | ✅ |
| Prime Agent | Extension + poll | ✅ | ✅ | ✅ | ✅ | ✅ | – | – | ✅ |
| Qwen Code | Hooks | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | – | – |
| Senpi | Extension | ✅ | ✅ | ✅ | ✅ | ✅ | – | – | ✅ |
| VS Code | OTLP + hooks | ✅ | ✅ | ✅ | ~ | ~ | – | ~ | – |
Browser Chat
| Site | Collection | Prompt | Response | Tool | Tokens |
|---|---|---|---|---|---|
| Claude.ai | Extension → local OTLP | ✅ | ✅ | ✅ | ~ |
| ChatGPT | Extension → local OTLP | ✅ | ✅ | ✅ | – |
Cloud Agents
| Runtime | Collection | Session | Prompt | Tool | Command | File | Tokens |
|---|---|---|---|---|---|---|---|
| Claude Code Cloud Agents | Sandbox hooks → GCS or S3 | ✅ | ✅ | ✅ | ✅ | ✅ | – |
| Cursor Cloud Agents | Sandbox hooks → GCS or S3 | – | ✅ | ✅ | ✅ | ✅ | – |
| Devin Cloud Agents | API poll → GCS | ✅ | ✅ | – | – | – | ✅ |
| CI jobs | beacon ci exec → temporary local collector | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
SDK Instrumentation
| SDK Surface | Collection | Captures |
|---|---|---|
| Anthropic | OpenLLMetry through @asymptote/sdk | Model call spans, errors, and OTel attributes |
| OpenAI | OpenLLMetry through @asymptote/sdk | Model call spans, errors, and OTel attributes |
| Claude Agent SDK | Observe.wrapClaudeAgentQuery() | Query root spans with Beacon-compatible prompt attributes |
| Vercel AI SDK | experimental_telemetry tracer handoff | Model call and tool spans where telemetry is enabled |
Output Destinations
Beacon writes endpoint telemetry to local JSONL by default.
You can also forward the same normalized session history into infrastructure you already use:
Splunk · Datadog · Elastic · Microsoft Sentinel · CrowdStrike Falcon LogScale · Sumo Logic · Wazuh · AWS S3 · GCS · CloudWatch
| Destination | Category | Support Path |
|---|---|---|
| Local JSONL | Local | Default endpoint log and local dashboard source |
| Beacon Managed | Hosted forwarding | Signed-in device enrollment with Standard or Metadata-only privacy |
| CrowdStrike Falcon LogScale HEC | SIEM | Endpoint forwarding with LogScale ingest tokens |
| Microsoft Sentinel | SIEM | Azure Monitor Agent and Data Collection Rule content pack |
| Rapid7 InsightIDR | SIEM | Custom Logs webhook content pack |
| Splunk HEC | SIEM | Endpoint forwarding during install or repair |
| Sumo Logic | SIEM | HTTP Logs & Metrics Source content pack |
| Wazuh | SIEM | Localfile configuration and Beacon content pack |
| AWS CloudWatch Logs | Log aggregation | Vector content pack |
| Datadog | Log aggregation | Datadog Agent custom log collection |
| Elastic | Log aggregation | Filebeat or Elastic Agent |
| Customer-managed pipelines | Log aggregation | Forward directly from local Beacon JSONL |
| AWS S3 | Object storage | Vector, CI upload, or cloud-agent snapshots |
| Google Cloud Storage | Object storage | Vector, CI upload, or cloud-agent snapshots |
Architecture
Beacon captures activity where agents actually run and normalizes it into one shared event model.
Local agents ───────┐
Browser chat ───────┤
CI ─────────────────┼──→ Beacon ──→ unified session history
Cloud agents ───────┤ │
Agent SDKs ─────────┘ ├──→ local JSONL
├──→ reviewed memory
├──→ MCP / Agent Skills
└──→ your own infrastructureSee the documentation for the full architecture breakdown.
Documentation
Read the docs for:
- installation
- supported runtimes
- event schema
- session history
- memory
- MCP
- Agent Skills
- forwarding
- advanced configuration
Contributing
Contributions are welcome.
Open an issue, submit a pull request, or join the Discord.