Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,789 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jcode

CI License: MIT Built with Rust

A blazing-fast, fully autonomous AI coding agent with a gorgeous TUI, multi-model support, swarm coordination, persistent memory, and 30+ built-in tools - all running natively in your terminal.


jcode demo

Features · Install · Quick Start · Further Reading


Installation

# macOS & Linux
curl -fsSL https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.sh | bash

Need Windows, Homebrew, source builds, provider setup, or tell your agent to set it up for you? Jump to detailed installation.


Performance & Resource Efficiency

jcode is built to be as performant and resource efficient as possible. Every metric is optimized to the bone, which is important for scaling multi-session workflows. Here we sample two metrics to show the difference: RAM usage and startup time.

Headline numbers

  • jcode uses 7.2× less PSS than pi
  • jcode uses 22× less PSS than OpenCode
  • jcode uses 25× less PSS than Claude Code
  • jcode spawns 44.4× faster than pi
  • jcode spawns 66.8× faster than OpenCode
  • jcode spawns 24.3× faster than Claude Code

Memory benchmarks: 10 simultaneous sessions

Measured on this Linux machine using real interactive PTY sessions and Linux /proc memory stats. For jcode, the number includes both client memory and the incremental memory growth of the shared server, which is the fair comparison for many active sessions.

Versions tested:

  • jcode v0.8.16-dev (161f9fa)
  • pi-coding-agent 0.62.0 (pi)
  • opencode 1.0.203
  • Claude Code 2.1.86

Interactive startup time

Measured as median time to first terminal output across 10 PTY launches on this Linux machine.

Tool Median startup Range
jcode 13.6 ms 9.0–16.9 ms
Claude Code 331.1 ms 274.5–466.1 ms
pi 603.9 ms 522.3–701.4 ms
opencode 908.9 ms 785.5–1014.6 ms
Tool 1 active session 10 active sessions Avg per session at 10 Architecture
jcode 28.2 MB RSS / 8.9 MB PSS 433.3 MB RSS / 140.7 MB PSS 43.3 MB RSS / 14.1 MB PSS shared server + lightweight clients
pi 168.4 MB RSS / 156.2 MB PSS 1554.9 MB RSS / 1010.6 MB PSS 155.5 MB RSS / 101.1 MB PSS mostly per-session Node process
opencode 377.0 MB RSS / 372.6 MB PSS 3665.2 MB RSS / 3135.1 MB PSS 366.5 MB RSS / 313.5 MB PSS mostly per-session monolith
Claude Code 677.0 MB RSS / 674.1 MB PSS 4880.9 MB RSS / 3460.2 MB PSS 488.1 MB RSS / 346.0 MB PSS mostly per-session monolith

Additional memory per added session

Tool Extra RSS per added session Extra PSS per added session
jcode ~45.0 MB ~14.6 MB
pi ~154.1 MB ~94.9 MB
opencode ~365.4 MB ~306.9 MB
Claude Code ~467.1 MB ~309.6 MB

Memory

Persistent memory lets jcode remember facts, preferences, entities, and corrections across sessions.


Side Panel and Generated UI

The side panel can render linked markdown, diagrams, and generated visual output directly inside the terminal workflow. image

To make this possible, I created a new mermaid rendering library to render diagrams 1800x faster. It has no browser or Typescript dependency. See https://github.com/1jehuang/mermaid-rs-renderer


Swarm

Swarm mode lets multiple agents coordinate inside the same repo with messaging, task sharing, and conflict-aware collaboration.


OAuth and Providers

jcode works with subscription-backed OAuth flows and many provider integrations, so you can use the models you already pay for and still fall back to direct API providers when needed.

Supported OAuth / login flows

  • Claude (jcode login --provider claude)
  • OpenAI / ChatGPT / Codex (jcode login --provider openai)
  • Google Gemini (jcode login --provider gemini)
  • GitHub Copilot (jcode login --provider copilot)
  • Azure OpenAI (jcode login --provider azure)
  • Alibaba Cloud Coding Plan (jcode login --provider alibaba-coding-plan)

Supported providers

  • Native / first-party style providers: jcode, claude, openai, copilot, gemini, azure, alibaba-coding-plan
  • Aggregator / compatibility providers: openrouter, openai-compatible
  • Additional provider integrations: opencode, opencode-go, zai / kimi, 302ai, baseten, cortecs, deepseek, firmware, huggingface, moonshotai, nebius, scaleway, stackit, groq, mistral, perplexity, togetherai, deepinfra, xai, lmstudio, ollama, chutes, cerebras, cursor, antigravity, google

Self-Dev

