Skip to content

refactor: rename marketplace to stackone-agent-plugins and split into one plugin per skill#20

Merged
glebedel merged 2 commits into
mainfrom
restructure-multi-plugin-marketplace
May 15, 2026
Merged

refactor: rename marketplace to stackone-agent-plugins and split into one plugin per skill#20
glebedel merged 2 commits into
mainfrom
restructure-multi-plugin-marketplace

Conversation

@glebedel
Copy link
Copy Markdown
Contributor

@glebedel glebedel commented May 15, 2026

Summary

  • Rename marketplace stackone-marketplacestackone-agent-plugins (so /plugin marketplace add stackonehq/agent-plugins and /plugin install <name>@stackone-agent-plugins use a name that matches the repo).
  • Split the bundled stackone plugin into 7 independent plugins — one per skill — modelled on stackone-claude-marketplace. Users can now install just the skill they need instead of pulling all 7.
  • Co-locate the Defender hook + scripts + ML deps inside plugins/security/stackone-defender/. Other 6 plugins are skill-only.

Layout

.claude-plugin/marketplace.json   # lists 7 plugins, points at local sources
plugins/
  integrations/
    stackone-platform/
    stackone-connect/
    stackone-agents/
    stackone-connectors/
    stackone-cli/
    stackone-unified-connectors/
  security/
    stackone-defender/            # owns hooks/, scripts/, package.json with ML deps

Each plugin has its own .claude-plugin/plugin.json + README.md. All git mv was used so history is preserved.

Behavioural notes

  • The Defender hook command ${CLAUDE_PLUGIN_ROOT}/scripts/scan-tool-result.mjs is unchanged — CLAUDE_PLUGIN_ROOT resolves per-plugin, so moving scripts/ inside the defender plugin folder needed no edits to hooks.json or the scripts themselves.
  • The defender daemon self-installs its node_modules via npm install --prefix pluginRoot, reading deps from plugins/security/stackone-defender/package.json. The root package.json is removed because no other plugin needs it.
  • release-please-config.json now tracks per-plugin plugin.json versions plus the marketplace metadata.

Validation

Ran locally:

$ npx --yes @anthropic-ai/claude-code plugin validate .
Validating marketplace manifest: /private/tmp/agent-plugins/.claude-plugin/marketplace.json
✔ Validation passed

CI's Validate Plugin Manifest workflow will run the same check on this PR.

Test plan

  • CI Validate Plugin Manifest workflow passes
  • /plugin marketplace add stackonehq/agent-plugins resolves under the new name
  • /plugin install stackone-defender@stackone-agent-plugins triggers the npm self-install and the PostToolUse hook fires
  • /plugin install stackone-platform@stackone-agent-plugins (skill-only) installs and the skill is visible

🤖 Generated with Claude Code

…etplace

Restructure the marketplace to follow the multi-plugin pattern used by
stackone-claude-marketplace. Each of the 7 skills now ships as its own
installable plugin under plugins/<category>/<name>/, so users can pick
just what they need instead of installing the whole bundle.

- Rename marketplace: stackone-marketplace -> stackone-agent-plugins
- Move 6 skill-only plugins to plugins/integrations/
- Move stackone-defender to plugins/security/ with its hook config,
  scripts, and ML dependencies scoped to the plugin folder
- Drop the obsolete root .claude-plugin/plugin.json and root package.json
  (deps now live with the only plugin that needs them: stackone-defender)
- Update release-please-config to track per-plugin plugin.json versions
- Rewrite README install instructions

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 15, 2026 13:24
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 issues found across 41 files

