cursor-setup
Chachamaru127/claude-code-harness/skills/cursor-setup/SKILL.md
Configure and verify the Cursor backend for Claude Code Harness. Use when user invokes cursor:setup, wants Cursor as the local default implementation backend, or asks to check Cursor plugin/agent readiness. Distribution default remains opt-in; only local env/user settings are changed when explicitly requested.
What's in it
- cursor:setup - Cursor Backend Setup
- Quick Reference
- Rules
- Flow
- Output
Tools it asks for
- Read
- Bash
---
name: cursor-setup
description: "Configure and verify the Cursor backend for Claude Code Harness. Use when user invokes cursor:setup, wants Cursor as the local default implementation backend, or asks to check Cursor plugin/agent readiness. Distribution default remains opt-in; only local env/user settings are changed when explicitly requested."
description-en: "Configure and verify the Cursor backend for Claude Code Harness. Use when user invokes cursor:setup, wants Cursor as the local default implementation backend, or asks to check Cursor plugin/agent readiness. Distribution default remains opt-in; only local env/user settings are changed when explicitly requested."
description-ja: "Claude Code Harness の Cursor backend を設定・検証するスキル。cursor:setup、Cursor を現環境の default 実装 backend にしたい、Cursor plugin/agent readiness を確認したい時に使う。配布 plugin の default は opt-in のまま維持し、明示依頼がある場合だけ local env/user 設定を変更する。"
allowed-tools: ["Read", "Bash"]
argument-hint: "[--check | --user-default | --project-default | --unset]"
user-invocable: true
---
# cursor:setup - Cursor Backend Setup
Cursor backend の setup / verification 用 skill。配布 plugin の fallback は `claude` のままにし、現在の repo / user 環境だけ `cursor` default にする時に使う。
## Quick Reference
```bash
cursor:setup --check
cursor:setup --user-default
cursor:setup --project-default
cursor:setup --unset
```
## Rules
- Do not change distribution defaults or plugin manifests to make Cursor the shipped fallback.
- Use `scripts/resolve-impl-backend.sh` / `scripts/set-impl-backend.sh`; do not infer from `HARNESS_IMPL_BACKEND` alone.
- Treat `~/.cursor/permissions.json`, `.cursorignore`, and Claude sandbox allowlists as manual/user-owned setup surfaces unless the user explicitly asks to edit a local file.
## Flow
First resolve the Harness helper root. Keep the current working directory as the target project so project-scoped `env.local` writes still land in the user's repo:
```bash
HARNESS_PLUGIN_ROOT="${HARNESS_PLUGIN_ROOT:-${CLAUDE_PLUGIN_ROOT:-}}"
if [ -z "$HARNESS_PLUGIN_ROOT" ] && [ -n "${CLAUDE_SKILL_DIR:-}" ]; then
probe="$(cd "${CLAUDE_SKILL_DIR}" && pwd)"
while [ "$probe" != "/" ] && [ ! -d "$probe/scripts" ]; do
probe="$(cd "$probe/.." && pwd)"
done
[ -d "$probe/scripts" ] && HARNESS_PLUGIN_ROOT="$probe"
fi
if [ -z "$HARNESS_PLUGIN_ROOT" ]; then
echo "ERROR: HARNESS_PLUGIN_ROOT is not set and could not be derived from CLAUDE_PLUGIN_ROOT or CLAUDE_SKILL_DIR" >&2
exit 2
fi
```
1. For `--check`, run:
```bash
bash "${HARNESS_PLUGIN_ROOT}/scripts/setup-cursor.sh" --check
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --show
bash "${HARNESS_PLUGIN_ROOT}/scripts/resolve-impl-backend.sh" --role worker
CURSOR_AGENT_BIN="${CURSOR_AGENT_BIN:-}"
if [ -z "$CURSOR_AGENT_BIN" ]; then
# `agent`(公式の新表記)→ `cursor-agent`(legacy alias)の順に探す。
# `agent` は汎用的な名前なので、symlink 解決後の実パスの「成分」に
# cursor-agent が完全一致で現れる場合だけ採用する(部分文字列一致だと
# /x/cursor-agent-not-really/agent のようなディレクトリ名で突破される)。
for _c in agent cursor-agent; do
_p="$(command -v "$_c" 2>/dev/null)" || continue
[ -n "$_p" ] || continue
_r="$(realpath "$_p" 2>/dev/null || readlink -f "$_p" 2>/dev/null || echo "$_p")"
case "/$_r/" in */cursor-agent/*) CURSOR_AGENT_BIN="$_p"; break ;; esac
done
if [ -z "$CURSOR_AGENT_BIN" ] && [ -x "$HOME/.local/bin/cursor-agent" ]; then
CURSOR_AGENT_BIN="$HOME/.local/bin/cursor-agent"
fi
fi
if [ -z "$CURSOR_AGENT_BIN" ]; then
echo "ERROR: cursor-agent not found in PATH or $HOME/.local/bin" >&2
exit 3
fi
"$CURSOR_AGENT_BIN" --version
```
2. For `--user-default`, run:
```bash
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --user cursor
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --show
```
3. For `--project-default`, run:
```bash
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" cursor
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --show
```
4. For `--unset`, ask whether the target is user or project scope if not clear from the request, then run exactly one matching unset command:
Project scope:
```bash
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --unset
```
User scope:
```bash
bash "${HARNESS_PLUGIN_ROOT}/scripts/set-impl-backend.sh" --unset --user
```
## Output
Report three facts only:
- resolved backend (`claude` / `codex` / `cursor`)
- Cursor package readiness (`setup-cursor.sh --check`)
- next manual step if Cursor is not ready
More agent context in Chachamaru127/claude-code-harness
28 other files this repository gives its agents.
CLAUDE.md
Cursor rule
Skill
- agent-browserskills/agent-browser/SKILL.md
- breezingskills/breezing/SKILL.md
- cc-update-reviewskills/cc-update-review/SKILL.md
- ciskills/ci/SKILL.md
- cursor-askskills/cursor-ask/SKILL.md
- cursor-doskills/cursor-do/SKILL.md
- cursor-reviewskills/cursor-review/SKILL.md
- failure-codifierskills/failure-codifier/SKILL.md
- harness-acceptskills/harness-accept/SKILL.md
- harness-loopskills/harness-loop/SKILL.md
- harness-plan-briefskills/harness-plan-brief/SKILL.md
- harness-planskills/harness-plan/SKILL.md
- harness-progressskills/harness-progress/SKILL.md
- harness-releaseskills/harness-release/SKILL.md
- harness-reviewskills/harness-review/SKILL.md
- harness-setupskills/harness-setup/SKILL.md
- harness-syncskills/harness-sync/SKILL.md
- harness-workskills/harness-work/SKILL.md
- japanese-writing-drafterskills/japanese-writing-drafter/SKILL.md
- maintenanceskills/maintenance/SKILL.md
- memoryskills/memory/SKILL.md
- session-sendskills/session-send/SKILL.md
Discussion
Talked about elsewhere, linking to Chachamaru127/claude-code-harness
- Claude Codeの自動開発プロセスに計画・実行・レビューの厳格なサイクルを追加するツールらしい AIによる開発をより計画的で手戻りの少ないものにしたい場合に試したい yug1224 starred Chachamaru127/claude-code-harness…
Bluesky · @yug1224.com · 1 likes and reposts · May 29, 2026
- claude-code-plugins.github.chachamaru127.claude-code-harness: init at 5.15.0
GitHub · sudosubin/agents.nix · Oct 4, 2026
- claude-code-marketplaces.github.chachamaru127.claude-code-harness: init at 5.15.0
GitHub · sudosubin/agents.nix · Oct 4, 2026
- agent-skills.github.chachamaru127.claude-code-harness: v5.15.0 → refs/tags/v5.15.0
GitHub · sudosubin/agents.nix · Oct 3, 2026
- agent-skills.github.chachamaru127.claude-code-harness: init at 5.15.0
GitHub · sudosubin/agents.nix · Sep 26, 2026
- Add resource: Claude Code Harness
GitHub · hesreallyhim/awesome-claude-code · Aug 3, 2026
- [Resource]: Claude Code Harness
GitHub · hesreallyhim/awesome-claude-code · 3 comments · Aug 3, 2026
- docs: integrate claude-code-harness for disciplined delivery loop
GitHub · strikersam/autonomous-ai-agency · 1 comments · Jun 18, 2026
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
Reports can't be read right now.
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

