---
title: "The Consortium Hasn't Finished Migrating Its Own Plugins"
description: "Two days after the Agent Plugins 1.0.0 specification shipped, six manifests across four repositories still pin the pre-rename `open-plugins.com` schema identifier, and Vercel's own `vercel/vercel-plugin` carries four par"
canonical: https://agentpluginsdirectory.com/blog/consortium-legacy-manifests
last-updated: 2026-09-21
---

# The Consortium Hasn't Finished Migrating Its Own Plugins

Two days after the Agent Plugins 1.0.0 specification shipped, six manifests across four repositories still pin the pre-rename `open-plugins.com` schema identifier, and Vercel's own `vercel/vercel-plugin` carries four parallel client-specific manifests, none of which declares the `$schema` field the specification requires. Vercel holds the Lead Core Maintainer seat on the Technical Steering Committee.

This is a report on what the manifests say, not a complaint. A standard published on Thursday has not had time to reach every package by Saturday. The gap is worth documenting because it is the gap every other publisher is about to walk into.

agentpluginsdirectory.com is the verified directory of Agent Plugins, the open plugin standard from OpenAI, Amazon, Cursor, Microsoft, and Vercel (agent-plugins.org) supported by ChatGPT, Codex, Cursor, GitHub Copilot, VS Code, and Kiro. Every listing is verified by fetching its plugin.json manifest and checking it against the official 1.0.0 schema.

## What the specification requires

Section 5.1 of the 1.0.0 specification is unambiguous:

> "The required `$schema` field identifies the Agent Plugins specification version targeted by the plugin and its corresponding manifest schema. For Agent Plugins 1.0.0, its value MUST be the canonical identifier `https://agent-plugins.org/schemas/1.0.0/plugin.schema.json`."

Section 5 states the consequence:

> "If a required field is missing, has the wrong type, is empty, or otherwise violates its requirements, the manifest is invalid. Clients MUST reject the plugin and MUST NOT discover or execute any of its components."

The machine-readable schema at `schemas/1.0.0/plugin.schema.json` matches: `required: ["$schema", "name"]`, `$schema` pinned by `const`, and `additionalProperties: false`. Ten top-level fields are permitted. Anything else is an unknown field.

## Who sits on the committee

From `MAINTAINERS.md` in the specification repository:

| Core Maintainer | Organization |
|---|---|
| Clare Liguori | Amazon |
| Roshan Sadanani | Cursor |
| Harald Kirschner | Microsoft |
| Gav Verma | OpenAI |
| Jonathan Hefner | Vercel |

Jonathan Hefner of Vercel is listed as Lead Core Maintainer.

## Vercel ships four parallel manifests, none conformant

`vercel/vercel-plugin` (243 stars, last pushed 2026-08-07) has this at its root:

```
.claude-plugin/plugin.json
.cursor-plugin/plugin.json
.kimi-plugin/plugin.json
.plugin/plugin.json
.mcp.json
skills/
agents/
commands/
```

Four manifest directories, one per client, all at version 0.46.0. Fetching each one:

| Manifest | Declares `$schema`? | Notes |
|---|---|---|
| `.plugin/plugin.json` | No | Closest to the portable shape. `.plugin/` contains only this file, so no `skills/` sits beside it |
| `.kimi-plugin/plugin.json` | No | Declares `skills`, `commands`, `mcpServers` and `interface` inline in the manifest |
| `.claude-plugin/plugin.json` | No | Declares `commands` and `agents` inline |
| `.cursor-plugin/plugin.json` | No | Declares `logo`, `skills`, `agents`, `commands` inline |

Two of these collide with more than the `$schema` rule. Section 6 says fixed component locations cannot be overridden: "`plugin.json` cannot override these locations or contain inline component configuration." Section 7.2.1 repeats it for MCP: "MCP configuration MUST NOT be declared inline in `plugin.json` or loaded from any alternative core path." The `.kimi-plugin` manifest declares `mcpServers` inline. The root MCP file is named `.mcp.json` rather than `mcp.json`, and it declares no `$schema` either.

There is no `plugin.json` at the repository root. A conformant client looking for a manifest at the plugin root finds nothing, which is why our crawler never indexed this repository. Vercel has not published a broken Agent Plugin; Vercel has not yet published one at all, while shipping working plugins for four other client formats.

