Skip to main content

agentpeek

PyPI Python License

A TUI for inspecting agent CLI configurations: what's installed, what's enabled, what's broken.

agentpeek scans your Claude Code config (~/.claude/ and any project-level .claude/ directory it finds by walking up from cwd) and surfaces every loose file the agent depends on: settings, hooks, slash commands, memory files, MCP servers, user/project subagents, path-scoped rules, installed plugins (with their full contents: manifest, skills, agents, commands, hooks, MCPs), and any health warnings detected during the scan.

Install

pipx install agentpeek

Then:

agentpeek                      # scan ~/.claude and the nearest project .claude
agentpeek --root /path/to/dir  # scan a specific directory
agentpeek --version

Requires Python ≥ 3.11. Linux and macOS only.

What you get

  • Three-zone TUI: sidebar of 11 categories on the left, items list in the middle, detail pane on the right. Drill-down on every category.
  • Multi-scope: user-scoped (~/.claude/) and project-scoped (.claude/ found by walking up from cwd) configurations shown side by side with [U] / [P] badges. Health checks compare the two and flag conflicts.
  • Subagents: user and project agents under agents/*.md are scanned recursively, with full frontmatter (tools, model, permission mode, memory scope, color, and the rest) shown in the detail card.
  • Path-scoped rules: .claude/rules/*.md files at user and project scope are listed with their paths: globs (or marked "always loaded" when the field is absent), so you can answer "why is Claude doing X here?" by category instead of by guessing.
  • Plugin contents: every installed plugin is opened up: manifest, skills, agents, slash commands, hooks, MCP servers, and the marketplace's auto-update state. Plugin-contributed commands / hooks / MCPs also merge into the top-level categories with a [plug:<id>] provenance tag.
  • Memory layer: CLAUDE.md, CLAUDE.local.md (project-root personal overrides), and subagent persistent memory directories (agent-memory/ and agent-memory-local/) are all surfaced. CLAUDE.md @path/to/file imports are resolved recursively (up to 5 hops, cycles detected) so you see what Claude actually loads.
  • Auto-memory: Claude Code project memories under ~/.claude/projects/<encoded>/memory/ are scanned and labelled with their actual project path (resolved from session logs, not the lossy directory encoding).
  • ~/.claude.json: user-scope MCP servers, per-project trust state (allowed tools, enabled / disabled .mcp.json servers), and OAuth session presence (display-only - the token value is never read or shown). Folded into the MCP and Settings cards.
  • Health checks: orphan hook scripts, missing plugin install paths, conflicting key bindings, scope override conflicts, cross-scope layered memory, hooks referencing dynamic env vars (${CLAUDE_PROJECT_DIR}, $HOME, ...) flagged so you know which won't resolve at scan time, and more. Severity-coloured warning cards in the detail pane.
  • Write actions: update, enable/disable, uninstall a plugin or refresh a marketplace without leaving the TUI. Calls shell out to claude plugin ...; agentpeek never edits Claude state files directly. Re-scan is automatic after every action. Pass --read-only to disable.

Keybindings

Key Action
↑ / ↓ Move within the focused list
Tab / Shift+Tab Move focus between sidebar / items / detail
Enter Drill into the highlighted item; on a Skills or Agents row inside a plugin, opens a detail modal
r Re-scan disk
o Open the highlighted item's file in $EDITOR (TUI suspends + resumes)
y Yank the highlighted item's path to the clipboard (OSC 52)
b Yank the rendered body. Works on memory entries, slash commands, skills, agents, hooks
u Update the highlighted plugin
U Update all installed plugins (progress in the title bar)
t Toggle enable / disable for the highlighted plugin
x Uninstall the highlighted plugin (confirms first)
M Refresh the highlighted marketplace
/ Show + focus the filter input (live-filters the items list)
Esc Clear filter and refocus items
? Help overlay listing every binding
q Quit

The filter shows (filtered: N / M) in the title while active. Press Enter inside the filter to keep the filter and jump back to the items list; press Esc to clear.

Theming

Built on Textual: the theme follows Ctrl+P (palette) and reflows colours across cards, borders, badges, and severity indicators. Default theme is textual-dark.

Supported agent CLIs

  • Claude Code: full support today.
  • Support for other agents (Codex, Gemini CLI, Cursor) coming.

License

GPL-3.0-only. See LICENSE.

Metadata

Release files for agentpeek 0.13.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agentpeek 0.13.0
File Size Uploaded
agentpeek-0.13.0.tar.gz 67.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agentpeek 0.13.0
File Interpreter ABI Platform
agentpeek-0.13.0-py3-none-any.whl Python 3 none any Details

Total release size: 143.6 kB

Release files / agentpeek-0.13.0.tar.gz

Download URL agentpeek-0.13.0.tar.gz
Size 67.1 kB
Tags Source
SHA-256 checksum
How to use checksums
744b9920e4fc140e0154c3f53ef40efa6e18909fae38412faa751076b853f9cd
BLAKE2b-256 checksum
How to use checksums
0c754ac3d329c6727fa1fc5ec8fef730a143054decbe9e5230958bc925f4e008
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / agentpeek-0.13.0-py3-none-any.whl

Download URL agentpeek-0.13.0-py3-none-any.whl
Size 76.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
876879f26f5567dd35f33a3450f27f094aa61cd61d2ffacf2a3628c98c3e44a4
BLAKE2b-256 checksum
How to use checksums
81be6e96ecfe499e455abc17c08c8d316801ffb3e1fd100311681d7b924a46b8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.13.0 This release

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.9.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page