-
-
Notifications
You must be signed in to change notification settings - Fork 193
chore(release): Version skill installer URLs #199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Also update docs/SKILLS.md to use the versioned install script. Co-Authored-By: Claude <noreply@anthropic.com>
commit: |
WalkthroughThis pull request introduces a new skill installation system for XcodeBuildMCP alongside documentation updates and user experience enhancements. A new bash installer script ( 🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 5
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
scripts/release.sh (1)
321-345:⚠️ Potential issue | 🟠 MajorStage docs/SKILLS.md so the URL update is committed
The script updates
docs/SKILLS.mdbut never stages it, so the release commit will miss the change.Proposed change
if [[ -f server.json ]]; then run git add package.json package-lock.json README.md server.json else run git add package.json package-lock.json README.md fi + if [[ -f docs/SKILLS.md ]]; then + run git add docs/SKILLS.md + fi
🤖 Fix all issues with AI agents
In `@docs/SKILLS.md`:
- Around line 47-49: Rename the Markdown heading "## Unsupporting Clients" to
the correct phrasing "## Unsupported Clients" so the section title reads
"Unsupported Clients" and aligns with the following sentence; update the heading
text exactly (the symbol to change is the level-2 heading string "##
Unsupporting Clients") without altering the rest of the paragraph.
- Around line 3-7: Update the skill name text to use "MCP Skill" instead of "MPC
Skill" in the docs entry that currently reads "MPC Skill"; specifically locate
the string "MPC Skill" in SKILLS.md and replace it with "MCP Skill" (leave "CLI
Skill" unchanged) so the terminology matches the MCP server and script flags.
In `@README.md`:
- Around line 168-169: Update the install instruction sentence to correct
grammar: replace "copy and past the below command into a terminal and follow the
on-screen instructions." with "copy and paste the command below into a terminal
and follow the on-screen instructions." — locate the sentence in README.md (the
install instruction paragraph) and make that exact wording change.
- Around line 161-165: Replace the mistaken "MPC Skill" label with "MCP Skill"
in the README description for XcodeBuildMCP so the skill name matches the
protocol and flags; update the text string "MPC Skill" to "MCP Skill" in the
block that lists the two optional agent skills (the entry that currently reads
**MPC Skill**: Primes the agent ...) and ensure any surrounding references to
the skill name in that paragraph use "MCP" consistently.
In `@scripts/install-skill.sh`:
- Around line 4-24: ShellCheck flags the WHITE variable as unused; remove both
declarations of WHITE in the color setup (the
BOLD/DIM/RESET/RED/GREEN/YELLOW/BLUE/CYAN/WHITE assignments) so only used color
variables remain — i.e., delete the "WHITE='\033[0;37m'" line in the true branch
and the corresponding "WHITE=''" line in the else branch to avoid lint noise
while leaving all other variables unchanged.
🧹 Nitpick comments (1)
install-skill.sh (1)
1-209: Avoid duplicating installer logic between two scriptsThis file and
scripts/install-skill.shimplement the same flow. Keeping both in sync will be brittle; consider making one a thin wrapper or symlink to the other.
README.md
Outdated
| To install, copy and past the below command into a terminal and follow the on-screen instructions. | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix the grammar in the install instruction
“copy and past” should be “copy and paste”, and “the command below” reads more naturally.
Proposed change
-To install, copy and past the below command into a terminal and follow the on-screen instructions.
+To install, copy and paste the command below into a terminal and follow the on-screen instructions.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| To install, copy and past the below command into a terminal and follow the on-screen instructions. | |
| To install, copy and paste the command below into a terminal and follow the on-screen instructions. |
🤖 Prompt for AI Agents
In `@README.md` around lines 168 - 169, Update the install instruction sentence to
correct grammar: replace "copy and past the below command into a terminal and
follow the on-screen instructions." with "copy and paste the command below into
a terminal and follow the on-screen instructions." — locate the sentence in
README.md (the install instruction paragraph) and make that exact wording
change.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cursor fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like the humans are having a chat. I'll hop back into my burrow for now. If you need me again, just tag @coderabbitai in a new comment, and I'll come hopping out!
Ensure docs/SKILLS.md gets staged with release URL updates. Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
- Change 'copy and past' to 'copy and paste' - Change 'the below command' to 'the command below' Co-authored-by: web <web@cameroncooke.com>
| run git add package.json package-lock.json README.md docs/SKILLS.md server.json | ||
| else | ||
| run git add package.json package-lock.json README.md | ||
| run git add package.json package-lock.json README.md docs/SKILLS.md |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: The release script will crash if docs/SKILLS.md is missing because git add is called unconditionally while the script runs with set -e.
Severity: HIGH
Suggested Fix
Make the git add command for docs/SKILLS.md conditional, similar to the check performed before modifying the file. For example, wrap the git add calls in an if [[ -f docs/SKILLS.md ]] block to prevent the script from failing if the file does not exist.
Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.
Location: scripts/release.sh#L342-L344
Potential issue: The `release.sh` script includes a check to see if `docs/SKILLS.md`
exists before attempting to modify it. However, it later unconditionally tries to stage
this file using `git add`. Because the script runs with `set -e`, if `docs/SKILLS.md` is
missing, the `git add` command will fail with a non-zero exit code, causing the entire
release script to terminate prematurely. This creates an inconsistency where the script
anticipates the file might be missing but doesn't handle it correctly during the staging
phase, leading to a failed release.
Did we get this right? 👍 / 👎 to inform future reviews.


Update skill install docs and scripts for versioned release refs
The skill installer now supports selecting between MCP and CLI skills, and the docs reflect the updated install flows. The release script also rewrites skill installer URLs to the version tag so published docs point at the release.
This keeps the install instructions consistent with release tags instead of main.
Note
Medium Risk
Updates the Bash skill installer’s interactive flow and conflict handling, which could affect how users install/replace skills despite being limited to tooling/docs.
Overview
Skills documentation is updated to cover two separate skills (MCP vs CLI) and to document both interactive and automated install commands (including
--skill <mcp|cli>and--remove-conflict>).The skill installer script is revamped for a more guided UX (colored output, clearer prompts, better conflict messaging, and improved download fallback/error handling) while keeping the same core install behavior.
Release automation now also rewrites and stages skill-installer URLs in
docs/SKILLS.mdso published docs point at the versionedv<version>installer script instead ofmain.Written by Cursor Bugbot for commit 94738fb. This will update automatically on new commits. Configure here.