GitHub Copilot in VS Code consumes RAC on
two surfaces — a generated custom-instructions file Copilot reads, and the lore
MCP server its agent mode connects to. A stranger can reproduce this from the
file alone.
pip install rac-core # the `rac` CLI and the `lore` MCP serverA repository with a RAC corpus under decisions/ (run decided quickstart, or use this
repository's own decisions/).
decided export decisions/ --agent-rulesAmong the agent-context files this writes is .github/copilot-instructions.md
— Copilot's repository custom-instructions file — into a managed block (your own
content is preserved). Copilot Chat applies it automatically (ensure
"Use Instruction Files" / github.copilot.chat.codeGeneration.useInstructionFiles
is enabled — on by default in recent VS Code). Re-run on change;
decided export decisions/ --agent-rules --check fails CI on drift.
Copilot's agent mode uses MCP servers. Add .vscode/mcp.json in the repo
root — note VS Code uses the servers key (not mcpServers); a sample is in
mcp.example.json:
{
"servers": {
"asdecided": {
"type": "stdio",
"command": "decided-mcp",
"args": ["--root", "."]
}
}
}(Or run MCP: Open User Configuration for a user-level server.) Start it from
the MCP view, then use Copilot Chat in Agent mode. It exposes the five
read-only lore tools (get_summary, search_artifacts, get_artifact,
get_related, find_decisions); the server re-reads the corpus on every call
and never writes to the repo.
RAC supplies context and enforces after the edit (ADR-067). No platform API
vetoes a Copilot suggestion before it lands, so Copilot relies on the post-edit
guard: decided validate / decided relationships --validate and the GitHub Action /
pre-merge gate. (The pre-edit veto is Claude-Code-specific — see
examples/claude-code/.)
Run the bundled grounding demo — same task twice, once unconnected and once with
lore connected — and watch the connected run respect a recorded decision the
unconnected run violates: examples/guide/.
| Surface | Command | What Copilot does with it |
|---|---|---|
.github/copilot-instructions.md |
decided export decisions/ --agent-rules |
Applies it as repo custom instructions |
lore MCP |
.vscode/mcp.json (servers) → decided-mcp --root . |
Agent mode calls find_decisions / get_related on demand |
| CI gate | decided validate · decided relationships --validate |
Enforces on every PR |