# Peektrace

See exactly what is loaded in your coding agent's context window.

Local-first inspector for the context window your coding agent never shows you. Audit what a session spent its budget on, when it crossed into the dumb zone, and which tools the model called — across Claude Code, Codex and Pi.

**Status:** beta
**Category:** cli
**Price:** Free & open source
**Platforms:** macOS, Linux, Windows
**Tags:** CLI, Coding Agents, Local-first, Effect-TS, TypeScript

![Peektrace](https://lxbpjvrr41.ufs.sh/f/6KZjuRTQYJxH49fTuIKKo3PNbd8ZFSum9MVt6rsf4aXBhvW7)

---

## Install

```bash
curl -fsSL https://raw.githubusercontent.com/Mark-Life/peektrace/main/scripts/install.sh | sh
```

You cannot see what is actually loaded in your coding agent's context window. Peektrace shows you: where the budget went, when the session drifted out of the smart zone, which tools the model called, and what loaded before you typed a word.

`peektrace serve` boots the inspector and opens the browser on three sections.

## Sessions

Every Claude Code, Codex and Pi session, filterable by agent. Open one for full context-budget forensics. It charts peak context against the window, then partitions that peak: system and tool definitions, `CLAUDE.md` / `AGENTS.md`, files, prompts, tool results, and the hidden thinking band. A growth timeline marks the turn the session crossed into the dumb zone and every compaction cliff after it. Loaded artifacts and every tool call sit in a searchable history.

## Memory

Claude only. View, create, edit and delete memories across every project. The `MEMORY.md` budget gauge marks the 200-line / 25 KB cliff and flags below-fold entries `INVISIBLE TO CLAUDE`. It also renders a wikilink graph, diffs the index against the files on disk, and writes back atomically.

## Capabilities

A feature-by-agent matrix over Claude, Codex, Pi and OpenCode. Every cell says why it is supported, partial, planned or unsupported. OpenCode is the column that shows the gap.

By default nothing leaves the box: the server binds `127.0.0.1`, transcripts are secret-redacted, no memory or transcript is ever sent to a model, and telemetry is a local SQLite file you can kill with `--no-telemetry`.

The same binary is scriptable one-shot: `peektrace sessions ls`, `peektrace sessions analyze <session-id>`, `peektrace memory ls`. Add `--json` to pipe it, `--read-only` to refuse every write.

## Windows

The native installer is the only channel. Peektrace is not on npm.

```powershell
irm https://raw.githubusercontent.com/Mark-Life/peektrace/main/scripts/install.ps1 | iex
```

## Links

- Product page: https://andrey-markin.com/products/peektrace
- All products: https://andrey-markin.com/products.md
- GitHub: https://github.com/Mark-Life/peektrace
- Contact: https://andrey-markin.com/#contact
