Kilo canvas#3567
Conversation
…modes are also working. Button displayed on chat menu.
…connecting to any port
…connecting to any port
…uff. Added dev build script to use tailscale ips.
Down merge
…clicking is not re-rendering screen and all.
… web development and deployment
|
|
Hey there. This is a cool feature! Would be interested in giving it a go soon and possible contributing. What is the status of it? Are you working on any additional features? Any current drawbacks? |
|
Hey @intuitiv. Can you merge the latest... Github says "Changes can be cleanly merged" I wonder if it is being truthful :-) |
Thanks @strich for the kind words! It’s great to hear you're interested. Open Questions & Next Steps: Process: |
Thanks @adamhill, for the nudge! I plan to do a clean merge with the latest main later this week to ensure everything is up to date and completely conflict-free. I'll drop a comment here once it's pushed! |
|
I would say I'd like to see a web client instead of an app. The app restricts the surface area of where one can remote in and of course comes with a lot of additional overhead in getting this thing working. |
Thats fine. I think web app is already working. I have added scripts to build, launch and develop on web. Can you give a try, may be we can discuss over discord if you observe any issues or enhancements we can discuss. |
Context
This PR introduces the "Mobile Bridge," a new feature that untethers development from the desk by allowing users to continue their Kilo Code sessions from a mobile device.
This was born from a personal need to achieve true continuity in my development workflow. I often found myself needing to step away from my computer mid-task, shattering my focus. The goal of the Mobile Bridge is to enable a seamless, continuous "vibe coding" session, turning a fragmented process into an uninterrupted conversation with Kilo, no matter where I am.
Implementation
I chose to build this feature directly into the Kilo Code extension to create a robust, first-class experience, avoiding fragile workarounds like a companion extension that would rely on file polling.
The implementation consists of three core parts:
The Bridge Server (
src/bridge/MobileBridge.ts): A new module is introduced that starts a per-workspace HTTP server. It's activated via a new status bar item and exposes two primary endpoints:POST /new-taskandPOST /send-followup. The server interacts with Kilo by calling its internal functions directly, ensuring a stable and performant connection.UI Integration: A new, minimal UI element is added to the VS Code status bar. This allows the user to easily start and stop the Mobile Bridge server for the active workspace and configure the port.
The "Kilo Canvas" Mobile App: To make this feature immediately useful, this PR also includes "Kilo Canvas," a mobile client sub-project located in the monorepo (
apps/kilo-remote). Built with Expo (React Native), it serves as both a reference implementation for the API and a fully functional mobile app that the community can use out-of-the-box.The main tradeoff of this approach is that the bridge has a direct dependency on Kilo's internal controllers, but I believe this is the correct choice for such a deeply integrated feature, ensuring long-term stability over external methods.
Screenshots
Mobile bridge on vscode workspace

Kilo canvas sample screenshot from my mobile

apps/kilo-remote/README.md has all the necessary details to setup for dev and deploy of mobile app.
How to Test
Run the extension from this branch.
From the VS Code status bar, click the new button to "Start Mobile Bridge".
Test creating a new task:
curlcommand:taskId.Test sending a follow-up message:
taskIdfrom the previous response and use it in the next command:Get in Touch
I'm active on the Kilo Code Discord. My handle is sainath_aet. I'm very excited about this feature's potential and am happy to discuss it further and make any changes needed