python-explore

A Python code-exploration skill that maps how modules, classes, functions, imports, and subclasses are connected before code is changed.

In plain words
What is it for?
Use it to navigate, debug, refactor, extend, or explain Python code and follow calls or dependencies across files.
Why use it?
It helps an agent understand an unfamiliar Python codebase and trace where behavior comes from without reading every file first.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/okeefeco/pyeye-mcp/python-explore
Any agent
npx skills add okeefeco/pyeye-mcp --skill python-explore
Clone the repo
git clone --depth 1 https://github.com/okeefeco/pyeye-mcp

Made for: Claude Code, Codex.

Per session 144 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 5,708 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00144 $0.05708
Opus 5 $0.00072 $0.02854
Sonnet 5 $0.00029 $0.01142
Haiku 4.5 $0.00014 $0.00571

Measured yesterday against content hash a48061027389, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

python-explore scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/python-explore/SKILL.md · 440 lines

How it starts

The opening of the file, as written. The whole thing — 440 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Python Explore

Build a structural model of Python code with pyeye before reading or changing it — orient cheap, drill on demand.

The Model: Progressive Disclosure

pyeye answers questions in three widening steps. Start at the cheapest that answers your question; only go wider when you need to.

  1. Orient (cheap): resolve a name to a canonical handle, then inspect it for structure, or outline a module/class for its skeleton.
  2. Drill (on demand): expand one edge from a handle to see its immediate neighbours (members, callees, importers, subclasses…).
  3. Trace (across hops): trace follows edges multiple hops to see structure across a call chain, import closure, or member tree.

Canonical handles are the currency. A handle is Python's own dotted notation — a.b.c.Name — anchored at the definition site, stable across edits, and the same no matter which import alias you arrived through. Everything downstream takes a handle. pyeye returns pointers and structured facts, never source — when you need the actual code, Read the file:line it points you at.

Skill Type: Mixed Rigid/Flexible

Rigid gates (non-negotiable):

  • Your first move on unfamiliar Python is pyeye, not a blind Read().
  • Never re-explore what pyeye already surfaced in this conversation.

Flexible (use judgement):

  • How deep to go (a single inspect, or a multi-hop trace).
  • Which primitives and edges to call.
  • Whether to write out a mental-model summary — do it when it helps the user, not as ceremony (see Stating Your Mental Model).

Do NOT Trigger When

  • User says "show me", "print", "display", "read this file" — respect explicit requests, use Read().
  • User says "run", "execute" — that is not exploration.
  • User asks "what's the syntax for" — a language question, not a codebase question.
  • Single-line typo/string fix where the user gives the exact location.
  • Adding a new test case only (not modifying the code under test).
  • pyeye output for this symbol is already visible in conversation context — skip straight to using it.

Read the full file on GitHub · 440 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 440 lines · 144 tokens per session scan A a48061027389

Subscribe to this mod's changes

python-explore is a skill published in the GitHub repository okeefeco/pyeye-mcp (0 stars, last pushed 22d ago), licensed MIT. It adds 144 tokens to every session and 5,708 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

repomix

Pack and analyze codebases into AI-friendly single files using Repomix. Use when the user wants to explore repositories, analyze code structure, find patterns, check token counts, or prepare codebase context for AI analysis. Supports both local directories and remote GitHub repositories.

yamadashy/repomix · 58 tokens

knowledge-base

Create and maintain a Markdown knowledge base that any AI agent can read, search, and update. Use when the user wants to start a knowledge base, add or update notes, organize docs/notes for an agent or LLM to consume, build an index of notes, or run a cleanup/maintenance pass on an existing MD knowledge base. Triggers…

wonderwhy-er/DesktopCommanderMCP · 112 tokens

obsidian-vault

Organize Obsidian vaults with MOCs, wikilinks, frontmatter/properties, dashboards, orphan-note checks, and cleanup workflows. Use ONLY when the user explicitly refers to Obsidian — by naming "Obsidian", an Obsidian "vault", or an Obsidian-specific feature such as wikilinks ("[[ ]]"), the Dataview or Bases plugins, or…

wonderwhy-er/DesktopCommanderMCP · 171 tokens

ix

This skill should be used when answering structural questions about a codebase: understanding what a symbol is, tracing flows, measuring change impact, finding callers/callees/imports, or detecting code smells. It drives the Ix CLI (ix map/explain/trace/impact/search/rank/smells) against a persistent code graph stored…

ix-infrastructure/Ix · 103 tokens

truecourse-hooks

Install, configure, or remove the TrueCourse pre-commit hook.

truecourse-ai/truecourse · 17 tokens

cymbal

Tree-sitter indexed code navigator. Use the cymbal CLI — not Read, Grep, Glob, or Bash — for finding where symbols are defined, tracing callers and callees, locating interface implementations, understanding the impact of a change, and mapping imports across an existing codebase. Returns precise, token-efficient…

1broseidon/cymbal · 89 tokens