Cursor
Jue status: Read, Write, Artifact (project and Plugin), and Confirm are all Implemented (
packages/ai-jue-adapter-cursor/). Cursor has no headless Plugin validator;confirm()returnsunconfirmedfor both project and plugin, with structural evidence for plugin (honest downgrade, not a gap).adapter-creatorrecords the project/plugin dual layout againstpackages/ai-jue-adapter-cursor/src/capabilities/layout.ts.Official references: Cursor Rules, Agent Skills, Subagents, Hooks, MCP, Plugins
1. Official surface
1.1 Project (workspace tree)
Root AGENTS.md, .cursor/rules/*.mdc, .cursor/commands/*.md, .cursor/skills/<name>/SKILL.md, .cursor/agents/<name>.md, .cursor/hooks.json, .cursor/mcp.json, plus .cursor/settings.json, .cursorignore, and .cursorindexingignore.
1.2 Plugin (distributable bundle)
.cursor-plugin/plugin.json manifest plus root-level rules/, skills/, agents/, commands/, hooks/hooks.json, and mcp.json. Local test path: ~/.cursor/plugins/local/<name> then Reload Window.
2. Intended Jue mapping
| Canonical / adapter duty | Project | Plugin |
|---|---|---|
| manifest | — | .cursor-plugin/plugin.json |
context.global | root AGENTS.md (managed block) | not mapped |
rules | .cursor/rules/*.mdc | rules/*.mdc |
commands | .cursor/commands/*.md | commands/*.md |
skills | .cursor/skills/*/SKILL.md | skills/*/SKILL.md |
agents | .cursor/agents/*.md | agents/*.md |
hooks | .cursor/hooks.json | hooks/hooks.json |
mcp.servers | .cursor/mcp.json | mcp.json |
| target-specific settings | tools.cursor | not mapped |
variables | — | plugin.json#variables (passthrough) |
| Confirm | unconfirmed | unconfirmed (structural evidence) |
3. Conversion boundaries
- Skills, agents, and commands keep YAML frontmatter (
name,description). - Project hooks write
{ version: 1, hooks }; plugin hooks write{ hooks }(no version). - Hook events: Canonical PascalCase → Cursor camelCase.
- Command-based MCP servers get
type: "stdio". - Empty hooks or MCP sets must not write files.
4. Current gaps
| Level | Status | Gap |
|---|---|---|
| Read | Implemented | auto-detect project vs plugin |
| Write | Implemented | --artifact plugin works |
| Artifact | Implemented | project and Plugin both implemented |
| Confirm | Implemented | no native CLI; returns unconfirmed |
fixtures/failures/ records the redacted security contract: literal MCP env rejection, hook path-escape rejection, and unknown hook-event pass-through. OpenClaw compatible-bundle reuses this Adapter's plugin layout when tools.openclaw.bundleFormat is the explicit value cursor.
5. Follow-up work (GitHub Issues)
JUE-304 delivered project/plugin round-trip. The items below are out of MVP scope and tracked separately — agents must read the full issue before implementing:
| Issue | Scope |
|---|---|
| #8 | .cursor-plugin/marketplace.json (Team marketplace index) |