Markdown を Slack Block Kit JSON に変換するフィルターツール。
標準入力から Markdown を読み込み、{"blocks": [...]} 形式の JSON を標準出力に書き出します。
scli と組み合わせてターミナルから Slack に投稿するのに最適です。
- GFM(GitHub Flavored Markdown)対応
- H1/H2 → Slack ヘッダーブロック(大きいフォント)
- H3–H6 → 太字セクションブロック
- 段落、ブロック引用、順序付き・順序なしリスト(ネスト対応)
- フェンスおよびインデント付きコードブロック
- GFM テーブル → 整形済みプレーンテキストのコードブロック
- 単独画像 → Slack image ブロック
- インライン画像 → リンクにフォールバック
- 取り消し線、太字、斜体、インラインコード、リンク、自動リンク
- 水平罫線 → Slack divider ブロック
- 生 HTML は破棄(Slack では表示不可)
go install github.com/nlink-jp/md-to-slack/cmd/md-to-slack@latestまたは Releases ページからビルド済みバイナリをダウンロードしてください。
md-to-slack < README.md
echo "# こんにちは **世界**" | md-to-slackmd-to-slack < message.md | scli post --channel general --blocks -| フラグ | 説明 |
|---|---|
--version, -V |
バージョンを表示して終了 |
--help, -h |
ヘルプを表示して終了 |
make build # 現在のプラットフォーム向けにビルド
make build-all # 全プラットフォーム向けにクロスコンパイル
make test # テスト実行
make check # vet + lint + test + buildSlack Block Kit ペイロードを出力します:
{
"blocks": [
{ "type": "header", "text": { "type": "plain_text", "text": "タイトル", "emoji": true } },
{ "type": "section", "text": { "type": "mrkdwn", "text": "本文テキスト。" } }
]
}