acp-router
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode,…
Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.
$ npx -y skills add openclaw/openclaw --skill block-kit --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/block-kitContext preview
The summary Claude sees to decide when to auto-load this skill.
Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON.
name: block-kit
description: "Use proactively for structured or interactive Slack replies, and when asked to author or validate native Slack Block Kit JSON."
metadata: { "openclaw": { "emoji": "🧱", "requires": { "config": ["channels.slack"] } } }
allowed-tools: ["message"]Make useful Slack replies feel native. When structure or one-click follow-up improves the outcome, send a rich message without waiting for the user to ask for Block Kit.
Use a `presentation` when the reply has at least one of these shapes:
Use plain text for short answers and casual conversation where structure adds no value.
For a reply in Slack, call the `message` tool with `action: "send"` and a portable `presentation`. The Slack plugin renders it as native Block Kit. Use the exact schema exposed by the current tool; supported block types can include `text`, `context`, `divider`, `buttons`, `select`, `chart`, and `table`.
A control is complete only when its value is self-contained enough for the next agent turn to understand and act on. When an interaction returns, acknowledge the choice visibly and continue the requested workflow.
When the user is building a Slack app or explicitly requests raw Block Kit JSON, read [the adapted official Block Kit guide](references/official-block-kit.md) in full. For common message, modal, and App Home layouts, also read [the official patterns](references/official-common-patterns.md).
Follow the adapted guide's live-documentation and `blocks.validate` workflow for native JSON. Do not pass native Slack blocks to OpenClaw's `presentation` field; the plugin owns that conversion.
OpenClaw is an open-source AI assistant that runs on your own computer and meets you in the channels you already use: Discord, iMessage, Slack, Teams, Telegram, WhatsApp, and 20+ more, plus native apps for macOS, iOS, Android, Windows, and Linux.
Repo: openclaw/openclaw
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode,…
Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows,…
Present hosted widget documents on a connected macOS panel and control panel visibility or…
Use when asked to open, run, test, or show an app in Crabbox, including native desktops, web…
Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both)…
Discord messaging workflows through OpenClaw's message tool.