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

  • Claude Code — AI backend (spawned as subprocess). Install: npm install -g @anthropic-ai/claude-code
  • uv — Python package manager. Install: curl -LsSf https://astral.sh/uv/install.sh | sh
  • Node.js 18+ — frontend build. Install via system package manager or nvm
  • git — worktree isolation. Usually pre-installed.

Authenticate Claude Code before first use:

claude login

Quick start

Option A: Let Claude do it

If you already have Claude Code installed:

claude -p "git clone <repo-url> codefission && cd codefission && ./run.sh"

Option B: Manual

git clone <repo-url> codefission
cd codefission
./run.sh

On first run, run.sh will:

  1. Install Python dependencies via uv (creates .venv/ automatically)
  2. Install npm packages and build the frontend
  3. Start the server on http://localhost:8080

Subsequent runs skip steps 1-2 (unless dependencies or source changed).

To use a different port: ./run.sh 3000

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

Run tests:

uv run --group dev pytest

Frontend dev server (hot reload):

cd frontend
npm run dev

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

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.0.tar.gz (803.8 kB 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.0-py3-none-any.whl (615.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: codefission-0.1.0.tar.gz
  • Upload date:
  • Size: 803.8 kB
  • 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.0.tar.gz
Algorithm Hash digest
SHA256 eb65b6db56991a1569822ba8098e4be7b342e9e910ff83a7df25f02bf882ce2e
MD5 b0ea621055b48d6db5c05f294a5c1ab1
BLAKE2b-256 74ec17beccfaf1515f0762aa3757079a7a7d64c39acba0e0d5ae5448e37e6264

See more details on using hashes here.

File details

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

File metadata

  • Download URL: codefission-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 615.0 kB
  • 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 77e3d1e85b0d2df622e5337c8af576224a7805bd2a4c12776ba3782ad33232a0
MD5 c27bf92cdeddef8bcb5eac2878fcc810
BLAKE2b-256 6db1249d82b353e5ebb37638477fc6807669e9f8b4a596747105e7d5a2916bc4

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