This binds your machine, starts the daemon, registers it as a system service, and brings the machine into the web/mobile dashboard.
+### OpenClaw Connect
+
+If OpenClaw is running locally, connect IM.codes to the OpenClaw gateway on the daemon machine:
+
+```bash
+imcodes connect openclaw
+```
+
+What this does:
+
+- connects to `ws://127.0.0.1:18789` by default
+- reuses the OpenClaw gateway token automatically from `~/.openclaw/openclaw.json`
+- syncs OpenClaw sessions and child sessions into IM.codes so they appear as transport-backed sessions/sub-sessions
+- saves the IM.codes-side connection config to `~/.imcodes/openclaw.json`
+- restarts the daemon so OpenClaw transport sessions can reconnect automatically
+
+Common variants:
+
+```bash
+imcodes connect openclaw --url ws://127.0.0.1:18789
+OPENCLAW_GATEWAY_TOKEN=... imcodes connect openclaw
+imcodes connect openclaw --url wss://gateway.example.com
+```
+
+Notes:
+
+- remote non-TLS `ws://` URLs require `--insecure`
+- use `imcodes disconnect openclaw` to remove the saved config and drop the connection
+- this flow has only been tested on macOS
+
## Self-Host
### One-Command Setup
@@ -284,7 +328,7 @@ Check the daemon watchdog log for errors:
- **Windows (experimental)**: Native support via ConPTY (built-in on Windows 10+). Just `npm install -g imcodes` — no extra software needed. WSL also works.
- Node.js >= 20
- Terminal multiplexer: [tmux](https://github.com/tmux/tmux) (Linux/macOS). Windows uses ConPTY (auto-detected, built-in).
-- At least one AI coding agent: [Claude Code](https://github.com/anthropics/claude-code), [Codex](https://github.com/openai/codex), [Gemini CLI](https://github.com/google-gemini/gemini-cli), [OpenClaw](https://openclaw.com), or [Qwen](https://github.com/QwenLM/qwen-agent)
+- At least one AI coding agent: [Claude Code](https://github.com/anthropics/claude-code) (CLI or SDK), [Codex](https://github.com/openai/codex) (CLI or SDK), [Gemini CLI](https://github.com/google-gemini/gemini-cli), [OpenClaw](https://openclaw.com), or [Qwen](https://github.com/QwenLM/qwen-agent)
## Disclaimer
diff --git a/landing/imcodes-watch0.png b/landing/imcodes-watch0.png
new file mode 100644
index 000000000..c8ae8eb70
Binary files /dev/null and b/landing/imcodes-watch0.png differ
diff --git a/landing/imcodes-watch1.png b/landing/imcodes-watch1.png
new file mode 100644
index 000000000..17418906b
Binary files /dev/null and b/landing/imcodes-watch1.png differ
diff --git a/landing/imcodes-watch2.png b/landing/imcodes-watch2.png
new file mode 100644
index 000000000..debefae7d
Binary files /dev/null and b/landing/imcodes-watch2.png differ
diff --git a/landing/index.html b/landing/index.html
index dcf597729..19877d229 100644
--- a/landing/index.html
+++ b/landing/index.html
@@ -69,6 +69,10 @@
.screenshots .row.desktop img { width: 100%; }
.screenshots .row.mobile a { width: 18%; }
.screenshots .row.mobile img { width: 100%; }
+.screenshots .row.watch a { width: 31%; }
+.screenshots .row.watch img { width: 100%; }
+.download-note { color: var(--dim); font-size: 12px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
+.download-note .watch-pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 8px; border: 1px solid var(--border); border-radius: 999px; background: var(--code-bg); color: var(--fg); }
.arch {
background: var(--code-bg);
@@ -265,6 +269,13 @@ screenshots
+ Apple Watch
+
+ Watch support covers quick session monitoring, unread counts, OTA update visibility, push notifications, and quick replies from the wrist.
@@ -292,9 +303,9 @@ features
remote terminal
browser & mobile, no SSH/VPN, real-time PTY streaming at 12fps
file browser & git
tree view, upload/download, +/- stats, floating preview
local web preview
preview localhost from any device via secure tunnel, supports HMR
- mobile & notifications
biometric auth, push notifications, shell keyboard input
+ mobile, watch & notifications
biometric auth, push notifications, shell keyboard input, watch quick replies
multi-agent discussions
discuss, audit, review across providers with ring progress
- streaming transport agents
native streaming for OpenClaw & Qwen — real-time delta updates, tool tracking, session restore. Qwen offers a free tier (1,000 req/day) from Alibaba Cloud — subject to change.
+ CLI + SDK agents
Claude Code and Codex work through both CLI and SDK integrations. OpenClaw and Qwen stream natively with real-time deltas, tool tracking, and session restore.
terminal + chat
raw CLI or structured view with parsed tool calls
Discord-style sidebar
server icons, session tree, unread badges, idle flash
@ picker
@files, @@agents, @@all(config) for group dispatch
@@ -318,17 +329,21 @@ architecture
Server (self-hosted, relays connections)
│ WebSocket
Daemon (your machine, manages sessions)
- │ tmux
-Agents (Claude Code / Codex / Gemini CLI / OpenClaw / Qwen and more)
- The daemon runs on your dev machine and manages agent sessions through tmux. The server relays connections between your devices and the daemon. Everything stays on your infrastructure.
+ │ tmux / transport
+Agents (Claude Code / Codex via CLI + SDK · Gemini CLI · OpenClaw · Qwen)
+ The daemon runs on your dev machine and manages process-backed sessions through tmux plus transport-backed sessions through SDKs and network protocols. The server relays connections between your devices and the daemon. Everything stays on your infrastructure.
download
-
+
+
+ ⌚ iPhone · iPad · Apple Watch
+ Watch app includes session list, unread counts, and quick replies.
+
@@ -348,6 +363,22 @@ quick start
+
+ openclaw connect
+ If OpenClaw is running on the same machine as the daemon, connect IM.codes to the local OpenClaw gateway with:
+ imcodes connect openclaw
+
+ - Default gateway URL:
ws://127.0.0.1:18789
+ - Token auto-detected from
~/.openclaw/openclaw.json, or pass --token / OPENCLAW_GATEWAY_TOKEN
+ - OpenClaw sessions and child sessions sync into IM.codes automatically
+ - Saved to
~/.imcodes/openclaw.json so the daemon can reconnect automatically
+ - Use
imcodes disconnect openclaw to remove the saved config
+
+ imcodes connect openclaw --url wss://gateway.example.com
+OPENCLAW_GATEWAY_TOKEN=... imcodes connect openclaw
+ Only tested on macOS so far. Remote plain-text ws:// URLs require --insecure.
+
+
self-host
Deploy server + daemon on a single machine. Requires Docker and a domain with DNS pointing to the server.
@@ -366,6 +397,7 @@ self-host
supported agents
+ Claude Code and Codex support both CLI and SDK integrations.
Claude Code
Codex
@@ -382,7 +414,7 @@
requirements
- macOS, Linux, or Windows (native experimental; WSL fully supported)
- Node.js ≥ 20
- - tmux (Linux/macOS/WSL). Windows native uses ConPTY (built-in).
+ - tmux (Linux/macOS/WSL). Windows native uses ConPTY (built-in). Claude Code and Codex also support SDK-backed sessions.
@@ -420,14 +452,28 @@
about