Reset Cursor ACP in

SkillDev tools

Fixes a frozen Cursor chat thread by stopping it cleanly and reloading its setup.

Use Reset Cursor ACP in in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Reset Cursor ACP in and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Reset Cursor ACP in skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Reset Cursor ACP inStart free
About this skill

Reset a stuck Cursor ACP thread in <chat-system> and reload its configuration. Use only when the user explicitly invokes /reset-cursor-acp.

What this skill tells your AI

The instructions your AI receives, as published by davidondrej/skills in skills/agent-orchestration/reset-cursor-acp/SKILL.md and read by ahel’s review.

For terminal sessions use cursor-cli; for general control use <chat-cli>.

How resets work

  • The <ACP-plugin> starts one cursor-agent acp subprocess per thread, on demand, owned by a <bridge-worker>.
  • There is no global Cursor ACP server. Do not create one or keep it alive with a watchdog.
  • Rules, skills, and .cursor/mcp.json reload when a new subprocess starts.
  • <chat-cli> thread stop <id> releases the runtime and stops its subprocess, preserving history. The next message starts a fresh agent.

Quick reset

Resolve <reset-script> relative to this SKILL.md. Run:

<reset-script> <thread-id>      # reset one Cursor thread
<reset-script> --self           # reset the current thread (<CURRENT_THREAD_ID>)
<reset-script>                  # no thread: orphan cleanup + health check only
<reset-script> --dry-run        # show what would happen
<reset-script> <id> --kill-all  # also kill live agents of OTHER Cursor threads

Find Cursor thread ids with <chat-cli> status (current thread) or:

<thread-list-command>

The script stops the selected thread, removes orphaned cursor-agent acp processes (parent gone or not a ), reports CLI version/login/update status, and asks for the next message. Other threads stay running unless --kill-all.

If sandboxing blocks ps with "operation not permitted", rerun the script outside the sandbox.

Verify

Send one short message to verify a fresh agent responds. If it hangs again, check the causes below before another reset.

Known causes

  • Old Cursor CLI. If the health check shows an update, run <update-command>, then reset.
  • Expired login. Symptom "Failed to initialize session services". Fix: cursor-agent login, then reset.
  • Pending permission. Cursor waits for session/request_permission. Check and resolve the thread's pending approval before resetting.
  • Resume failure. For session/load → "Session not found", use a fresh session after <chat-cli> thread stop rather than retrying the load.
  • Team-level MCP servers from the Cursor dashboard do not work in ACP mode. Only project or user .cursor/mcp.json.
  • Rate limits. Enable retries with <chat-cli> plugin enable <retry-plugin>.

Do not

  • No launchd KeepAlive, cron, or watchdog for cursor-agent acp.
  • Never blindly run pkill -f cursor-agent; it kills all Cursor threads and the interactive TUI. Use the script, which targets orphans by default.
  • Do not restart for one stuck thread; use <chat-cli> thread stop.
  • Do not use <chat-cli> thread compact; Cursor does not support it.

Signals

GitHub stars
4k
Forks
598
Last commit
Sep 2026
Advanced
Item type
skill
Key
reset-cursor-acp
Source
github.com/davidondrej/skills