Skip to content

feat(copilot): add Copilot memory plugin via MCP (#2842) - #3545

Open
now-ing wants to merge 1 commit into
volcengine:mainfrom
now-ing:feat/copilot-plugin-2842-clean
Open

feat(copilot): add Copilot memory plugin via MCP (#2842)#3545
now-ing wants to merge 1 commit into
volcengine:mainfrom
now-ing:feat/copilot-plugin-2842-clean

Conversation

@now-ing

@now-ing now-ing commented Jul 27, 2026

Copy link
Copy Markdown

What & why

Closes #2842.

GitHub Copilot had no OpenViking integration. Rather than mirror the Claude-style hook plugin (Copilot does not expose that surface), this ships the integration the way Copilot actually supports — MCP — based on researched findings in RESEARCH.md (with sources).

Research conclusion (sources in RESEARCH.md)

Copilot supports MCP (GA) across VSCode / JetBrains / Xcode / Eclipse / Cursor / Windsurf / Copilot CLI / GitHub Copilot app / GitHub.com (cloud agent + code review). Plus Agent Skills (open standard) and project-level MCP config (.vscode/mcp.json, ~/.copilot/mcp-config.json, .github/mcp.json). So the right shape is: an MCP server config pointing at OpenViking's /mcp, plus an Agent Skill teaching Copilot when/how to use the memory tools.

What's in the box

  • servers/mcp-proxy.mjs — reuses the shared stdio MCP proxy → OpenViking /mcp (credentials from env / ovcli.conf).
  • configs/ — ready MCP configs for VSCode, Copilot CLI, and GitHub.com, plus scripts/build-configs.mjs to render a config for a target from env / ovcli.conf (idempotent).
  • skills/openviking-memory/SKILL.md — Agent Skill: when to recall (before answering factual/preference questions) and store (after durable facts).
  • setup-helper/install.sh — self-contained installer.
  • README / INSTALL / INSTALL-ZH / DESIGN / RESEARCH.

Honest status

DESIGN.md flags the points that need real-Copilot confirmation (e.g. exact MCP config field names per product version, since Copilot's MCP config schema has been evolving) and lists what changes if they differ. Opening as draft until a Copilot user confirms the configs load and the tools surface in agent mode. The MCP approach is well-supported per the research, so the risk is in config-field details, not the integration shape.

Tests

scripts/build-configs.test.mjs (node:test, 11 cases): config rendering for each of the three targets, idempotency, env / ovcli.conf resolution. 11 pass.

This contribution was developed with AI assistance.

Refs #2842

GitHub Copilot had no OpenViking integration. Research (RESEARCH.md, with
sources) confirms Copilot supports MCP (GA) across VSCode/JetBrains/Xcode/
Cursor/Copilot CLI/GitHub.com, plus Agent Skills and project-level MCP config
(.vscode/mcp.json, ~/.copilot/mcp-config.json, .github/mcp.json). So instead
of a speculative Claude-style hook plugin, this ships the integration the way
Copilot actually supports: an MCP server config + Agent Skill, reusing the
shared OpenViking /mcp proxy.

- servers/mcp-proxy.mjs: reuses the shared stdio MCP proxy → OpenViking /mcp.
- configs/: ready-to-use MCP configs for VSCode (.vscode/mcp.json), Copilot
  CLI (~/.copilot/mcp-config.json), and GitHub.com (.github/mcp.json).
- scripts/build-configs.mjs: renders a config for a given target from env /
  ovcli.conf; idempotent.
- skills/openviking-memory/SKILL.md: Agent Skill teaching Copilot how/when to
  recall and store memory via the MCP tools.
- setup-helper/install.sh: self-contained installer.
- README / INSTALL / INSTALL-ZH / DESIGN / RESEARCH.

RESEARCH.md documents the Copilot extension surface with sources and the
reasoning for choosing MCP over hooks. DESIGN.md flags the points that need
real-Copilot confirmation (e.g. exact MCP config field names per product
version) and lists what changes if they differ.

Tests: scripts/build-configs.test.mjs (node:test, 11 cases) cover config
rendering for each target + idempotency + env/ovcli.conf resolution. 11 pass.

Refs volcengine#2842
@now-ing
now-ing force-pushed the feat/copilot-plugin-2842-clean branch from d59c626 to e9cc386 Compare July 29, 2026 14:36
@now-ing
now-ing marked this pull request as ready for review July 29, 2026 16:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

[Feature]: Copilot support

1 participant