Conversation
Added cursor-research-requirements.md and cursor-implementation-strategy.md to track work for adding Cursor as a first-class provider for the site. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
Manifestation in progress: #4 |
- Add 'cursor' to Provider type in primitives.ts and fileTree.ts - Create cursorTree and cursorGlobalTree with project/global configuration - Update PrimitiveCard providerLabels to include Cursor - All TypeScript type checks pass
- Update ComparisonRow interface with cursor field - Add cursor implementation data for all 11 primitives - Support levels: 6 full, 5 partial, 0 none (across all primitives) - Includes implementation descriptions and file locations
- Add Cursor column (4th column) with ✨ emoji header - Update ExpandedRow grid from 2 columns to 3 columns (md:grid-cols-3) - Add Cursor details section with implementation and copy button - Update colSpan from 3 to 4 for expanded rows - Support copy-to-clipboard for all 3 providers
- Add Cursor column header assertion to header test - Update support badge counts (18 full, 5 partial with Cursor) - Add Cursor implementation text verification in expansion test - Add Cursor file location verification (.cursor/instructions.md) - Verify 3 copy buttons present in expanded row
- Update App.tsx comparison section description to mention Cursor - Update Hero.tsx tagline: 'Copilot and Claude Code' → 'Copilot, Claude Code, and Cursor' - Reflects 3-provider comparison support across site
- Update 'AI Primitives' from 9 to 11 in feature list - Update provider comparison description to include Cursor - Add Cursor section with key paths (settings, instructions, rules) - Update metadata to reflect 3-provider support
- Update provider name mapping to handle 'cursor' provider - Was defaulting to 'Claude Code' for unknown providers - Now correctly displays 'Cursor' in llms-full.txt tables
- Regenerated llms-full.txt with cursor primitives data - All 11 primitives now include cursor implementations - Provider names correctly display (Copilot, Claude Code, Cursor) - Includes cursor support levels across all primitives
|
👋🏽 @jonmagic - Checking in at the 80% mark I had gone between introducing Cursor as another provider along with Codex from OpenAI. Do you have any preferences for which one should land first? Although this one is pretty fleshed out and my remaining "20%" is to personally validate everything that's introduced here and push up any fixes before marking ready for review. Please let me know and once I free up again, I'll get to it! 🫡 |
Cursor now supports lifecycle hooks (sessionStart, sessionEnd, beforeShellExecution, afterShellExecution, beforeMCPExecution, afterMCPExecution, and other event-based hooks) configured via .cursor/hooks.json, bringing full parity with Claude's hooks implementation. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Update E2E test to reflect Cursor's new full support for Lifecycle Hooks. Full Support badge count increases from 18 to 27 as Cursor Hooks is now fully supported instead of marked as unavailable. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Verified against official Cursor documentation (cursor.com/docs): - **Skills/Workflows**: Full support via `.cursor/skills/*/SKILL.md` (same pattern as Claude/Copilot) - **Tool Integrations (MCP)**: Full support via `.cursor/mcp.json` with stdio, SSE, and HTTP transports - **Slash Commands**: Full support via `.cursor/commands/*.md` with parameters and reusable workflows - **Custom Agents**: Full support via `.cursor/agents/*.md` subagents with model selection and context isolation - **Permissions & Guardrails**: Full support with approvals, .cursorignore, LLM safety controls, and security hooks Updated both data files to reflect correct support levels and implementation details. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Update E2E test assertions to reflect 5 additional primitives now marked as full support for Cursor: - Full Support badges increase from 27 to 32 - Partial badges reduce from 5 to 0 (no more partial support items across any provider) All 65 E2E tests pass. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Updated llms-full.txt to reflect 5 primitives now marked as full support for Cursor (Skills, MCP, Slash Commands, Custom Agents, Guardrails) and ensure all latest feature descriptions are current. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
Add Cursor as a selectable provider in the Interactive File Tree component on the homepage. Users can now switch between GitHub Copilot, Claude Code, and Cursor to view provider-specific file structure layouts. Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
jonmagic
left a comment
There was a problem hiding this comment.
I haven't reviewed the other PRs to see if they cover this but I'm wondering if there needs to be provider specific instructions on the skills, agents, or map pages or if those can be fairly provider agnostic since they are so similar 🤔
There was a problem hiding this comment.
The file trees for cursor look pretty slim compared to the other two, should we build them out to have all of the equivalents where cursor has an equivalent?
There was a problem hiding this comment.
@jonmagic - We should absolutely build them out. Working on it and will follow up with a reference once done!
There was a problem hiding this comment.
The file trees for cursor look pretty slim compared to the other two, should we build them out to have all of the equivalents where cursor has an equivalent?
Excellent catch, as I thought my initial research tasks had already covered that. 🙇🏽
#9 hydrates Cursor's file tree. Will incorporate that here after my own review.
Coming back to your top-level comment here:
I haven't reviewed the other PRs to see if they cover this but I'm wondering if there needs to be provider specific instructions on the skills, agents, or map pages or if those can be fairly provider agnostic since they are so similar 🤔
Based on this, I've updated the PR introducing a skill for adding a provider to the process, checklist, and common mistake references so this is covered this the first time: 7ac1168. 😉
There was a problem hiding this comment.
@jonmagic - Updated Cursor's filetree, see motion picture ⬇️ -- this is ready for re-review! 🙇🏽
Addresses PR #3 review comment about sparse Cursor file tree by building out comprehensive examples matching Copilot/Claude coverage. Added to cursorTree (project-level): - .cursor/mcp.json - MCP server configuration - .cursor/hooks.json - Lifecycle hooks (sessionStart, beforeShellExecution, etc.) - .cursor/agents/ - 2 subagent examples (code-reviewer, planner) - .cursor/skills/ - 2 skill workflows (debug-ci, refactor) - .cursor/commands/ - 2 slash commands (commit, review-pr) - .cursor/rules/backend.md - Additional path-scoped rule - Nested .cursor/instructions.md in frontend/ and backend/ directories Added to cursorGlobalTree (user-level): - ~/.cursor/mcp.json - Global MCP configuration - ~/.cursor/agents/verifier.md - Global verification agent - ~/.cursor/skills/git-pr-workflow/ - Global PR workflow skill - ~/.cursor/commands/explain.md - Global code explanation command All examples verified against official Cursor documentation: - cursor.com/docs/context/commands - cursor.com/docs/context/skills - cursor.com/docs/context/subagents - cursor.com/docs/context/mcp - cursor.com/docs/agent/hooks Impact: - File tree expanded from 64 lines → ~556 lines - Now demonstrates all 11/11 primitives with full support - Maintains parity with Copilot and Claude file trees - All 65 E2E tests passing Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Based on learnings from Cursor file tree expansion (PR #9), enhanced the skill with critical guidance on building comprehensive file trees. Key additions: **PROCESS.md - Stream 2.3 File Tree Completeness Guidelines:** - Requirement to demonstrate ALL supported primitives with 2-3 examples each - Importance of both project-level AND global-level examples - Need for nested directory examples (frontend/.cursor/instructions.md) - Guidance on using exact syntax from official documentation - File tree parity check: compare line counts with other providers - Research sources for finding file tree examples in provider docs - Real-world example: Cursor tree expanded from 64→556 lines **CHECKLIST.md enhancements:** - Added File Tree Completeness Check subsection with 6 verification steps - Added parity check: compare line counts across providers - Added common mistake: "File tree too sparse compared to other providers" - Included real example: Cursor 64 lines vs Copilot 386 lines - Emphasized using exact syntax from official docs (frontmatter, file naming) **Why this matters:** The file tree is educational/reference material that demonstrates provider capabilities to users. Sparse file trees make providers look incomplete even when they have 11/11 full support. The Cursor tree initially had only 2 primitive types demonstrated (64 lines) compared to Copilot's 7 types (386 lines), making Cursor appear less capable despite having identical support. These additions ensure future provider integrations build comprehensive file trees from the start, avoiding the need for follow-up PRs. Related: PR #9 (Cursor file tree expansion addressing PR #3 review feedback) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Based on learnings from Cursor file tree expansion (PR #9), enhanced the skill with critical guidance on building comprehensive file trees. Key additions: **PROCESS.md - Stream 2.3 File Tree Completeness Guidelines:** - Requirement to demonstrate ALL supported primitives with 2-3 examples each - Importance of both project-level AND global-level examples - Need for nested directory examples (frontend/.cursor/instructions.md) - Guidance on using exact syntax from official documentation - File tree parity check: compare line counts with other providers - Research sources for finding file tree examples in provider docs - Real-world example: Cursor tree expanded from 64→556 lines **CHECKLIST.md enhancements:** - Added File Tree Completeness Check subsection with 6 verification steps - Added parity check: compare line counts across providers - Added common mistake: "File tree too sparse compared to other providers" - Included real example: Cursor 64 lines vs Copilot 386 lines - Emphasized using exact syntax from official docs (frontmatter, file naming) **Why this matters:** The file tree is educational/reference material that demonstrates provider capabilities to users. Sparse file trees make providers look incomplete even when they have 11/11 full support. The Cursor tree initially had only 2 primitive types demonstrated (64 lines) compared to Copilot's 7 types (386 lines), making Cursor appear less capable despite having identical support. These additions ensure future provider integrations build comprehensive file trees from the start, avoiding the need for follow-up PRs. Related: PR #9 (Cursor file tree expansion addressing PR #3 review feedback) Co-Authored-By: Jonathan Hoyt <jonmagic@gmail.com> Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
feat(filetree): expand Cursor provider with all 11 primitives

Summary
This PR adds Cursor as a provider for the site! ➤
Changes
Cursor Feature Corrections (Verified against cursor.com/docs)
.cursor/hooks.json.cursor/skills/*/SKILL.md(portable skill modules).cursor/mcp.json(stdio, SSE, HTTP support).cursor/commands/*.md(reusable prompts with parameters).cursor/agents/*.md(subagents with model selection)UI & Data
Attribution
Result
Cursor now has:
Testing
What to verify:
References
All Cursor features verified against: