Skip to content

Projects ​

A project is ThreadMind's top-level workspace. It groups together a thread tree, a system context, and configuration.

Creating a Project ​

project_create(title: "My App", systemContext: "...", mode: "solo")

Or using the shortcut: tm:project My App

This will:

  1. Generate a project ID from the title ("My App" → "my-app")
  2. Create the project configuration file
  3. Create a root main thread
  4. Generate your author ID if you don't have one yet (from git config user.name + a short hash of git config user.email)
  5. Make it the session's active project

Parameters ​

ParameterTypeDefaultDescription
titlestringrequiredHuman-readable project name
systemContextstring""System prompt included at the top of every context assembly
mode"solo" | "team""solo"Collaboration mode

System Context ​

The systemContext is a global instruction that appears at the top of every assembled context, regardless of which thread is active. Use it for:

  • Project-wide technical decisions ("We use TypeScript strict mode")
  • Architecture overview ("Monorepo with Next.js frontend and Express backend")
  • Coding conventions ("Use functional components, no classes")

TIP

Claude Code and other clients that read MCP server instructions use ThreadMind automatically. For other agents, run tm:init (or threadmind_init) to generate an AGENTS.md file.

Listing Projects ​

project_list

Or using the shortcut: tm:projects

Returns all projects with their mode and highlights the active one:

- My App (my-app) [solo] ← active
- Side Project (side-project) [solo]
- Team Project (team-project) [team]

Switching Projects ​

project_switch(projectId: "side-project")

Switches the session's project. Its active thread is chosen as when a session starts: the last one used on the checked-out branch, the thread linked to that branch, or main (see Threads).

When a repository has a single project, it is selected automatically — for example in a fresh clone.

Project Modes ​

Solo Mode ​

Default mode. No ownership restrictions — you can edit any thread's summary.

Team Mode ​

Enables collaborative workflows via git. See Team Mode for details.

Key difference: in team mode, you can only update summaries of threads you created. You can always create child threads from anyone's threads.

Storage ​

Each project creates:

.threadmind/
  projects/
    my-app.json           # Project configuration
  threads/
    my-app/
      main.md             # Root thread
      ...                 # Other threads (each one records its parent)

ID Generation ​

Project IDs are auto-generated by slugifying the title:

TitleGenerated ID
"My App"my-app
"E-Commerce Platform"e-commerce-platform
"API v2"api-v2

If the ID already exists, a numeric suffix is added: my-app-2, my-app-3, etc.

Released under the MIT License.