Threads Overview
A Thread is an isolated workspace for working on a project. Each thread is:
- A full clone of the project’s repository in its own directory
- On its own git branch, derived from the thread title
- Paired with an independent chat session with the AI agent
- Configured with its own skill and model preferences
Threads are the core unit of work in Tarsk. When you ask the AI agent to make changes, it operates inside that thread’s clone — never touching any other thread or the original project directory.
Why Threads Exist
Section titled “Why Threads Exist”Traditional AI coding tools operate on a single shared copy of your codebase. This creates a problem: if you want to try two different approaches to the same feature, or work on two issues simultaneously, edits conflict.
Threads solve this by giving each line of work its own isolated environment. You can:
- Run the agent on feature A in thread 1 while reviewing feature B in thread 2
- Try two completely different approaches to a refactor and cherry-pick the better result
- Keep a “clean” thread for reference while experimenting in another
- Work on a bug fix in one thread while a new feature is being developed in another
Each thread has its own git branch, so merging the result back is a standard git merge or pull request.
Thread Storage
Section titled “Thread Storage”Threads are stored at:
~/Library/Application Support/Tarsk/data/{threadId}/This is a real directory on disk containing a full git clone. You can open it in any IDE, run commands in it, or inspect it with any git tool. Changes made by the AI agent are real filesystem writes — not diffs or patches.
Thread State
Section titled “Thread State”| Field | Description |
|---|---|
| Title | Human-readable name (e.g. “Add login page”) |
| Branch | Auto-generated from the title (e.g. add-login-page) |
| Current Conversation | The active conversation ID within this thread |
| Enabled/Disabled Skills | Per-thread skill overrides |
| Status | active or deleted |
Next Steps
Section titled “Next Steps”- Working with Threads — create, switch, open in IDE, and delete
- Dev Server — run and preview your app inside a thread