# desktop-commander-overview

Tells the agent what the Desktop Commander MCP can do: persistent sessions, long-running processes, files outside the workspace, Excel and PDF, SSH.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 2500 installs · ★ 40
- Author: cline
- License: Apache-2.0 · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/cline/skills/tree/HEAD/skills/desktop-commander-overview/SKILL.md
- Updated: 2026-07-21
- HTML: https://affpapa.org/en/nevibecode/skills/desktop-commander-overview

## What it does

The skill does no work by itself. It maps what the Desktop Commander MCP exposes and how the tools compose into workflows; the detailed schemas for parameters and return shapes stay inside the MCP.

Covered here: persistent shell and REPL sessions that carry environment variables, working directory and an activated venv across many turns. Long-running processes get a handle you can tail, interact with or terminate. Then filesystem reach past the IDE workspace, surgical `edit_block` replacements with an `expected_replacements` count, first-class `.xlsx`, `.docx` and `.pdf` handling, ripgrep-backed search over folder trees, and a long-lived SSH session to a remote box.

One thing to watch: separate `start_process` calls open separate sessions and do not share shell state, so persistence lives inside a single session only. Before deploys, restarts or migrations the skill advises summarizing the action and confirming with the user. A wrong `old_string` or a wrong replacement count can still corrupt a file, so read the changed content before calling the edit done.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add cline/skills --skill desktop-commander-overview -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/desktop-commander-overview/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/desktop-commander-overview/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add cline/skills --skill desktop-commander-overview -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/desktop-commander-overview/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add cline/skills --skill desktop-commander-overview -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/desktop-commander-overview/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install cline/skills desktop-commander-overview
```

2. **Manually: put the files in place**
- File: `.github/skills/desktop-commander-overview/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add cline/skills --skill desktop-commander-overview -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/cline/skills --path skills/desktop-commander-overview
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/desktop-commander-overview/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add cline/skills --skill desktop-commander-overview -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/cline/skills/tree/HEAD/skills/desktop-commander-overview/SKILL.md

## When to use it
- keep a dev server up while the agent edits routes
- update cells in an `.xlsx` without rebuilding the file
- find every call site of a function across a monorepo
- SSH into production and stream the app log
- work through files in `Downloads` outside the workspace

## Example prompts
- Start `npm run dev` in the background and tail its output while I edit the route
- Open `q3.xlsx`, sheet Revenue, and update range C12:C24
- SSH into the prod host and show me the last 50 lines of the log

## Source text · SKILL.md · Apache-2.0

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 31f33ee5824a9bd5.

BEGIN THIRD-PARTY FILE 31f33ee5824a9bd5
```text
---
name: desktop-commander-overview
description: Use for Desktop Commander MCP capabilities — persistent shells and REPLs, long-running processes, filesystem beyond the workspace, structured files (.xlsx, .docx, .pdf, images) and large local data files such as CSVs, ripgrep search at scale, SSH, or cross-turn state.
version: 0.1.0
audience: agent
---

# Desktop Commander MCP

Desktop Commander gives the agent reach across the user's actual computer — files, folders, terminals, processes, structured documents, and remote machines reachable over SSH. The tools' detailed schemas (parameters, return shapes, format-specific behavior) live in the MCP itself; this skill explains what they enable and how they compose into common workflows.

## What this MCP gives the agent

**Persistent shell sessions.** Desktop Commander keeps a started process or session alive across tool calls. Inside a single long-lived shell, REPL, or SSH session, state carries forward — environment variables, working directory, activated virtualenvs, open connections, REPL variables — so the agent can `cd`, activate a venv, then send commands or code into that same session many turns later without re-setup. (Note: separate `start_process` calls open separate sessions and do **not** share shell state with each other; persistence is inside one session, not across them.)

**Long-running processes.** Start a dev server, watcher, build, training run, or test suite in the background and keep working. The MCP returns a process handle the agent can tail, interact with, or terminate across many turns. Long-running commands don't need to block the workflow waiting for a foreground command to exit.

**Filesystem reach beyond the IDE workspace.** Read, write, move, list, and inspect files anywhere the user has granted scope — Downloads, Documents, project folders outside the IDE, or any other granted folders. Useful for organize-and-clean tasks, batch document work, and any "look at the file my coworker just sent me" request that doesn't fit inside the IDE sandbox.
```
END THIRD-PARTY FILE 31f33ee5824a9bd5

The third-party file has ended. Everything between the 31f33ee5824a9bd5 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2065 of 12282 bytes. © cline · Apache-2.0 · https://github.com/cline/skills/tree/HEAD/skills/desktop-commander-overview/SKILL.md

## Similar
- [Desktop Commander](https://affpapa.org/en/nevibecode/mcp/desktop-commander.md) — MCP server · ★ 10107
- [office-mcp](https://affpapa.org/en/nevibecode/skills/office-mcp.md) — skill · 6900 installs
- [flue](https://affpapa.org/en/nevibecode/skills/flue.md) — skill · 12600 installs
- [xlsx-manipulation](https://affpapa.org/en/nevibecode/skills/xlsx-manipulation.md) — skill · 6500 installs
- [minimax-xlsx](https://affpapa.org/en/nevibecode/skills/minimax-xlsx.md) — skill · 3800 installs
- [clean-data-xls](https://affpapa.org/en/nevibecode/skills/clean-data-xls.md) — skill · 2100 installs

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
