Send prompts to VS Code Copilot from any device
Keep-It-Moving (KIM) lets you send prompts to GitHub Copilot from your phone, tablet, or other devices. Install the VS Code extension, generate a pairing code, and start sending prompts remotely.
Demo showing the complete KIM workflow: VS Code extension β QR code pairing β mobile prompting β Copilot integration
Option A: Build from Source (Required)
git clone https://github.com/jmoncayo-pursuit/keep-it-moving.git
cd keep-it-moving/extension
npm install
npm run package
code --install-extension kim-vscode-extension-1.0.0.vsix --forceOption B: Install from VSIX File
If you have the kim-vscode-extension-1.0.0.vsix file:
code --install-extension kim-vscode-extension-1.0.0.vsix --forceNote: This extension is not yet available on the VS Code Marketplace. You must build from source or install from a VSIX file.
Option A: Control Panel (Recommended)
- Click the KIM status indicator in VS Code status bar
- Click "Generate New Code" or use the displayed code
- Server starts automatically if not running
Option B: Command Palette
- Open VS Code Command Palette (Ctrl/Cmd+Shift+P)
- Run:
KIM: Show Pairing Code(auto-starts server) - QR code and pairing code appear in VS Code panel
Option A: QR Code (Recommended)
- Scan QR code with your phone
- PWA opens automatically
- Enter the 6-digit code shown in VS Code
- Start sending prompts!
Option B: Manual
- Visit the URL shown in VS Code (e.g.,
http://192.168.1.59:8080) - Enter the 6-digit pairing code
- Start sending prompts!
- Embedded Server: WebSocket server running inside VS Code extension
- Self-Hosting PWA: Complete web app served directly from extension (no external hosting)
- Dynamic Port Discovery: Intelligent fallback system for reliable startup
- Real-Time Integration: Direct GitHub Copilot chat injection with sub-second delivery
- QR Code Auto-Pairing: Scan β auto-fill β connect seamlessly
- Emoji-Driven Feedback: ππ±π throughout the experience
- Playful Error Messages: "Your coding session took a coffee break! β"
- Stacked Notifications: Beautiful, non-intrusive feedback system
- UUID Token Authentication: 122-bit cryptographic security
- Session Management: 24-hour expiry with automatic cleanup
- Local-First: Zero cloud dependencies, all traffic stays on your network
- Multi-Device Support: Unlimited simultaneous connections
- VS Code extension starts an embedded WebSocket server
- Extension serves a PWA directly from the extension
- Extension generates a pairing code and QR code
- Device scans QR code or visits URL to connect to PWA
- Prompts sent from device appear instantly in VS Code Copilot chat
ποΈ View Detailed Architecture - See the innovative embedded server design
π View Major Milestones - Celebrate the technical breakthroughs
We've implemented a lightweight notification-based approach for sharing QR codes:
- Notification-Based: Instead of resource-intensive hover functionality, QR codes are displayed via notifications
- On-Demand Generation: QR codes are only generated when explicitly requested
- Two-Step Process: Simple notification with pairing code first, full QR code only when needed
- Improved Performance: Eliminates VS Code slowdowns and freezes that occurred with hover-based implementation
We've created a custom hook that elegantly integrates with VS Code's Chat API for effortless prompt delivery:
// Seamless integration with VS Code Chat API
await vscode.commands.executeCommand('workbench.action.chat.open', {
query: prompt
});This elegant solution provides:
- Instant Delivery: Prompts appear immediately in Copilot chat
- Native Integration: Uses VS Code's official Chat API
- Context Preservation: Maintains conversation flow between prompts
- Full Character Support: Handles emoji and special characters perfectly
Once installed, KIM adds these commands to VS Code:
- KIM: Toggle Server - Start/stop the embedded server
- KIM: Show Pairing Code - Generate and display QR code for device pairing
- KIM: Show Status - View connection status and server info
KIM provides a comprehensive control panel accessible from the VS Code status bar. Click the KIM status indicator to open the control panel:
The control panel provides:
- Server Status: Real-time server status and port information
- Device Pairing: Current pairing code with one-click generation
- Quick Actions: Start/stop server, generate codes, open PWA
- Settings: Auto-start configuration and preferences
- Quick Start Guide: Step-by-step setup instructions
- Start the Server: Use
KIM: Toggle Serveror check the KIM status in the status bar - Generate Pairing Code: Use
KIM: Show Pairing Codeto get your QR code - Check Status: Click the KIM status bar item or use
KIM: Show Status - Stop Server: Use
KIM: Toggle Serveragain to stop
- Server won't start: Extension will automatically find an available port
- No pairing code: Make sure server is running first
- VS Code slow: Restart VS Code if you experience performance issues
- Connection issues: Restart the server using
KIM: Toggle Server
- Node.js 16+
- VS Code with GitHub Copilot extension
git clone https://github.com/jmoncayo-pursuit/keep-it-moving.git
cd keep-it-moving/extension
npm install# Start the extension in development mode (includes embedded server)
npm run dev-extensionWe extensively researched capturing Copilot responses to enable bidirectional communication:
Methods Tested:
- β Chat Provider Hook - VS Code Chat API not accessible
- β Extension Hook - Copilot extension exports not usable
- β Webview Interception - Chat doesn't use interceptable webviews
- β Command Hook - No response data in command execution
Conclusion: Response capture is not feasible with current VS Code/Copilot architecture. The system is designed to prevent external extensions from intercepting AI responses.
Current Status: KIM focuses on prompt injection (sending prompts from mobile to Copilot), which works perfectly. Response viewing requires checking VS Code directly.
- Voice prompts
- Team collaboration
- Plugin ecosystem
- Enhanced mobile UI
- Prompt templates
MIT License
Keep-It-Moving - Remote Copilot Prompting Made Easy π
#ForTheLoveOfCode

