Context Observability
Monitor every agent session, trace every decision, and track every token
Built-in dashboards, agent task tracking, and session analytics. Understand what your agents are doing — and why.
What You Can Observe
Every dimension of your agent's behavior — tasks, traces, and usage.
Agent Tasks
Automatically extract and track tasks from agent sessions. See what your agents committed to do, what they completed, and what they missed.
Traces
OpenTelemetry-compatible distributed tracing across your agent pipeline. Follow requests from API call through LLM invocation to tool execution.
Session Analytics
Track token usage, session duration, and message volume across projects. Identify patterns and optimize your agent workflows.
How It Compares
Acontext observability is purpose-built for AI agent sessions — not retrofitted from generic APM.
| Acontext | LangSmith | Custom Build | |
|---|---|---|---|
| Agent task extraction | |||
| Session-level analytics | Manual | ||
| Token usage tracking | Manual | ||
| OpenTelemetry traces | |||
| Built-in dashboard | |||
| Zero-config setup | |||
| Self-hostable |
How It Works
Zero-config observability — just use Acontext sessions, and insights appear automatically.
from acontext import AcontextClient
client = AcontextClient()
# Sessions are automatically tracked
session = client.sessions.create(user="alice")
# Store messages — observability is automatic
client.sessions.store_message(
session.id,
blob={"role": "user", "content": "Deploy v2.1"}
)
# Tasks are extracted automatically
# View them in the dashboard or via API
tasks = client.sessions.get_tasks(session.id)
for task in tasks.items:
print(task.data.description, task.status)# Get token usage for a session
token_counts = client.sessions.get_token_counts(
session.id
)
print(f"Tokens: {token_counts}")
# Get extracted tasks for a session
tasks = client.sessions.get_tasks(
session.id
)
for task in tasks.items:
print(f"{task.data.description}: {task.status}")
# Check message observing status
status = client.sessions.messages_observing_status(
session.id
)
print(f"Observed: {status}")