Project 01 / In development
Ghosttree
The next session shouldn’t start from scratch.
Ghosttree is a shared memory for AI coding agents that you host yourself. It carries knowledge and unfinished work from one session to the next and gives each agent what it needs for the project, its branch and the machine it is running on.
Source-available, not open source · Before 1.0 · Built from source
Source & setupCode stays. Context gets lost.
The next agent sees the code. It may not know why a database was chosen, which approach already failed, or where the previous session stopped. Repeating that background takes time. Leaving it in scattered notes makes it harder to maintain.
Ghosttree gives that information a place and a history. Agents can retrieve relevant context, correct it and leave a useful handoff for the next session.
Your coding tools
- Claude Code
- Codex
- OpenCode
- Relevant context
- Requests & evidence
- Files & documents
ctx is the command-line client on each workstation. Agents reach the server through it, with MCP tools and hooks; transcripts are collected from Claude Code and Codex. A generated .ghosttree/ directory also makes knowledge, file descriptions, requests and documents readable beside the code. Session history and the analysis live on the server.
What it carries forward
Context with a scope
A tool installed on one workstation is a machine fact. An architectural decision belongs to the project; a temporary workaround may belong to a branch. Global knowledge can apply everywhere. Ghosttree selects context along these axes, including recorded branch ancestry.
Decisions and pitfalls
Keep the reasoning behind a choice and the approaches that did not work. Find them by project, branch or machine.
What files do
Describe a file or directory beside the source. The description has its own history and can be updated as the code changes.
The work ledger
Requests keep their acceptance criteria, dependencies and evidence together. Sessions can pick up an existing task and leave a handoff when interrupted. Completion requires evidence and resolved criteria.
Versioned documents
Edit specifications and plans as local Markdown, then publish revisions outside Git. History and diffs preserve how a document changed; concurrent edits are detected.
The original conversation
Claude Code and Codex transcripts are captured incrementally, so the original wording remains searchable across machines and coding tools. Common credential patterns are redacted locally, and uploads are retried after an outage.
A passing wish can become a recorded requirement.
Someone mentions a missing export halfway through another task. The conversation moves on. Ghosttree’s optional backend analysis can recover that request from the session and add it to the work ledger, with a reference to where it was said.
Read what was asked for
The requirements pass reads user messages and compares them with the existing backlog. Its extraction rules exclude the agent’s own proposals and routine instructions for the current task.
Keep the source attached
An extracted request must quote a passage from its source session. Repeated wishes can be linked to an existing entry. New entries start open; acceptance criteria are defined separately.
Retain what was learned
A separate pass extracts lasting decisions and pitfalls from the conversation. These become reviewable knowledge candidates, with their source attached. They go through review before becoming part of the default context.
This builds a traceable requirements backlog over time. Analysis uses a configured language model; the operator chooses the provider. It does not implement the work or decide what counts as accepted.
Where the project stands
Ghosttree is in active development before version 1.0. The CLI, server and integrations are usable today; there is no stable release yet, so the quick start builds it from source. Interfaces and storage may still change between minor releases.
One Go binary. A SQLite database. Integrations for Claude Code, Codex and OpenCode. Designed for a private network or a properly configured reverse proxy.
Source & setupRead the code. Check the terms.
Ghosttree is source-available under PolyForm Noncommercial 1.0.0. Personal and noncommercial use is permitted. A separate Micro Business Grant allows qualifying small organizations to use it for their own commercial work.
Hosting Ghosttree for third parties, embedding it in a commercial offering or using it outside the grant requires a separate agreement. The complete license and grant define the terms.