gra-context
GRA gives Claude Code a map of your Python codebase, so it finds the code it needs and understands how the parts connect before it starts changing things.
Claude asks GRA a question in plain words ("where are redirects followed?") and gets back the relevant functions and classes, each with a one-line explanation, its file and line range, how it connects to the rest, and the tests that cover it. GRA keeps the map current as files are edited, and remembers what earlier sessions did in the same code.
Install
pipx install gra-context # or: uv tool install gra-context
cd /path/to/your/codebase
gra setup
The first time, gra setup asks for your email and saves a free key on your
computer. Then start a new Claude Code session in that codebase. The first
time, GRA builds the map in the background; after that it follows your edits
by itself. Run gra setup once in each codebase you want GRA in (your key is
remembered). On another computer, run gra key on this one and gra setup --api-key <your key> on the new one.
--scope projectturns GRA on for everyone working in the repository, through.mcp.json.--claude-mdadds a line toCLAUDE.mdtelling Claude to start from GRA.
Your code and data
The map, the explanations and the work history are stored on your machine
(~/.local/share/gra/), never inside your codebase. To write explanations,
GRA sends one function's code at a time to GRA's service, which does not store
it. Searching the map runs locally.
Commands
gra setup [--api-key K] turn GRA on for the current codebase
gra key show your saved key, to use it on another computer
gra query "question" [--repo R] what Claude gets back for a question
gra show <name> [repo] a symbol, its explanation and its connections
gra install [repo] build the map now, plus a git post-commit hook
Requires Python 3.10+ and a GRA key (free, from gra setup). Proprietary software; see LICENSE.
Metadata
Release files for gra-context 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gra_context-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Release files / gra_context-0.1.1-py3-none-any.whl
| Download URL | gra_context-0.1.1-py3-none-any.whl |
|---|---|
| Size | 77.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
52eff8b017b02d2691c656ecaade5a5811d99e1cb433da9a9882d63e77873e40
|
|
BLAKE2b-256 checksum How to use checksums |
53d723c90cdfe23bc89efff1c986861b4c801c0bd1504ac383918ce182350060
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|
Security for gra-context 0.1.1
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.