Add GitHub Copilot as a fourth plugin host (CLI + VS Code)#26
Open
eshwar-sundar-glean wants to merge 1 commit into
Open
Add GitHub Copilot as a fourth plugin host (CLI + VS Code)#26eshwar-sundar-glean wants to merge 1 commit into
eshwar-sundar-glean wants to merge 1 commit into
Conversation
GitHub Copilot's agent-plugin format is shared with Claude Code, so the
existing Claude-format plugin (.claude-plugin/plugin.json + .mcp.json +
skills/) is what Copilot loads — no separate Copilot plugin manifest, and
deliberately no .plugin/plugin.json, since the Copilot-native format defines
no plugin-root token and would break the ${CLAUDE_PLUGIN_ROOT} reference that
locates start.sh.
- Add .github/plugin/marketplace.json so the repo is a first-class Copilot
marketplace, mirroring the per-host marketplace manifests for Claude,
Cursor, and Codex.
- Map Copilot CLI's COPILOT_AGENT_SESSION_ID to GLEAN_SESSION_ID in start.sh
so sessions are stable under Copilot instead of falling back to a generated
per-process id.
- Document the Copilot install flow (CLI + VS Code) and update the session-id
var reference and Layout in the README.
- Bump all three plugin manifests 0.2.33 -> 0.2.34 (start.sh is a tracked
plugin runtime file).
swarup-padhi-glean
approved these changes
Jun 23, 2026
Comment on lines
+46
to
+47
| elif [ -n "${COPILOT_AGENT_SESSION_ID:-}" ]; then | ||
| export GLEAN_SESSION_ID="$COPILOT_AGENT_SESSION_ID" |
Contributor
There was a problem hiding this comment.
Can we have a screenshot testing this being set and not being an issue as we found in cursor?
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
Adds GitHub Copilot (CLI and VS Code) as a fourth supported host. Copilot's agent-plugin format is shared with Claude Code, so the existing Claude-format plugin (
.claude-plugin/plugin.json+.mcp.json+skills/) is what Copilot loads — there's no separate Copilot plugin manifest, and deliberately no.plugin/plugin.json: the Copilot-native format defines no plugin-root token, which would break the${CLAUDE_PLUGIN_ROOT}reference that locatesstart.sh.Changes
.github/plugin/marketplace.json(new) — makes the repo a first-class Copilot marketplace at the GitHub-native location, mirroring the per-host marketplace manifests for Claude (.claude-plugin/), Cursor (.cursor-plugin/), and Codex (.agents/plugins/).start.sh— maps Copilot CLI'sCOPILOT_AGENT_SESSION_IDtoGLEAN_SESSION_ID, so sessions are stable under Copilot instead of falling back to a generated per-process id.GLEAN_SESSION_IDvar reference, and Layout tree.0.2.33 → 0.2.34(in lockstep;start.shis a tracked plugin runtime file, socheck-version-bump.shrequires it).Install
Copilot CLI:
VS Code: register the marketplace via
chat.plugins.marketplaces(or Chat: Install Plugin From Source), then install glean-vnext from the Agent Plugins view (@agentPlugins).Testing
npm run typecheckclean;npm test→ 154/154 pass;npm run build→dist/byte-identical (dist-sync gate green).bash -n start.shclean; all marketplace/plugin manifests validate as JSON; the three plugin versions are aligned at 0.2.34.Remaining manual verification
The Copilot CLI isn't installed in my environment, so a live skill-load smoke test wasn't possible. The
glean_runskill uses an underscore where the docs suggest kebab-case, but the documented silent-failure mode is namespace-prefix + dir/name mismatch (neither applies here, and Claude Code loads it today). After install, confirmglean_runappears under/skills; rename toglean-runonly if it doesn't (cross-host change).