# block-kit

> Claude/Codex skill by [@slackapi](https://omgskills.com/library/slackapi/index.md) · 154 stars · Updated 2026-10-22

Use 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, interactive buttons or menus, or modifying existing Block Kit JSON. Also trigger on any Slack UI component (sections, actions, inputs, headers, alerts, tables, carousels), the words "blocks" or "Block Kit Builder", a request to preview rendered blocks, or pasted JSON like "type": "section". Validates via the blocks.validate API method.

Tags: claude-code, codex, cursor, mcp, skills, slack

## Install

```sh
git clone https://github.com/slackapi/slack-skills-plugin /tmp/slack-skills-plugin && ln -s /tmp/slack-skills-plugin/skills/block-kit ~/.claude/skills/block-kit
```

## From README

Block Kit Help the developer build a rich Block Kit layout. If $0 is exactly message, modal, or home-tab, treat it as the target surface. Otherwise (including if it's empty or any other value), ignore it and determine the surface in Step 1. This skill walks through surface selection, layout planning, JSON generation, and validation. Block types, elements, and fields come from the live docs (see Source of Truth below) — discover them and read each component's schema there, never from memory. Common Block Kit mistakes (and why): A few errors recur often enough to flag up front. Most others are caught by blocks.validate in Step 5, so lean on validation rather than memorizing rules. "type": "text" is not a thing. Text is a composition object: { "type": "plaintext", "text": "..." } or { "type": "mrkdwn", "text": "..." }. markdown is a block type, not a text type. A markdown block holds standard markdown; text objects inside other blocks use mrkdwn (see mrkdwn vs.

## Links

- HTML page: https://omgskills.com/library/slackapi/slack-skills-plugin/skills/block-kit/
- GitHub: https://github.com/slackapi/slack-skills-plugin
- Author: [@slackapi](https://omgskills.com/library/slackapi/index.md)

## More from this repo

- [create-slack-app](https://omgskills.com/library/slackapi/slack-skills-plugin/skills/create-slack-app/index.md) — Used when a developer wants to create, scaffold, or bootstrap a new Slack app or agent from scratch with the Slack CLI.
   - [@slackapi](https://omgskills.com/library/slackapi/index.md) · 154 stars
- [deploy-slack-app](https://omgskills.com/library/slackapi/slack-skills-plugin/skills/deploy-slack-app/index.md) — Used when a developer wants to deploy, host, or run a Slack app somewhere it keeps working after the local process...
   - [@slackapi](https://omgskills.com/library/slackapi/index.md) · 154 stars
- [test-slack-app](https://omgskills.com/library/slackapi/slack-skills-plugin/skills/test-slack-app/index.md) — Used when a developer wants to test, try out, smoke-test, verify, or confirm that a Slack app built with the Slack CLI...
   - [@slackapi](https://omgskills.com/library/slackapi/index.md) · 154 stars
