Skip to main content

Fast Python symbol search for .venv packages

Project description

rex 🇺🇦

reference explorer

Sub-second Python symbol search for .venv packages and project source code. Bonus: MCP server for Claude Code.

Install

uv tool install rex-index
claude mcp add rex -s user -- rex-mcp serve

How it works

Rex stores a single global index at ~/.local/state/rex/rex.db. Indexing is incremental — only packages whose files changed since the last run are re-indexed. First run takes ~30s; subsequent runs are instant.

Search has three phases:

  1. FTS5 — exact and prefix matches via SQLite full-text
  2. Fuzzy — typo-tolerant fallback (rapidfuzz)
  3. Auto-reindex — if nothing found and index is stale

When results are fuzzy-only or empty, rex shows a contextual hint (e.g. "approximate matches" or "try: uv add ").

CLI

rex find <query>       # Search symbols (unquoted OK)
rex find -t class Base # Filter by type
rex show <name>        # Full docs by qualified name
rex members <name>     # List class/module members
rex stats              # Index statistics
rex index              # Build/update index
rex index -f           # Force full rebuild
rex index -p ./src     # Also index project source
rex clean              # Remove stale packages

MCP Tools

Claude Code can use rex too — same speed, no round-trips to the web.

Tool Description
rex_find Search symbols (+ type filter)
rex_show Full docs for a symbol
rex_members List class/module members

License

Apache-2.0

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

rex_index-0.1.0.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

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

rex_index-0.1.0-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file rex_index-0.1.0.tar.gz.

File metadata

  • Download URL: rex_index-0.1.0.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for rex_index-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7cabf0d47dea81304a3482f09fd52cacfdcf508e7c51df52b65616d7c338e109
MD5 0abbb0395ea786dfd0ab064c625aa27b
BLAKE2b-256 b16db0f6ec258d7684a29f2d844f0a5edc3deddf5185769f3269c4832e807838

See more details on using hashes here.

Provenance

The following attestation bundles were made for rex_index-0.1.0.tar.gz:

Publisher: publish.yml on vykhovanets/rex

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

File details

Details for the file rex_index-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: rex_index-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for rex_index-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e44c8faa808ffbf83fb3852b6c992d2fdc5b91c5f4d4be4c5d97244ec4d0f0ea
MD5 41fd6c979ed815046e4cbcac16072377
BLAKE2b-256 5283a86567ed5ebc5e3cca95379c338e3353c79b42840e4c196dfe3241d17721

See more details on using hashes here.

Provenance

The following attestation bundles were made for rex_index-0.1.0-py3-none-any.whl:

Publisher: publish.yml on vykhovanets/rex

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