Skip to main content

TUI inspector for agent CLI configuration directories like ~/.claude/.

Project description

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, 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 9 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.
  • 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.
  • 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).
  • 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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentpeek-0.12.1.tar.gz (60.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentpeek-0.12.1-py3-none-any.whl (69.8 kB view details)

Uploaded Python 3

File details

Details for the file agentpeek-0.12.1.tar.gz.

File metadata

  • Download URL: agentpeek-0.12.1.tar.gz
  • Upload date:
  • Size: 60.4 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for agentpeek-0.12.1.tar.gz
Algorithm Hash digest
SHA256 870518806e1cf870bc6266697ae06da51c5ded80359e2b5a32cf53aacdc4702e
MD5 db7d5c091cbcf23f15c35837717215c8
BLAKE2b-256 ffb29ec46b63c8e75a5b37ed452f06b7922da15d13a98c2916243650ec14affe

See more details on using hashes here.

File details

Details for the file agentpeek-0.12.1-py3-none-any.whl.

File metadata

  • Download URL: agentpeek-0.12.1-py3-none-any.whl
  • Upload date:
  • Size: 69.8 kB
  • Tags: Python 3
  • Uploaded using 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}

File hashes

Hashes for agentpeek-0.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0535c0ec2767660e6530e92db7d031e98724a897b24e12baa2d27a0725739b78
MD5 7976697ab95f2317ffd80d6a11f44c92
BLAKE2b-256 a580d592de8c092402a39a9ff2fbbe7edce030d5a7323ea68e746a30a201b29d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page