-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Platform
slack
Action ID
conn_mod_def::GJ7H84zBlaI::BCfuA16aTaGVIax5magsLA
Action Name
Send a Message to a Channel
What's wrong?
Other
Description
The knowledge documents text as the primary way to send message content, with blocks listed as an optional field. In practice, any AI agent sending structured data (reports, comparisons, audit results) via plain text produces poorly formatted messages because Slack's mrkdwn is NOT standard markdown.
Key issues AI agents hit:
1. Markdown tables don't render in Slack
AI agents generating reports naturally produce markdown tables. Slack doesn't support tables — they render as broken monospace text. The knowledge should explicitly warn about this.
2. Slack mrkdwn ≠ Markdown — differences not documented
| Feature | Standard Markdown | Slack mrkdwn |
|---|---|---|
| Bold | **bold** |
*bold* |
| Italic | *italic* |
_italic_ |
| Tables | Supported | Not supported |
Headings (#) |
Supported | Not supported |
| Links | [text](url) |
<url|text> |
| Strikethrough | ~~text~~ |
~text~ |
An AI agent that doesn't know this will use **bold** (which Slack renders literally) and markdown tables (which break).
3. Block Kit should be the recommended approach for rich messages
The knowledge should recommend blocks as the primary content delivery method for structured messages, with text as the notification fallback. Block Kit supports:
headerblocks — large text for report titlessectionblocks withfields— 2-column layouts (replaces tables)dividerblocks — visual separation between sectionscontextblocks — small metadata text- Emoji shortcodes for visual indicators (:white_check_mark:, :x:, :warning:)
Suggested additions to knowledge:
- Add a "Formatting Guide" section that documents Slack mrkdwn vs Markdown differences
- Add a "Rich Messages with Block Kit" section showing a practical example:
{
"channel": "C123ABC456",
"text": "Report summary (fallback for notifications)",
"blocks": [
{
"type": "header",
"text": { "type": "plain_text", "text": "Weekly Report" }
},
{
"type": "section",
"fields": [
{ "type": "mrkdwn", "text": "*Metric A*\n:white_check_mark: 95%" },
{ "type": "mrkdwn", "text": "*Metric B*\n:warning: 72%" }
]
},
{
"type": "divider"
},
{
"type": "section",
"text": { "type": "mrkdwn", "text": "*Action Items*\n1. Fix the thing\n2. Ship the feature" }
}
]
}- Add a warning: "Do NOT use markdown table syntax (
| col |) — Slack does not render tables. Usesectionblocks withfieldsfor side-by-side data instead."
How we discovered this
Building One CLI flow templates that post analysis reports to Slack. The SEO competitive analysis report contained markdown tables comparing 4 sites — rendered as unreadable broken text in Slack. After switching to Block Kit with header blocks, section fields, dividers, and emoji indicators, the same data rendered cleanly with proper structure.
Source
- Slack Block Kit reference: https://api.slack.com/block-kit
- Slack mrkdwn reference: https://api.slack.com/reference/surfaces/formatting
- Block Kit Builder (interactive): https://app.slack.com/block-kit-builder