feat(pstack): add Agent Plugins v1 compatibility
Summary
- add a root
plugin.jsontargeting Agent Plugins v1.0.0 - make the
poteto-modeskill identifier match its directory and preserve the display label in standard metadata - document the portable boundary:
skills/travels across Agent Plugins clients, while the two subagents remain Cursor-specific
Context
pstack already uses the standard fixed skills/<name>/SKILL.md layout, but Agent Plugins clients had no root manifest to discover it. Its main entry point also declared name: Poteto Mode, which violates the shared Agent Skills identifier rules.
The existing .cursor-plugin/plugin.json stays in place, so the Cursor marketplace keeps its native metadata and agents/ support. The identifier change overlaps #240 and #241; it is included here because portable pstack needs that entry point to be valid on its own.
Validation
node scripts/validate-plugins.mjs- validated
pstack/plugin.jsonwith AJV 2020 against the canonical v1.0.0 schema - ran
skills-ref validateacross all 44 skills; after this identifier fix, its remaining diagnostics are only the existing Cursor-specific frontmatter extensions git diff --check HEAD^ HEAD
Closes #237
[!NOTE]
Low Risk
Metadata and documentation only; no runtime or security-sensitive logic changes.
Overview
Adds a root plugin.json so Agent Plugins v1 clients can discover and install pstack/ without relying on Cursor-only packaging. The manifest carries version, description, and keywords; .cursor-plugin/plugin.json is unchanged for the Cursor marketplace.
poteto-mode skill frontmatter now uses the directory-aligned identifier poteto-mode instead of Poteto Mode, with metadata.cursor-display-name preserving the human label in Cursor.
README install section documents installing via any Agent Plugins client, and clarifies portability: skills/ is portable; agents/ subagents stay Cursor-specific.
Reviewed by Cursor Bugbot for commit 501f5cbbf498be31f67e1ffb2db187551748693c. Configure here.