Metadata-Version: 2.4
Name: navegador
Version: 0.1.0
Summary: AST + knowledge graph context engine for AI coding agents
Author: CONFLICT LLC
License-Expression: MIT
Project-URL: Homepage, https://navegador.dev
Project-URL: Documentation, https://navegador.dev
Project-URL: Repository, https://github.com/ConflictHQ/navegador
Project-URL: Issues, https://github.com/ConflictHQ/navegador/issues
Keywords: ast,knowledge-graph,code-analysis,ai-agents,mcp,context-management,falkordb,go,rust,java,typescript
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: FalkorDB>=1.5.0
Requires-Dist: falkordblite>=0.8.0
Requires-Dist: tree-sitter>=0.24.0
Requires-Dist: tree-sitter-python>=0.23.0
Requires-Dist: tree-sitter-typescript>=0.23.0
Requires-Dist: tree-sitter-javascript>=0.23.0
Requires-Dist: tree-sitter-go>=0.23.0
Requires-Dist: tree-sitter-rust>=0.23.0
Requires-Dist: tree-sitter-java>=0.23.0
Requires-Dist: click>=8.1.0
Requires-Dist: rich>=13.0.0
Requires-Dist: mcp>=1.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: python-dotenv>=1.0.0
Provides-Extra: redis
Requires-Dist: redis>=5.0.0; extra == "redis"
Provides-Extra: dev
Requires-Dist: pytest>=7.3.0; extra == "dev"
Requires-Dist: pytest-cov>=4.1.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23.0; extra == "dev"
Requires-Dist: ruff>=0.1.0; extra == "dev"
Requires-Dist: mypy>=1.3.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs-material>=9.0.0; extra == "docs"
Requires-Dist: mkdocstrings[python]>=0.24.0; extra == "docs"
Requires-Dist: pymdown-extensions>=10.0; extra == "docs"
Provides-Extra: all
Requires-Dist: navegador[redis]; extra == "all"
Requires-Dist: navegador[dev]; extra == "all"
Requires-Dist: navegador[docs]; extra == "all"
Dynamic: license-file

# Navegador

**AST + knowledge graph context engine for AI coding agents.**

Navegador parses your codebase into a property graph and makes it queryable. AI coding agents can ask "what calls this function?", "what does this file depend on?", or "show me everything related to auth" — and get structured, precise answers instead of raw file dumps.

> *navegador* — Spanish for *navigator / sailor*

[![CI](https://github.com/ConflictHQ/navegador/actions/workflows/ci.yml/badge.svg)](https://github.com/ConflictHQ/navegador/actions/workflows/ci.yml)
[![PyPI](https://img.shields.io/pypi/v/navegador)](https://pypi.org/project/navegador/)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
[![Docs](https://img.shields.io/badge/docs-navegador.dev-blue)](https://navegador.dev)

---

## Why

AI coding agents load context by reading raw files. They don't know what calls what, what depends on what, or which 5 functions out of 500 are actually relevant. Navegador builds a structured map — then exposes it via MCP so any agent can navigate your code with precision.

---

## Quick start

```bash
pip install navegador

# Ingest your repo
navegador ingest ./myrepo

# Load context for a file
navegador context src/auth.py

# Search for a symbol
navegador search "get_user"

# Check graph stats
navegador stats
```

---

## MCP integration

Add to your Claude / Cursor MCP config:

```json
{
  "mcpServers": {
    "navegador": {
      "command": "navegador",
      "args": ["mcp", "--db", ".navegador/graph.db"]
    }
  }
}
```

Available MCP tools:

| Tool | Description |
|------|-------------|
| `ingest_repo` | Parse and load a repo into the graph |
| `load_file_context` | All symbols in a file + their relationships |
| `load_function_context` | What a function calls and what calls it |
| `load_class_context` | Class methods, inheritance, subclasses |
| `search_symbols` | Fuzzy search for functions/classes by name |
| `query_graph` | Raw Cypher passthrough |
| `graph_stats` | Node and edge counts |

---

## Graph schema

**Nodes:** `Repository` · `File` · `Module` · `Class` · `Function` · `Method` · `Variable` · `Import` · `Decorator`

**Edges:** `CONTAINS` · `DEFINES` · `IMPORTS` · `CALLS` · `INHERITS` · `REFERENCES` · `DEPENDS_ON`

---

## Storage

Navegador uses **FalkorDB** (property graph, Cypher queries).

| Mode | Backend | When to use |
|------|---------|-------------|
| Default | `falkordblite` (SQLite) | Local dev, zero infrastructure |
| Production | Redis + FalkorDB module | Shared / persistent deployments |

```python
from navegador.graph import GraphStore

# SQLite (default)
store = GraphStore.sqlite(".navegador/graph.db")

# Redis
store = GraphStore.redis("redis://localhost:6379")
```

---

## Language support

| Language | Status |
|----------|--------|
| Python | ✅ |
| TypeScript / JavaScript | ✅ |
| Go | ✅ |
| Rust | ✅ |
| Java | ✅ |

---

## License

MIT — [CONFLICT LLC](https://github.com/ConflictHQ)
