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:
- FTS5 — exact and prefix matches via SQLite full-text
- Fuzzy — typo-tolerant fallback (rapidfuzz)
- 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7cabf0d47dea81304a3482f09fd52cacfdcf508e7c51df52b65616d7c338e109
|
|
| MD5 |
0abbb0395ea786dfd0ab064c625aa27b
|
|
| BLAKE2b-256 |
b16db0f6ec258d7684a29f2d844f0a5edc3deddf5185769f3269c4832e807838
|
Provenance
The following attestation bundles were made for rex_index-0.1.0.tar.gz:
Publisher:
publish.yml on vykhovanets/rex
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rex_index-0.1.0.tar.gz -
Subject digest:
7cabf0d47dea81304a3482f09fd52cacfdcf508e7c51df52b65616d7c338e109 - Sigstore transparency entry: 945956806
- Sigstore integration time:
-
Permalink:
vykhovanets/rex@03b91f97a7c4620625df709c6f552f6641a82c9a -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/vykhovanets
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@03b91f97a7c4620625df709c6f552f6641a82c9a -
Trigger Event:
push
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e44c8faa808ffbf83fb3852b6c992d2fdc5b91c5f4d4be4c5d97244ec4d0f0ea
|
|
| MD5 |
41fd6c979ed815046e4cbcac16072377
|
|
| BLAKE2b-256 |
5283a86567ed5ebc5e3cca95379c338e3353c79b42840e4c196dfe3241d17721
|
Provenance
The following attestation bundles were made for rex_index-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on vykhovanets/rex
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
rex_index-0.1.0-py3-none-any.whl -
Subject digest:
e44c8faa808ffbf83fb3852b6c992d2fdc5b91c5f4d4be4c5d97244ec4d0f0ea - Sigstore transparency entry: 945956831
- Sigstore integration time:
-
Permalink:
vykhovanets/rex@03b91f97a7c4620625df709c6f552f6641a82c9a -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/vykhovanets
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@03b91f97a7c4620625df709c6f552f6641a82c9a -
Trigger Event:
push
-
Statement type: