Skip to main content

dekko

CI PyPI Downloads Python License: MIT Ruff

Ever watched your coding agent grep blind through a repo, open three files it didn't need, and burn fifteen thousand tokens just to answer "who calls this function"? That's the problem dekko exists to fix.

dekko demo: mapping a repo and querying a symbol in seconds

This demo runs on dekko's own repo (commit 835733c) — clone it and run the same three commands yourself.

dekko is a fast, offline, dependency-free static code map generator and codebase indexer for LLM coding agents. It scans a repository with tree-sitter (no model tokens spent parsing) and writes:

  • MAP.md — a human-readable map: a per-directory overview, an embedded architecture diagram, load-bearing/orchestrator rankings, then every file's functions/methods with signatures, doc lines, and who calls and is called by whom.
  • map.json — the same graph in machine-readable form.

On top of the map, dekko gives an agent a token-cheap way to answer questions like "what does this file contain," "who calls this function," and "what do I need to safely change this" — without reading whole files. It ships as a CLI, a Claude Code /map plugin + MCP server (Model Context Protocol), and works with Cline too.

The result: 3x-200x fewer tokens than a plain Read/Grep workflow for the same task, measured across 7 real, unmodified open-source repos. The full breakdown is right below.

Why dekko?

Most agent workflows gather context by reading whole files or grepping across a repo — expensive, and it throws away structure (who calls what, what a function's fan-in/fan-out looks like). dekko instead parses the repo once into a call graph and answers targeted questions against it. Measured across 7 real, unmodified open-source repos (Go, TypeScript, Java, Rust, Python/C++ — up to 14k files), dekko's structured queries used 3x–200x fewer tokens than the equivalent Read/Grep workflow for the same task (repo orientation, outlining a large file, tracing a symbol's callers/callees).

Task Example repo (scale) dekko Read/Grep Savings
Repo orientation (summary) awesome-go (10 files) 308 tok ~15,271 tok ~50x
Repo orientation (summary) cline (2,730 files) 1,202 tok ~4,020 tok ~3.3x
Outline a large file claude-code main.tsx (4,683 lines) 1,017 tok 200,981 tok ~197x
Outline a large file zed editor.rs (12,554 lines) 1,996 tok 115,109 tok ~58x
Symbol lookup (query_symbol + callers/callees) tensorflow Graph class ~811 tok 61,656 tok ~76x
Symbol lookup (query_symbol + callers/callees) spring-boot prepareContext 759 tok ~18,460 tok ~24x
Bundled context (workset) zed 2,984 tok ~5,903+ tok (targeted) / ~164,571 tok (whole file) ~2x / ~55x
Bundled context (workset) awesome-go 617 tok ~6,136 tok ~10x

dekko's cost stays roughly flat per query while Read/Grep scales with file/repo size, so the ratio grows with scale. It's fast in wall-clock terms too: mapping dekko's own ~3,500-symbol codebase from a cold cache takes about 1.8 seconds; queries against the resulting map return instantly. The win isn't universal — small, self-contained files and already-grep-friendly local symbols see little to no benefit, and a few cases in the raw data are void because the cheap answer was also an incomplete one. See benchmarks/real-world-repos/ for the full per-task breakdown, methodology, and correctness caveats.

Compared to tag-index tools like ctags/gtags, dekko resolves actual call edges (not just definitions), ranks files by load-bearing-ness, and speaks directly to agents over MCP or the CLI — no editor plugin required.

Install

uv tool install dekko      # or: pip install dekko / pipx install dekko
dekko --claude-install     # add the /map command + MCP server to Claude Code, then restart

Extras (dekko[all] for ~55 more languages, dekko[search] for embedding search), installing from a local clone, and uninstalling are in docs/install.md.

Quick start

cd my-project
dekko map                  # writes .dekko/MAP.md + .dekko/map.json
dekko summary               # ~40-line digest: dirs, hotspots, entry points

.dekko/ is git-ignored by default; the map regenerates on demand, so you rarely need to run dekko map again by hand. If your repo has languages outside the default Tier-1 set (Python, C, C++, JS/TS, Go, Java, Rust), dekko map will say so per file; install dekko[all] for ~55 more languages (see Install) and re-run.

Documentation

  • docs/install.md — installation, extras, local clone, uninstall
  • docs/cli.md — every CLI command, symbol targets, excluding files, notes, daemon mode, language support
  • docs/claude-code.md — the /map plugin, push hooks, Claude Code skills, the MCP server, and Cline

Learn more

  • CHANGELOG.md — per-version history
  • CONTRIBUTING.md — dev setup, testing, releasing
  • benchmarks/ — token-efficiency measurements, including a 7-repo real-world comparison against a plain Read/Grep workflow

Release files for dekko 0.43.71

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

Source distribution (sdist)

Source distribution for dekko 0.43.71
File Size Uploaded
dekko-0.43.71.tar.gz 1.8 MB Details

Built distribution (wheel)

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

Total release size: 2.4 MB

Release files / dekko-0.43.71.tar.gz

Download URL dekko-0.43.71.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
1247824289472b80d2671c181fffd806a1652098a621836dfd7b4c6c9b0ee536
BLAKE2b-256 checksum
How to use checksums
f7d589f9e07fc7879d91f3324b48865350d3e1e8d0a086095bd2e9841977e3bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / dekko-0.43.71-py3-none-any.whl

Download URL dekko-0.43.71-py3-none-any.whl
Size 576.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
21696d88969dbb4e9725658c7f9a932dfc241fcf2ecab8431106935d5f63e177
BLAKE2b-256 checksum
How to use checksums
40cea639f1d55b94d43bb763ac33473f3163e74c0a5481f45047cfb8f027dbf2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

This release

0.43.71 This release

2 release files

0.43.3

2 release files

0.43.2

2 release files

0.31.1

2 release files

0.12.1

2 release files

0.7.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