anomalyco / anomalyco/opencode
[FEATURE]: Integrate opencode serve as a first-class monitor mode in the desktop client
Open
@Brendonovich is already working on this.
Since Aug 29, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Summary
- I have searched for existing issues before filing this
Integrate opencode serve as a first-class, optional monitor/mode within the OpenCode desktop client — so users can serve their local instance to mobile or other devices without running a separate sidecar process.
Problem
Today, opencode serve must be run as a separate process alongside the desktop client. This creates:
- Mobile access friction — users who want OpenCode on their phone/tablet must set up
serveas a sidecar, manage auth, port forwarding, and reverse proxy manually - Fragmented UX — "Run OpenCode" and "Serve OpenCode" are two separate mental models; most users don't discover
serveexists - Half-baked integrations — plugins like
neohiro/mobile-syncexist to fill this gap but are inherently limited becauseservewas never an integrated feature - No unified session/project sharing —
serveas a sidecar doesn't carry OpenCode's session context naturally between devices
Proposed Solution
Add a "Serve Mode" toggle in the desktop client:
Status Popover → [ ] Enable Serve
┌─ Serve Settings ──────────────────┐
│ Port: [ 18792 ] │
│ Auth: [x] Require password │
│ Network: ( ) Local only │
│ (•) Accessible LAN │
│ ( ) Public (Tunnel) │
│ Password: [ ••••••••••••••••• ] │
└──────────────────────────────────┘
Behavior:
- Serve starts/stops within the same OpenCode process
- Session and project context is shared naturally (same process)
- Auth is integrated with the client's auth system
- Client shows a "Serving" indicator with URL and QR code
- Future: built-in tunneling for true mobile access
Related Issues
| Related Issue | Topic | This Issue |
|---|---|---|
| #19078 | serve ignores configuration | Making serve a built-in client feature |
| #14445 | serve base directory security | Same underlying serve, different ask |
| #43039 | no-password flag for serve | Auth UX in the integrated panel |
| #44640 | require auth for non-loopback binds | Secure-by-default in the integrated panel |
| #32932 | serve doesn't release port on exit | Should be fixed in integrated mode |
| #43110 | generic ServeError on Windows | Better error UX in integrated panel |
OS
Primarily Windows and macOS (desktop use case). All platforms benefit.
🦙 Creative Monkey at FrenzyPenguin Media — open-source security hardening & privacy tools
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.