Built on OpenCode Official API · iOS / Android

OpenCode
in Your Pocket.

Run opencode serve on your dev machine, chat with AI coding sessions from your phone. On the commute, at a café, in bed — streaming responses, permission approvals, multi-project switching, all without modifying OpenCode, using only its official API.

iOS 15+ Android 8+ Official API kkcode.app
FEATURES

Designed for Remote Real-Time.

KKCode fully wraps the OpenCode official API, giving you the same session experience on mobile as on desktop.

Streaming Chat

AI text, reasoning traces, tool calls, and file I/O pushed to your screen in real time — same typewriter effect as desktop. Auto-reconnects on drop.

Permission Approvals

When AI wants to read files, edit code, or run commands, a prompt pops up. One tap — Allow Once / Always / Reject — keeps you in full control.

Encrypted Credentials

Server address, username, and password are encrypted and stored locally on your device — never sent to any third-party server.

Multi-Project Switching

Automatically lists all project directories on your dev machine. Switch with one tap; sessions are fully isolated between projects.

Session Management

Create, delete, and long-press for more options. History is always accessible; resume any previous conversation with full context.

Status Indicator

Live nav-bar badge shows Connected / Connecting / Error — network issues are always visible.

HOW IT WORKS

Dev Machine is Backend, Phone is Terminal.

KKCode isn't a clone of OpenCode — it's a remote control. We only call OpenCode's official API. All AI inference, file I/O, and command execution happen on your dev machine; the phone just renders and confirms.

Dev Machine · Mac / Linux
opencode serve
OpenCode Official
HTTP / SSE API
iPhone / Android
KKCode
Official API client
Just add your server URL
01 Start the Official Service

Run opencode serve on your dev machine. It exposes OpenCode's built-in HTTP API.

02 Pick a Network Path

Public IP is easiest; no public IP? Use Tailscale / WireGuard / Cloudflare Tunnel / frp / ngrok — any tunnel works.

03 Connect on Phone

Enter your server URL and password in KKCode. Credentials are encrypted locally.

04 Start Chatting

Pick a project directory, open a session, send a prompt — all responses come from your own dev machine.

QUICK START

Up in Three Steps.

Prerequisite: opencode is already installed on your dev machine.

1

Start the server on your dev machine

# Set a random access password
OPENCODE_SERVER_PASSWORD='your-password' \
  opencode serve \
    --hostname 0.0.0.0 \
    --port 4096
2

Choose a network path

# Pick one that lets your phone reach the dev machine:

# A · Public IP (easiest)
http://your-public-ip:4096

# B · Tailscale / WireGuard
http://100.x.x.x:4096

# C · Tunnel
# Cloudflare Tunnel / frp /
# ngrok / etc.
3

Configure the connection on phone

# Fill in KKCode's connection screen:
Server URL = http(s)://your-address:4096
Username   = opencode
Password   = <password from Step 1>

# Credentials are encrypted on-device

Tip: If exposing to the public internet, strongly recommend an HTTPS reverse proxy (Caddy, Nginx, or Cloudflare all work) and a strong password.

DOWNLOAD

Install on Your Phone Now.

Available on the App Store. Android coming soon.

KKCode for iOS
iOS 15+
  • Now available on the App Store
  • Supports iPhone & iPad
KKCode for Android
Android 8+
  • Coming soon — stay tuned
  • Supports phones & tablets
FAQ

Frequently Asked Questions.

How does the phone connect to my dev machine? Is Tailscale required?
Not required — any path that lets your phone reach the machine works. Common options:
Public IP — simplest if your machine has one;
Tailscale / WireGuard / ZeroTier — encrypted VPN between phone and machine;
Tunnel — Cloudflare Tunnel, frp, ngrok, or similar expose the local service to the internet.
Using a public network? HTTPS reverse proxy + strong password recommended.
Does it modify OpenCode? Does any data go to third-party servers?
No. KKCode is purely a client for OpenCode's official API — OpenCode itself is not modified, and there is no backend server of ours. All chat, code, and command execution happen on your dev machine; the phone is just a remote control.
Does it support push notifications?
Not in the current version. The app receives messages continuously while in the foreground or briefly in the background. Push notifications are planned for a future release.
Is my password safe?
Credentials are stored only on your device (system-level encrypted storage) and sent directly to your own dev machine — never through any third-party server. KKCode also collects no telemetry data.
Does it run on iPad?
Yes — install the iOS version directly on your iPad. Android tablets work the same way with the Android version.