> ## 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.

# SoulForge

> Code-aware terminal AI that works with symbols, not strings.

<img src="https://mintcdn.com/proxysoul/eAFeZ1SWkcnHPv9R/images/main.png?fit=max&auto=format&n=eAFeZ1SWkcnHPv9R&q=85&s=eaa278ad4697989c3425839bd705c8e0" alt="SoulForge" width="3024" height="1964" data-path="images/main.png" />

Most AI coding tools treat your codebase as text. They grep, they paste, they match strings. SoulForge treats code as code. It parses every file on launch, builds a live dependency graph, and addresses your work by symbol and line number. Rename a class, move a function, change a return type, the agent uses AST surgery and LSP rename, not find-and-replace.

<CardGroup cols={3}>
  <Card title="The first AST editor for AI" icon="scalpel" href="/tools/ast-edit">
    Symbol-addressed TypeScript and JavaScript edits via ts-morph. Roots in a 2022 Master's thesis on programmatic JS to TS conversion. Changing a return type costs a handful of tokens.
  </Card>

  <Card title="Full LSP, your way" icon="brain" href="/tools/lsp">
    Workspace rename, definitions, references, call and type hierarchy, diagnostics, code actions, format. Mason installer for 576+ servers from the TUI.
  </Card>

  <Card title="Compaction with zero LLM" icon="archive" href="/context/compaction">
    V2 extracts structured state as the conversation happens. When context fills, serialization is instant. Typical sessions compact for free.
  </Card>

  <Card title="Cost tracking, live" icon="dollar-sign" href="/concepts/cost-tracking">
    Per-model and per-subagent breakdown. Real prices for Claude, OpenAI, Gemini, DeepSeek, Groq, Mistral, Copilot, OpenRouter. Cache-aware. Zero for local models.
  </Card>

  <Card title="Tab-aware file claims" icon="table-columns" href="/agents/cross-tab">
    Up to 5 tabs per project, each with its own model, mode, session, and checkpoints. Tabs see each other's claimed files and active agents. Git hard-blocks during cross-tab dispatch, you never commit partial changes.
  </Card>

  <Card title="Symbol reads, not file dumps" icon="file-code">
    The agent reads a single function by name or jumps via LSP go-to-definition. It navigates the code graph instead of grepping and dumping whole files.
  </Card>
</CardGroup>

## Start in 60 seconds

<CodeGroup>
  ```bash Homebrew theme={null}
  brew tap proxysoul/tap && brew install soulforge
  soulforge
  ```

  ```bash One key, every model theme={null}
  soulforge --set-key llmgateway sk-...
  soulforge
  ```

  ```bash Local, no key theme={null}
  brew install ollama && ollama pull llama3.3
  soulforge
  ```
</CodeGroup>

Neovim is optional. A Nerd Font is optional. SoulForge prompts to install either on first launch if you want them.

<CardGroup cols={3}>
  <Card title="Install" href="/installation" icon="download">
    Homebrew, binary, Bun, or source.
  </Card>

  <Card title="Quickstart" href="/quickstart" icon="rocket">
    Your first five minutes.
  </Card>

  <Card title="FAQ" href="/faq" icon="circle-question">
    Do I need Neovim? Which LLM? How much does it cost?
  </Card>
</CardGroup>

## Plain-English prompts, real tool calls

```
> rename UserService to AccountService
> move parseConfig from utils.ts to config/parser.ts
> change fetchUser to return Promise<User>
> run tests, fix lint, commit
> research how auth handles refresh tokens
```

Every line above resolves to a single compound tool call. No multi-step orchestration. No guessing commands.

## Why it's different

