|
ce0374a…
|
lmata
|
1 |
# Configuration |
|
ce0374a…
|
lmata
|
2 |
|
|
ce0374a…
|
lmata
|
3 |
Navegador has minimal required configuration. The only thing you typically need to set is where the graph database lives. |
|
ce0374a…
|
lmata
|
4 |
|
|
ce0374a…
|
lmata
|
5 |
--- |
|
ce0374a…
|
lmata
|
6 |
|
|
ce0374a…
|
lmata
|
7 |
## Database path |
|
ce0374a…
|
lmata
|
8 |
|
|
ce0374a…
|
lmata
|
9 |
### SQLite (default) |
|
ce0374a…
|
lmata
|
10 |
|
|
ce0374a…
|
lmata
|
11 |
By default navegador writes a `navegador.db` file in the current working directory. Override with the `--db` flag or the `NAVEGADOR_DB` environment variable: |
|
ce0374a…
|
lmata
|
12 |
|
|
ce0374a…
|
lmata
|
13 |
```bash |
|
ce0374a…
|
lmata
|
14 |
# flag (takes precedence) |
|
ce0374a…
|
lmata
|
15 |
navegador ingest ./repo --db ~/.navegador/myproject.db |
|
ce0374a…
|
lmata
|
16 |
|
|
ce0374a…
|
lmata
|
17 |
# environment variable |
|
ce0374a…
|
lmata
|
18 |
export NAVEGADOR_DB=~/.navegador/myproject.db |
|
ce0374a…
|
lmata
|
19 |
navegador ingest ./repo |
|
ce0374a…
|
lmata
|
20 |
``` |
|
ce0374a…
|
lmata
|
21 |
|
|
ce0374a…
|
lmata
|
22 |
The `.navegador/` directory convention keeps the database alongside your project: |
|
ce0374a…
|
lmata
|
23 |
|
|
ce0374a…
|
lmata
|
24 |
``` |
|
ce0374a…
|
lmata
|
25 |
my-project/ |
|
ce0374a…
|
lmata
|
26 |
.navegador/ |
|
ce0374a…
|
lmata
|
27 |
navegador.db ← graph database |
|
ce0374a…
|
lmata
|
28 |
src/ |
|
ce0374a…
|
lmata
|
29 |
... |
|
ce0374a…
|
lmata
|
30 |
``` |
|
ce0374a…
|
lmata
|
31 |
|
|
ce0374a…
|
lmata
|
32 |
Add `.navegador/` to `.gitignore` — the database is a build artifact, not source. |
|
ce0374a…
|
lmata
|
33 |
|
|
ce0374a…
|
lmata
|
34 |
### Redis (production) |
|
ce0374a…
|
lmata
|
35 |
|
|
ce0374a…
|
lmata
|
36 |
For team or CI environments, point `NAVEGADOR_DB` at a Redis instance running FalkorDB: |
|
ce0374a…
|
lmata
|
37 |
|
|
ce0374a…
|
lmata
|
38 |
```bash |
|
ce0374a…
|
lmata
|
39 |
export NAVEGADOR_DB=redis://localhost:6379 |
|
ce0374a…
|
lmata
|
40 |
``` |
|
ce0374a…
|
lmata
|
41 |
|
|
ce0374a…
|
lmata
|
42 |
With authentication: |
|
ce0374a…
|
lmata
|
43 |
|
|
ce0374a…
|
lmata
|
44 |
```bash |
|
ce0374a…
|
lmata
|
45 |
export NAVEGADOR_DB=redis://:[email protected]:6379 |
|
ce0374a…
|
lmata
|
46 |
``` |
|
ce0374a…
|
lmata
|
47 |
|
|
ce0374a…
|
lmata
|
48 |
Install the Redis extra if you haven't already: |
|
ce0374a…
|
lmata
|
49 |
|
|
ce0374a…
|
lmata
|
50 |
```bash |
|
ce0374a…
|
lmata
|
51 |
pip install "navegador[redis]" |
|
ce0374a…
|
lmata
|
52 |
``` |
|
ce0374a…
|
lmata
|
53 |
|
|
ce0374a…
|
lmata
|
54 |
--- |
|
ce0374a…
|
lmata
|
55 |
|
|
ce0374a…
|
lmata
|
56 |
## SQLite vs Redis: when to use which |
|
ce0374a…
|
lmata
|
57 |
|
|
ce0374a…
|
lmata
|
58 |
| | SQLite (falkordblite) | Redis (FalkorDB) | |
|
ce0374a…
|
lmata
|
59 |
|---|---|---| |
|
ce0374a…
|
lmata
|
60 |
| Setup | Zero config | Requires a Redis server | |
|
ce0374a…
|
lmata
|
61 |
| Use case | Local dev, single developer | Team, CI, shared context | |
|
ce0374a…
|
lmata
|
62 |
| Persistence | Local file | Redis persistence config | |
|
ce0374a…
|
lmata
|
63 |
| Performance | Fast for single-user workloads | Scales to large codebases | |
|
ce0374a…
|
lmata
|
64 |
| Extra required | None (included) | `navegador[redis]` | |
|
ce0374a…
|
lmata
|
65 |
|
|
ce0374a…
|
lmata
|
66 |
Both backends implement the same `GraphStore` interface. You can migrate by re-ingesting against the new backend. |
|
ce0374a…
|
lmata
|
67 |
|
|
ce0374a…
|
lmata
|
68 |
--- |
|
ce0374a…
|
lmata
|
69 |
|
|
ce0374a…
|
lmata
|
70 |
## GitHub token |
|
ce0374a…
|
lmata
|
71 |
|
|
ce0374a…
|
lmata
|
72 |
Required for `navegador wiki ingest --repo owner/repo` to access private wikis or to avoid rate limits on public repos. |
|
ce0374a…
|
lmata
|
73 |
|
|
ce0374a…
|
lmata
|
74 |
```bash |
|
ce0374a…
|
lmata
|
75 |
export GITHUB_TOKEN=ghp_... |
|
ce0374a…
|
lmata
|
76 |
navegador wiki ingest --repo myorg/myrepo |
|
ce0374a…
|
lmata
|
77 |
``` |
|
ce0374a…
|
lmata
|
78 |
|
|
ce0374a…
|
lmata
|
79 |
For public repos, wiki ingestion works without a token but will hit GitHub's unauthenticated rate limit (60 req/hr). |
|
ce0374a…
|
lmata
|
80 |
|
|
ce0374a…
|
lmata
|
81 |
--- |
|
ce0374a…
|
lmata
|
82 |
|
|
ce0374a…
|
lmata
|
83 |
## Project-local config |
|
ce0374a…
|
lmata
|
84 |
|
|
89816aa…
|
lmata
|
85 |
Drop a `.navegador/config.toml` in your project root for project-specific defaults: |
|
ce0374a…
|
lmata
|
86 |
|
|
ce0374a…
|
lmata
|
87 |
```toml |
|
ce0374a…
|
lmata
|
88 |
[database] |
|
ce0374a…
|
lmata
|
89 |
path = ".navegador/navegador.db" |
|
ce0374a…
|
lmata
|
90 |
|
|
ce0374a…
|
lmata
|
91 |
[ingest] |
|
ce0374a…
|
lmata
|
92 |
exclude = ["node_modules", "dist", ".venv", "migrations"] |
|
89816aa…
|
lmata
|
93 |
incremental = true # use content hashing by default |
|
89816aa…
|
lmata
|
94 |
redact = false # strip secrets from ingested content |
|
89816aa…
|
lmata
|
95 |
|
|
89816aa…
|
lmata
|
96 |
[mcp] |
|
89816aa…
|
lmata
|
97 |
read_only = false # set true to prevent agents from writing to the graph |
|
89816aa…
|
lmata
|
98 |
max_query_complexity = 100 # Cypher query complexity limit |
|
89816aa…
|
lmata
|
99 |
``` |
|
89816aa…
|
lmata
|
100 |
|
|
89816aa…
|
lmata
|
101 |
--- |
|
89816aa…
|
lmata
|
102 |
|
|
89816aa…
|
lmata
|
103 |
## LLM provider config |
|
89816aa…
|
lmata
|
104 |
|
|
89816aa…
|
lmata
|
105 |
Configure LLM providers used by `navegador ask`, `navegador docs`, and `navegador semantic-search`. Requires `pip install "navegador[llm]"`. |
|
89816aa…
|
lmata
|
106 |
|
|
89816aa…
|
lmata
|
107 |
```toml |
|
89816aa…
|
lmata
|
108 |
[llm] |
|
89816aa…
|
lmata
|
109 |
provider = "anthropic" # "anthropic", "openai", or "ollama" |
|
89816aa…
|
lmata
|
110 |
model = "claude-3-5-haiku-20241022" |
|
89816aa…
|
lmata
|
111 |
|
|
89816aa…
|
lmata
|
112 |
[llm.anthropic] |
|
89816aa…
|
lmata
|
113 |
api_key_env = "ANTHROPIC_API_KEY" # env var name (not the key itself) |
|
89816aa…
|
lmata
|
114 |
|
|
89816aa…
|
lmata
|
115 |
[llm.openai] |
|
89816aa…
|
lmata
|
116 |
api_key_env = "OPENAI_API_KEY" |
|
89816aa…
|
lmata
|
117 |
model = "gpt-4o-mini" |
|
89816aa…
|
lmata
|
118 |
|
|
89816aa…
|
lmata
|
119 |
[llm.ollama] |
|
89816aa…
|
lmata
|
120 |
base_url = "http://localhost:11434" |
|
89816aa…
|
lmata
|
121 |
model = "llama3" |
|
89816aa…
|
lmata
|
122 |
``` |
|
89816aa…
|
lmata
|
123 |
|
|
89816aa…
|
lmata
|
124 |
--- |
|
89816aa…
|
lmata
|
125 |
|
|
89816aa…
|
lmata
|
126 |
## Cluster config |
|
89816aa…
|
lmata
|
127 |
|
|
89816aa…
|
lmata
|
128 |
For team deployments using a shared Redis graph with pub/sub, task queue, and session coordination: |
|
89816aa…
|
lmata
|
129 |
|
|
89816aa…
|
lmata
|
130 |
```toml |
|
89816aa…
|
lmata
|
131 |
[cluster] |
|
89816aa…
|
lmata
|
132 |
enabled = true |
|
89816aa…
|
lmata
|
133 |
redis_url = "redis://redis.internal:6379" |
|
89816aa…
|
lmata
|
134 |
graph_name = "navegador-team" |
|
89816aa…
|
lmata
|
135 |
|
|
89816aa…
|
lmata
|
136 |
[cluster.pubsub] |
|
89816aa…
|
lmata
|
137 |
channel = "navegador:events" |
|
89816aa…
|
lmata
|
138 |
|
|
89816aa…
|
lmata
|
139 |
[cluster.queue] |
|
89816aa…
|
lmata
|
140 |
name = "navegador:tasks" |
|
89816aa…
|
lmata
|
141 |
|
|
89816aa…
|
lmata
|
142 |
[cluster.sessions] |
|
89816aa…
|
lmata
|
143 |
ttl_seconds = 3600 |
|
ce0374a…
|
lmata
|
144 |
``` |
|
ce0374a…
|
lmata
|
145 |
|
|
89816aa…
|
lmata
|
146 |
See the [Cluster mode](../guide/cluster.md) guide for full setup instructions. |
|
89816aa…
|
lmata
|
147 |
|
|
89816aa…
|
lmata
|
148 |
--- |
|
89816aa…
|
lmata
|
149 |
|
|
89816aa…
|
lmata
|
150 |
## Environment variable reference |
|
89816aa…
|
lmata
|
151 |
|
|
89816aa…
|
lmata
|
152 |
| Variable | Default | Description | |
|
89816aa…
|
lmata
|
153 |
|---|---|---| |
|
89816aa…
|
lmata
|
154 |
| `NAVEGADOR_DB` | `./navegador.db` | Path to SQLite file or `redis://` URL | |
|
89816aa…
|
lmata
|
155 |
| `GITHUB_TOKEN` | — | GitHub personal access token for wiki ingestion | |
|
89816aa…
|
lmata
|
156 |
| `ANTHROPIC_API_KEY` | — | Anthropic API key for LLM features | |
|
89816aa…
|
lmata
|
157 |
| `OPENAI_API_KEY` | — | OpenAI API key for LLM features | |
|
89816aa…
|
lmata
|
158 |
| `NAVEGADOR_CONFIG` | `.navegador/config.toml` | Override config file path | |