Skip to main content

Minimal CLI wrapper that launches Claude Code in isolated jj workspaces

Project description

Kekkai

A minimal CLI that launches AI coding agents (Codex, Claude) in isolated jj workspaces.

Installation

# Install globally with uv (recommended)
uv tool install kekkai

# Or use uvx for one-off usage
uvx kekkai

Requirements

Quick Start

# Launch Codex (default) in a new isolated workspace
kekkai feature-auth

# Launch Claude instead
kekkai feature-auth --agent=claude

# List existing agent workspaces
kekkai list

# Create a new revision from an agent workspace (run from root workspace)
kekkai look feature-auth

Use --agent=codex|claude to select the agent.

When you run kekkai <name> (default agent: codex):

  1. Creates an isolated jj workspace as a sibling directory (<repo>-<name>/)
  2. Launches the selected agent with full terminal experience
  3. On exit, prompts whether to keep or delete the workspace

Multi-Agent Workflow

Run multiple agents in parallel by opening multiple terminals:

# Terminal 1
kekkai feature-auth

# Terminal 2
kekkai bugfix-login

# Terminal 3
kekkai refactor-api

Monitor all agents from your main workspace:

jj log

Managing Agent Changes

From your main workspace, you can create a new revision directly from an agent's working copy:

kekkai look feature-auth

Then use jj to integrate agent work:

# See all changes across workspaces
jj log

# Squash an agent's changes into current revision
jj squash --from <agent-revision>

# Rebase agent work onto latest
jj rebase -s <agent-revision> -d @

# Cherry-pick specific changes
jj new <agent-revision>

see jjui for a more user-friendly interface.

Watchman Setup

Without Watchman, jj only captures changes when you run a jj command. With Watchman, snapshotting is automatic and you can monitor agent progress in real-time.

  1. Install Watchman
  2. Enable in ~/.config/jj/config.toml:
# ~/.config/jj/config.toml
[fsmonitor]
backend = "watchman"
watchman.register-snapshot-trigger = true

# highly recommend auto updating stale snapshots as well
[snapshot]
auto-update-stale = true
  1. Verify: jj debug watchman status

Development

git clone https://github.com/yum0e/kekkai
cd kekkai
uv run kekkai --help
uv run --with pytest pytest tests/ -v

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

kekkai-0.1.3.tar.gz (23.9 kB view details)

Uploaded Source

Built Distribution

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

kekkai-0.1.3-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file kekkai-0.1.3.tar.gz.

File metadata

  • Download URL: kekkai-0.1.3.tar.gz
  • Upload date:
  • Size: 23.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kekkai-0.1.3.tar.gz
Algorithm Hash digest
SHA256 260188cd7e163fbc78f0349f161569ca7d73a2910774e396393c5daefb426c39
MD5 2fd02ba0d22bcece594ea9f39d67884a
BLAKE2b-256 eb439ab0e59619db3ccf182080c4e1e300939c9b2b5dd0ef19b4f2800afda4bb

See more details on using hashes here.

File details

Details for the file kekkai-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: kekkai-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for kekkai-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 488baca879590783eb2ff39a2b5f1582ec10028694f01ecf3250594965f494e9
MD5 815b29c093c9c9ce6965945adb3fa570
BLAKE2b-256 778134c01ad16f072afb86e624147245d3e3a4ad3f4dcb36b3bc8e9ce620a4b7

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