hermes - ✅(Solved) Fix Slack: render Markdown pipe tables as Block Kit tables [1 pull requests, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#18918Fetched 2026-05-03 04:53:34
View on GitHub
Comments
0
Participants
1
Timeline
10
Reactions
0
Author
Participants
Timeline (top)
referenced ×5labeled ×4cross-referenced ×1

Root Cause

Actual

Slack displays the Markdown table as literal pipe text because Slack mrkdwn is not GitHub-Flavored Markdown and does not render pipe tables.

Fix Action

Fixed

PR fix notes

PR #18920: fix(slack): render markdown tables as Block Kit tables

Description (problem / solution / changelog)

Fixes #18918

Slack table rendering visual verification

Changed files

  • gateway/platforms/slack.py (modified, +242/-4)
  • tests/gateway/test_slack.py (modified, +186/-0)

Code Example

| Tool | Best for | Runs in |
   |---|---|---|
   | Vitest | Unit tests | Node/jsdom |
   | Playwright | E2E browser flows | Real browsers |
RAW_BUFFERClick to expand / collapse

Issue

Slack mrkdwn does not render GitHub-Flavored Markdown pipe tables. This is especially visible when Hermes explains testing/tool comparisons or other structured data in table form.

Steps

  1. Use Hermes from Slack.

  2. Ask Hermes to send a response containing a normal Markdown pipe table, for example:

    | Tool | Best for | Runs in |
    |---|---|---|
    | Vitest | Unit tests | Node/jsdom |
    | Playwright | E2E browser flows | Real browsers |
  3. Observe the Slack message.

Expected

When the response contains one eligible Markdown pipe table, Hermes should render it as a native Slack table using Block Kit, while preserving existing text fallback behavior.

Actual

Slack displays the Markdown table as literal pipe text because Slack mrkdwn is not GitHub-Flavored Markdown and does not render pipe tables.

<img width="540" height="293" alt="Image" src="https://github.com/user-attachments/assets/05cc313e-4ad7-4a4d-9754-0b740cc41bca" />

extent analysis

TL;DR

Use Block Kit to render tables in Slack instead of relying on mrkdwn to support GitHub-Flavored Markdown pipe tables.

Guidance

  • Identify the specific Markdown pipe tables that need to be rendered as native Slack tables.
  • Use Slack's Block Kit API to construct a table block that can be sent alongside the existing text.
  • Update Hermes to detect Markdown pipe tables in its responses and convert them to Block Kit tables before sending to Slack.
  • Test the updated Hermes behavior with various table examples to ensure correct rendering.

Example

{
  "type": "section",
  "text": {
    "type": "mrkdwn",
    "text": "Tool comparison:"
  },
  "fields": [
    {
      "type": "mrkdwn",
      "text": "*Tool*\nVitest\nPlaywright"
    },
    {
      "type": "mrkdwn",
      "text": "*Best for*\nUnit tests\nE2E browser flows"
    },
    {
      "type": "mrkdwn",
      "text": "*Runs in*\nNode/jsdom\nReal browsers"
    }
  ]
}

Notes

This approach requires updating Hermes to use Block Kit for table rendering, which may involve significant changes to its Slack integration.

Recommendation

Apply workaround: Use Block Kit to render tables, as it provides a more flexible and compatible way to display structured data in Slack.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - ✅(Solved) Fix Slack: render Markdown pipe tables as Block Kit tables [1 pull requests, 1 participants]