Agent skill

Slackbot Builder

by swyxio in swyxio/skills

Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering…

MITAuto-check passedWriting & Content

Install Slackbot Builder

skills CLI
$ npx skills add swyxio/skills --skill slackbot-builder -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install swyxio/skills slackbot-builder --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/swyxio/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/slackbot-builder .claude/skills/slackbot-builder && rm -rf skills-src

Use ~/.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/

Facts

Skill name
slackbot-builder
GitHub stars
175
Token cost
~2.1k tokens
SKILL.md length
800 words
Files
16
Skills in repo
89
Repo updated
First seen
Licence
MIT

At a glance

Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering…

  • Broad Slack architecture audits
  • SKILL.md covers The one rule that survives…, The ladder, Strong opinions and Implementation bias: start…
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Changes to these Slack contracts

What it does

Slackbot Builder is an agent skill from swyxio/skills. Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering correctness (Markdown, rich text, links and citations), durable agent execution, multi-workspace operation, or Slack-specific delivery of typed follow-up controls and privacy-bounded execution receipts. Use for new Slack bots, broad Slack architecture audits, or changes to these Slack contracts. Do not use for deployment…

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 16 other files (for example `agents/openai.yaml`, `analytical-visualizations.md` and `answer-quality-and-receipts.md`).

It sits in Writing & Content, covering Chatbots and conversational support, UI design and Visual regression testing. It works with Slack. The repository describes itself as: Agent skills for Claude Code and other AI agents. The licence is MIT.

When your agent uses it

  • Broad Slack architecture audits
  • Changes to these Slack contracts
  • Standalone visual testing
  • Unrelated copywriting

Example prompts

  • “/slackbot-builder”

What it can do on your machine

Read from SKILL.md and the folder at commit 038ef34. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Slackbot Builder loads about 2.1k tokens when it runs. Until then it costs about 181 tokens; SKILL.md has 800 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~181
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

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.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

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.

SKILL.md

The full file from swyxio/skills at commit 038ef34, republished under its MIT licence (© swyxio). 800 words, ~2,064 tokens.

Download SKILL.mdSave it as .claude/skills/slackbot-builder/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.
name
slackbot-builder
description
Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering correctness (Markdown, rich text, links and citations), durable agent execution, multi-workspace operation, or Slack-specific delivery of typed follow-up controls and privacy-bounded execution receipts. Use for new Slack bots, broad Slack architecture audits, or changes to these Slack contracts. Do not use for deployment, standalone visual testing, unrelated copywriting or visual design, general answer quality, channel-agnostic transcript or receipt schemas, core suggestion generation, or merely operating Slack.
license
MIT
metadata.author
swyx
metadata.version
2.10
metadata.category
slack
metadata.compatibility
Slack Events API, Slack Web API, serverless or long-running workers
metadata.tags
slack, bot, events-api, block-kit, modals, file-uploads, image-generation, durable-execution, workflows, cloudflare-workers, hono, kv, observability, tracing…

Slackbot Builder

Use this skill when creating or hardening Slack apps, Slack bots, agent-in-Slack workflows, or production Slack integrations.

This skill has two routing modes:

  • Lifecycle work: use the maturity ladder for greenfield builds, broad audits, or upgrades that change the bot's operating level.
  • Bounded capability work: load only the reference for the named behavior and any lower-level contract the change actually touches. Do not read the whole maturity ladder for a search bug, rendering fix, or isolated tool integration.

The one rule that survives every level

Keep Slack as a thin adapter: verify and acknowledge requests, acquire Slack-scoped context, call the Slack Web API, render bounded Slack UI, and delegate application behavior to a channel-agnostic core.

The ladder

LevelThemeWhat you addReference
L0Skeleton — it responds/health, /events, signature verify, url_verification, fast 200level-0-skeleton.md
L1Responsive Q&A (MVP) — a working bot3s ack + async work, event_id dedupe, ignore bots, strip mentions, threaded chat.postMessage, thin fetch wrappers, JSON logs + trace idlevel-1-mvp.md
L2Context-aware — feels conversationalshared thread sessions, root + newest causally-prior tail, merged persisted state, DMs, empty-mention nudge, 👀 reaction + assistant.threads.setStatuslevel-2-context.md
L3Interactive / agentic — acts, human in the loop/interactions (signed), state-aware approvals that resolve in place, remaining-draft bulk actions, dry-run validation, stateful routing + owned-resource resolution, rich/actionable drafts, file/media controls + settings modal, live status streaminglevel-3-interactive.md
L4Native agent surface — first-class agent UXAgents & AI Apps container, assistant_thread_started greeting + suggested prompts, thread titles, native text streaming (chat.startStream/appendStream/stopStream) mapping your emit stream to a typed answer + tool-call timeline, graceful fallback to the message flowlevel-4-native-agent.md
L5Hardened — won't page you at 2amper-thread durable serialization, long-running signed callbacks + durable URL, App Home prefs/dashboard, rate-limit backoff + ok:false handling, sanitized errors, storage TTLs, service-user attribution + audit, full observability, security/testing checklistslevel-5-hardened.md
L6Multi-surface / scale — polished platformone core across web/Slack/cron, multi-workspace/tenancy, queues + backpressure for heavy work, target caching, usage analytics + answer-quality feedback, break-glass/degraded configlevel-6-scale.md
Specialized contractReference
Message formatting, Markdown conversion, clickable links, or citation renderingmessage-formatting.md
Slack search, files, PDFs, or requester-scoped retrievalsearch-and-retrieval.md
Native charts/tables or hosted analytical artifactsanalytical-visualizations.md
Mixed Slack evidence plus deterministic application/provider dataRead both search-and-retrieval.md and analytical-visualizations.md
Slack rendering of typed follow-up controls or execution receiptsanswer-quality-and-receipts.md
Generated images and iteration controlsimage-generation.md
Thread persistence, ordering, resource routing, or mutationsstateful-agent-workflows.md
Cloudflare ingress, dispatch, dedupe, or durable acceptancecloudflare-durable-ingress.md

When diagnosing an existing bot, inspect its current code and tests before choosing a level. A production bot can have an L2 retrieval defect without the task becoming an L5 hardening project.

Show full SKILL.md (381 more words)Show less

Strong opinions

Universal invariants — true at every level (the level-specific opinions live in their level files so they load only when needed):

  • Verify every request from the raw body before parsing, including URL verification and interactive requests.
  • Acknowledge within Slack's deadline. Authenticate, deduplicate, durably dispatch slow work, and guarantee a terminal answer or sanitized error.
  • Ignore bot-authored events and preserve event/message idempotency.
  • Treat workspace + channel + thread_ts as the conversation boundary. Load only causally prior messages, paginate before trimming, and preserve file/image-only context when the feature is multimodal.
  • Serialize stateful or mutating turns per thread through shared storage.
  • Keep application behavior and canonical state outside the Slack adapter; cards and reactions are presentation, not authority.
  • Construct Block Kit from validated typed data. Keep top-level message text useful for notifications and accessibility; use native table blocks rather than Markdown tables. For text rendering, choose an explicit supported format and follow message-formatting.md; model Markdown is not interchangeable with Slack mrkdwn.
  • Disable both link and media unfurls when replies should not generate previews.
  • Treat cosmetic enrichment such as reactions and status updates as best effort. Fail closed when identity, authorization, or required evidence cannot be established.
  • Record structured safe telemetry for ingress, provider calls, fallbacks, and terminal delivery. Never silently substitute a fallback. Requester-visible receipts expose only allowlisted fields, never hidden reasoning, raw private context, or unrestricted provider payloads.

Level-specific opinions (full rationale + war stories in the linked file): mutations require a human, inline flags configure the core, route on the raw request not the context, interactive actions ack the click instantly + batch ops show a started state and terminal summary (plus incremental progress when practical), artifacts get iterate-button + settings-modal affordances → L3; instrument every model call (not just text), slow work runs in durable execution not a background promise, every entry surface protected equally, every job ends in a guaranteed result-or-error delivered by the right surface mechanism → L5; image-gen specifics → image-generation.md.

Implementation bias: start boring

TypeScript; a small HTTP framework (Hono, Fastify, Express, or native route handlers); shared KV/Redis/Postgres for state; raw Slack Web API fetch wrappers unless an SDK is already established; a queue or platform-native background execution for work over 1–2s; a web page for long output. Add slash commands, modals, Socket Mode, or workflow steps only when the product need is clear.

© swyxio, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 15 other files in slackbot-builder of swyxio/skills.

  • SKILL.md
  • agents/openai.yaml
  • analytical-visualizations.md
  • answer-quality-and-receipts.md
  • cloudflare-durable-ingress.md
  • image-generation.md
  • level-0-skeleton.md
  • level-1-mvp.md
  • level-2-context.md
  • level-3-interactive.md
  • level-4-native-agent.md
  • level-5-hardened.md
  • level-6-scale.md
  • message-formatting.md
  • search-and-retrieval.md
  • stateful-agent-workflows.md

Open the folder on GitHubat commit 038ef34

Compare with similar skills

Slackbot Builder 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.

Slackbot Builder compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Slackbot Builder this skillswyxio/skills175—~2.1kAutomated safety check: PassMIT
Biomedical Claim Checkerhh-health-AI/healthcare-equity101—~741Automated safety check: PassMIT
62 Marketing Review Globalminhnv0807/ai-business-skills610—~2.5kAutomated safety check: PassMIT
Content Researchnicepkg/ai-workflow285—~3.7kAutomated safety check: PassMIT
Source Triangulationmohitagw15856/pm-claude-skills1.4k—~1.4kAutomated safety check: PassMIT
Social Media Pro Maxcriptogus/agent-evolve-network288—~1.6kAutomated safety check: PassCustom licence

