fix: support cursor host in setup#1326
Open
cropsgg wants to merge 1 commit intogarrytan:mainfrom
Open
Conversation
Enable the documented Cursor install path by wiring setup to generate Cursor-specific skills and install them under ~/.cursor/skills with a minimal gstack runtime root. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR makes the documented
./setup --host cursorinstall path work as a first-class host install.The README already lists Cursor as supported and documents skills installing under
~/.cursor/skills/gstack-*/, but the setup script rejectedcursorduring host validation with:That made the documented install path unusable even though the repo already has Cursor host generation config in
hosts/cursor.ts.Related issues:
What changed
cursorto the accepted--hostvalues and error messages.~/.cursor/skills~/.cursor/skills/gstackcommand -v cursor, while preserving the existing fallback behavior when no hosts are detected.bun run gen:skill-docs --host cursorwhen Cursor install is selected.~/.cursor/skills/gstackwith only runtime assets and root skill files:binbrowse/distbrowse/binreview/*.mdruntime filesETHOS.mdSKILL.mdgstack-upgrade/SKILL.mdlink_cursor_skill_dirs()to link generated Cursor skills from.cursor/skills/gstack-*into~/.cursor/skills/..cursor/skills/gstacksidecar for generated Cursor skills, matching the existing runtime-root pattern while avoiding recursive duplicate skill discovery.A key detail here is that Cursor installs now use the Cursor-generated skill docs, not Codex-generated docs. I checked this carefully because Codex docs set defaults like
~/.codex/skills/gstack; Cursor skills need their preamble and repo-local fallback to resolve through~/.cursor/skills/gstackand.cursor/skills/gstack.Why this shape
Cursor's skill layout is very close to the existing generated-host flow, but it needs its own install target and generated host output. The implementation follows the same setup-script structure already used by Codex, Factory, and OpenCode:
INSTALL_CURSORflagThe runtime root intentionally does not symlink the entire
review/orqa/directories, because those source directories containSKILL.mdfiles. Exposing them through the runtime root could create duplicate skill discovery. Instead, the installer links only the runtime markdown files that skills read directly.Local verification
Verified on my laptop from this repo checkout.
Commands run:
Manual install checks:
Additional checks performed:
./setup --host cursorexits successfully and printsgstack ready (cursor).~/.cursor/skillscontains the generatedgstack-*skill links.gstack-*Cursor skill directories are present.SKILL.md..cursor/skills/..., not.agents/skills/....~/.cursor/skills/gstackand repo-local.cursor/skills/gstack, not Codex paths.~/.cursor/skills/gstack:binbrowse/distbrowse/binreview/checklist.mdreview/design-checklist.mdreview/greptile-triage.mdreview/TODOS-format.mdETHOS.mdSKILL.mdgstack-upgrade/SKILL.mdreview/SKILL.mdorqa/SKILL.mdexposed under the global runtime root.review/SKILL.mdorqa/SKILL.mdexposed under the repo-local.cursor/skills/gstackruntime sidecar../setup --host autostill runs successfully.Notes
I did not add Slate support here. This PR is intentionally scoped to the documented Cursor install path and the open Cursor setup issue.