Closed
Labels
host-integrationAgent host capabilities, projection, discovery, and lifecycleAgent host capabilities, projection, discovery, and lifecycle
Description
Tracks the external / time-gated follow-ups carried over from #307 (Agent Plugins 1.0.0 portable adoption). The engineering deliverable in #307 is complete and merged (#373 65c05a617, #406 98751df4a); these items cannot be closed from inside this repository and are parked here so #307 can close honestly.
Context pin: Agent Plugins 1.0.0, spec repo agentplugins/agent-plugins-spec @ ff8ab5e392cc87bd88d87c060815a87490e51003 (2026-08-19); vendored schemas + provenance in packages/agent-bundle/src/adapters/schemas/portable/ (re-verified 2026-09-02, a 1.1.0 working draft exists upstream since 2026-08-15 with no published schemas).
- Report the three placeholder-expansion gaps to Cursor (product feedback) with the audit evidence in
docs/audits/2026-09-02-agent-plugins-cursor-ide-proof.md:${PLUGIN_ROOT}not expanded incwd,${PLUGIN_ROOT}not expanded inargs, omittedcwddefaults to$HOMEinstead of the plugin root (spec §7.2.1 / §9.2 MUSTs). Observed on Cursor 3.18.25 stable280eca2911f1. - Re-run the IDE dogfood when a Cursor release notes Agent Plugins placeholder expansion; upgrade the
portable-1.0.0.jsoncapability evidence (stdio MCP launch rows) from "discovered, not launchable" to launched once spec-conformant servers start. - Watch the specification repository for post-1.0.0 revisions; when 1.1.0 schemas are published, re-pin under
schemas/portable/with a datedPROVENANCE.jsonupdate, bump the portableadapterRevision, and refresh the pins intests/adapter-metadata.test.ts(same cadence as the Effect RC re-pin chore).
Metadata
Metadata
Assignees
Labels
host-integrationAgent host capabilities, projection, discovery, and lifecycleAgent host capabilities, projection, discovery, and lifecycle
Activity
ScriptedAlchemy commentedon Sep 3, 2026
Final-sweep verification (2026-09-03): all three items are external or time-gated (Cursor product feedback, a future Cursor release, a future spec revision) and none can be closed from inside this repository; the engineering deliverable they trail (#307 via #373 and #406) is merged and the portable pins were re-verified 2026-09-02. Added the
host-integrationlabel so the tracker sits beside #422–#424. One note for whoever files the Cursor feedback: the audit evidence (docs/audits/2026-09-02-agent-plugins-cursor-ide-proof.md) and the three MUST citations (spec §7.2.1 / §9.2) are complete as written — nothing further is needed from this repo before sending it.docs(portable): re-verify Cursor 3.18.25 Agent Plugins gaps, prepare …
docs(portable): re-verify Cursor 3.18.25 Agent Plugins gaps, prepare …
docs(portable): re-verify Cursor 3.18.25 Agent Plugins gaps, prepare …
ScriptedAlchemy commentedon Sep 3, 2026
Closing out from PR #443 (merged as
9bb5d0dc1). Evidence per item:${PLUGIN_ROOT}gaps to Cursor…-feedback.mdin #444) was removed in #467 (merged as9d4fbd867) per maintainer decision; the surviving record isdocs/audits/2026-09-03-agent-plugins-cursor-ide-proof.md. The removed note carried one section per gap with the §7.2.1 / §9.1 / §9.2 citations, observed payloads and paths, expected behaviour, a four-file minimal repro plugin, and two 1440×900 captures. Re-verified on the installed Cursor 3.18.25 (realCommit 280eca29…af3— the same build as the 2026-09-02 observation; no newer stable release is installed or listed in the rendered changelog). All three gaps reproduce; the widened probe added three more (env values unexpanded §9.2, reservedPLUGIN_ROOT/PLUGIN_DATAabsent §9.1,./commands resolved against the workspace §7.2.1). Nothing is fixed, so no capability row moved tosupported;portable-1.0.0.jsonmcp.evidencecarries the dated line.docs/audits/2026-09-03-agent-plugins-cursor-ide-proof.md: isolated instance (dedicatedHOME/--user-data-dir, Xvfb, 1440×900, no loading-state captures). Emittedinstall.mjslocal mode installs (Installed→Already installed);--mode marketplacefails closed for Agent Plugins packs by design; `agent-bundle install cursor --mode localagentplugins/agent-plugins-specmainunchanged atff8ab5e39, no tags or releases;spec/1.1.0.mdis still "Working Draft" (in-reposchemas/1.1.0/*differ only in version strings;agent-plugins.org/schemas/1.1.0/*→ 404).PROVENANCE.jsonre-verification dated 2026-09-03, and a dated spec-watch row now sits in the parked follow-ups ledger indocs/effect-conventions.mdwith the observed latest published version (1.0.0) and the re-pin trigger/action.No external action: by maintainer decision (2026-09-03) the observations are not submitted to Cursor; they stay in-repo as the baseline for re-checking a newer Cursor build.
The two time-gated re-runs (a Cursor release noting Agent Plugins placeholder expansion; a published 1.1.0) are now recorded where they will be re-checked — the spec-watch ledger row and the dogfood note's §4 procedure — so this tracker closes; open a fresh issue when either trigger fires.
ScriptedAlchemy commentedon Sep 3, 2026
2026-09-03 follow-up: by maintainer decision the
${PLUGIN_ROOT}report is not submitted to Cursor. PR #444 renamed it to an internal observations note and #467 (merged as9d4fbd867) removed it entirely, per maintainer decision; the record isdocs/audits/2026-09-03-agent-plugins-cursor-ide-proof.mdand theportable-1.0.0.jsonmcp.evidenceline, and theportablerows staydegradeduntil a Cursor build that expands the placeholders is observed.feat(install): expand Agent Plugins placeholders for the Cursor copy …
feat(install): expand Agent Plugins placeholders for the Cursor copy …
feat(install): expand Agent Plugins placeholders for the Cursor copy …
feat(install): expand Agent Plugins placeholders for the Cursor copy …
feat(install): expand Agent Plugins placeholders for the Cursor copy …
ScriptedAlchemy commentedon Sep 4, 2026
Status after PR #482 (merged as
b351f4abb), framework-side only, no vendor contact:Supported from inside the framework —
${PLUGIN_ROOT}/${PLUGIN_DATA}expansion on Cursor. Cursor 3.18.25 loads an Agent Plugins 1.0.0 package from~/.cursor/plugins/local/<name>but spawns its stdio servers without expanding${PLUGIN_ROOT}/${PLUGIN_DATA}inargs,envvalues orcwd, without providing the reservedPLUGIN_ROOT/PLUGIN_DATAvariables (spec §9.1), with an omittedcwddefaulting to the home directory, and with plugin-relative./commands resolved against the workspace folder (spec §7.2.1) —docs/audits/2026-09-03-agent-plugins-cursor-ide-proof.md. The emitted portableinstall.mjsnow performs that resolution itself, for the Cursor copy only: absolute plugin root,~/.cursor/agent-bundle/plugin-data/<name>(created) as the data directory, plugin-rootcwd, resolved./command, andPLUGIN_ROOT/PLUGIN_DATAin every stdio server's environment. The pre-expansion document and the substituted values are recorded in the install receipt (cursorExpansion, provenancederived); Claude/Codex copies and Cursor-target (.cursor-plugin/plugin.json) bundles are byte-identical to the bundle as before.agent-bundle doctor --host cursorgainsAB7326:expanded(info) when the installedmcp.jsonis byte-for-byte the expansion of the recorded document and every expanded path resolves;unexpanded(warning) for a hand-copied Agent Plugins install still carrying the spec forms Cursor cannot launch (spawn … ENOENT/MODULE_NOT_FOUND), listing the forms per server;drifted(error, entrycorrupt) when the copy was moved, edited or its data directory removed after install. The Agent Plugins contract check (AB7320) validates the recorded document, so the Cursor copy stays conformant in the form the bundle shipped. Capability table:portable-1.0.0.jsonplugin.cursorLocalInstall.placeholderExpansion = supported(provenancederived) with the dated evidence; docs indocs/diagnostics.md,website/docs/{en,zh}/guide/distribution/installation.mdxandreference/cli.mdx.Remains host-side (nothing the framework can change): Cursor still performs no expansion itself, so the
portableMCP rows keepprovenance: derived— a package copied into~/.cursor/plugins/localby any means other than the emitted installer is exactly as broken as before, which is what theAB7326unexpandedwarning exists to surface.