Chat SDK
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
A skill your agent uses when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works, by running it in a…
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install slackapi/slack-skills-plugin test-slack-app --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/test-slack-app .claude/skills/test-slack-app && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .claude/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-appType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install slackapi/slack-skills-plugin test-slack-app --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/test-slack-app .agents/skills/test-slack-app && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .agents/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install slackapi/slack-skills-plugin test-slack-app --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/test-slack-app .cursor/skills/test-slack-app && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .cursor/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/slackapi/slack-skills-plugin.git --path skills/test-slack-app--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install slackapi/slack-skills-plugin test-slack-app --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/test-slack-app .gemini/skills/test-slack-app && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .gemini/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install slackapi/slack-skills-plugin test-slack-appInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/test-slack-app .github/skills/test-slack-app && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .github/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install slackapi/slack-skills-plugin test-slack-app --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/slackapi/slack-skills-plugin.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/test-slack-app .opencode/skills/test-slack-app && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "test-slack-app" agent skill from https://github.com/slackapi/slack-skills-plugin/tree/main/skills/test-slack-app into .opencode/skills/test-slack-app/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-slack-app", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
test-slack-appA skill your agent uses when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works, by running it in a…
Test Slack App is an agent skill from slackapi/slack-skills-plugin, published by the product's own GitHub organization. Use when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works, by running it in a developer sandbox or a Free Team, never a workspace with real users, with slack run and exercising its real slash commands, shortcuts, events, actions, modals, App Home, and assistant surfaces. Also covers slack doctor and slack manifest validate health checks before hands-on testing.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering QA and bug reports and Hooks and plugins. It works with Slack. The repository describes itself as: Claude Code, Codex, Cursor, and npx skills plugin that enables your AI tools with a Slack MCP Server and Slack Developer Skills. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 64c3f33. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmpythonFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
docs.slack.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Test Slack App loads about 2.4k tokens when it runs. Until then it costs about 120 tokens; SKILL.md has 1,387 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
EL_VAR> debug` stores it in the project `.env` that `slack run` reads; for a plain Bolt app, set it in the environment oapp settings) in the environment or the `.env` file the app reads.Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from slackapi/slack-skills-plugin at commit 64c3f33, republished under its MIT licence (© slackapi). 1,387 words, ~2,372 tokens.
.claude/skills/test-slack-app/SKILL.md (or your agent's skills folder).Help a developer confirm that a Slack app they already built actually works. This is the last step of the build loop, after the slack:create-slack-app skill scaffolds an app and the slack:slack-cli skill runs it.
The approach is simple and safe:
This is guided manual checking, not an automated test suite: you drive the setup and tell the developer what to type or click, and they confirm what they see. It works best for apps managed by the Slack CLI; there is a best-effort path for plain Bolt apps in Step 2.
Use the slack:slack-cli skill (Step 1: Detect the Slack CLI) to check whether the public Slack CLI is installed and resolve its command name. The fingerprint check, alias fallback, and install instructions all live there; do not duplicate them here. Refer to the resolved command as SLACK_CMD throughout. If the CLI is not installed, guide the developer through that same step to install it, since running the app needs it.
Testing belongs in a workspace nobody is working in: a developer sandbox for preference, or a Free Team the developer created for this. Never a workspace with real coworkers in it.
slack:slack-docs skill to fetch and summarize https://docs.slack.dev/tools/developer-sandboxes.md, so the recommendation always reflects the current docs rather than a copy that drifts out of date. Tell the developer that Slack recommends a sandbox for building and testing apps.SLACK_CMD auth list for the authenticated workspaces and their team IDs, and, from the project directory, SLACK_CMD app list for the apps already installed and their IDs.slack:create-slack-app skill (Step 3: Choose Where to Install the App), which owns the ranked targets, the sandbox list / sandbox create flow, and the Developer Program links. Either path finishes in the browser, so have the developer come back here once the workspace exists and they have logged into it.Catch obvious setup problems with the CLI's own validation before the slower hands-on checks:
SLACK_CMD doctor: checks the CLI, language runtime, and authentication.SLACK_CMD manifest validate: run from the project directory if the app has a manifest, to confirm the app configuration is well-formed.Surface anything these flag before moving on.
Whichever path you use below, first turn the app's log level up to debug so you have the most context while testing. Prefer a way that leaves the developer's code untouched: read the logger setup to see whether it reads a log-level environment variable (some templates wire one such as SLACK_LOG_LEVEL or LOG_LEVEL). If it does, set that variable instead of editing source. For a CLI-managed app, SLACK_CMD env set <LOG_LEVEL_VAR> debug stores it in the project .env that slack run reads; for a plain Bolt app, set it in the environment or .env the app already reads. Only when the logger reads no such variable should you edit the source, finding where the log level is set and switching it to debug for this run.
Follow Step 6: Running an App Locally (slack run) in the slack:slack-cli skill to start the local dev server in the background. This also installs the app into the target workspace, which matters for a fresh sandbox or Free Team where nothing is installed yet. Once it is running, file changes auto-reload.
If the app is a plain Bolt app started with node or python rather than the Slack CLI, this skill can still help, but the run path is best-effort and not the primary flow:
.env file the app reads.connections:write; adding tokens to an app scaffolded for HTTP will not deliver events.npm start or python app.py) and watch its logs.Say plainly that this path is best-effort, and that the smoothest experience comes from a CLI-managed app.
This is the heart of the skill. Do not hand the developer a generic checklist. Ground every step in what this app actually registers.
Read the app's listener code and list the interactions it registers. Depending on the framework these look like:
/ship.app_mention, message, or reaction_added.view_submission).app_home_opened handler or a published Home tab.assistant_thread_started handler, common in the agent templates.Name the concrete identifiers you find (the actual command and callback names), not placeholders.
For every registered interaction, give the developer a concrete step and what a working app should do in response. A few spots are non-obvious, so spell them out:
/ship) in a channel or DM in the test workspace → expect the response the handler sends.+ button in the message composer, depending on your client) and pick it → expect the modal or message it opens.⋯ menu), pick the shortcut → expect its response.app_mention → @-mention the app in a channel it belongs to → expect its reply.view_submission) → submit the modal → expect the confirmation or side effect.While the developer interacts, help them confirm it is working:
slack run, watch its logs (ask "show me the output from slack run") to confirm events arrive and to read any errors.slack:block-kit and slack:slack-api skills to dig into the payload or method.Close with a short summary: what you and the developer confirmed working, and what they should eyeball themselves. Remember this is manual checking: you are helping the developer watch the app respond, not producing an automated pass or fail.
SLACK_CMD is a placeholder: always substitute the actual command name resolved in Step 1a.slack:create-slack-app skill; for raw CLI mechanics, use the slack:slack-cli skill; for message or Block Kit formatting, use the slack:slack-messaging and slack:block-kit skills.© slackapi, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/test-slack-app of slackapi/slack-skills-plugin.
Open the folder on GitHubat commit 64c3f33
Test Slack App next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Test Slack App this skillslackapi/slack-skills-plugin | 145 | — | ~2.4k | Automated safety check: Notes | MIT | |
| Chat SDKdatabuddy-analytics/Databuddy | 1.2k | — | ~2.6k | Automated safety check: Pass | AGPL-3.0 | |
| Slack Bot Builderdavila7/claude-code-templates | 32k | 5 repos | ~2.2k | Automated safety check: Pass | MIT | |
| Slack Bot Buildersickn33/agentic-awesome-skills | 47k | 2 repos | ~426 | Automated safety check: Pass | MIT | |
| Agent Browser CLIvercel-labs/agent-browser | 44k | 24 repos | ~864 | Automated safety check: Pass | Apache-2.0 | |
| Codex Plugin QAcode-yeongyu/oh-my-openagent | 70k | 1 repos | ~1.9k | Automated safety check: Pass | Custom licence |
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
davila7/claude-code-templates
Build Slack apps using the Bolt framework across Python, JavaScript, and Java.
sickn33/agentic-awesome-skills
Build Slack apps using the Bolt framework across Python, JavaScript, and Java.
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking…
code-yeongyu/oh-my-openagent
Tests the omo Codex plugin in an isolated CODEX_HOME with a local mock model, proving hooks fired through app-server notifications without touching ~/.codex.
Mentra-Community/MentraOS
Investigate Mentra App bug reports and feedback from a reports Slack link or rep report ID.
slackapi/slack-skills-plugin
A skill your agent uses when a developer wants to build or validate Block Kit layouts for Slack messages, modals, or Home tabs: message layouts, modals/forms/dialogs, Home tab interfaces…
slackapi/slack-skills-plugin
A skill your agent uses when a developer wants to create, scaffold, or bootstrap a new Slack app or agent from scratch with the Slack CLI.
slackapi/slack-skills-plugin
A skill your agent uses when a developer asks which Slack Web API method does something, needs a method's OAuth scopes or token type, wants to call or test a family.method endpoint…
slackapi/slack-skills-plugin
A skill your agent uses when answering a conceptual or how-to question about Slack platform features, or when asked to look up, fetch, or summarize a docs.slack.dev page, including a pasted…
slackapi/slack-skills-plugin
A skill your agent uses when writing, drafting, scheduling, or improving a Slack message, announcement, or reply sent via the Slack MCP tools (slacksendmessage, slacksendmessagedraft…
slackapi/slack-skills-plugin
A skill your agent uses when locating messages, files, channels, or people across Slack, or gathering context before answering, with the search MCP tools (slacksearchpublic…
Works with
Categories
A skill your agent uses when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works, by running it in a…. Test Slack App is an agent skill from slackapi/slack-skills-plugin, published by the product's own GitHub organization. Use when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works, by running it in a developer sandbox or a Free Team, never a workspace with real users, with slack run and exercising its real slash commands, shortcuts, events, actions, modals, App Home, and assistant surfaces.
Test Slack App fits situations like: A developer wants to test; confirm that a Slack app built with the Slack CLI (or a plain Bolt app) actually works; by running it in a developer sandbox; never a workspace with real users.
Run `npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a claude-code`. Or copy the skill folder (skills/test-slack-app in slackapi/slack-skills-plugin) into .claude/skills/test-slack-app in your project. Claude Code loads it when a task matches its description.
Run `npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a codex`. Or copy the skill folder (skills/test-slack-app in slackapi/slack-skills-plugin) into .agents/skills/test-slack-app in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add slackapi/slack-skills-plugin --skill test-slack-app -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-slack-app, .gemini/skills/test-slack-app, .github/skills/test-slack-app and .opencode/skills/test-slack-app in your project.
Going by SKILL.md and its folder, Test Slack App needs the command-line tools its instructions call (npm and python). Our summary lists: Python 3.
SKILL.md names 1 domain. As links in the text: docs.slack.dev. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Test Slack App is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Test Slack App: Chat SDK (databuddy-analytics/Databuddy, 1.2k stars), Slack Bot Builder (davila7/claude-code-templates, 32k stars), Slack Bot Builder (sickn33/agentic-awesome-skills, 47k stars) and Agent Browser CLI (vercel-labs/agent-browser, 44k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
slackapi (a GitHub organization, an official publisher) maintains it in slackapi/slack-skills-plugin, which has 145 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: slackapi/slack-skills-plugin on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.