Skip to content

Releases: freema/cursor-plugin-cc

v0.3.2 — clearer job-not-found hint

11 Jun 07:12
38eb080

Choose a tag to compare

Small UX fix release.

Fixed

  • Clearer "job not found" hint (#7). When /cursor:delegate runs as a Claude Code background command, Claude Code surfaces its own wrapper id (Command running in background with ID: …), not the Cursor job id — so /cursor:status <that-id> missed with a bare No job … found. /cursor:status, /cursor:result, and /cursor:cancel now append a hint explaining the id mismatch and pointing at the no-arg job listing to recover the real id.

Full Changelog: v0.3.1...v0.3.2

v0.3.1 — model alias refresh (Composer 2.5 + Grok 4.3)

11 Jun 05:58
b291597

Choose a tag to compare

Maintenance release: model aliases caught up with Cursor's current --list-models lineup, plus the cursor-runner agent doc fix. Includes the two community-reported fixes from #8 and #10 — thanks @TiberiusNemesis!

Fixed

  • Model aliases updated for Composer 2.5 (#8, #9). Cursor retired the Composer 2.x ids; composer / composer-fast / fast now resolve to composer-2.5-fast and composer-full to composer-2.5. The retired composer-2 / composer-2-fast ids still forward as-is for older cursor-agent builds.
  • cursor-runner agent invocation corrected (#10, #11). The subagent doc still referenced the pre-rewrite tsx …/delegate.ts call; it now matches the working slash command: node "${CLAUDE_PLUGIN_ROOT}/scripts/delegate.mjs" -- ….
  • grok alias retargeted to Grok 4.3 (#12). grok-4-20 / grok-4-20-thinking are retired; grok now resolves to grok-4.3, new grok-build shortcut → grok-build-0.1, dead grok-thinking alias removed.

Full Changelog: v0.3.0...v0.3.1

v0.3.0 — /cursor:review + codebase hardening

29 May 20:37

Choose a tag to compare

/cursor:review

New read-only code-review command modelled on openai/codex-plugin-cc's /codex:review, adapted to the Cursor CLI. The plugin collects your git diff itself (working tree, or branch vs --base <ref>), sends it to a Cursor model with a strict review-only prompt, and returns the findings (Blocking / Should-fix / Nits + verdict) verbatim. Supports --scope auto|working-tree|branch, --adversarial, --model, --background/--wait, --timeout, and free-form focus text. It never edits files — a post-flight check fails the job if the run touches the working tree. Tracked as a normal job, so /cursor:status, /cursor:result and /cursor:cancel apply.

Codebase hardening

Dogfooding /cursor:review with a multi-agent review of the whole plugin surfaced 43 confirmed robustness findings — all fixed, with regression tests (83 passing, lint clean). Notably:

  • delegate — numeric --resume no longer crashes; --wait is a real toggle; the background worker gets the prompt verbatim via env (no double-collapse) and writes logs into the correct jobs/<repo-hash>/ dir; killed runs are flagged.
  • runHeadless — error handlers for child-spawn and log-stream failures so a bad binary or full disk degrades instead of crashing the process; the kill watchdog arms at most once; CURSOR_AGENT_BIN is trimmed.
  • git / paths / parse / plan / jobs / args / browser / status / sessions / result / setup / cancel / id — assorted edge-case fixes: no-commits diff, stable repo hash, content[] text extraction, fenced-code-aware plan parsing, temp-file cleanup, --timeout NaN guard, Markdown cell escaping, corrupted-record tolerance, and more.

See CHANGELOG.md for the full list.

v0.2.2 — fix /cursor:resume prompt-eating + default model = auto

18 May 10:06
9d05f96

Choose a tag to compare

Fixed

  • /cursor:resume <prompt…> no longer eats the first prompt word as a chat-id. --resume was missing from the boolean-flag whitelist in delegate.mjs, so the argv parser greedily took the next positional token (Cursor chat id: řekni — resume with cursor-agent --resume=řekni). Declared resume as boolean; --resume=<chat-id> still works because the = form is parsed independently. Regression tests cover both shapes plus a multi-word non-ASCII prompt.

Changed

  • Default model is now auto (was composer-2-fast). Users without a paid Composer 2 seat can run the plugin out of the box; Cursor picks whatever model the account is entitled to. Power users can pin a default globally via the new CURSOR_PLUGIN_CC_DEFAULT_MODEL env var (accepts the same aliases as --model), or per-invocation via --model <id>.
  • README install section moved up front; GitHub install marked preferred, local checkout install moved below it for hacking on the plugin. Requirements list now lives under Install and no longer implies a paid subscription is mandatory.

Upgrade

/plugin uninstall cursor@tomas-cursor
/plugin install cursor@tomas-cursor
/reload-plugins

Full changelog: CHANGELOG.md

v0.2.1 — OSS ergonomics (docs only)

22 Apr 16:20
dc2ea31

Choose a tag to compare

Documentation-only patch release. Fills the infrastructure gaps a small public repo needs for third-party contributors and for AI agents editing the repo.

Added

  • AGENTS.md — hard rules any AI agent (Claude Code, Cursor, Codex, …) must follow when editing this repo. Dogfoods the pattern cursor-runner tells agents to read in target repos.
  • CONTRIBUTING.md — dev setup, branch naming, commit conventions, the step-by-step recipe for adding a new slash command, release flow.
  • SECURITY.md — vulnerability reporting via GitHub Security Advisories, the --force / --trust / --approve-mcps trade-offs, zero-deps supply-chain stance.
  • GitHub templates under .github/:
    • ISSUE_TEMPLATE/bug_report.yml — structured form that asks for Node / cursor-agent / plugin version and /cursor:setup --doctor output up front.
    • ISSUE_TEMPLATE/feature_request.yml — problem-first, with a zero-deps-fit dropdown.
    • ISSUE_TEMPLATE/config.yml — blank issues disabled, upstream redirects.
    • PULL_REQUEST_TEMPLATE.md — summary + test plan + zero-deps checklist.
  • README Troubleshooting section — the six failure modes hit during development (forgot /reload-plugins, zsh globbing, stale cache module-not-found, Bash permission prompt, browser MCP not loaded, no plan files) with exact fixes.

Changed

  • README "Contributing" section shrunk to a pointer toward the new dedicated files. Homepage stays scannable.

No code changes

All 52 vitest specs still green, CI matrix 6/6 across Node 18.18 / 20 / 22 × Ubuntu / macOS. No behavioural changes to any slash command.

Install / upgrade

/plugin marketplace remove tomas-cursor
/plugin marketplace add freema/cursor-plugin-cc
/plugin install cursor@tomas-cursor
/reload-plugins

v0.2.0 — plan-mode bridge + zero-deps rewrite

22 Apr 16:02
cec4bf2

Choose a tag to compare

Highlights

/cursor:from-plan — new command

Bridges Claude Code's plan mode directly into Cursor delegate. One command converts the plan file Claude drops under ~/.claude/plans/ into a task file at tasks/<timestamp>-<slug>.md and optionally hands it off to Cursor immediately.

/plan add dark-mode toggle to the settings page
# Claude proposes a plan, you approve
/cursor:from-plan --delegate --model opus
# → tasks/20260422-1945-add-dark-mode-toggle.md is created AND sent to Cursor

Zero runtime dependencies + no build step

Full rewrite from TypeScript/esbuild to plain .mjs. The source under scripts/ IS the ship artefact — /plugin install gives you a working plugin in one step, no npm install in the cache, no dist/, no bundler. Matches openai/codex-plugin-cc's shape.

What went away: execa, zod, nanoid, yargs-parser, esbuild, tsx, typescript, @types/*. What replaced them: ~200 lines of small stdlib-based helpers (lib/run.mjs, lib/id.mjs, lib/args.mjs) and plain JSON handling with JSDoc types.

Other quality fixes

  • Robust entry-point detection (lib/invoked.mjs) — realpathSync on both sides, fixes a silent no-op when the plugin was executed through a symlinked path (e.g. macOS /tmp → /private/tmp).
  • All slash-command bodies now "$ARGUMENTS" quoted to prevent zsh from globbing ?, * inside prompts.
  • /cursor:browser post-flight recursively walks tool_use blocks nested in assistant.message.content[] — no more false-positive "MCP never called" when Cursor did use it.

Full changelog

See CHANGELOG.md.

Install

/plugin marketplace add freema/cursor-plugin-cc
/plugin install cursor@tomas-cursor
/reload-plugins
/cursor:setup

Zero build, zero npm install needed after /plugin install.

Commands (9 total)

  • /cursor:delegate — hand a coding task to Cursor
  • /cursor:from-plannew — plan file → task file → delegate
  • /cursor:browser — real-browser verification via chrome-devtools MCP
  • /cursor:status / /cursor:result / /cursor:cancel / /cursor:resume / /cursor:sessions
  • /cursor:setup — health-check + configured MCPs

Plus cursor-runner subagent.