mirror of
https://github.com/moltbot/moltbot.git
synced 2026-04-24 15:13:14 +00:00
docs: add WhatsApp reactionLevel and Feishu Drive comment actions
This commit is contained in:
@@ -148,6 +148,7 @@ In **Event Subscription**:
|
||||
|
||||
1. Choose **Use long connection to receive events** (WebSocket)
|
||||
2. Add the event: `im.message.receive_v1`
|
||||
3. (Optional) For Drive comment workflows, also add: `drive.notice.comment_add_v1`
|
||||
|
||||
⚠️ If the gateway is not running, the long-connection setup may fail to save.
|
||||
|
||||
@@ -735,6 +736,36 @@ Key options:
|
||||
- ✅ Topic-thread replies where Feishu exposes `reply_in_thread`
|
||||
- ✅ Media replies stay thread-aware when replying to a thread/topic message
|
||||
|
||||
## Drive comments
|
||||
|
||||
Feishu can trigger the agent when someone adds a comment on a Feishu Drive document (Docs, Sheets,
|
||||
etc.). The agent receives the comment text, document context, and the comment thread so it can
|
||||
respond in-thread or make document edits.
|
||||
|
||||
Requirements:
|
||||
|
||||
- Subscribe to `drive.notice.comment_add_v1` in your Feishu app event subscription settings
|
||||
(alongside the existing `im.message.receive_v1`)
|
||||
- The Drive tool is enabled by default; disable with `channels.feishu.tools.drive: false`
|
||||
|
||||
The `feishu_drive` tool exposes these comment actions:
|
||||
|
||||
| Action | Description |
|
||||
| ---------------------- | ----------------------------------- |
|
||||
| `list_comments` | List comments on a document |
|
||||
| `list_comment_replies` | List replies in a comment thread |
|
||||
| `add_comment` | Add a new top-level comment |
|
||||
| `reply_comment` | Reply to an existing comment thread |
|
||||
|
||||
When the agent handles a Drive comment event, it receives:
|
||||
|
||||
- the comment text and sender
|
||||
- document metadata (title, type, URL)
|
||||
- the comment thread context for in-thread replies
|
||||
|
||||
After making document edits, the agent is guided to use `feishu_drive.reply_comment` to notify the
|
||||
commenter and then output `NO_REPLY` to avoid duplicate sends.
|
||||
|
||||
## Runtime action surface
|
||||
|
||||
Feishu currently exposes these runtime actions:
|
||||
@@ -750,6 +781,7 @@ Feishu currently exposes these runtime actions:
|
||||
- `channel-info`
|
||||
- `channel-list`
|
||||
- `react` and `reactions` when reactions are enabled in config
|
||||
- `feishu_drive` comment actions: `list_comments`, `list_comment_replies`, `add_comment`, `reply_comment`
|
||||
|
||||
## Related
|
||||
|
||||
|
||||
@@ -330,9 +330,35 @@ When the linked self number is also present in `allowFrom`, WhatsApp self-chat s
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## Reaction level
|
||||
|
||||
`channels.whatsapp.reactionLevel` controls how broadly the agent uses emoji reactions on WhatsApp:
|
||||
|
||||
| Level | Ack reactions | Agent-initiated reactions | Description |
|
||||
| ------------- | ------------- | ------------------------- | ------------------------------------------------ |
|
||||
| `"off"` | No | No | No reactions at all |
|
||||
| `"ack"` | Yes | No | Ack reactions only (pre-reply receipt) |
|
||||
| `"minimal"` | Yes | Yes (conservative) | Ack + agent reactions with conservative guidance |
|
||||
| `"extensive"` | Yes | Yes (encouraged) | Ack + agent reactions with encouraged guidance |
|
||||
|
||||
Default: `"minimal"`.
|
||||
|
||||
Per-account overrides use `channels.whatsapp.accounts.<id>.reactionLevel`.
|
||||
|
||||
```json5
|
||||
{
|
||||
channels: {
|
||||
whatsapp: {
|
||||
reactionLevel: "ack",
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
## Acknowledgment reactions
|
||||
|
||||
WhatsApp supports immediate ack reactions on inbound receipt via `channels.whatsapp.ackReaction`.
|
||||
Ack reactions are gated by `reactionLevel` — they are suppressed when `reactionLevel` is `"off"`.
|
||||
|
||||
```json5
|
||||
{
|
||||
@@ -447,7 +473,7 @@ Primary reference:
|
||||
High-signal WhatsApp fields:
|
||||
|
||||
- access: `dmPolicy`, `allowFrom`, `groupPolicy`, `groupAllowFrom`, `groups`
|
||||
- delivery: `textChunkLimit`, `chunkMode`, `mediaMaxMb`, `sendReadReceipts`, `ackReaction`
|
||||
- delivery: `textChunkLimit`, `chunkMode`, `mediaMaxMb`, `sendReadReceipts`, `ackReaction`, `reactionLevel`
|
||||
- multi-account: `accounts.<id>.enabled`, `accounts.<id>.authDir`, account-level overrides
|
||||
- operations: `configWrites`, `debounceMs`, `web.enabled`, `web.heartbeatSeconds`, `web.reconnect.*`
|
||||
- session behavior: `session.dmScope`, `historyLimit`, `dmHistoryLimit`, `dms.<id>.historyLimit`
|
||||
|
||||
Reference in New Issue
Block a user