Skip to main content

A zero-dependency Python CLI toolset designed for AI agents to analyze codebases with surgical precision.

Project description

pypeeker-cli: Unified Agent-Native Python Analysis CLI

Powered by Cartograph License CI

pypeeker-cli is a zero-dependency Python CLI toolset designed for AI agents to analyze codebases with surgical precision. It transforms raw source code into structured, actionable logical maps.


Cartograph Showcase

pypeeker-cli is a premier showcase for Cartograph, a platform for reusable engineering.

Every core feature in pypeeker-cli, from AST parsing to graph cycle detection, is implemented as a standalone, validated Cartograph widget. This architecture ensures that pypeeker-cli is not just a tool, but a modular assembly of hardened building blocks that can be easily extended or repurposed.


Analysis Surface Area

pypeeker-cli categorizes its tools by Analysis Surface Area, allowing agents to choose the right depth for their task:

1. Project Scan (Horizontal)

Broad audits of the entire project tree to find relationships and hazards.

  • circular: Find import dependency loops (identifies runtime crashes vs safe TYPE_CHECKING cycles).
  • missing: Detect hallucinated or missing internal imports using Dynamic Root Discovery.
  • interfaces: Validate code contracts (flags missing docstrings and type hints).

2. Navigation (Relationship)

Pinpoint and trace symbols across file boundaries.

  • locate: Find a symbol's exact definition bounds (start/end lines) or trace its usages (--usages) and ancestry (--inherited).

3. Deep Dive (Vertical)

Surgical analysis inside a specific file or function.

  • skeleton: Extract the API surface of a file (imports, classes, variables, signatures) without function bodies.
  • flow: Map the logical control flow (pseudocode) of a function with precise line anchors.
  • impact: Analyze the blast radius of a function, distinguishing between internal and external side effects.

Installation

Install pypeeker-cli globally using pip:

pip install pypeeker-cli

(Note: While in development, you can install locally via pip install .)


Release Flow

Pypeeker uses Trusted Publishing (OIDC) via GitHub Actions.

  1. Tag a release: git tag -a v1.0.0-cli -m "Release v1.0.0-cli"
  2. Push the tag: git push origin v1.0.0-cli
  3. The pypi-publish.yml workflow will automatically build and publish the version to PyPI.

Agent Native Integration

pypeeker-cli is built to be a native plugin for AI agents using the Model Context Protocol (MCP).

Subcommand Usage

pypeeker mcp

Supported Platforms

  • Gemini CLI: extension/gemini-extension.json
  • Claude Code: .claude-plugin/plugin.json
  • Cursor and Roo Code: .cursor/mcp.json (Auto-detected)
  • Continue (VS Code / JetBrains): .continue/mcpServers/pypeeker.json
  • Windsurf: .windsurf/mcp_config.json

Reusable Core

Built using the following Cartograph Widgets (found in cg/):

  • cg-infra-agent-cli-python: Machine-first declarative CLI framework.
  • data-ast-import-parser-python: Root-aware static import analysis.
  • data-ast-skeleton-parser-python: API signature extraction.
  • data-ast-symbol-locator-python: Surgical symbol pinpointing and ancestry.
  • data-ast-interface-validator-python: API gap detection.
  • data-ast-flow-mapper-python: Logical pseudocode generation.
  • data-ast-impact-analyzer-python: Side-effect and dependency mapping.
  • infra-mcp-manifest-generator-python: Automated distribution scaffolding.
  • universal-agent-response-python: Standardized JSON schema.
  • universal-list-paginator-python: Result set pagination.

License

Licensed under the Apache License, Version 2.0. See the LICENSE file for details.

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

pypeeker_cli-1.0.0.tar.gz (47.3 kB view details)

Uploaded Source

Built Distribution

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

pypeeker_cli-1.0.0-py3-none-any.whl (66.1 kB view details)

Uploaded Python 3

File details

Details for the file pypeeker_cli-1.0.0.tar.gz.

File metadata

  • Download URL: pypeeker_cli-1.0.0.tar.gz
  • Upload date:
  • Size: 47.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pypeeker_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2d28cfa85f49aa6bfcc5c92d3d8b41df54720d346d231241d9070a7dff1ac581
MD5 e2f0a3efce2bed37e2b2628f24eb8cdf
BLAKE2b-256 a2a1e29ad7ccdb669089c2b42678be426e295ece4ff7c76a1c54ad6834ff5f96

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypeeker_cli-1.0.0.tar.gz:

Publisher: pypi-publish.yml on benteigland11/pypeeker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pypeeker_cli-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pypeeker_cli-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 66.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pypeeker_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e8320dffd25d02f0af552f3353fd75e79ffd31f6a5b50535f986f2bdfd3e8d03
MD5 e5c3906564b28f32c531c540cf11410a
BLAKE2b-256 19426d0d146b9eebdf8a8ae551f855f0110a2c2ce084e7af4a2459e59080ef06

See more details on using hashes here.

Provenance

The following attestation bundles were made for pypeeker_cli-1.0.0-py3-none-any.whl:

Publisher: pypi-publish.yml on benteigland11/pypeeker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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