Metadata-Version: 2.4
Name: gra-context
Version: 0.1.4
Summary: A map of your codebase that coding agents query for context, served to Claude Code and Codex over MCP.
Author: GRA
License-Expression: LicenseRef-Proprietary
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: langgraph<2,>=1.2
Requires-Dist: langchain<2,>=1.4
Requires-Dist: langchain-core<2,>=1.6
Requires-Dist: pydantic<3,>=2.12
Requires-Dist: numpy>=1.26
Requires-Dist: httpx>=0.28
Requires-Dist: mcp<3,>=2.3
Requires-Dist: fastembed>=0.9
Provides-Extra: huggingface
Requires-Dist: langchain-huggingface>=1.2; extra == "huggingface"
Requires-Dist: sentence-transformers>=5.1; extra == "huggingface"
Provides-Extra: test
Requires-Dist: pytest>=8.4; extra == "test"
Dynamic: license-file

# 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 or Codex session in that codebase. The first
time, GRA builds the map in the background; after that it follows your edits
by itself. Codex support is tested with Codex 0.151.0 and 0.164.0; with a newer Codex, GRA tells
you if it can't record your Codex sessions yet. Run `gra setup` once in each codebase you want GRA in (your key is
remembered). Installed Claude Code or Codex after setting up GRA? Run `gra setup` again in the repo. On another computer, run `gra key` on this one and `gra setup --api-key <your key>` on the new one.

- `--scope project` turns GRA on for everyone working in the repository, through `.mcp.json` and `.codex/config.toml`.
- `--agents-md` adds a line to `AGENTS.md` telling Claude Code and Codex 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.
