Skip to content

Commit 2a05f51

Browse files
Rodriguespnclaude
andcommitted
feat: add Supabase Open Plugin (VS Code) support
Add the vendor-neutral Open Plugin manifest (.plugin/plugin.json) that VS Code auto-detects, pointing at agents/open-plugin/.mcp.json with a generic X-Source-Name: open-plugin. Verified against VS Code 1.128.1: it only auto-detects three shared manifests (.plugin, .claude-plugin, bare plugin.json) and has no VS Code-only manifest path. VS Code installs stay attributable server-side via the MCP clientInfo (vscode_agent_host). Wires the manifest + MCP version into release-please and the release archive, and documents the surface in AGENTS.md / README. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 974058c commit 2a05f51

6 files changed

Lines changed: 58 additions & 5 deletions

File tree

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
run: |
2727
tar -czvf "supabase-plugin.tar.gz" --dereference \
2828
.claude-plugin/ .cursor-plugin/ .codex-plugin/ .kimi-plugin/ \
29-
.github/plugin/ agents/ \
29+
.github/plugin/ .plugin/ agents/ \
3030
gemini-extension.json SUPABASE.md \
3131
skills/ assets/ || exit 1
3232

.plugin/plugin.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "supabase",
3+
"version": "0.1.12",
4+
"description": "Official Supabase plugin in the vendor-neutral Open Plugin format with bundled Supabase skills and MCP access for project management, database work, auth, storage, and Postgres best practices.",
5+
"author": {
6+
"name": "Supabase",
7+
"email": "support@supabase.io"
8+
},
9+
"repository": "https://github.com/supabase-community/supabase-plugin",
10+
"license": "MIT",
11+
"keywords": [
12+
"supabase",
13+
"postgres",
14+
"database",
15+
"backend",
16+
"mcp",
17+
"auth",
18+
"storage",
19+
"realtime",
20+
"edge-functions",
21+
"migrations",
22+
"rls"
23+
],
24+
"skills": "./skills/",
25+
"mcpServers": "./agents/open-plugin/.mcp.json"
26+
}

AGENTS.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# AGENTS.md
22

3-
This repository is the plugin distribution repo for Supabase across Claude Code, Cursor, Codex, GitHub Copilot, Gemini, and Kimi Code.
3+
This repository is the plugin distribution repo for Supabase across Claude Code, Cursor, Codex, GitHub Copilot, Gemini, Kimi Code, and the vendor-neutral Open Plugin format (consumed by VS Code).
44

55
These vendors are installable through the vendor-neutral [`plugins`](https://github.com/vercel-labs/plugins) CLI, which translates the shared plugin layout into each target's native format:
66

@@ -17,7 +17,8 @@ Keep this repository focused on the shared multi-vendor plugin layout:
1717
- `.codex-plugin/plugin.json` defines the Codex plugin surface
1818
- `.kimi-plugin/plugin.json` defines the Kimi Code plugin surface (with its MCP server declared inline)
1919
- `.github/plugin/plugin.json` defines the GitHub Copilot plugin surface
20-
- `agents/claude/.mcp.json`, `agents/cursor/mcp.json`, `agents/codex/.app.json`, and `agents/copilot/.mcp.json` hold agent-specific MCP config files
20+
- `.plugin/plugin.json` defines the vendor-neutral [Open Plugin](https://open-plugins.com/) surface (consumed by VS Code today, and by any other Open Plugin host)
21+
- `agents/claude/.mcp.json`, `agents/cursor/mcp.json`, `agents/codex/.app.json`, `agents/copilot/.mcp.json`, and `agents/open-plugin/.mcp.json` hold agent-specific MCP config files
2122
- `gemini-extension.json` defines the Gemini extension manifest
2223
- `skills/` contains the shipped, real skill files consumed by the supported plugin surfaces
2324

@@ -33,7 +34,7 @@ npx claude plugin validate .claude-plugin/plugin.json
3334

3435
## Editing Rules
3536

36-
- Do not move `skills/`, `agents/`, `.claude-plugin/plugin.json`, `.cursor-plugin/plugin.json`, `.codex-plugin/plugin.json`, or `.kimi-plugin/plugin.json` out of the repo root layout.
37+
- Do not move `skills/`, `agents/`, `.claude-plugin/plugin.json`, `.cursor-plugin/plugin.json`, `.codex-plugin/plugin.json`, `.kimi-plugin/plugin.json`, or `.plugin/plugin.json` out of the repo root layout.
3738
- Do not replace `skills/` with a symlink or submodule reference.
3839
- Keep the plugin name stable as `supabase` unless there is a deliberate migration plan.
3940
- When changing descriptions or keywords, update all relevant `plugin.json` files together.
@@ -63,6 +64,9 @@ Known vendor documentation pages:
6364
- https://www.kimi.com/code
6465
- https://www.kimi.com/code/docs/en/kimi-code-cli/customization/plugins.html
6566
- Installed via the `plugins` CLI into Kimi's native plugin store; uses `.kimi-plugin/plugin.json` with skills, commands, hooks, and MCP servers (no agents or LSP support). MCP servers must be declared inline — Kimi does not resolve external file references.
67+
- Open Plugin:
68+
- https://open-plugins.com/
69+
- Vendor-neutral plugin manifest (`.plugin/plugin.json`) that any Open Plugin host can consume. Its MCP config lives in `agents/open-plugin/.mcp.json` with a generic `X-Source-Name: open-plugin`; individual clients are distinguished server-side by client name.
6670
- `plugins` CLI (vendor-neutral installer):
6771
- https://github.com/vercel-labs/plugins
6872

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Supabase Agent Plugin
22

3-
Official Supabase plugin distribution repo for Claude Code, Cursor, Codex, GitHub Copilot, and Gemini. It bundles:
3+
Official Supabase plugin distribution repo for Claude Code, Cursor, Codex, GitHub Copilot, Gemini, and VS Code. It bundles:
44

55
> Want to contribute? Read [CONTRIBUTING.md](CONTRIBUTING.md) first.
66
@@ -23,6 +23,7 @@ Per-vendor plugin manifests and MCP adapters:
2323
| Codex ||
2424
| GitHub Copilot ||
2525
| Gemini ||
26+
| VS Code (Open Plugin) ||
2627

2728

2829
## Notes

agents/open-plugin/.mcp.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"mcpServers": {
3+
"supabase": {
4+
"type": "http",
5+
"url": "https://mcp.supabase.com/mcp",
6+
"headers": {
7+
"X-Source-Name": "open-plugin",
8+
"X-Source-Version": "0.1.12"
9+
}
10+
}
11+
}
12+
}

release-please-config.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@
3030
"path": ".github/plugin/plugin.json",
3131
"jsonpath": "$.version"
3232
},
33+
{
34+
"type": "json",
35+
"path": ".plugin/plugin.json",
36+
"jsonpath": "$.version"
37+
},
3338
{
3439
"type": "json",
3540
"path": "gemini-extension.json",
@@ -55,6 +60,11 @@
5560
"path": "agents/copilot/.mcp.json",
5661
"jsonpath": "$.mcpServers.supabase.headers[\"X-Source-Version\"]"
5762
},
63+
{
64+
"type": "json",
65+
"path": "agents/open-plugin/.mcp.json",
66+
"jsonpath": "$.mcpServers.supabase.headers[\"X-Source-Version\"]"
67+
},
5868
{
5969
"type": "json",
6070
"path": "gemini-extension.json",

0 commit comments

Comments
 (0)