Skip to content

Repository files navigation

CodePilot Remote by Dream XV

CodePilot Remote Logo

CodePilot Remote by Dream XV (V1)
Remote Control for AI Coding Agents. Your AI Workspace. Anywhere.

CodePilot Remote Banner Image

CodePilot Remote is a provider-agnostic, open-source remote control and permission approval system designed for terminal-based AI coding agents (such as Claude Code and Gemini CLI). When you walk away from your workspace, CodePilot Remote relays sensitive agent permission requests (like file writes, terminal executions, or web lookups) instantly to your mobile device, allowing you to review, approve, or deny actions from anywhere.

License: MIT Python FastAPI Flutter


🌟 Key Features (V1)

  • 📲 Remote Permission Approval: Securely approve or deny commands, file actions, and API lookups from your mobile device.
  • 🔄 Multi-Session Manager: Create, rename, delete, and switch between multiple running sessions (e.g. Claude Code and Gemini CLI) simultaneously.
  • 🚀 Session Reconstruction (Resume): Restore and reconstruct closed or stopped sessions from metadata even after the desktop agent has been shut down or restarted.
  • 📜 Session Timeline History: Persistent SQLite-backed logging of all activity timelines (such as file reads, writes, tests run, and approvals) to view offline.
  • ⚙️ Risk-Based Notification Filtering: Toggle alerts for high-risk operations only, or customize notification behaviors inside the Settings screen.
  • 🔐 Transient Cryptographic Pairing: Bond desktop and mobile devices in seconds using 6-digit one-time-use pairing codes.
  • ⚡ Low-Latency WebSockets: Full-duplex WebSocket connections ensure lightning-fast communication and terminal frame synchronization.
  • 🛡️ Secure Token-Based Auth: Cryptographically signed JSON Web Tokens (JWT) verify signatures and device-specific claims on every packet.

🔄 Interaction Flow

CodePilot Remote acts as a security gateway between your coding agent and your mobile device:

  ┌─────────────────┐             ┌───────────────┐             ┌────────────────┐
  │  Desktop Agent  │             │    Backend    │             │   Mobile App   │
  │  (Claude Code)  │             │   (FastAPI)   │             │   (Flutter)    │
  └────────┬────────┘             └───────┬───────┘             └───────┬────────┘
           │                              │                             │
           │  Detects Prompt              │                             │
           │ ───────────────────────────> │                             │
           │                              │  Forward Request            │
           │                              │ ──────────────────────────> │
           │                              │                             │
           │                              │                             │  Approve / Deny
           │                              │                             │ <──────────────
           │                              │  Relay Decision             │
           │ <─────────────────────────── │                             │
           │                              │                             │
           │  Sends Stdin to Agent        │                             │
           v                              v                             v

📦 Downloads & Release Files

Pre-compiled binary packages are provided directly in the repository for easy installation without compiling from source:

  • 💻 Windows Standalone CLI & Installer: 👉 Download CodePilot-Setup.exe
    Bundles the desktop agent, backend server, and dependencies. Python is not required to run this standalone package!

  • 📱 Android Mobile Application: 👉 Download CodePilot.apk
    The companion application to review permission requests, monitor live terminal streams, and manage historic sessions.


🚀 Setting Up & Pairing

Step 1: Install and Run on Workstation

Install and launch the agent on your workstation using the provider argument (e.g., claude):

codepilot start claude

This automatically starts the local FastAPI server in the background and opens the agent terminal monitor.

Step 2: View Pairing Info on Desktop Console

If the workstation is unpaired, it will print a connection banner:

============================================================
  UNPAIRED WORKSTATION DETECTED
  Please link your mobile device to receive alerts.

  Open the CodePilot App on your phone and enter this code:

                >>>   839420   <<<

  Pairing Code: 839420
  Server URL:   ws://192.168.1.100:8000
  (Code expires in 1800 seconds)
============================================================

Step 3: Link Your Mobile Phone

  1. Install and open the CodePilot App (CodePilot.apk) on your Android phone.
  2. In the connection prompt, enter the Server URL matching your PC's IP address (e.g., http://192.168.1.100:8000).
  3. Enter the 6-digit Pairing Code (839420) and tap Pair.
  4. Once paired, the app is bound to your desktop using signature-secured JWT tokens. The status on both screens will update to Mobile paired and online!.

💻 CLI Commands Reference

codepilot (or codepilot.exe) exposes standard administration commands for ease of use:

Command Usage Description
start [provider] codepilot start claude Starts the background FastAPI server and wraps the terminal watch process for claude, gemini, or generic.
pair codepilot pair Generates a new 6-digit cryptographic pairing code for connecting a mobile device.
unpair codepilot unpair Revokes the current pairing mapping in the database and resets local credential files.
status codepilot status Queries the local backend server and outputs debug connection states for both mobile and desktop.

🛠️ Developer Manual (Running from Source)

Running the Backend & CLI

  1. Clone the repository and navigate to the directory:
    git clone https://github.com/dreamxvofficial/codepilot-remote.git
    cd codepilot-remote/CodePilotRemote
  2. Setup the virtual environment and install dependencies:
    python -m venv .venv
    .venv\Scripts\activate  # Windows
    pip install -r requirements.txt
  3. Run the CLI tool:
    python codepilot.py start claude

Running the Flutter Client

  1. Navigate to the mobile app folder:
    cd mobile-app
  2. Fetch dependencies and launch:
    flutter pub get
    flutter run --release

🔒 Security Hardening

CodePilot Remote implements rigorous defensive security standards:

  • Connection Handshakes: WebSockets are validated at connection time. The token query parameter must match a valid JWT signed with the server's local JWT_SECRET, and the JWT subject claim (sub) must match the device identifier.
  • SQL Injection Prevention: All SQLite queries are fully parameterized via aiosqlite to eliminate SQL injection risks.
  • Log Redaction: Automatic log filter middleware masks authentication tokens and credentials (token=[REDACTED]) to prevent accidental leaks.
  • LAN / Public Encryption: When running publicly on the Web, you must configure a TLS-terminating reverse proxy (like Nginx or Caddy) to run connections over secure protocols (https:// and wss://).

📝 License & Disclaimer

Distributed under the MIT License. See LICENSE for details.

Disclaimer: CodePilot Remote is currently in active v1.0.0 release. Please evaluate the security profile of your workspace before deploying in highly confidential enterprise environments.


CodePilot Remote
by Dream XV
Remote Control for AI Coding Agents.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages