> ## Documentation Index
> Fetch the complete documentation index at: https://soulforge.proxysoul.com/llms.txt
> Use this file to discover all available pages before exploring further.

# The Soul Map

> Why SoulForge starts every turn already knowing your codebase.

On startup, the repo-map engine scans your codebase and builds a graph — every file, symbol, and import edge — then ranks it. The rendered result, injected at the top of every prompt, is the **Soul Map**: what the agent actually sees.

The agent never wastes a turn grepping for "where does auth live" — it already sees the map.

## What you see

The Soul Map appears in every prompt, looking like this:

```
src/services/auth/session.ts (→12)
  +SessionManager  Tracks active sessions, refresh tokens, expiry
  +SessionStore
```

* `+` — exported symbol
* `(→12)` — blast radius: 12 files depend on this one
* `[NEW]` — file changed recently
* One-line summary after the name (when semantic summaries are on)

## What makes it useful

* **Ranked by PageRank** — files imported by lots of others rank higher.
* **Personalized per turn** — files you just edited or read get boosted.
* **Git-aware** — files that always change together get pulled in too.
* **Real-time** — edits re-index immediately.
* **30+ languages** — TypeScript, Python, Rust, Go, Java, Ruby, C/C++, Swift, Kotlin, and more.

## Config

Everything runs out of the box. If you want to tune it:

```json theme={null}
{
  "repoMap": true,
  "semanticSummaries": "ast"
}
```

| Field               | Values                                                                |
| ------------------- | --------------------------------------------------------------------- |
| `repoMap`           | `true` (default) or `false` to disable                                |
| `semanticSummaries` | `"ast"` (fast, default), `"llm"` (one-line LLM descriptions), `"off"` |

`/repo-map` opens the settings panel (the `repoMap` config keys below tune the engine that builds the map).

## Skip the scan

For quick one-shot questions, skip the startup scan:

```bash theme={null}
soulforge --headless --no-repomap "what's the version?"
```

Or set `SOULFORGE_NO_REPOMAP=1`.
