Skip to main content

Tree-structured AI coding assistant with git worktree isolation

Project description

CodeFission

Tree-structured AI coding assistant. Each conversation node is an isolated git worktree — branch conversations to explore alternative approaches, and each branch gets its own filesystem sandbox.

Prerequisites

  • uv — Python package manager (used to install CodeFission)
  • An AI backend — Claude Code or Codex CLI (you only need one)
  • git — worktree isolation. Usually pre-installed.

Install uv

uv is a fast Python package manager. If you don't have it:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

You don't need to install Python separately — uv manages that for you.

Authenticate Claude Code

Install and log in with your Anthropic account (Claude Pro/Max) or API key:

npm install -g @anthropic-ai/claude-code
claude login

Alternatively, set ANTHROPIC_API_KEY in your environment.

Authenticate Codex CLI

Install and log in with your OpenAI account:

npm install -g @openai/codex

Then authenticate using one of:

codex login              # OpenAI API key (paid API access)
codex login --chatgpt    # ChatGPT Plus or Pro account

Alternatively, set OPENAI_API_KEY in your environment.

Install

uv tool install codefission

This installs fission as a standalone command on your system. uv creates an isolated environment for it automatically — no Python environment management needed on your end.

Prefer pip? pip install codefission works too.

Then run:

fission

Opens as a desktop app on first launch (downloads ~80 MB once). Use fission --browser to open in a browser instead.

fission              # desktop app (default)
fission --browser    # browser mode
fission --desktop    # force desktop app

Updates

When a new version is available, fission will notify you on launch and offer to upgrade automatically. You can also check manually:

fission --update

Install from source

Requires uv and Node.js 20.19+ or 22.12+.

git clone https://github.com/codefission-ai/CodeFission.git
cd CodeFission
make install
fission

For development with auto frontend rebuild:

make dev

How it works

Create a tree in the sidebar, type a message, and CodeFission spawns a Claude Code session in an isolated git worktree. Branch any node to explore alternatives — each branch forks the conversation context and the filesystem state.

         [root]
        /      \
   [add auth]  [add auth]     <- same prompt, different approaches
      |            |
 [fix tests]  [add logging]   <- independent follow-ups

Every node tracks its git branch, commit, and Claude session. Child nodes fork from the parent's prompt cache so context carries over without re-sending history.

Authentication

Configurable in the Settings panel (gear icon in sidebar):

  • CLI (OAuth) — default. Uses your claude login session. No API key needed.
  • API Key — provide an Anthropic API key in settings. Useful for headless/remote setups.

Both modes require the Claude Code CLI binary to be installed.

Configuration

Open Settings (gear icon) to configure:

  • Global defaults — provider, model, max turns, auth mode. Applies to all trees.
  • Per-tree overrides — provider, model, max turns. Leave as "Default" to inherit global settings.

Settings persist in the backend database across sessions and devices.

Development

make dev          # install + build frontend + run server
make test         # run tests
make build        # build wheel for PyPI
make publish      # build + upload to PyPI
make clean        # remove build artifacts

Frontend dev server (hot reload):

cd ui
npm run dev

Data is stored in ~/.codefission/ (SQLite database, git worktrees). Override with CODEFISSION_DATA_DIR env var.

Platform support

Platform Status
macOS Tested
Linux Tested
Windows Not tested — may work, but no guarantees

Windows users: if you hit issues, open a GitHub issue and I'll respond within 3 hours.

Support

Found a bug or something not working? Open an issue — I respond to all issues within 3 hours.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codefission-0.1.8.tar.gz (9.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codefission-0.1.8-py3-none-any.whl (2.5 MB view details)

Uploaded Python 3

File details

Details for the file codefission-0.1.8.tar.gz.

File metadata

  • Download URL: codefission-0.1.8.tar.gz
  • Upload date:
  • Size: 9.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.12.0 HTTPX/0.28.1

File hashes

Hashes for codefission-0.1.8.tar.gz
Algorithm Hash digest
SHA256 26ed3a3bd09cf41359b50e6e4b87ea750c4914f926100a0d65d5fae327ea979d
MD5 ae0595a859427b6accd412ead429bb9e
BLAKE2b-256 f3c60d37d48d606c14274dafb1236a2119a1002e141faf95022c7070d783fd95

See more details on using hashes here.

File details

Details for the file codefission-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: codefission-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.5 cpython/3.12.0 HTTPX/0.28.1

File hashes

Hashes for codefission-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 179e53fd956542310682d396df50a048a717f790b819e7fe44daca61f4634f1c
MD5 2a7d6cdff2238e01fb9d6e49c52258de
BLAKE2b-256 6c78fa6d60bcb1c75685a048e068e7c7178de06600c587be1f21f1fac5f84c64

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page