jcode is the most customizable coding agent. Why? Because you can just modify the source code directly. Tell your jcode agent to enter self dev mode, and it will start modifying its own source code. Jcode is optimized to iterate on itself. There is significant infrastrucutre around self developement, including being able to make changes, test, build, and hot reload, fully automously without breaking your flow.


iOS Application for Native OpenClaw

A native iOS implementation of OpenClaw is coming soon.


Quick Start

# Launch the TUI
jcode

# Run a single command non-interactively
jcode run "say hello"

# Resume a previous session by memorable name
jcode --resume fox

# Run as a persistent background server, then attach more clients
jcode serve
jcode connect

# Send voice input from your configured STT command
jcode dictate

jcode supports interactive TUI use, non-interactive runs, persistent server/client workflows, and hotkey-friendly dictation without requiring a bundled speech-to-text stack.


Further Reading


Detailed Installation

Setup

If you want another agent to set up jcode for you, give it this prompt:

Set up jcode on this machine for me.

1. Detect the operating system, available package managers, and shell environment, then install jcode using the best matching command below instead of referring me somewhere else:

   - macOS with Homebrew available:
     brew tap 1jehuang/jcode
     brew install jcode

   - macOS or Linux via install script:
     curl -fsSL https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.sh | bash

   - Windows PowerShell:
     irm https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.ps1 | iex

   - From source if the above paths are not appropriate:
     git clone https://github.com/1jehuang/jcode.git
     cd jcode
     cargo build --release
     scripts/install_release.sh

   - For local self-dev / refactor work on Linux x86_64, prefer:
     scripts/dev_cargo.sh build --release -p jcode --bin jcode
     scripts/dev_cargo.sh --print-setup
     scripts/install_release.sh

2. Verify that `jcode` is on my `PATH`.
3. Launch `jcode` once in a new terminal window/session to confirm it starts successfully.
4. Before attempting any interactive login flow, assess which providers are already available non-interactively and prefer those first. Check existing local credentials, config files, CLI sessions, and environment variables such as:
   - Claude: `~/.jcode/auth.json`, `~/.claude/.credentials.json`, `~/.local/share/opencode/auth.json`, `ANTHROPIC_API_KEY`
   - OpenAI: `~/.jcode/openai-auth.json`, `~/.codex/auth.json`, `OPENAI_API_KEY`
   - Gemini: `~/.jcode/gemini_oauth.json`, `~/.gemini/oauth_creds.json`
   - GitHub Copilot: existing auth under `~/.config/github-copilot/`
   - Azure OpenAI: `~/.config/jcode/azure-openai.env`, `AZURE_OPENAI_*`, or an existing `az login`
   - OpenRouter: `OPENROUTER_API_KEY`
   - Alibaba Cloud Coding Plan: existing jcode config/env if present
5. Prefer whichever provider is already configured and verify it with `jcode auth-test --all-configured` or a provider-specific auth test when appropriate.
6. Only if no usable provider is already configured, guide me through the minimal manual step needed:
   - Claude: `jcode login --provider claude`
   - GitHub Copilot: `jcode login --provider copilot`
   - OpenAI: `jcode login --provider openai`
   - Gemini: `jcode login --provider gemini`
   - Azure OpenAI: `jcode login --provider azure`
   - Alibaba Cloud Coding Plan: `jcode login --provider alibaba-coding-plan`
   - OpenRouter: help me set `OPENROUTER_API_KEY`
   - Anthropic direct API: help me set `ANTHROPIC_API_KEY`
7. After setup, run a simple smoke test with `jcode run "say hello"` and confirm it works.
8. Explain any manual step that still needs me, especially browser OAuth, device login, or API key entry.

This is intended to be a copy-paste bootstrap prompt for jcode itself or any other coding agent.

Quick Install

# macOS & Linux
curl -fsSL https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/1jehuang/jcode/master/scripts/install.ps1 | iex

macOS via Homebrew

brew tap 1jehuang/jcode
brew install jcode

From Source (all platforms)

git clone https://github.com/1jehuang/jcode.git
cd jcode
cargo build --release

For local self-dev / refactor work on Linux x86_64, prefer:

scripts/dev_cargo.sh build --release -p jcode --bin jcode
scripts/dev_cargo.sh --print-setup

That wrapper automatically uses sccache when available, prefers a fast working local linker setup (clang + lld) instead of assuming every machine's mold configuration is valid, and can print the active linker/cache setup via --print-setup so slow-path builds are easier to diagnose.

Then symlink to your PATH:

scripts/install_release.sh

Platform Support

Platform Status
Linux x86_64 / aarch64 Fully supported
macOS Apple Silicon & Intel Supported
Windows x86_64 Supported (native + WSL2)

About

A resource-efficient, open source AI coding agent with a native TUI, built in Rust.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages