Status: 0.0.1-SNAPSHOT (early development build)
Jclaw is a terminal-first coding assistant built with Spring AI + TamboUI. It runs as a full-screen split-pane TUI: chat on the left, workflow projection on the right.
Required:
OPENAI_API_KEYenvironment variable
You can variable using command line:
export OPENAI_API_KEY=your_api_key_hereon windows powershell:
$env:OPENAI_API_KEY="your_api_key_here"Optional (application.yml defaults already exist):
jclaw.subagent.enabled(default:false) — set totrueto activate the Claude Code subagent tool in BUILD modejclaw.subagent.claude-command(default:claude)jclaw.subagent.permission-mode(default:bypassPermissions)jclaw.ai.max-messages(default:100)jclaw.session.*paths for local H2 databases
To enable the subagent, add to application-local.properties:
jclaw.subagent.enabled=trueOr pass as a JVM flag: -Djclaw.subagent.enabled=true
Notes:
- Session/workflow data is persisted under
.jclaw/in the launch directory. - Global config database is under
~/.jclaw/. src/main/resources/application-local.propertiesis intentionally not tracked by Git.
Project can't be run from an IDE neither using ./gradle bootJar due to TamboUI's terminal handling. To run the project, use the command line:
./gradlew build
java -jar build/libs/jclaw-0.0.1-SNAPSHOT.jarwith claude subagent enabled:
./gradlew build
java -Djclaw.subagent.enabled=true -jar build/libs/jclaw-0.0.1-SNAPSHOT.jar- Stream assistant output live in the TUI.
- Maintain two execution modes:
PLAN(default): read-only toolsetBUILD: expanded toolset after confirmation
- Handle slash commands:
/plan,/build,/clear,/help
- Project tool/subagent progress into a workflow pane (steps, status, risk, estimated cost).
- Run Claude Code as a subagent (opt-in via
jclaw.subagent.enabled=true, requiresclaudeon PATH).