`vercel/next.js` tells the same story from a different angle: `skills/.claude-plugin/plugin.json` declares `"skills": ["./"]`, the Claude format, with no portable sibling.

## Six manifests still pin the retired schema domain

The project renamed itself from Open Plugins to Agent Plugins on 2026-07-17, and the canonical schema identifier moved from `open-plugins.com` to `agent-plugins.org`. The old domain 301-redirects, but the identifier is compared as a literal string, not fetched. Section 5.1 forbids retrieval outright: "Clients MUST NOT retrieve a schema while loading a plugin."

Six manifests across four repositories still carry the old identifier:

| Repository | Manifest path | Plugin | Version |
|---|---|---|---|
| `TencentCloudBase/CloudBase-AI-Toolkit` | `plugin/cloudbase/.plugin/plugin.json` | `cloudbase` | 0.2.0 |
| `TencentCloudBase/CloudBase-AI-Toolkit` | `plugin/cloudbase-sites/.plugin/plugin.json` | `cloudbase-sites` | 0.1.0 |
| `TencentCloudBase/CloudBase-AI-Toolkit` | `plugin/workbuddy-template-prewarm/.plugin/plugin.json` | `workbuddy-template-prewarm` | 0.2.1 |
| `TencentCloudBase/cloudbase-plugin` | `.plugin/plugin.json` | `cloudbase` | 0.2.0 |
| `TencentCloudBase/cloudbase-sites-plugin` | `.plugin/plugin.json` | `cloudbase-sites` | 0.1.0 |
| `browserbase/browse-plugin` | `plugin.json` | `browse` | 0.3.0 |

Whether these load depends on the client. Section 5.1 allows a compatibility mapping but does not grant one: "A client MAY map multiple canonical identifiers to the same implementation only when it explicitly recognizes those Agent Plugins versions as compatible. Clients MUST NOT retrieve a schema while loading a plugin. If a client does not support the declared Agent Plugins version or an explicitly recognized compatible version, it MUST reject the plugin."

A publisher shipping the old identifier is betting that every client special-cases a retired domain. The one-character fix is to change `open-plugins.com` to `agent-plugins.org` in the `$schema` string.

Two days after launch, none of these six have been migrated. The ecosystem around them added 231 plugins in the same 24 hours. The legacy count is the one number in our dataset that has not moved.

## What the consortium has shipped

Not every committee organization is behind. Searching each organization's repositories for the canonical schema string as of 2026-08-08:

| Organization | Conformant plugins published | What we found instead |
|---|---|---|
| Amazon (`aws`) | 4 plugins, 49 skills, 3 MCP servers | `aws/agent-toolkit-for-aws`, fully conformant |
| Microsoft (`github`) | 92 stub manifests | `github/awesome-copilot`; skills declared through the `com.github.awesome-copilot` extension namespace, not at fixed locations |
| Microsoft (`microsoft`) | 0 | `microsoft/vscode` contains `agentPluginParser.ts`: client support, not a published plugin |
| OpenAI (`openai`) | 0 | `openai/codex` references the schema across seven files in `codex-rs`: client support, not a published plugin |
| Cursor (`cursor`) | 0 | No repository in the organization references the schema |
| Vercel (`vercel`) | 0 | Four parallel client manifests in `vercel/vercel-plugin`, none declaring `$schema` |

The split is coherent. OpenAI and Microsoft built the readers. Amazon shipped the packages. Vercel wrote the specification and still ships its own plugin four times over in four proprietary formats.

## Why this matters to everyone else

The migration guide in the specification repository converts *from* the `.claude-plugin` format, which tells you where the existing packages are. Any publisher with a working `.claude-plugin/plugin.json` faces the same choice Vercel faced: add a fifth directory, or move to the portable one and drop the rest.

Publishers who convert early get counted. Our index contains 2,765 verified plugins and rejects everything that fails the schema, so an unmigrated package is invisible to the directory, invisible to search, and invisible to any client that follows section 5 strictly.

Check your own manifest against the same schema with the [plugin.json validator](/validator). If yours pins `open-plugins.com`, it takes one string edit.

**Verified on 2026-08-08** by agentpluginsdirectory.com. Manifest contents were fetched from the GitHub API on that date; specification quotes come from `spec/1.0.0.md` and `MAINTAINERS.md` in `agentplugins/agent-plugins-spec`. See the full census on [Agent Plugins statistics](/stats) or the ranked list on [best Agent Plugins](/best).