Similar skills

  • Biomedical Claim Checker

    hh-health-AI/healthcare-equity

    A skill your agent uses to audit whether medical or scientific claims are supported by their citations, verify references, assess AI-generated biomedical text or identify overstatement in a press…

    101 GitHub stars~741 tokensUpdated today
    Writing & ContentAuto-check passed
  • 62 Marketing Review Global

    minhnv0807/ai-business-skills

    A skill your agent uses when a leader must review or approve TEXT-based team output before it ships — content briefs checked for angle, pillar, and CTA, ad copy and creative checked for…

    610 GitHub stars~2.5k tokensUpdated 26 days ago
    Writing & ContentAuto-check passed
  • Content Research

    nicepkg/ai-workflow

    Research-first content creation optimized for both human readers and AI search engines (Claude, ChatGPT, Perplexity, Gemini).

    285 GitHub stars~3.7k tokensUpdated 8 mo ago
    Writing & ContentAuto-check passed
  • Source Triangulation

    mohitagw15856/pm-claude-skills

    Verify a claim before repeating it — the independent-sources test (three citations of one press release is one source), the provenance trace to the original, and the confidence grading that…

    1.4k GitHub stars~1.4k tokensUpdated today
    Writing & ContentAuto-check passed
  • Social Media Pro Max

    criptogus/agent-evolve-network

    State-of-the-art viral content + social design intelligence.

    288 GitHub stars~1.6k tokensUpdated today
    Writing & ContentAuto-check passed
  • Teams App Developer

    microsoft/work-iq

    Official

    Build, test, and deploy code-based Teams apps using the M365 Agents Toolkit CLI.

    1k GitHub stars~1.8k tokensUpdated 2 days ago
    DevOps & CloudAuto-check: notes

More from swyxio/skills

All 89 skills in this repo
  • Programmatic Agents

    swyxio/skills

    Run a selected coding-agent CLI programmatically, with latency, error, usage, cost, and trace logging.

    175 GitHub stars~2.2k tokensUpdated 4 days ago
    Auto-check passed
  • Design, implement, audit, or refresh protected username and handle namespaces for public products.

    175 GitHub stars~1.1k tokensUpdated 4 days ago
    Auto-check passed
  • New Mac Setup

    swyxio/skills

    Fully automated new Mac setup for fullstack web developers and AI engineers.

    175 GitHub stars~4.3k tokensUpdated 4 days ago
    Auto-check passed
  • Youtube API

    swyxio/skills

    Manage YouTube videos programmatically via the YouTube Data API v3 — upload video files, upload custom thumbnails, update video metadata (titles, descriptions, tags), and query video/channel info…

    175 GitHub stars~2.2k tokensUpdated 4 days ago
    Auto-check passed
  • Batch YouTube Studio upload workflow for videos sourced from Airtable, Google Drive, Loom, YouTube, or local files.

    175 GitHub stars~1.5k tokensUpdated 4 days ago
    Auto-check: warnings
  • Reconstruct and visually analyze paired agent, game, or policy trajectories to determine whether changed actions produced their intended effects.

    175 GitHub stars~1.8k tokensUpdated 4 days ago
    Auto-check passed

Works with

Questions about Slackbot Builder

What does Slackbot Builder do?

Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering…. Slackbot Builder is an agent skill from swyxio/skills. Design or harden Slack bot transport and interaction architecture: signed Events API ingress, fast acknowledgement, idempotency, causal thread context, Block Kit actions, message rendering correctness (Markdown, rich text, links and citations), durable agent execution, multi-workspace operation, or Slack-specific delivery of typed follow-up controls and privacy-bounded execution receipts.

When should I use Slackbot Builder?

Slackbot Builder fits situations like: broad Slack architecture audits; changes to these Slack contracts; standalone visual testing; unrelated copywriting.

How do I install Slackbot Builder in Claude Code?

Run `npx skills add swyxio/skills --skill slackbot-builder -a claude-code`. Or copy the skill folder (slackbot-builder in swyxio/skills) into .claude/skills/slackbot-builder in your project. Claude Code loads it when a task matches its description.

How do I install Slackbot Builder in Codex?

Run `npx skills add swyxio/skills --skill slackbot-builder -a codex`. Or copy the skill folder (slackbot-builder in swyxio/skills) into .agents/skills/slackbot-builder in your project. Codex loads it when a task matches its description.

Can I use Slackbot Builder in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add swyxio/skills --skill slackbot-builder -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/slackbot-builder, .gemini/skills/slackbot-builder, .github/skills/slackbot-builder and .opencode/skills/slackbot-builder in your project.

What does Slackbot Builder need to run?

SKILL.md names no scripts, command-line tools or credentials: Slackbot Builder is instructions for the agent only.

Does Slackbot Builder access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Slackbot Builder safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Slackbot Builder use?

Slackbot Builder is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Slackbot Builder use?

About 2.1k tokens (SKILL.md is roughly 8.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Slackbot Builder?

Skills that share tags, products or a category with Slackbot Builder: Biomedical Claim Checker (hh-health-AI/healthcare-equity, 101 stars), 62 Marketing Review Global (minhnv0807/ai-business-skills, 610 stars), Content Research (nicepkg/ai-workflow, 285 stars) and Source Triangulation (mohitagw15856/pm-claude-skills, 1.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Slackbot Builder?

swyxio (a GitHub user) maintains it in swyxio/skills, which has 175 GitHub stars. The repository holds 89 skills in this directory. The repository was last updated on October 5, 2026.

Source: swyxio/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.