بنقرة واحدة
slack-messaging
Send proactive messages to Slack users and channels using slack_cli
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Send proactive messages to Slack users and channels using slack_cli
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Use when an auditor asks DoWhiz to process audit PBC requests, audit evidence intake, workpapers, financial statement support, tie-outs, or audit client follow-up drafts from emails, attachments, spreadsheets, PDFs, Word files, Google Drive, Lark, or similar collaboration surfaces.
Technical Program Manager skill for managing product tasks, team workload, and competitive research. Use tpm_cli for Notion task board operations and web search for market intelligence.
Produce a one-page U.S. equity signal monitor for a single stock or ETF. Front-load exactly one monitor badge (`Review Now`, `Watch Closely`, `No Material Change`, or `Insufficient Evidence`), explain why the signal matters now, what changed or did not change in the thesis, the main risk to the signal, and what would change the view next. Use whenever the user asks whether a stock is a buy or sell, wants a single-name investment memo, asks for deep research or a high-level investment view on one company, wants a thesis review versus peers or sector expectations, asks what changed since a prior note, wants an earnings setup, or says "should I act" about one ticker. Keep it as public-market analysis rather than personalized portfolio advice. Do not use for portfolio optimization, multi-asset allocation, crypto, FX, fixed-income, or macro strategy notes.
Produce a one-page U.S. equity signal monitor for a single stock or ETF. Front-load exactly one monitor badge (`Review Now`, `Watch Closely`, `No Material Change`, or `Insufficient Evidence`), explain why the signal matters now, what changed or did not change in the thesis, the main risk to the signal, and what would change the view next. Use whenever the user asks whether a stock is a buy or sell, wants a single-name investment memo, asks for deep research or a high-level investment view on one company, wants a thesis review versus peers or sector expectations, asks what changed since a prior note, wants an earnings setup, or says "should I act" about one ticker. Keep it as public-market analysis rather than personalized portfolio advice. Do not use for portfolio optimization, multi-asset allocation, crypto, FX, fixed-income, or macro strategy notes.
Search for used cars from reputable large dealership sources and present a curated catalog. Use when the user asks about buying a used car, finding a car within a budget, searching for vehicles in their area, or any variant like "find me a car under $X", "used cars near me", "looking for a reliable sedan", or "what's available at CarMax". Trigger even when the user doesn't explicitly say "used car search" but is clearly shopping for a vehicle purchase.
Research and catalog hotel options for multi-day trips. Produces a Word document with a table of 2-3 hotel candidates per day, including pricing and amenities. Uses web search for hotel research and the 'doc' skill for DOCX output.
| name | slack-messaging |
| description | Send proactive messages to Slack users and channels using slack_cli |
| allowed-tools | Bash(slack_cli:*) |
Send messages to Slack users and channels for TPM follow-ups, notifications, and reports.
# Send DM to user
slack_cli send-dm --user-id U12345ABC --message "Hi! Checking in on task X"
# Send message to channel
slack_cli send-channel --channel-id C12345ABC --message "Weekly status update..."
# Reply in thread
slack_cli send-channel --channel-id C12345ABC --thread-ts "1234567890.123456" --message "Thanks!"
# Auto-detect (user ID creates DM, channel ID posts to channel)
slack_cli send --to U12345ABC --message "Hello!"
Send a direct message to a Slack user.
slack_cli send-dm --user-id <USER_ID> --message "<TEXT>"
Parameters:
--user-id: Slack user ID (starts with U, e.g., U12345ABC)--message: Message content (supports Slack mrkdwn formatting)Example:
slack_cli send-dm \
--user-id U0123456789 \
--message "Hi! This is Oliver from DoWhiz. Can you provide an update on the authentication task?"
Send a message to a Slack channel.
slack_cli send-channel --channel-id <CHANNEL_ID> --message "<TEXT>" [--thread-ts <TS>]
Parameters:
--channel-id: Slack channel ID (starts with C, e.g., C12345ABC)--message: Message content--thread-ts: (Optional) Message timestamp to reply in threadExample:
slack_cli send-channel \
--channel-id C0123456789 \
--message ":memo: Weekly TPM Report\n\n*Completed:* 5 tasks\n*In Progress:* 3 tasks\n*Blocked:* 1 task"
Auto-detect destination and send message.
slack_cli send --to <ID> --message "<TEXT>" [--thread-ts <TS>]
If --to starts with U, creates a DM. Otherwise, sends to channel.
Slack supports mrkdwn formatting:
| Format | Syntax | Example |
|---|---|---|
| Bold | *text* | *important* |
| Italic | _text_ | _emphasis_ |
| Strikethrough | ~text~ | ~deleted~ |
| Code | `code` | `variable` |
| Code block | ```code``` | Multi-line code |
| Link | `<URL | text>` |
| User mention | <@USER_ID> | <@U12345> |
| Channel link | <#CHANNEL_ID> | <#C12345> |
| Emoji | :emoji_name: | :white_check_mark: |
slack_cli send-dm \
--user-id U0123456789 \
--message "Hi! :wave: Checking in on task *API Integration*. What's your current progress?"
slack_cli send-channel \
--channel-id C0123456789 \
--message ":chart_with_upwards_trend: *Weekly TPM Report - $(date +%Y-%m-%d)*
*Completed This Week:*
• Task A - Done
• Task B - Done
*In Progress:*
• Task C - 70% complete
• Task D - Starting
*Blockers:*
• Waiting on API documentation
_Reply in thread for questions._"
slack_cli send-dm \
--user-id U0123456789 \
--message ":alarm_clock: Reminder: Task *Database Migration* is due tomorrow. Please update the status in Notion."
| Variable | Required | Description |
|---|---|---|
SLACK_BOT_TOKEN | Yes | Bot OAuth token (xoxb-...) |
SLACK_API_BASE_URL | No | Override API base (default: https://slack.com/api) |
| Error | Cause | Solution |
|---|---|---|
channel_not_found | Invalid channel ID | Verify channel ID and bot membership |
not_in_channel | Bot not in channel | Invite bot to the channel |
user_not_found | Invalid user ID | Verify user ID format |
cannot_dm_bot | Trying to DM a bot | Use channel instead |
no_permission | Missing scopes | Check bot OAuth scopes |
chat:write - Send messageschannels:read - List channelsusers:read - Look up usersim:write - Send DMsgroups:write - Post to private channels