Skip to main content
skill CX Codex

switching-projects — Cursor skill: what it does, how to install

Switches the active workspace directory in Cursor to another repo during a session. Useful when you need to jump between projects without opening a new window.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add spencerpauly/awesome-cursor-skills --skill switching-projects -a claude-code
Open on GitHub

What switching-projects does

The skill switches the agent's active workspace directory mid-conversation using Cursor's built-in cursor-app-control MCP server. It calls the move_agent_to_root tool with the target rootPath, updating the visible workspace and default working directory without launching a second window.

When prompted, the agent searches parent folders such as ~/projects/ or ~/code/ using ls to find the directory, or asks for clarification if the name is ambiguous. Once switched, it inspects package.json and runs git status to see the current state. It can also invoke create_project to create a directory and initialize a git repo before switching into it.

This workflow relies entirely on the cursor-app-control MCP server being enabled. Without it, the tool call fails. After a switch, all subsequent tool calls resolve relative file paths against the new root directory.

What it helps with

  • switch the active workspace directory without opening a new window
  • locate project folders in development directories using ls
  • inspect new repositories with git status and package.json
  • scaffold a directory and initialize git via create_project

Example prompts for the agent

  • Switch to the my-app project in ~/projects
  • Open the backend repo in the current conversation
  • Create a new project named service-auth and switch to it

How to install switching-projects

1Skills CLI (Vercel)

npx skills add spencerpauly/awesome-cursor-skills --skill switching-projects -a claude-code

2Manually: put the files in place

~/.claude/skills/switching-projects/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/switching-projects/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about switching-projects

How to install switching-projects in Cursor?

Run npx skills add spencerpauly/awesome-cursor-skills --skill switching-projects -a cursor.

What does switching-projects do?

It uses the move_agent_to_root tool from Cursor's cursor-app-control MCP server to switch the active workspace directory without opening another window.

What is required for switching-projects to work?

Cursor's built-in cursor-app-control MCP server must be enabled. Without it, move_agent_to_root and create_project tool calls will fail.

Source text

SKILL.md · CC0-1.0
---
name: switching-projects
description: Switch the current Cursor workspace to a different project directory using the cursor-app-control MCP. Use when the user asks to switch projects, open another repo, jump to a different codebase, or move to a worktree.
---

# Switch Project

Use this skill when the user wants to switch to a different project, open another codebase, or move the current conversation to a different workspace root.

## How It Works

Cursor has a built-in MCP server called `cursor-app-control` with a tool called `move_agent_to_root` that changes the agent's active workspace directory. This lets you switch projects mid-conversation without opening a new window.

## Steps

1. **Ask or infer the target project** — if the user says "switch to my-app", search for it. Common project locations:
   - `~/Documents/development/`
   - `~/projects/`
   - `~/code/`
   - `~/repos/`

   List directories in the likely parent folder to find the project:

   ```bash
   ls ~/Documents/development/
   ```

   If ambiguous, ask the user which project they mean.

2. **Switch the workspace** — call the `cursor-app-control` MCP tool:

   ```
   Tool: move_agent_to_root
   Arguments: { "rootPath": "/Users/<username>/Documents/development/<project-name>" }
   ```

   This updates the visible workspace, file tree, and default working directory for all subsequent commands.

3. **Orient in the new project** — after switching, briefly describe what you see:
   - Read the project's `package.json`, `README.md`, or equivalent to understand the stack.
   - Run `git status` to show the current branch and state.
   - List the top-level directory structure.

## Creating a New Project

If the user wants to start a new project and switch to it:

1. Call `create_project` with the desired path — this creates the directory and initializes a git repo.
2. Call `move_agent_to_root` to switch into it.
3. Begin scaffolding.

## Notes

- This only works if the `cursor-app-control` MCP server is enabled.
- The switch happens in the current conversation — no new window is opened.
- All file paths in subsequent tool calls will resolve relative to the new root.
- You can switch back to the original project the same way.

© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set60

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor