Skip to main content

Overview

The Projects API provides functionality for managing Git repositories, including adding/removing projects, organizing them in folders, and configuring project settings.

Data Structures

Project

string
required
Unique identifier (UUID v4)
string
required
Display name (derived from repo directory name or folder name)
string
required
Absolute path to the original git repository (empty for folders)
string
required
Branch to create worktrees from (empty for folders)
number
required
Unix timestamp when project was added
number
default:0
Display order in sidebar (lower = higher in list)
string | null
Parent folder ID (null = root level)
boolean
default:false
True if this is a folder (not a real project)
string | null
Path to custom avatar image (relative to app data dir)
string[] | null
MCP server names enabled by default for this project (null = inherit from global)
string | null
Custom system prompt appended to every session execution
string | null
Default provider profile name for sessions (null = use global default)
string | null
Default CLI backend for sessions: “claude” | “codex” | “opencode” (null = use global default)
string | null
Custom base directory for worktrees (null = use default ~/jean)
string | null
Linear personal API key for fetching issues (per-project)
string | null
Linear team ID to filter issues (null = show all teams)

Commands

List Projects

Retrieve all projects and folders.

Add Project

Add a Git repository to Jean.
string
required
Absolute path to the Git repository
string
Parent folder ID (omit for root level)

Remove Project

Remove a project from Jean (does not delete files).
string
required
ID of the project to remove

Update Project Settings

Update project configuration.
string
required
ID of the project to update
string
Branch to create worktrees from
string
Custom system prompt for AI sessions
string[]
List of MCP server names to enable
string
Default provider profile name
string
Custom worktrees base directory

Reorder Projects

Reorder projects and folders.
string[]
required
Array of project IDs in the desired order

Folder Management

Create Folder

Create a folder for organizing projects.
string
required
Folder name
string
Parent folder ID (omit for root level)

Rename Folder

string
required
ID of the folder to rename
string
required
New folder name

Delete Folder

Delete an empty folder.
string
required
ID of the folder to delete

Move Item

Move a project or folder to a different parent.
string
required
ID of the item to move
string
ID of the new parent folder (null for root)
number
Target position in the new parent (optional)

Git Operations

Get Project Branches

List all branches in a project’s repository.
string
required
ID of the project

Get Git Remotes

List all Git remotes for a repository.
string
required
Absolute path to the repository

Get GitHub Remotes

List GitHub remotes only.
string
required
Absolute path to the repository

Avatar Management

Set Project Avatar

Set a custom avatar image for a project.
string
required
ID of the project

Remove Project Avatar

string
required
ID of the project

Events

The following events are emitted for project changes:

project:added

Emitted when a project is added.

project:updated

Emitted when a project is updated.

project:removed

Emitted when a project is removed.

Error Codes

Next Steps

Worktrees API

Create and manage worktrees

Sessions API

Handle chat sessions