The Workshop · 12 min mission
Cline & Roo Code: Open-Source Agents Inside VS Code
Master the two open-source, MCP-first VS Code agents — Cline's Plan/Act gears and Roo Code's role modes — and why Roo's extension is now the Zoo Code fork.
On this page
Cline and Roo Code are open-source, Apache-2.0, MCP-first AI coding agents that run a read-files / write-files / run-commands loop inside VS Code. You bring your own model from any provider and approve each step (or enable auto-approve). Cline has two gears: Plan (read-only) and Act (execute). Roo Code forked Cline and added role-based modes. As of 2026-06-15, Cline is current (v3.89.2); the Roo Code VS Code extension was shut down 2026-05-15 and its live successor is the community fork Zoo Code (v3.60.0).
| Extension | Status | Current version | Install? |
|---|---|---|---|
| Cline | Alive, most-installed (~4.3M installs) | v3.89.2 (2026-05-19) | Yes |
| Roo Code | Archived / shut down 2026-05-15 | v3.54.0 (last) | No — read-only repo |
| Zoo Code | Live community fork of Roo Code | v3.60.0 (2026-06-12) | Yes — Roo successor |
| Kilo Code | Separate Roo descendant, IDE-committed | n/a | Yes — alternative |
Cline, Zoo Code, or Kilo Code — which fits you?
Which IDE agent?
Five quick questions about where you code, how much autonomy you want, how you'd rather pay, whether open source matters, and your main language — and you'll get a single agent to start with, the reasoning behind it, and a runner-up. All five contenders are in the legend below.
The five contenders
An AI-first editor (a VS Code fork) with a strong agent, fast Tab completion, and multi-file edits.
Drops into the editor you already use — VS Code, JetBrains, Visual Studio, Neovim — with chat, agent mode, and completions.
An AI-native editor whose "Cascade" agent keeps the whole task in flow — opinionated, polished, and beginner-friendly.
An open-source, fully autonomous coding agent that lives in VS Code. You bring your own model and pay the provider directly.
Open-source VS Code agent with role-based "modes" and deep auto-approve control — the tinkerer's pick. BYO model.
Install Cline in VS Code
Search the Marketplace by extension ID
Open the Extensions view and search
saoudrizwan.claude-dev(publishersaoudrizwan). Theclaude-devid is a leftover from the project's original name "Claude Dev" — it is not an official Anthropic product.Install and open the sidebar
Install the extension and open the Cline panel from the activity bar. Confirm version v3.89.2 (last updated 2026-05-19).
Add a model provider
In Settings, pick a provider and paste an API key (BYOK), or use Cline-managed inference at cost. See the provider table below.
Start in Plan mode
Cline opens with the Plan/Act toggle. Stay in Plan to let it read and propose before any file changes.
Plan vs Act: a permission gate
Cline has exactly two modes, separated by tool permission. Plan mode can read the codebase, run searches, and discuss strategy but cannot modify files or run commands. Act mode retains the full planning context and can now modify files and run commands. Plan mode does not write a plan to a file — it withholds the edit and command tools so the agent can think safely. For a heavier file-aware planning pass that explores the codebase, identifies affected files, and asks clarifying questions, run the /deep-planning slash command.
Plan vs Act — same agent, different tool access
Plan mode
Allowed: read files, search codebase, discuss strategy.
Blocked: modify files, run commands.
Use to build understanding and propose an approach with zero risk to the working tree.
Act mode
Inherits full context from the Plan session.
Allowed: modify files, run commands, execute the agreed strategy.
Every edit/command still needs approval unless auto-approve is on. Checkpoints let you roll back any step.
Set per-mode models (opt-in cost lever)
Enable the split
In Cline Settings, turn on "Use different models for Plan and Act." Until enabled, both modes use the same model — so trivial edits silently pay reasoning-model prices.
Assign a reasoning model to Plan
Pick a strong reasoning model for Plan, where thinking is expensive but edits are cheap.
Assign a fast model to Act
Pick a faster, cheaper model for Act, where you are mostly applying decisions already made. Switching modes auto-switches the model; preferences are stored globally.
| Mode | Tool groups | Purpose |
|---|---|---|
| 💻 Code (default) | read, edit, command, mcp | General implementation — full access |
| ❓ Ask | read, mcp only | Explanation; no edits, no commands |
| 🏗️ Architect | read, mcp, edit (markdown only) | Design/planning; can write docs, not code |
| 🪲 Debug | read, edit, command, mcp | Troubleshooting with the full toolkit |
| 🪃 Orchestrator | Delegates via new_task | Splits work into subtasks routed to other modes |
| Method | How |
|---|---|
| Dropdown | Mode selector menu in the chat input |
| Slash command | /code, /architect, /ask, /debug, /orchestrator |
| Keyboard shortcut | ⌘+. (macOS) / Ctrl+. (Windows/Linux) |
| Agent suggestion | Accept the agent's own suggested mode switch |
Custom Modes and per-mode MCP allowlists
Custom Modes are the signature Roo/Zoo feature: define a persona (security reviewer, test writer) with custom instructions, scoped tool access, and file-pattern permissions (e.g. a mode that may only edit *.test.ts). Zoo Code v3.60.0 adds per-mode MCP allowlists — restrict which MCP servers are active per mode, so an "Ask" persona cannot reach a server that writes to production. (Documented in the v3.60.0 release notes, not on the marketing site.) Cline has no Custom Modes; behavioral specialization is done via rules files instead.
MCP: connect external tools
Both tools treat the Model Context Protocol (MCP) as core. Cline ships an MCP Marketplace (docs: "Use Cline's MCP Marketplace for one-click install when available") reached via the MCP Servers icon, and can scaffold a custom MCP server from a natural-language description or clone an existing server repo from GitHub as an agent task. Config is plain JSON supporting both transports: a local STDIO server uses command + args; a remote server uses url + optional headers over HTTP/SSE.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "./src"]
},
"company-api": {
"url": "https://mcp.example.com/sse",
"headers": { "Authorization": "Bearer ${API_TOKEN}" }
}
}
}| Provider | Mode |
|---|---|
| Anthropic (Claude), OpenAI, Google (Gemini) | BYOK — your own API key |
| AWS Bedrock, Azure, GCP Vertex | BYOK — your own cloud endpoint |
| DeepSeek, xAI (Grok), Mistral, Cerebras | BYOK — your own API key |
| OpenRouter | BYOK — 200+ models from any provider |
| Ollama, LM Studio | Local weights — nothing leaves the machine |
| Tool | Free tier | Paid option |
|---|---|---|
| Cline | Open Source — free; BYOK or Cline-managed inference at cost | Enterprise (custom): SSO, SLA, JetBrains extension, support |
| Zoo Code | free and open source forever; BYOK | Optional Zoo Gateway — pay-as-you-go credits, single unified API |
| Dimension | Cline | Roo Code → Zoo Code |
|---|---|---|
| Mode model | Two gears: Plan (read-only), Act (execute) | Five role modes + Custom Modes with scoped tools/files |
| Specialization | Rules files (.clinerules), not modes | Modes; per-mode MCP allowlists in Zoo v3.60.0 |
| Editing style | Whole-file writes | Diff-based editing (community-cited token savings) |
| MCP | Built-in Marketplace; can scaffold/clone servers | Connect servers; per-mode server restrictions |
| License | Apache 2.0 | Apache 2.0 |
Knowledge check
A teammate asks you to recommend "Roo Code" for their VS Code setup today (2026-06-15). What is the correct guidance?
Reach the end and this star joins your charted sky.