Prompt for AI agents (unresolved issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="plugins/security/stackone-defender/README.md">

<violation number="1" location="plugins/security/stackone-defender/README.md:22">
P2: This overstates what the feedback script does. It records feedback, but it does not adapt the daemon's local cache.</violation>
</file>

<file name="README.md">

<violation number="1" location="README.md:14">
P2: `/plugin list` doesn't take a marketplace name here; use the available-plugins flag or the Discover tab instead.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Comment thread plugins/security/stackone-defender/README.md Outdated
Comment thread README.md Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR renames the Claude Code marketplace from stackone-marketplace to stackone-agent-plugins and restructures the repo to publish 7 separate plugins (one per skill), with stackone-defender additionally shipping a PostToolUse hook + local ML daemon + feedback tooling.

Changes:

  • Rename marketplace identity and update root README install instructions to reference stackone-agent-plugins.
  • Split the previously bundled StackOne plugin into 7 independently installable plugins (each with its own .claude-plugin/plugin.json, README, and skill content).
  • Move Defender hook + scripts + ML dependencies into plugins/security/stackone-defender/, including a daemonized scanner and a feedback CLI.

Reviewed changes

Copilot reviewed 20 out of 41 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
README.md Updates repo description, install instructions, and documents new per-plugin layout.
plugins/security/stackone-defender/skills/stackone-defender/SKILL.md Adds behavioral guidance for interpreting Defender hook flags and submitting FP feedback.
plugins/security/stackone-defender/skills/stackone-defender/references/integration-patterns.md Adds integration patterns/examples for using Defender programmatically.
plugins/security/stackone-defender/scripts/scan-tool-result.mjs Adds PostToolUse hook client: dependency self-install, daemon lifecycle, and IPC scanning.
plugins/security/stackone-defender/scripts/defender-feedback.mjs Adds feedback CLI that logs locally and optionally POSTs to a collector.
plugins/security/stackone-defender/scripts/defender-daemon.mjs Adds long-lived Unix-socket daemon hosting the ML classifier.
plugins/security/stackone-defender/scripts/defender-daemon.config.json Adds daemon configuration for tier settings and model path resolution.
plugins/security/stackone-defender/README.md Adds plugin-level README for Defender install/operation/feedback.
plugins/security/stackone-defender/package.json Adds plugin-local Node package manifest with ML dependencies.
plugins/security/stackone-defender/hooks/hooks.json Adds PostToolUse hook configuration invoking the scanner script.
plugins/security/stackone-defender/.claude-plugin/plugin.json Adds Defender plugin manifest metadata.
plugins/integrations/stackone-unified-connectors/skills/stackone-unified-connectors/SKILL.md Adds unified connector development “baseline skill” content.
plugins/integrations/stackone-unified-connectors/skills/stackone-unified-connectors/references/scope-patterns.md Adds reference guidance for scope modeling and trade-offs.
plugins/integrations/stackone-unified-connectors/skills/stackone-unified-connectors/references/pagination-patterns.md Adds reference guidance for pagination configuration and debugging.
plugins/integrations/stackone-unified-connectors/skills/stackone-unified-connectors/references/field-mapping-patterns.md Adds reference guidance for field/enum mapping patterns.
plugins/integrations/stackone-unified-connectors/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-unified-connectors/.claude-plugin/plugin.json Adds unified-connectors plugin manifest metadata.
plugins/integrations/stackone-platform/skills/stackone-platform/SKILL.md Adds platform operations skill content (API keys/accounts/logs/webhooks).
plugins/integrations/stackone-platform/skills/stackone-platform/references/api-categories.md Adds reference overview of StackOne API surfaces and category URLs.
plugins/integrations/stackone-platform/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-platform/.claude-plugin/plugin.json Adds platform plugin manifest metadata.
plugins/integrations/stackone-connectors/skills/stackone-connectors/SKILL.md Adds connectors discovery skill content (providers/actions/how to check docs).
plugins/integrations/stackone-connectors/skills/stackone-connectors/references/category-overview.md Adds category snapshot reference and documentation URL patterns.
plugins/integrations/stackone-connectors/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-connectors/.claude-plugin/plugin.json Adds connectors plugin manifest metadata.
plugins/integrations/stackone-connect/skills/stackone-connect/SKILL.md Adds Connect Sessions + Hub embedding skill content.
plugins/integrations/stackone-connect/skills/stackone-connect/references/hub-reference.md Adds Hub props/peer-deps reference with “may be outdated” disclaimer.
plugins/integrations/stackone-connect/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-connect/.claude-plugin/plugin.json Adds connect plugin manifest metadata.
plugins/integrations/stackone-cli/skills/stackone-cli/SKILL.md Adds custom connector development skill content.
plugins/integrations/stackone-cli/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-cli/.claude-plugin/plugin.json Adds CLI plugin manifest metadata.
plugins/integrations/stackone-agents/skills/stackone-agents/SKILL.md Adds agent integration skill content (SDKs/MCP/A2A guidance).
plugins/integrations/stackone-agents/skills/stackone-agents/references/integration-guide.md Adds decision tree for choosing integration method and framework conversions.
plugins/integrations/stackone-agents/README.md Adds plugin-level README with install and usage cues.
plugins/integrations/stackone-agents/.claude-plugin/plugin.json Adds agents plugin manifest metadata.
package.json Removes root package manifest (ML deps moved to Defender plugin).
package-lock.json Removes root lockfile (no longer a root Node package).
.release-please-config.json Switches to simple release type and tracks per-plugin versions + marketplace metadata.
.claude-plugin/plugin.json Removes bundled stackone plugin manifest (replaced by per-plugin manifests).
.claude-plugin/marketplace.json Renames marketplace and enumerates 7 plugins with local sources.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +20 to +22
## Feedback

Use `defender-feedback.mjs` to mark a recent flag as a false positive so the daemon's local cache adapts.
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in d672850 — confirmed the script only appends to ~/.claude/defender-feedback.jsonl (and best-effort POSTs to a collector when configured); the daemon does not read it back. README updated to match.

- defender README: clarify what defender-feedback.mjs actually does
  (appends to ~/.claude/defender-feedback.jsonl, best-effort POSTs to
  collector when configured) — it does NOT modify the running daemon's
  classifier state, as cubic and copilot both flagged
- root README: drop the non-existent `/plugin list @marketplace`
  command and point users at the interactive `/plugin` Discover tab

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0 issues found across 2 files (changes from recent commits).

Auto-approved: This PR restructures plugin metadata and file layout (renaming marketplace, splitting a bundled plugin into 7 independent ones) without touching any business logic, runtime code, or critical configurations; the actual skill content and defender scripts are preserved via git mv, and the manifest was
Re-trigger cubic

@glebedel glebedel merged commit c2827b5 into main May 15, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants