escalation
Escalate unresolvable or sensitive requests to a human agent by recording an escalation entry. Use when the user asks to speak to a human, the bot cannot…
Send proactive messages to IM groups or individual users via the gateway Send API. Use when the user says to send, post, notify, forward, or tell someone a message on Feishu, Slack, Telegram, Discord, DingTalk, or WeCom.
$ npx -y skills add 0xranx/golembot --skill message-push --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/message-pushContext preview
The summary Claude sees to decide when to auto-load this skill.
Send proactive messages to IM groups or individual users via the gateway Send API. Use when the user says to send, post, notify, forward, or tell someone a message on Feishu, Slack, Telegram, Discord, DingTalk, or WeCom.
name: message-push description: "Send proactive messages to IM groups or individual users via the gateway Send API. Use when the user says to send, post, notify, forward, or tell someone a message on Feishu, Slack, Telegram, Discord, DingTalk, or WeCom."
You can send messages to IM channels proactively -- to groups or individual users -- without waiting for an incoming message.
Note: if the user asks you to send a FILE or IMAGE (e.g. a generated document, chart, photo), do NOT use this skill — instead save to `temp_file/` and emit `[SEND_IMAGE: ...]` / `[SEND_FILE: ...]` markers (see the im-adapter skill). This skill only sends TEXT messages.
Watch for phrases like:
Follow these steps when the user requests a message push:
1. **Identify the target** -- determine the channel name and chatId from the user's request 2. **Discover available channels** -- call `GET /api/channels` to confirm the channel exists and supports sending 3. **Compose the message** -- draft the text content, following im-adapter formatting guidelines 4. **Confirm with the user** -- if this is the first time sending to this chat, show the draft and ask for approval 5. **Send the message** -- call `POST /api/send` with the channel, chatId, and text 6. **Report the result** -- tell the user whether the send succeeded or failed
curl -X POST http://localhost:$PORT/api/send \
-H "Content-Type: application/json" \
-d '{
"channel": "feishu",
"chatId": "oc_xxxx",
"text": "Hello from the bot!"
}'| Field | Type | Required | Description | |-------|------|----------|-------------| | `channel` | string | yes | Channel name: `feishu`, `dingtalk`, `wecom`, `slack`, `telegram`, `discord` | | `chatId` | string | yes | Chat/group/conversation ID on the target platform | | `text` | string | yes | Message content (Markdown supported) |
If the send fails, check the HTTP status code:
Before sending, check which channels are available:
curl http://localhost:$PORT/api/channels
Returns:
{
"channels": [
{ "name": "feishu", "canSend": true },
{ "name": "slack", "canSend": true }
]
}Chat IDs are platform-specific. Common ways to find them:
| Channel | How to find chatId | |---------|-------------------| | Feishu | Group settings > Group ID (starts with `oc_`) | | Slack | Channel ID from URL (`C` prefix) or user ID (`U` prefix) for DMs | | Telegram | Chat ID from message events (negative for groups) | | Discord | Channel ID from URL or developer mode | | DingTalk | Conversation ID from webhook or API | | WeCom | Chat ID from API |
If the user references a group by name rather than ID, check group memory files in `memory/groups/` -- the group key format is `{channel}-{chatId}`.
Any Agent × Any Provider × Anywhere. Connect Cursor, Claude Code, OpenCode, or Codex to Slack, Telegram, Discord, Feishu, DingTalk, WeCom, WeChat — with any LLM provider.
Repo: 0xranx/golembot
Escalate unresolvable or sensitive requests to a human agent by recording an escalation entry. Use when the user asks to speak to a human, the bot cannot…
Handle everyday conversation, answer questions, manage files, take notes, run scripts, and maintain persistent memory across sessions. Use when the user asks a…
Format responses for instant messaging platforms such as Lark, DingTalk, WeCom, Slack, and Telegram. Controls response length, Markdown formatting, tone, group…
Search, read, create, and update knowledge base entries via MCP-connected KB tools. Use when the user asks to look up documentation, find existing articles,…
Coordinates responses between multiple GolemBot instances in a shared fleet. Use when the bot operates in a group chat with other bots, needs to decide whether…
Creates and manages scheduled tasks, cron jobs, recurring reminders, and timers via the Task HTTP API. Use when the user asks to schedule something, set a…