All skills
ccheney avatar

/slack-block-kit

@f71635f

Build or debug Slack Block Kit payloads for messages, modals, App Home, streaming responses, and Work Object unfurls. Use for block layout, elements, or interaction schemas; not plain Slack text formatting alone.

Use this Skill: https://skilld.dev/gh/ccheney/robust-skills/slack-block-kit

This session only. Nothing lands on disk.

referencesSTREAMING.md

≈748 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Streaming Agent Output

Use chat.startStream, chat.appendStream, and chat.stopStream for live AI responses (all require chat:write). Start requires channel and thread_ts—streamed messages should reply to a user request. Append always requires channel and the streaming message ts; send at least one of markdown_text or chunks under the official SDK contract described below. Stop requires channel and ts. When streaming to channels, start also requires recipient_user_id and recipient_team_id.

chunks (accepted by all three methods) can include:

  • markdown_text chunks — { "type": "markdown_text", "text": "standard Markdown" } (the chunk field is text, unlike the top-level markdown_text argument)
  • task_update chunks — flat id, title, status (pending/in_progress/complete/error), optional string details/output, and URL sources
  • plan_update chunks — flat title
  • blocks chunks — blocks array (max 50; extras are dropped with a warning)

task_update and plan_update chunk fields are limited to 256 characters.

Set task_display_mode on chat.startStream:

  • timeline (default): tasks appear individually in sequence
  • plan: tasks grouped in one plan; first task placement determines plan placement
  • dense: consecutive tool calls collapse into a single summarized task card

All three method references accept blocks chunks inside chunks. Only chat.stopStream accepts a top-level blocks argument, rendered below the finalized stream. Its separate 50-block limit is distinct from a streamed blocks chunk; do not infer that start/append accept top-level blocks. Rate limits: start/stop Tier 2 (20+/min), append Tier 4 (100+/min).

Streaming messages do not unfurl links.

Slack's current sources contradict one another on chat.appendStream: the Web API argument table marks markdown_text required and chunks optional; the official Node SDK interface marks both optional but states that either markdown_text or chunks is required; the Python SDK signature accepts both as optional; and the Developing an agent guide shows a chunks-only append. For SDK calls, provide at least one of markdown_text or chunks as the Node contract directs. Raw-HTTP callers should check the current method schema before omitting markdown_text and include it whenever that schema still marks it required. The guide also contains alternate nested chunk shapes, so validate chunk payloads against the current method reference and SDK model.

Sources

Source: SKILL.md on GitHub

No alerts15d4 checks · Risk SAFE
  • Gen Agent Trust Hub15d

    This skill is a technical reference for Slack Block Kit. It provides detailed API documentation, schema requirements, and security guidelines for building Slack payloads. No malicious code or risky patterns were found.

  • Socket15d

    No alerts

  • Snyk15d

    Risk: LOW · No issues

  • Runlayer7mo

    8 files scanned · No issues

Signed by skilld at f71635f. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 3 weeks ago.

Activeupdated 3 weeks ago

README badge

README badge for ccheney/robust-skills/slack-block-kit