Metadata-Version: 2.4
Name: repoglass
Version: 0.1.0
Summary: Local code and prose index: symbol navigation, lexical and semantic retrieval
License-Expression: MIT
Project-URL: Homepage, https://github.com/nitkrar/repoglass
Project-URL: Source, https://github.com/nitkrar/repoglass
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: src/repoglass/corpus/queries/NOTICE.md
Requires-Dist: tree-sitter>=0.25
Requires-Dist: tree-sitter-language-pack>=1.19
Requires-Dist: grep-ast>=0.9
Requires-Dist: model2vec>=0.9
Requires-Dist: numpy>=1.26
Requires-Dist: pathspec>=0.12
Requires-Dist: huggingface-hub>=0.23
Provides-Extra: config
Requires-Dist: tomlkit>=0.13; extra == "config"
Provides-Extra: onnx
Requires-Dist: onnxruntime>=1.17; extra == "onnx"
Provides-Extra: webgpu
Requires-Dist: onnxruntime>=1.24.4; extra == "webgpu"
Requires-Dist: onnxruntime-ep-webgpu; extra == "webgpu"
Dynamic: license-file

# repoglass

Local code and prose search with exact symbol lookup.

repoglass builds a local index for one directory tree. `rpg search` does ranked
retrieval; `rpg defs` and `rpg refs` read the stored symbol table for exact
navigation.

## Quickstart

```bash
uv tool install repoglass        # or: pipx install repoglass
cd ~/your/repo
rpg search "how are retries handled"
```

Either installer puts `rpg` and `repoglass` on PATH and keeps them there
across upgrades. To work on repoglass itself, `pip install -e .` inside a
virtualenv leaves both commands in that virtualenv's `bin/`.

The first command that needs an index builds it. If the default model or grammar
bundle is not cached yet, that first run may download them; later runs are
local.

## Next commands

```bash
rpg defs Index
rpg refs humanise
rpg symbols --count-by lang
rpg status
repoglass --help
repoglass search --help
```

## Docs

- [docs/design.md](docs/design.md) records invariants that are not obvious from
  one source file.
- [docs/decisions-log.md](docs/decisions-log.md) records non-obvious decisions
  and absences.
- [docs/worklist.md](docs/worklist.md) lists current user-visible defects.
- `./.venv/bin/python benchmarks/run_corpus.py` prints current corpus scores.
- `python -m unittest discover -s tests` runs the test suite. It is stdlib
  `unittest`; there is no test dependency to install.

## Licence

MIT, see [LICENSE](LICENSE). Third-party material is attributed in
[src/repoglass/corpus/queries/NOTICE.md](src/repoglass/corpus/queries/NOTICE.md).
