slack-formatting
This skill formats messages using Slack's mrkdwn syntax, which differs from standard Markdown in bold formatting, link syntax, list handling, and available formatting options. Apply it when responding to Slack channels, identified by folder names starting with "slack_" or workspace paths containing Slack identifiers, ensuring proper rendering within Slack's message system.
git clone --depth 1 https://github.com/nanocoai/nanoclaw /tmp/slack-formatting && cp -r /tmp/slack-formatting/container/skills/slack-formatting ~/.claude/skills/slack-formattingSKILL.md
# Slack Message Formatting (mrkdwn) When responding to Slack channels, use Slack's mrkdwn syntax instead of standard Markdown. ## How to detect Slack context Check your group folder name or workspace path: - Folder starts with `slack_` (e.g., `slack_engineering`, `slack_general`) - Or check `/workspace/group/` path for `slack_` prefix ## Formatting reference ### Text styles | Style | Syntax | Example | |-------|--------|---------| | Bold | `*text*` | *bold text* | | Italic | `_text_` | _italic text_ | | Strikethrough | `~text~` | ~strikethrough~ | | Code (inline) | `` `code` `` | `inline code` | | Code block | ` ```code``` ` | Multi-line code | ### Links and mentions ``` <https://example.com|Link text> # Named link <https://example.com> # Auto-linked URL <@U1234567890> # Mention user by ID <#C1234567890> # Mention channel by ID <!here> # @here <!channel> # @channel ``` ### Lists Slack supports simple bullet lists but NOT numbered lists: ``` • First item • Second item • Third item ``` Use `•` (bullet character) or `- ` or `* ` for bullets. ### Block quotes ``` > This is a block quote > It can span multiple lines ``` ### Emoji Use standard emoji shortcodes: `:white_check_mark:`, `:x:`, `:rocket:`, `:tada:` ## What NOT to use - **NO** `##` headings (use `*Bold text*` for headers instead) - **NO** `**double asterisks**` for bold (use `*single asterisks*`) - **NO** `[text](url)` links (use `<url|text>` instead) - **NO** `1.` numbered lists (use bullets with numbers: `• 1. First`) - **NO** tables (use code blocks or plain text alignment) - **NO** `---` horizontal rules ## Example message ``` *Daily Standup Summary* _March 21, 2026_ • *Completed:* Fixed authentication bug in login flow • *In Progress:* Building new dashboard widgets • *Blocked:* Waiting on API access from DevOps > Next sync: Monday 10am :white_check_mark: All tests passing | <https://ci.example.com/builds/123|View Build> ``` ## Quick rules 1. Use `*bold*` not `**bold**` 2. Use `<url|text>` not `[text](url)` 3. Use `•` bullets, avoid numbered lists 4. Use `:emoji:` shortcodes 5. Quote blocks with `>` 6. Skip headings — use bold text instead
Add Atomic Chat MCP server so the container agent can call local models served by the Atomic Chat desktop app via its OpenAI-compatible API.
Use Codex (CLI + AppServer) as the full agent provider — planning, tool orchestration, native compaction, MCP tools, session resume — in place of the Claude Agent SDK. ChatGPT subscription or OPENAI_API_KEY. Per-group via agent_provider. Distinct from using OpenAI as an MCP tool (where Claude remains the planner).
Add a monitoring dashboard to NanoClaw. Installs @nanoco/nanoclaw-dashboard and a pusher that sends periodic JSON snapshots.
Add DeltaChat channel integration via @deltachat/stdio-rpc-server. Native adapter — no Chat SDK bridge. Email-based messaging with end-to-end encryption.
Add Discord bot channel integration via Chat SDK.
Add Emacs as a channel. Opens an interactive chat buffer and org-mode integration so you can talk to NanoClaw from within Emacs (Doom, Spacemacs, or vanilla). Local HTTP bridge — no bot token or external service needed.
Add Google Calendar as an MCP tool (list calendars, list/search/create events, free/busy queries) using OneCLI-managed OAuth. Multi-calendar and multi-account supported. Mirrors /add-gmail-tool's stub pattern — no raw credentials ever reach the container; OneCLI injects real tokens at request time.
Add Google Chat channel integration via Chat SDK.