Skip to content
FunCoding

slack

Talk with people on Slack — recognize slack-* senders and reach them via chat reply

Star
1,220
Category
Other
License
Apache-2.0
Last commit
Oct 12, 2026

skills/slack/SKILL.md

View on GitHub

slack

Instructions

A Slack bridge forwards messages between your mind log and the org's Slack workspace. You do not need to call the Slack API — the bridge handles delivery in both directions.

Recognizing Slack messages

Messages from Slack arrive as normal message steps whose from looks like:

  • slack-U07AB12CD-D09XYZ123 — a direct message
  • slack-U07AB12CD-C09XYZ123-1722400000.123456 — a channel thread

The parts are Slack IDs: user, channel, and (for channels) the thread timestamp. The message content starts with a readable header like (Slack: Dana Kim in #eng) telling you who is talking and where.

Some senders are other Headlong personas, not people. Their header says so: (Slack: harris, a Headlong persona like you, not a person in #eng). Reply to them the same way. Each bridge stops forwarding after a few peer messages in a row in one thread until a person speaks there, so an unanswered message to a peer is that guard, not a snub. Say what you have to say in one message rather than a chain of short ones, and let a person carry the thread when it goes quiet.

Replying

Reply exactly as you would to any other sender — the bridge delivers it to the right Slack conversation (in-thread for channels, top-level for DMs):

chat reply slack-U07AB12CD-C09XYZ123-1722400000.123456 "On it — deploy is green."

Always use the sender's full slack-… name verbatim as the reply target. Do not shorten it or substitute the person's display name.

Reacting

Add an emoji reaction to the Slack message you are answering. Use the Slack short name (thumbsup, eyes, +1), not unicode:

chat react slack-U07AB12CD-C09XYZ123-1722400000.123456 thumbsup
chat react --reply-to <inbound-step-id> slack-U07AB12CD-C09XYZ123-1722400000.123456 eyes

--reply-to copies that inbound step's source_url so the reaction lands on the specific message, not just the thread root. Needs the Slack app's reactions:write scope (reinstall after it lands).

Following up proactively

To continue a Slack conversation later (e.g. after finishing a task someone asked about), chat reply to the same slack-… name from the earlier message. The bridge posts it into that conversation.

Posting to a channel or DMing someone without an earlier message

Two short forms exist for when you are starting the conversation:

  • slack-C09XYZ123 — post top-level in that channel
  • slack-U07AB12CD — DM that person (the bridge opens the DM)
chat send --to slack-C09XYZ123 "Daily papers for today: ..."
chat send --to slack-U07AB12CD "Built the thing you asked about."

Slack ids are uppercase; users start with U, channels with C. chat rejects any other slack-… shape with a non-zero exit, and the bridge writes a delivery step back to your trajectory for every send, status: delivered with the permalink or status: failed with the reason. A failed delivery shows in your recent stream; check it before assuming a message landed.

Formatting

Write normal markdown; the bridge converts it for Slack (bold, links, headings, code blocks). Long messages are split automatically. Prefer concise messages — it is chat, not a report.

Similar Skills

claude-handoff

MAmattpocock/skills288k10,178 new stars in the last 7 days

agent-payment-x402

AFaffaan-m/ECC278k4,046 new stars in the last 7 days

agent-self-evaluation

AFaffaan-m/ECC278k4,046 new stars in the last 7 days

bengali-nlp

AFaffaan-m/ECC278k4,046 new stars in the last 7 days

ponytail-gain

DIDietrichGebert/ponytail162k5,405 new stars in the last 7 days

Featured

ponytail-debt

Scan shortcut comments, build a debt ledger, flag items without an upgrade path.

DIDietrichGebert/ponytail162k5,405 new stars in the last 7 days