Documentation Index
Fetch the complete documentation index at: https://docs.amika.dev/llms.txt
Use this file to discover all available pages before exploring further.
Research preview. Interfaces, config formats, and CLI commands described
here may change before general availability. Reach out on
Discord or email
help@amika.dev to join the early access program.
- Locally, against the normal
claudeandcodexCLIs you already use. Runamikalog initonce and new sessions are captured as they run — no change to how you invoke the agent. - On an Amika sandbox, capture is pre-installed and enabled by default, so anything you drive is instrumented automatically — the Claude or Codex CLI on the sandbox, chatting in the web UI, or programmatically messaging an agent.
- Cost and analytics. See what your agents did and at what cost — sliced by user, repo, agent, or model.
- Memory. Search past work to recall how a similar problem was solved, what was decided, and which files were touched.
- Mining. Background jobs read past sessions to file follow-up tickets, encode user corrections into durable rules, and start parallel work.
What gets captured
For each session, capture records:- Messages — every turn, in order, with the author (which user sent it) and the source (web, Slack, or API).
- Model and usage — model name and version, input / output / cache-read / cache-write tokens, and dollar cost per message and per session.
- Tool calls — tool name, argument summary, outcome, and duration.
- File changes — repository, path, and change kind for every file the agent touched.
- Git commits — hash, branch, commit message, and the turn that produced each commit.
- Environment — agent CLI version, sandbox identifier, and the system prompt and rules in effect at run time.
Set up capture
Capture is split across two CLIs, both included in the standardamika install — there is nothing extra to download:
amikalog— one-time setup on each machine where you want capture to run.amika sessions ...— list, fetch, and work with captured data (covered below).
On your local machine
Initialize once:init detects the agent CLIs already on your machine (Claude Code, Codex,
OpenCode) and wraps each so that new sessions are captured as they run. It
also picks up the amika sandbox agent-send command if you use it.
To stop capturing on this machine:
On an Amika sandbox
Sandboxes haveamikalog pre-installed and capture enabled by default,
configured to use the Amika sink (covered below). To turn it off for a
sandbox, set capture.enabled = false in its .amika/config.toml:
Where sessions are stored
Capture supports two sinks. Pick one atinit time; switch later with
amikalog config sink local or amikalog config sink amika. Switching
redirects new events — existing data stays where it was written.
Local files (default)
amikalog writes one JSONL file per session to
~/.local/share/amikalog/sessions/. Each line is a single event with an
event_type of message, tool_call, file_change, or commit. This
sink is free, works offline, and is easy to grep:
jq. The aggregated cost dashboard in the web UI is only
available with the Amika sink.
Local-sink sessions are only visible to amika sessions commands run on
the same machine. They do not appear in the web UI, and other people in
your organization cannot see them.
Stream to Amika
Sign in withamika auth login, then configure the sink
to stream to Amika:
View and use captured sessions
In the web UI
When you stream to Amika, a session browser appears in app.amika.dev under Sessions:- List view — every session with its title, agent, repo and branch, status, cost, commit and file counts, participants, and timestamps. Filter by repo, agent, user, date, or cost.
- Timeline view — the event stream for a single session. Messages, tool calls, file changes, and commits inline in order. Each commit links to its diff or PR; each turn shows its own cost.
- Cost dashboard — spend by organization, user, repo, agent, and model over time.
From the CLI
List recent sessions (reads from the configured sink):amika sessions fetch inside a sandbox, or if you run it on your
local machine, you can mount the fetched sessions into the sandbox: