| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Work on your projects from your phone.
Splitline is an open‑source sidecar agent that lets you send natural‑language coding tasks to your dev machine from anywhere, then continue the same conversations you have in your IDE’s AI chat while you’re away.
You type a prompt into a mobile‑friendly web app. Splitline forwards your task (plus recent project context) to a local agent running on your machine, which edits files and runs commands in the projects you have open in your IDE.
Works with any IDE: VS Code, Cursor, Windsurf, Antigravity, Neovim, JetBrains, or anything that opens files from disk.
Splitline uses a distributed edge‑first architecture designed for reliability, minimal latency, and safe access to your local projects.
╔════════════════════════════════════╗
║ Global Edge Network ║
║ (Cloudflare Workers / PoPs) ║
╚═════════════════╦══════════════════╝
║
┌─────────────────────────────────╫─────────────────────────────────┐
│ ║ │
▼ ▼ ▼
┌───────────────────┐ ┌───────────────────┐ ┌───────────────────┐
│ User Device A │ │ User Device B │ │ User Device N │
│ (Any Region) │ │ (Any Region) │ │ (Any Region) │
└─────────┬─────────┘ └─────────┬─────────┘ └─────────┬─────────┘
│ │ │
└─────────────────────────────────╫─────────────────────────────────┘
▼
┌────────────────────────────────────┐
│ Local Agent Pool │
│ (Your Machines / Fleet / VMs) │
└────────────────────────────────────┘
| Component | Tech | Purpose |
|---|---|---|
| Web App | React, TypeScript, Tailwind | Mobile‑optimized PWA UI for prompts, logs, and diffs |
| Edge Worker | Cloudflare Workers, Hono | Stateless API, auth, per‑project memory lookup, LLM routing |
| Agent | Go | Local file and command execution (isolated) |
git clone https://github.com/McMerger/splitline-.git
cd splitline-
# Frontend
npm install
# Worker
cd worker && npm install && cd ..
# Agent
cd agent && go mod tidy && cd ..Edit agent/agent.config.json to add your projects:
{
"agentId": "my-splitline-agent",
"listen": { "host": "0.0.0.0", "port": 4001 },
"projects": [
{
"id": "my-project",
"name": "My Project",
"root": "/path/to/your/project",
"allowedCommands": ["npm test", "npm run build", "go test ./..."]
}
]
}You can add multiple projects and tighten allowedCommands per repo.
Terminal 1 — Go Agent:
# Windows
.\start-agent.ps1
# Linux / macOS
./start-agent.shTerminal 2 — Cloudflare Worker (local dev):
cd worker && npm run devTerminal 3 — Frontend:
npm run devOpen http://localhost:5173 on your phone (same network) or desktop.
Splitline does not replace your IDE’s AI features; it extends them for remote use and shared memory.
Any IDE that opens files from disk works with Splitline:
| IDE | Notes |
|---|---|
| VS Code | File changes appear via file watcher |
| Cursor | Works seamlessly with agentic workflows |
| Windsurf | Full support |
| Antigravity | Designed to sit alongside the built‑in AI panel |
| Neovim / Vim | Use :e! to reload files |
| JetBrains | Enable “Synchronize files on frame activation” |
Create .env in the root:
# API endpoint for the Worker
VITE_API_URL=http://localhost:8787
# Example: configure your default model provider
VITE_DEFAULT_MODEL_PROVIDER=gemini
VITE_DEFAULT_MODEL_ID=gemini-1.5-pro
# or kimi, claude, openai, etc.In worker/wrangler.toml:
[vars]
AGENT_ENDPOINT = "http://localhost:4001"
# Optional: default model config for hosted mode
DEFAULT_MODEL_PROVIDER = "gemini"
DEFAULT_MODEL_ID = "gemini-1.5-pro"For production, set AGENT_ENDPOINT to your Cloudflare Tunnel or Tailscale URL.
Splitline keeps lightweight, per‑project memory so you can resume work from anywhere:
The default implementation uses a simple database / KV store and can be swapped for a dedicated memory service later.
Splitline is designed for instant global deployment with minimal provisioning.
cd worker
npx wrangler deployYour Worker is now live across 300+ edge locations worldwide.
Use Cloudflare Tunnel or Tailscale to make your agent reachable:
# Cloudflare Tunnel
cloudflared tunnel --url http://localhost:4001
# Or Tailscale
tailscale serve 4001Update AGENT_ENDPOINT in your Worker config to the tunnel URL.
Splitline follows a zero‑trust, defense‑in‑depth security model:
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/models | List available LLM models |
| GET | /api/projects | List projects from agent |
| POST | /api/tasks | Create a new task |
| GET | /api/tasks/:id | Get task status |
| Tool | Description |
|---|---|
| list_files | List directory contents |
| read_file | Read file content |
| apply_patch | Create, update, or delete files |
| run_command | Execute whitelisted commands |
Contributions welcome.
MIT License — see LICENSE for details.
Built with React, Vite, Tailwind CSS, Radix UI, Hono, Go, and Cloudflare Workers.
| Back | FazBrowse Home | New Git URL |