Why We Migrated Off GitHub Copilot — and Why Cursor + Claude Code Won
Copilot's brand damage, rigid UX, and lack of model choice drove our migration. Cursor's Composer + Claude Code CLI gives us model routing, local-first control, and the workflow flexibility Copilot never delivered.
Published 2026-06-10
Why We Migrated Off GitHub Copilot — and Why Cursor + Claude Code Won
TL;DR: Copilot became a “cursed brand” — forced VS Code integration, single-model lock-in, and Microsoft telemetry pushed us to Cursor (interactive) + Claude Code CLI (headless cron). Migration took 2 days; zero regrets. Full comparison →
The Context
Hermes operates two distinct AI coding workflows: (1) interactive development — building Hermes itself, debugging cron agents, writing new skills; (2) headless cron execution — 18 scheduled jobs that spawn agent sessions to research, synthesize, and publish. Copilot served neither well: interactive felt like fighting VS Code’s UI; headless wasn’t supported at all. Team: 1 operator. Constraint: local-first, model choice freedom, zero telemetry, works in terminal + IDE.
What We Tested
| Tool / Configuration | Use Case | Verdict | Why |
|---|---|---|---|
| GitHub Copilot (VS Code) | Interactive coding | ❌ | Forced VS Code; single model (GPT-4o); telemetry non-disablable; Composer equivalent weak |
| GitHub Copilot CLI | Headless/cron attempt | ❌ | Not designed for agent orchestration; no context management; no tool calling |
| Cursor (Composer + Chat) | Interactive development | ✅ Current | Model switcher (Sonnet/Opus/Fable 5/Grok); Composer edits multi-file; local-first optional |
| Claude Code CLI | Headless cron agents | ✅ Current | Native terminal agent; MCP support; persistent context; model choice; scriptable |
| Cursor + Claude Code (hybrid) | Full stack | ✅ Current | Cursor for human-in-loop; Claude Code for cron; shared context via file system |
The Pivot Point
June 1, 2026: Copilot pushed a forced update that broke our custom keybindings, added unremovable telemetry ping to vscode.github.com, and reset model to GPT-4o (no Opus/Claude option). Same week, Reddit/X exploded with “POV: you’re still using Copilot” memes. We had a cron job (weekly-synthesis-001) that needed Opus-level reasoning — Copilot couldn’t do it. We installed Cursor, pointed it at the repo, and had parity in 30 minutes. Installed Claude Code CLI for cron the next day. Done.
What We Use Now
Interactive: Cursor
- Default model: Sonnet 3.5 (speed/cost balance)
/modelswitcher for Opus/Fable 5/Grok on hard turns- Composer for multi-file refactors (e.g., “add token attribution to all cron wrappers”)
.cursorrulesenforces our operating principles, approval gates, factuality checklist- Zero telemetry:
cursor --disable-telemetryflag + local.cursor/mcp.jsononly
Headless: Claude Code CLI
# Cron wrapper for weekly-synthesis-001
claude-code --model claude-opus-4 \
--system-prompt "$(cat brain/company/operating-principles.md)" \
--allowed-tools "read_file,write_file,search_files,patch,terminal" \
--workspace /tmp/hermes-weekly-synthesis \
--max-turns 30 \
--output-format jsonl \
>> logs/hermes-weekly-synthesis-$(date +%s).jsonl
- Persistent context across turns (file-based)
- MCP servers for n8n, Metricool (read-only)
- Cost tracking built-in:
--cost-limit 5.00per run
When You’d Choose Differently
- Stay with Copilot if: your team is all-in on VS Code, you want zero config, you’re fine with GPT-4o only, enterprise Microsoft contract covers it, you don’t need headless agents.
- Use Windsurf if: you want Cursor-like UX but cheaper ($15/mo vs $20), accept smaller team/slower updates, don’t need Fable 5/Grok model access.
- Use Zed + Copilot/own model if: you want native performance, open-source editor, willing to configure model routing yourself.
Tool Crucible Rating
| Dimension | Score (1–5) | Notes |
|---|---|---|
| Overall | 2 | Product works but brand/trust destroyed; no model choice; hostile to power users |
| Ease of Adoption | 5 | Pre-installed in VS Code; zero setup for basic use |
| Value | 1 | Negative value for us — forced telemetry + single model + no headless = active liability |
| Support/Ecosystem | 3 | Microsoft backing but community sentiment toxic; issues closed without response; roadmap opaque |
This is part of our AI Coding Assistant comparison series. See full comparison: Tool Crucible AI Coding Tools 2026
Last reviewed 2026-06-10. See our methodology and affiliate policy.