How the AI works in Tracemoor
The AI in the chat panel works on the same data as the rest of the app. Tracemoor analyses the project in advance and offers the result to the AI as tools. The AI asks the index instead of searching files as text.
The tool channel
The connection between the AI and the index is MCP (Model Context
Protocol). Tracemoor runs an MCP server for each chat session. Its tools
are named mcp__code-explorer__… and answer structured questions:
| Question | Tool |
|---|---|
| Where is this symbol defined, who calls it, what does it call? | describe_symbol |
| Where is this label rendered, and which handler runs on click? | find_ui_source |
| Which files depend on this file? | file_importers, impact_radius |
| Which projectdocs entries and specs are anchored to this function? | projectdocs_for_symbol, spec_anchors_for_symbol |
| Which spec requirements have no covering test? | spec_coverage_gaps |
All tools are listed in MCP tools.
Example: "Who calls parse_current?" is one call to describe_symbol. The
answer lists file, line, callers and callees. A text search for the same name
also returns comments, strings and unrelated symbols with the same name, and it
fills the conversation with file content.
The AI is instructed to use these tools first for every question about code. It falls back to reading files and text search when the index has no answer, for example for configuration files or languages without an adapter.
Where the AI gets its context
Each chat session starts with:
- the Tracemoor guide, which tells the AI how to use the tools,
- the Project Hints of the exploration,
- the tools for the index, the graph, projectdocs, specs, tickets, Git and work packages,
- read-only tools for each reference project.
The AI reads these sources on demand. Asked about a function, it can look up the decision anchored to it and the spec that fixes its behaviour. The guide tells it to do this before it changes code.
Answers you can check
The AI writes code references as ce:// links. A click opens the file at the
line, the symbol in the graph, or a projectdocs entry. Diagrams in the answer
are rendered, and their nodes link into the code. Edits of the AI appear as a
diff in the chat. See Chat panel.
Session modes
The session mode limits what the AI may change:
| Mode | The AI may |
|---|---|
| Read-Only | read and query. No file changes, no write tools. |
| Safe | also edit files inside the project and the exploration, and run a fixed list of programs. |
| Brave | do everything, including the write tools of Tracemoor (projectdocs, specs, tickets, changelists, work packages) and operating other app windows. |
The mode is set per session and can be changed during the session. It limits the AI only. Your own actions in the app are never restricted. See Session modes.
Write tools of Tracemoor that affect shared state, for example creating a ticket or opening a pull request, also show a preview that you approve.
Providers
The AI runs on one of these providers:
| Provider | Connection |
|---|---|
| Claude (CLI) | The installed claude program, with your Claude login. |
| Anthropic (API) | The Anthropic Messages API, with an API key or your Claude login. |
| OpenAI (API) | The OpenAI API with an API key. |
| OpenCode (Zen gateway) | The OpenCode Zen gateway with an API key. |
| Ollama (local + cloud) | A local Ollama server, optionally ollama.com. |
| Custom providers | Any OpenAI-compatible endpoint, for example a local MLX server. |
The tools are the same for every provider. Claude (CLI) has the deepest
integration: the terminal view of the session, subagents, skills from
~/.claude, quota bars and the permission hook. See
Set up a provider.
Without a provider, everything except the chat works: analysis, graph, editor, search, Git, projectdocs and specs.
Context sent to a provider leaves your machine. To keep it local, use Ollama or a custom provider on your own machine.
Topics in this section
| Topic | Content |
|---|---|
| Set up a provider | Providers, models, effort, the AI Settings dialog |
| Chat panel | Controls, slash commands, attachments, diffs, questions from the AI |
| Ask about code | Ask AI from graph, editor and Call Chain Explorer, screenshots |
| Project context | Project Hints, project files, skills and agents |
| Sessions | Session list, saving a chat, handing over to a new session |
| Longer tasks | Plan, slices, anchors and handover across sessions |
| External MCP servers | Adding your own tools |
| Operating the app | Screenshots, clicks and menu commands in a running app (macOS) |
| Remote access | Following and answering a session from another machine |