Skip to content

feat: add Claude Code marketplace @slack that installs each release - #205

Merged
mwbrooks merged 4 commits into
mainfrom
mwbrooks-claude-marketplace
Nov 3, 2026
Merged

mwbrooks merged 4 commits into
mainfrom
mwbrooks-claude-marketplace

Conversation

@mwbrooks

@mwbrooks mwbrooks commented Nov 2, 2026

Copy link
Copy Markdown
Member

Summary

This pull request gives Claude Code developers an install path that tracks our releases, so they can get each new version as soon as it ships. Today the only path is the official directory listing, which picks up a new version on its own schedule.

/plugin marketplace add slackapi/slack-skills-plugin
/plugin install slack@slack

The slack marketplace in .claude-plugin/marketplace.json installs the plugin from the latest release tag, not from main, so nobody installs unreleased commits. The release PR moves the tag through scripts/sync_versions.py, beside the manifest versions it already syncs. The docs page adds this path under the Claude Code install, with the Enable auto-update step and a note to install from one marketplace only.

Testing

  • claude plugin validate ./ passes on Claude Code 2.1.309, with only the existing icon and privacyPolicyUrl directory warnings.
  • In a throwaway CLAUDE_CONFIG_DIR, claude plugin marketplace add slackapi/slack-skills-plugin#mwbrooks-claude-marketplace then claude plugin install slack@slack installed 1.6.0 at 9f61e54, the v1.6.0 tag, with all 14 skills and the MCP server.
  • scripts/sync_versions.py on a copy with package.json at 1.7.0 set the entry's ref to v1.7.0, and leaves it unchanged at 1.6.0.
  • make test-unit (28 passed) and make lint pass.

Notes

  • Claude Code turns auto-update off by default for every marketplace outside Anthropic's own, and a marketplace can't turn it on for users, so the docs walk through the toggle.
  • The marketplace and plugin are both named slack, which matches the Codex install (slack@slack).

Requirements

  • I've read and understood the Contributing Guidelines and have done my best effort to follow them.
  • I've read and agree to the Code of Conduct.
  • I've run make test and the tests pass. (Unit tests pass. The eval tests need GEMINI_API_KEY and SLACK_MCP_TOKEN, which weren't set.)

@mwbrooks mwbrooks added enhancement New feature or request semver:minor Changes trigger a minor version bump labels Nov 2, 2026
@changeset-bot

changeset-bot Bot commented Nov 2, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 76c7b38

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
slack Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Comment thread scripts/sync_versions.py
write_version(CLAUDE_PLUGIN_PATH, version)
write_version(CURSOR_PLUGIN_PATH, version)
write_version(CODEX_PLUGIN_PATH, version)
write_marketplace_ref(CLAUDE_MARKETPLACE_PATH, version)

@mwbrooks mwbrooks Nov 2, 2026 •

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

note: write_version sets a top-level version, but the marketplace pins a release with the nested source.ref, which takes the tag (v1.7.0). Pinning to the tag means new installs get the latest release, never unreleased commits on main.

/plugin install slack@claude-plugins-official
```

To get each release as soon as it ships, install from the plugin's own marketplace in its [GitHub repository](https://github.com/slackapi/slack-skills-plugin) instead:

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

question: @lukegalbraithrussell Should this second Claude Code install path sit in a collapsed <details> section? It would keep the official one-line install as the obvious path, and the node-slack-sdk pages already use <details> on docs.slack.dev (e.g. "Initializing without a token" in docs/english/web-api.md). The tradeoff is that skimmers are less likely to spot it. Happy to go either way!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I say keep it outside a <details>!

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Sounds good, keeping it expanded. Thanks @lukegalbraithrussell!

@mwbrooks mwbrooks self-assigned this Nov 2, 2026
@mwbrooks
mwbrooks marked this pull request as ready for review November 2, 2026 23:09
@mwbrooks
mwbrooks requested a review from a team as a code owner November 2, 2026 23:09
Comment thread docs/slack-skills-plugin.md Resolved
Co-authored-by: Luke Russell <31357343+lukegalbraithrussell@users.noreply.github.com>

@lukegalbraithrussell lukegalbraithrussell left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

docs are good-to-go

@zimeg zimeg added the area:claude Claude Code surface: .claude-plugin manifest, marketplace listing, and install paths label Nov 3, 2026

@zimeg zimeg left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

🎁 @mwbrooks LGTM! Pinning the marketplace to the release tag and moving it with sync_versions.py keeps this path on releases only. Great change to land!

@mwbrooks

mwbrooks commented Nov 3, 2026

Copy link
Copy Markdown
Member Author

Thanks @zimeg for the review and @lukegalbraithrussell for the docs suggestion! 🙇

@mwbrooks
mwbrooks merged commit 8d24df5 into main Nov 3, 2026
7 checks passed
@mwbrooks
mwbrooks deleted the mwbrooks-claude-marketplace branch November 3, 2026 20:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:claude Claude Code surface: .claude-plugin manifest, marketplace listing, and install paths enhancement New feature or request semver:minor Changes trigger a minor version bump

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants