TMA1 plugin
Local observability for agents: records LLM calls and returns anomalies and context into the next Claude Code and Codex turn.
- 124 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- Hooks register on 27 Claude Code events and observe agent actions.
- Installation uses a `curl ... | bash` script and sets up a background service.
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add plugins/tma1Detects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Hooks register on 27 Claude Code events and observe agent actions.
- Installation uses a `curl ... | bash` script and sets up a background service.
This is third-party code. Review the repository files before installing.
What it does
TMA1 is a single binary built on GreptimeDB that records LLM calls, tokens, cost, latency and tool activity on your machine for Claude Code, Codex, Copilot CLI, OpenCode and apps emitting GenAI traces. Data lives in `~/.tma1/`, and the dashboard opens at `http://localhost:14318`. The plugin feeds what it sees back to the agent. Before a turn, hooks add a `<tma1-context>` block: what was done in the session, which files changed outside it, whether the build is broken and any anomalies. Ten MCP tools, including `search_sessions`, `get_peer_sessions` and `exec_query`, answer on demand. The `/tma1-peer codex` command lets Claude Code read Codex's work on the same project.
Who it is for. People who work in Claude Code and Codex at once and want the agent to see its own history, build breakage and the neighbouring agent's work.
Good fit when
- The agent forgot last week's discussion and past sessions are searched with `/tma1-search retry backoff`.
- Claude Code and Codex work on one project, and Claude reads Codex's edits through `/tma1-peer codex`.
- The build broke outside the agent, and it receives the latest build output and external file changes.
- You need tokens, cost and latency per session, with tables and SQL over the raw data.
Not a fit when
- You need to block dangerous actions: anomalies are advisory and do not stop the `Stop` hook.
- The agent is not on the list: Claude Code, Codex, Copilot CLI, OpenCode and GenAI-trace apps are supported.
- Request content cannot be stored even locally.
Example request
Find past sessions where we discussed retry backoff and show what Codex changed in this project.Limitations
All TMA1 releases are pre-releases. The installer registers a background service and 27 Claude Code hook events, five of which inject context into the response. Cost estimates use API prices checked on 30 October 2026 and skip unknown models, subscriptions, batch and flex modes. An on-demand model review sends the selected request and conversation excerpts to the configured provider. Data stays in `~/.tma1/`, and the local server listens on ports `14318`, `14000` and `14002`.
How to disable. Remove the `tma1` entry from the MCP configuration and the hooks from the agent settings, stop the background service and delete `~/.tma1/`. The Windows procedure is in the README Install section.
FAQ
What does TMA1 add to an agent turn?
A `<tma1-context>` block: session actions, external file changes, build state and anomalies. If the server is unreachable or slow, the hook returns empty output and the agent continues without the block.
Which MCP tools are available?
Ten: `get_context_bundle`, `get_session_state`, `get_anomalies`, `get_build_status`, `get_external_changes`, `get_project_state`, `get_peer_sessions`, `search_sessions`, `get_session_transcript` and `exec_query`. `tma1-server mcp-serve` starts the server.
How do I search past sessions?
With `/tma1-search <words>`; `--all-projects` widens the scope to all projects and `--days N` the window. Open a session by id with `--session`.
Are Docker or a cloud needed?
No. It is one binary with GreptimeDB inside, data is stored locally, with no Grafana and no cloud account.
How do I connect Codex?
Install with `TMA1_ADAPTER=codex` or `all`. Codex gets five hooks, four of which inject context.
Discussion
No questions or reviews yet.
Related
PluginsClawMetry reads the session files agents already write and shows the timeline, tool calls, tokens and cost in one dashboard.
A local MCP memory server for coding agents: decisions, errors and facts stay on your machine, with semantic and graph recall
A top-style terminal dashboard for Claude Code and Codex sessions: spend, tokens, context load, processes and tool calls.
A local real-time dashboard for Claude Code and Codex sessions: agent activity and tool calls
A tmux-based TUI that runs Claude Code, Codex and other agents in one list: status, quick prompts, worktrees and diff review
Local memory layer: imports Claude Code, Codex and mem0 memory into SQLite and serves it back to agents over CLI and MCP.
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| TMA1 (this card) | no | 124 | |
| AI Observer | no | 292 | AI Observer shows tokens, cost and latency; TMA1 returns anomalies and context into the agent turn and searches past sessions |
| TokenTelemetry | no | 388 | tokentelemetry keeps a local token and cost dashboard; TMA1 adds hooks, MCP tools and reading a neighbouring agent's work |
README in short
The server ingests OTLP, hook events and JSONL transcripts, stores them in GreptimeDB and serves an embedded dashboard. The same data returns to the agent through hooks and MCP, so observation shapes the next turns.