Add Command to pull user-facing skills#2891
Add Command to pull user-facing skills#2891MoshiMoshiMochi merged 14 commits intoMarkBind:masterfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2891 +/- ##
========================================
Coverage 71.35% 71.35%
========================================
Files 133 133
Lines 7229 7229
Branches 1580 1704 +124
========================================
Hits 5158 5158
+ Misses 2065 1970 -95
- Partials 6 101 +95 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Adds a new CLI workflow for downloading and installing “MarkBind Skills” into a MarkBind project, including version tracking via a metadata file and optional agent-specific symlink setup.
Changes:
- Introduces
packages/cli/src/cmd/skills.tsimplementing git-based download, install, and.markbind-skills.jsonmetadata management. - Adds
markbind skillscommand group withinstallandupdatesubcommands and an interactive agent selection prompt. - Adds unit tests for the skills installer logic and related helpers.
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| packages/cli/src/cmd/skills.ts | Implements skills download/install, metadata read/write, semver comparison, and agent symlinking. |
| packages/cli/index.ts | Wires new skills commands into the CLI and adds interactive prompting for agent selection. |
| packages/cli/package.json | Adds aiSkillsVersion and the @inquirer/prompts dependency. |
| packages/cli/test/unit/skills.test.ts | Adds unit tests covering installer behavior, metadata, semver logic, and symlinks. |
| package-lock.json | Updates lockfile to include @inquirer/* dependency tree and related metadata changes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…o feat/skill-commands
|
Perhaps we can consider adding a check to ensure that the command is run inside a markbind directory |
|
@MoshiMoshiMochi Each PR must have a SEMVER impact label, please remember to label the PR properly. |
What is the purpose of this pull request?
Overview of changes:
As a part of #2869: create skills for MarkBind users, This PR adds a new command:
markbind skillsthat pulls skills for the MarkBind Skills repository and add them to user's MarkBind project root.We foresee changes made to MarkBind such that the skills will no longer be consistent with actual MarkBind features and/or configurations. Therefore, we have implemented a version control system by writing a
.markbind-skills.jsonfile to.agents/skillsto keep track of the version of skills that the user has. This allows us to prompt users to update their skills if they are inconsistent with thepackage.jsonaiSkillsVersionfield.Anything you'd like to highlight/discuss:
This PR also includes a new package
@inquirer/promptsto handle interactive prompt for users to idenfity the coding harnesses used and create symlinks accordingly. This is a step towards #2888Testing instructions:
Pull this branch and run
markbind skillsto test out all the commands.Proposed commit message: (wrap lines at 72 characters)
Add
markbind skillscommand to pull MarkBind Skills from GitHubChecklist: ☑️
Reviewer checklist:
Indicate the SEMVER impact of the PR:
At the end of the review, please label the PR with the appropriate label:
r.Major,r.Minor,r.Patch.Breaking change release note preparation (if applicable):