The Workshop · 11 min mission
Windsurf and Cascade, now Devin Desktop
Separate Devin Local from Cascade, then configure rules, workflows, permissions, and MCP on the right surface.
On this page
The former Windsurf desktop app is now Devin Desktop, a VS Code-derived editor with two local agent paths; Windsurf remains the JetBrains plugin name and appears in backward-compatible paths. Devin Local is the primary/default agent for new work, while Cascade remains available and still owns features such as Memories and Workflows. The official FAQ said Cascade would remain available through July; it did not document a July 1 shutdown, and the Cascade docs were still live on 2026-08-01. Choose the agent before following its configuration paths.
Install and first-day setup
Install Devin Desktop
Download from
devin.ai/desktop. Existing Windsurf installs migrate automatically — settings, extensions, and plan carry over unchanged.Choose Devin Local or Cascade deliberately
Use Devin Local for the default local agent, worktree sessions, Plan mode, OS-level sandboxing, capability permissions, and its current MCP configuration. Use Cascade only when you need Cascade-specific Memories or Workflows. New tabs can fall back to Cascade when required; no verified final removal date is published.
Add Rules under `.devin/rules/`
Create
.devin/rules/and commit one short Always On rule (hard constraints) plus one Glob rule scoped to your hottest directory. Both are version-controlled and shared with the team.Connect only the MCP servers you need
For Devin Local, configure MCP in
.devin/config.json,.devin/config.local.json, or~/.config/devin/config.json. Cascade keeps its Marketplace and~/.codeium/windsurf/mcp_config.jsonpath. Do not copy one agent's config into the other.
Devin Local and Cascade are separate operating lanes
Devin Local
Primary local agent. Supports subagents, worktree sessions, Plan mode, OS-level sandboxing, and capability permissions with deny > ask > allow precedence. Uses .devin/config*.json or ~/.config/devin/config.json for MCP.
Cascade
Legacy agent still documented in Devin Desktop. Owns Memories and markdown Workflows. Uses .windsurf/workflows/ and ~/.codeium/windsurf/mcp_config.json; keep these paths only for Cascade workflows.
Cascade modes
Cascade runs in two modes; select per intent before prompting.
| Mode | Behavior | Use for |
|---|---|---|
Code | Edits files directly | Features, refactors, bug fixes, multi-file changes |
Chat | Proposes code to accept | Codebase Q&A, coding-principle questions |
Rules vs. Memories
Both carry context across sessions, with opposite trade-offs. Rules are developer-authored, version-controlled, and deterministic. Memories are Cascade-only: Cascade captures them automatically (or on request — "create a memory of…"), stores them locally at ~/.codeium/windsurf/memories/, and does not commit them. For Devin Local, migrate durable memory into skills or rules instead of assuming Cascade memory will load.
| Dimension | Rules | Memories |
|---|---|---|
| Authored by | You (developer) | Cascade (auto, or on request) |
| Committed to repo | Yes — version-controlled | No — local, machine-specific |
| Shared with team | Yes | No |
| Consumes credits | No | No |
| Best for | Durable conventions, constraints | One-off, throwaway facts |
| Scope | Path | Status / limit |
|---|---|---|
| Workspace (preferred) | .devin/rules/*.md | Preferred; ≤ 12,000 chars/file |
| Workspace (legacy) | .windsurf/rules/*.md | Legacy fallback; still loads |
| Single-file (oldest) | .windsurfrules | Supported for backward compatibility; prefer .devin/rules/*.md |
| Global (account-wide) | ~/.codeium/windsurf/memories/global_rules.md | ≤ 6,000 chars |
| System (Enterprise, macOS) | /Library/Application Support/Devin/rules/*.md | Linux: /etc/devin/rules/*.md |
| Cross-tool | AGENTS.md (no frontmatter) | Root = always-on; subdir = auto-glob |
| Mode | Frontmatter `trigger` | When injected |
|---|---|---|
| Always On | always_on | Full content in system prompt on every message |
| Model Decision | model_decision | Description shown; full content fetched when model judges relevant |
| Glob | glob | When Cascade reads/edits a file matching globs |
| Manual | manual | Only when you type @rule-name |
---
trigger: glob
description: Conventions for test files in this repo
globs: "**/*.test.ts"
---
- Use the project's `describe`/`it` helpers from `test/setup.ts`.
- Every new test must assert on behavior, not implementation details.
- Run the suite with `npm test` before claiming a fix works.Translate a rules file across tools
Write your rules once, ship them everywhere
Every coding agent reads its rules from a different file with its own conventions. Write your project rules once below — then switch tabs to get each tool's native format, ready to copy.
Workflows: reusable slash commands
Workflows are Cascade-only markdown task sequences. Cognition's docs conflict during the Desktop transition: the Devin Desktop FAQ lists .devin/workflows/ as preferred with .windsurf/workflows/ as fallback, while the Cascade-specific page still documents .windsurf/workflows/*.md (workspace) and ~/.codeium/windsurf/global_workflows/*.md (global). Check which path your installed Desktop build recognizes instead of assuming either document is definitive. Invoke a recognized workflow with a slash command matching the filename minus .md: build-and-deploy-mytarget.md → /build-and-deploy-mytarget. For Devin Local, migrate reusable workflows to skills.
Knowledge check
A long set of conventions should apply only when Cascade reads or edits files under `src/api/`. Which rule activation mode and `trigger` value fit?
Cascade MCP configuration
Cascade speaks MCP (Model Context Protocol) and consumes Tools, Resources, and Prompts from servers (counting against the 100-tool cap). Configure servers by editing ~/.codeium/windsurf/mcp_config.json or via the MCP Marketplace (MCPs icon in the Cascade panel, or Settings → Cascade → MCP Servers); official servers show a blue checkmark. Transports: stdio, Streamable HTTP, and SSE, with OAuth per transport. One-click install deeplink: windsurf://windsurf-mcp-registry?serverName=<server-name>.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/project"]
},
"my-api": {
"serverUrl": "https://your-server-url/mcp"
}
}
}Agent Client Protocol (ACP) and the Command Center
The default surface is now the Agent Command Center, a Kanban board orchestrating the local agent (Devin Local), remote Devin Cloud agents that return pull requests, and third-party agents via the Agent Client Protocol (ACP) — an open editor↔agent protocol "similar to how LSP standardized language server integration." Enable ACP agents via Command Palette (Cmd+Shift+P) → Windsurf User Settings → Agents tab → toggle on → restart; the per-user registry is ~/.windsurf/acp/registry.json. The classic IDE view and local-only use (no cloud account) remain fully supported.
| Agent | Vendor |
|---|---|
| Codex CLI | OpenAI |
| Claude Agent | Anthropic |
| OpenCode | Open-source |
| Junie | JetBrains |
| Gemini CLI |
Models and pricing
The model picker (redesigned April 2026) offers a cross-vendor lineup with an Adaptive router and Cognition's in-house SWE-1.6 / SWE-1.5 models (SWE-1.6 free on Pro). The lineup changes frequently — Claude Fable 5 was added 2026-06-09 and removed 2026-06-12 — so read the live models page (docs.devin.ai/desktop/models) for the current set. Billing moved from prompt credits to usage-based quotas in March 2026 (daily/weekly allowances that refresh; per-message cost varies by model and task). Exact numeric quotas are not published; Enterprise is billed in Agent Compute Units (ACUs).
| Plan | Price | Key inclusions |
|---|---|---|
| Free | $0 | Light agent quota; unlimited inline edits + Tab completions |
| Pro | $20/mo | Full model availability; free SWE-1.6; Devin Cloud access |
| Max | $200/mo | Higher quotas; daily limits removed April 2026 |
| Teams | $40/seat/mo | No base fee; admin dashboard; $120 per 1000 pooled credits |
| Enterprise | Custom | SSO; billed in Agent Compute Units (ACUs) |
Reach the end and this star joins your charted sky.