Skip to content

feat: add GitHub Copilot CLI install support#169

Open
1fanwang wants to merge 1 commit into
blader:mainfrom
1fanwang:copilot-cli-support
Open

feat: add GitHub Copilot CLI install support#169
1fanwang wants to merge 1 commit into
blader:mainfrom
1fanwang:copilot-cli-support

Conversation

@1fanwang

Copy link
Copy Markdown

Why

Humanizer already ships first-class install paths for the cross-agent skills CLI and for Claude Code, but not for GitHub Copilot CLI. Copilot CLI has its own skill/plugin discovery and does not read the .claude-plugin/ manifests, so today a Copilot CLI user has to wire the skill up by hand. This adds the missing native path, in keeping with the repo's "works in any harness" goal.

What changed

Copilot CLI discovers repo skills under .github/skills/ and installs plugins from a .github/plugin/marketplace.json manifest. This PR adds those, mirroring the existing Claude Code flow:

  • .github/plugin/marketplace.json + .github/plugin/plugin.json — so /plugin marketplace add blader/humanizer then /plugin install humanizer@humanizer work in Copilot CLI, the same way the README already documents for Claude Code.
  • .github/skills/humanizer/SKILL.md — a symlink to the root SKILL.md, so /skills add https://github.com/blader/humanizer works too. It's a symlink rather than a copy so SKILL.md stays the single source of truth with nothing to drift, per the maintenance contract in AGENTS.md.
  • A "GitHub Copilot CLI" section in the README, parallel to the Claude Code one.
  • An AGENTS.md update so the Key files list and the version-bump contract cover the new .github/plugin/plugin.json.

The skill content and every existing install path are untouched.

Note on the symlink

Git records .github/skills/humanizer/SKILL.md as a real symlink (mode 120000) and materializes it on clone on macOS/Linux (and on Windows with core.symlinks=true). If you'd prefer not to depend on symlinks, I'm happy to switch it to a generated copy plus a sync note instead — your call.

Test plan

  • Both manifests parse as valid JSON.
  • .github/skills/humanizer/SKILL.md resolves to the root SKILL.md (same file) and Git tracks it as a symlink (120000), so there is no duplicated skill body.
  • README and AGENTS.md stay consistent with the maintenance contract (version fields enumerated, install language harness-neutral).
  • End-to-end in Copilot CLI once this is on a reachable ref: /plugin marketplace add blader/humanizer/plugin install humanizer@humanizer/skills list shows humanizer; and /skills add https://github.com/blader/humanizer adds it standalone. (The manifest layout matches a plugin that already installs cleanly in Copilot CLI.)

Copilot CLI discovers skills under .github/skills/ and installs plugins from
a .github/plugin/marketplace.json manifest. Neither existed here, so the skill
could only be added to Copilot CLI by hand.

Add both Copilot manifests plus a .github/skills/humanizer/SKILL.md symlink to
the root SKILL.md, so the same skill is exposed to Copilot CLI without a second
copy that could drift. Document the Copilot CLI install path in the README and
extend the AGENTS.md version-bump contract to cover the new plugin manifest.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant