Orchestrate coding agents
from your desk and your phone

Run any coding agent from your phone, desktop, or terminal. Self-hosted, multi-provider, open source.

JCode desktop app with coding agents, a conversation, and a code diff open side by side

When you want to step away from your desk,
you can.

The native mobile app has full feature parity with desktop.

JCode sessions list
JCode agent chat
JCode diff view

Loved by developers

See what developers are saying about JCode.

Works with your tools

Run your agents from one interface. JCode uses each provider's native harness, so your subscriptions, skills, config, and MCP servers keep working.

Claude Code
Codex
OpenCode
Pi
Cursor
+34 more

Runs where you work

Start agents on your laptop, a VM, or a dev server. Use them from any device over a direct connection or the end-to-end encrypted relay.

Desktop
Web
Mobile
CLI

E2E Encrypted Relay

or

Direct Connection

MacBook Pro
Hetzner VM
Dev server

Review, preview, ship

Create branches, preview the app in the browser, review the diff inline, then commit, open a PR, and merge without leaving JCode.

fix-authworktree
WorktreePreviewReviewCommitPRMerge
web.fix-auth.my-app.localhost
Inline review3 files changed
src/auth/session.ts+42
src/auth/middleware.ts+18-9
tests/auth.test.ts+31
Ready to shipchecks passed
Commit
Open PR
Merge

Split panels

Open agents, browsers, terminals, diffs, and logs in the same workspace. Split them side by side or group them in tabs.

Agent
Browser
Terminal
Diff

Forget about ports

When agents work in parallel, they all run dev servers. JCode gives each one a URL based on the branch name, no port conflicts, no guessing.

my-app
fix-authnpm run dev
web.fix-auth.my-app.localhost
add-searchnpm run dev
web.add-search.my-app.localhost
upgrade-depsnpm run dev
web.upgrade-deps.my-app.localhost

Keyboard-first

Every action has a shortcut. Panels, splits, agents - all from the keyboard.

Switch panels
1-9
Split vertical
D
Split horizontal
ShiftD
Close panel
W
New agent
N
Command palette
K

Voice control, fully local

Fully local voice stack. Speech-to-text and text-to-speech run entirely on your machine, nothing leaves your network.

Fully scriptable

Everything you can do in the app, you can do from the terminal.

jcode run "implement user authentication"
jcode run --provider codex --worktree feature-x "implement feature X"
jcode run --host devbox:6767 "run the full test suite"

jcode ls                           # list running agents
jcode attach abc123                # stream live output
jcode send abc123 "also add tests" # follow-up task
Full CLI reference

FAQ

+Is this free?
Yes. JCode is free and open source. You need Claude Code, Codex, Cursor, OpenCode, or Pi installed with your own credentials. Voice is local-first by default and can optionally use OpenAI speech providers if you configure them.
+Does my code leave my machine?
JCode doesn't send your code anywhere. Agents run locally and talk to their own APIs as they normally would. For remote access, you can use the optional end-to-end encrypted relay, connect directly over your local network, or use your own tunnel.
+What agents does it support?
Claude Code, Codex, Cursor, OpenCode, and Pi. Each agent runs as its own process using its own CLI or local integration. JCode doesn't modify or wrap their behavior.
+Do I need the desktop app?
No, but it is the recommended way to install locally or prepare a remote host with Set up over SSH. If SSH setup is unavailable, you can manually install the self-contained EOS runtime with curl -fsSL https://objects.eos.chengdu-7.cmecloud.cn/jcode/runtime/install.sh | sh and use the CLI, web app, or mobile app to connect. EOS installs can self-update; Desktop-managed hosts are upgraded through its repair flow.
+How does voice work?
Voice runs locally on your device by default. You talk, the app transcribes and sends it to your agent as text. Optionally, you can configure OpenAI speech providers for higher-quality transcription and text-to-speech. See the voice docs.
+Can I connect from outside my network?
Yes. You can use the hosted relay (end-to-end encrypted, JCode can't read your traffic), set up your own tunnel (Tailscale, Cloudflare Tunnel, etc.), or expose the daemon port directly. See configuration.
+Do I need git or GitHub?
No. JCode works in any directory. Worktrees are optional and only relevant if you use git. You can run agents anywhere you'd normally work.
+Can I get banned for using JCode?

We can't make promises on behalf of providers.

That said, JCode launches each provider's local CLI or integration (Claude Code, Codex, Cursor, OpenCode, Pi) as a subprocess. It doesn't extract tokens or call inference APIs directly. From the provider's perspective, usage through JCode is indistinguishable from running the provider yourself.

I've been using JCode with all providers for months without issue.

+How do worktrees work?
When you launch an agent with the worktree option (from the app, desktop, or CLI), JCode creates a git worktree and runs the agent inside it. The agent works on an isolated branch without touching your main working directory. See the worktrees docs.

JCode is an independent open source project for running coding agents across your own machines, phone, desktop, and CLI.

It's built around freedom of choice: use the provider you want, run it on your own infrastructure, and keep your workflow portable.

If you like JCode, sponsorship is the best way to support continued development.

- Mo