vera-ai
Code search for AI agents. Vera indexes your codebase using tree-sitter parsing and hybrid search (BM25 + vector similarity + optional cross-encoder reranking), then returns ranked code snippets as Markdown codeblocks by default, or JSON with --json.
This package downloads and wraps the native Vera binary for your platform. It downloads the exact package version, checks the release archive size and SHA-256, and stores a completed binary cache. Later runs use that cache without network access. Older caches are downloaded and verified once before they can be reused offline. On Linux without glibc (such as Alpine or NixOS), the wrapper selects the musl binary. Other native targets use their platform system libraries; optional ONNX backends have additional runtime requirements. Set VERA_TARGET to override target detection (e.g., VERA_TARGET=x86_64-unknown-linux-musl uvx vera-ai install).
The default local embedding model, minishlab/potion-code-16M-v2, runs on CPU and works offline after its first download. API mode is also available; Qwen/OpenRouter is recommended among API presets (paid usage). The benchmark report separates the full 1,251-task suite from smaller screening subsets, and the agent benchmark records context measurements and their sample limits.
Install
pip install vera-ai && vera-ai install
Quick Start
vera-ai setup --potion-code --index .
vera-ai search "authentication logic"
vera-ai setup runs the full wizard: configure a backend, optionally install agent skills, and optionally index. Local CPU is first and selected by default; API mode is second. Indexing defaults to Yes for local backends and No for API mode. vera-ai setup --api uses the shorter API configuration flow, with Qwen/OpenRouter first and recommended (one shared key). See the models guide for other providers and non-interactive setup.
The preferred agent integration is the CLI plus the Vera skill: vera-ai agent install installs it for supported coding agents and can add a short usage snippet to your project's AGENTS.md, CLAUDE.md, COPILOT.md, or editor rules file. The client selector uses Space to toggle and Enter to continue. Empty selection changes nothing; unselected installations remain intact. Vera also ships an optional MCP server (vera-ai mcp); see the MCP guide if your client is MCP-first.
Common Tasks
| Task | Command |
|---|---|
| Use the interactive setup wizard | vera-ai setup |
| Use the default local model | vera-ai setup --potion-code |
| Configure API mode | vera-ai setup --api |
| Use a local NVIDIA backend | vera-ai setup --onnx-jina-cuda |
| Search semantically | vera-ai search "authentication middleware" |
| Search only changed files | vera-ai search "authentication middleware" --changed |
| Common structural tasks | vera-ai structural routes / vera-ai structural env DATABASE_URL / vera-ai structural impls Loader |
| Find callers or callees | vera-ai references foo / vera-ai references foo --callees |
| Explain why a file is missing | vera-ai explain-path path/to/file |
| Inspect index health | vera-ai stats --json |
| Keep the index up to date | vera-ai update . |
| Watch for file changes | vera-ai watch . |
| Run local HTTP inference server | vera-ai serve |
| Diagnose setup issues | vera-ai doctor |
| Run the deeper local probe | vera-ai doctor --probe |
| Repair missing local assets | vera-ai repair |
| Inspect binary upgrades | vera-ai upgrade |
| Install agent skills | vera-ai agent install |
For the full backend matrix, model options, Docker setup, and troubleshooting, see the main README and Installation Guide.
What you get
- 65 languages (61 with tree-sitter AST parsing)
- Hybrid search: BM25 keyword + vector similarity, fused with Reciprocal Rank Fusion
- Opt-in cross-encoder reranking for precision, disabled by default
- Git-aware scopes and index debugging:
--changed/--since/--base,explain-path, and index health invera-ai stats - Markdown codeblock output by default with file paths, line ranges, and optional symbol info (use
--jsonfor compact JSON;--rawworks withvera-ai search,vera-ai grep, andvera-ai references;--timingworks withvera-ai searchandvera-ai grep, before or after the subcommand)
For full documentation, including local model options and manual install steps, see the GitHub repo.
Metadata
Release files for vera-ai 2.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| vera_ai-2.1.1.tar.gz | 15.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vera_ai-2.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.2 kB
Release files / vera_ai-2.1.1.tar.gz
| Download URL | vera_ai-2.1.1.tar.gz |
|---|---|
| Size | 15.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
35306af924bf5c175e8b6b8b13ab2fa257fb9c4a0131b37cf4a3613c21c34ad5
|
|
BLAKE2b-256 checksum How to use checksums |
5b6b037407cf691647be433c39a884a8f7d652e3738af02594f346c7e24d4497
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.11.17
|
Release files / vera_ai-2.1.1-py3-none-any.whl
| Download URL | vera_ai-2.1.1-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
87bd49e7b48bf23b82a8d123b91e8750d02c04089df93fca62fd5a199ad1648a
|
|
BLAKE2b-256 checksum How to use checksums |
1a7756233fdcef00b1f06707fffae07fd597cd28ac8b02b12cb1feffdec1c584
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.11.17
|