<CardGroup cols={2}>
  <Card title="Live Soul Map" icon="diagram-project" href="/concepts/repo-map">
    SQLite graph of every file, symbol, and import. Ranked by PageRank and git co-change. Blast-radius tags show how far an edit ripples. Updates as you work.
  </Card>

  <Card title="AST editing for TypeScript and JavaScript" icon="code" href="/tools/ast-edit">
    65+ surgical operations via ts-morph. Toggle `async`, change a parameter, add a method, rename a class member. Atomic batches with rollback.
  </Card>

  <Card title="Full LSP, with Mason installer" icon="brain" href="/concepts/intelligence">
    Definitions, references, rename, diagnostics, code actions, call and type hierarchy, format, hover. Install servers from Mason's registry inside the TUI (`/lsp install`). Works with or without Neovim open.
  </Card>

  <Card title="Symbol reads across 33 languages" icon="file-code">
    Extract one function by name. A 500-line file becomes 20 lines in the prompt. TypeScript, Python, Rust, Go, Java, Kotlin, Scala, Swift, C/C++, Ruby, PHP, Elixir, Zig, Lua, Dart, OCaml, Solidity, Vue, and more.
  </Card>

  <Card title="Cost and speed tracking" icon="chart-line" href="/concepts/cost-tracking">
    Live USD cost broken down by model and by subagent. Cache-aware pricing across Anthropic, OpenAI, Google, DeepSeek, Groq, Mistral, Fireworks, Copilot, OpenRouter, and GitHub Models.
  </Card>

  <Card title="V2 compaction, often free" icon="archive" href="/context/compaction">
    Structured state extraction as you go — files touched, decisions, failures, tool results. Compaction serializes instantly and usually skips the LLM pass entirely.
  </Card>

  <Card title="Parallel agents with shared cache" icon="users" href="/agents/dispatch">
    Forge dispatches explore, code, and web-search agents in parallel. One agent's file read is cached for the others. Discoveries propagate across agents within a step.
  </Card>

  <Card title="Task router" icon="route" href="/recipes/task-router">
    Different model per task slot: spark for exploration, ember for code, compact for context, verify for review. Cheap work to cheap models. Mix providers freely.
  </Card>

  <Card title="36 built-in themes" icon="palette" href="/tools/themes">
    Catppuccin, Dracula, Gruvbox, Tokyo Night, Rose Pine, Kanagawa, Nightfox, Cyberdream, Oxocarbon, and more. Hot-reloaded custom themes from a JSON file.
  </Card>

  <Card title="Sessions and checkpoints" icon="clock-rotate-left" href="/tools/checkpoints">
    Every turn is a checkpoint with git tags for file rollback. Sessions save as JSONL; resume by short-id prefix. Undo conversation and files in one keystroke.
  </Card>

  <Card title="Local LLMs, zero cost" icon="server">
    Ollama and LM Studio auto-detected. Run Llama, Qwen, DeepSeek, Mistral, whatever you have. Cost tracking skips local models automatically.
  </Card>

  <Card title="Skills manager" icon="puzzle-piece">
    Browse, install, enable, disable community skills from the TUI (`Ctrl+S`). Skills resolve from project and global scopes, auto-loaded into the agent prompt.
  </Card>

  <Card title="Remote control [experimental]" icon="mobile" href="/tools/hearth">
    Hearth exposes your running forge to Telegram or Discord. Approval prompts arrive as inline buttons. Your code never leaves your host. (Experimental — expect rough edges.)
  </Card>
</CardGroup>

## Providers

21 built-in LLM providers: Anthropic, OpenAI, Google, xAI, Groq, DeepSeek, Mistral, Bedrock, Fireworks, MiniMax, Codex, Copilot, GitHub Models, OpenRouter, OpenCode Zen, OpenCode Go, LLM Gateway, Vercel AI Gateway, Proxy (CLIProxyAPI relay), Ollama, LM Studio. Plus any OpenAI-compatible API via custom providers. See [all providers](/providers/overview).

## Ready?

<CardGroup cols={2}>
  <Card title="Install in one command" href="/installation" icon="terminal">
    `brew tap proxysoul/tap && brew install soulforge`
  </Card>

  <Card title="Read the FAQ" href="/faq" icon="circle-question">
    Common questions, short answers.
  </Card>
</CardGroup>

Need help? [Troubleshooting](/troubleshooting) · [Discord](https://discord.gg/fX4H7GYSMJ) · [GitHub issues](https://github.com/proxysoul/soulforge/issues) · [Blog](https://proxysoul.com/blog/soulforge).
