Skip to content

Adopt the Agent Plugins open standard (1.0.0) as the portable target contract #307

Description

@ScriptedAlchemy

Adopt the Agent Plugins open standard as the portable target contract

Spec pin: Agent Plugins 1.0.0https://agent-plugins.org/specification, repository agentplugins/agent-plugins-spec @ ff8ab5e392cc87bd88d87c060815a87490e51003 (2026-08-19). Vendored schema hashes (sha256):

  • plugin.schema.json: 0a4aad95ce337878ad38802ebf0daa3fde76abe3f65400c86bcbb1ec0b3ab883
  • mcp.schema.json: 6539175bfcdf43085855183e86da40ea94b166547a72b47ae9a0a390516d3acb

Decision

The portable target IS the Agent Plugins adapter (adapterRevision 1.3.0). It emits root plugin.json (canonical $schema), skills/, and mcp.json, validates against the pinned schemas at build time, and declares rules/commands/hooks/events/marketplace honestly unavailable (the v1 standard packages only skills and MCP servers).

Native proof status

  • Repeatable CI-safe proof: installer + isolated-Cursor-home filesystem + pinned-schema conformance (runPortableHostInstallProof).
  • IDE dogfood (2026-09-02, Cursor 3.18.25 stable 280eca2911f1, isolated instance): plugin discovered with Local badge, skill discovered with exact SKILL.md description, MCP config discovered and spawned, stdio handshake completed with a launchable config. Audit: docs/audits/2026-09-02-agent-plugins-cursor-ide-proof.md.

Upstream interop gaps observed in Cursor 3.18.25 (all violate spec 7.2.1/9.2 MUSTs)

  1. ${PLUGIN_ROOT} not expanded in cwd — literal cwd → spawn <cmd> ENOENT (the spec's own stdio example uses "cwd": "${PLUGIN_ROOT}").
  2. ${PLUGIN_ROOT} not expanded in args — server starts, gets the literal path, exits MODULE_NOT_FOUND.
  3. Omitted cwd defaults to $HOME, not the plugin root.

Cursor's proprietary ${CURSOR_PLUGIN_ROOT} expands and connects (verified, stable heartbeat), so the loader pipeline works — it is not wired to the standard's placeholders for this format. Consequence: spec-conformant portable stdio MCP servers currently cannot launch on Cursor, though discovery/skills work fully.

Follow-ups

  • Report the three expansion gaps to Cursor (product feedback) with the audit evidence.
  • Re-run the IDE dogfood when a Cursor release notes Agent Plugins placeholder expansion; upgrade capability evidence when servers launch spec-conformantly.
  • Watch the spec repository for post-1.0.0 revisions (subtree/chore cadence as with the Effect RC re-pin).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions