Channels
Emoji Confirm Mvp
OpenClaw plugin: emoji-based yes/no confirmations for Discord
Configuration Example
{
"plugins": {
"load": {
"paths": ["/path/to/plugins"]
},
"allow": ["emoji-confirm-mvp"],
"entries": {
"emoji-confirm-mvp": {
"enabled": true,
"config": {
"allowedUserIds": ["YOUR_DISCORD_USER_ID"],
"expiresMinutes": 10,
"yesEmojis": ["๐", "โ
"],
"noEmojis": ["๐", "โ"]
}
}
}
}
}
README
# Emoji Confirm MVP
OpenClaw plugin for emoji-based yes/no confirmations.
## What it does
When the assistant sends a message containing both yes and no emoji (e.g. "Delete the backups? Reply ๐ or ๐"), the plugin tracks it as a pending confirmation.
When the user replies with one of those emoji as a text message, the plugin injects context telling the agent to treat it as a yes/no answer.
**Supported emoji (configurable):**
- Yes: ๐ โ
- No: ๐ โ
## How it works
Uses a single `before_agent_start` hook (the only hook that reliably fires for all provider + channel combinations, including openai-codex + Discord embedded mode).
1. Scans previous assistant messages for confirmation patterns (contains both yes AND no emoji)
2. If the current user message contains a reaction emoji and there's a pending confirmation, injects context like "The user reacted ๐ (yes) to: ..."
## Limitations
- Works at the **session level**, not per-message โ if multiple confirmations are pending, the most recent is matched
- Discord reaction events (`MESSAGE_REACTION_ADD`) are [currently broken](https://github.com/openclaw/openclaw/issues/26956) in OpenClaw, so users must send emoji as text messages rather than clicking reactions
- `allowedUserIds` defaults to empty โ set it in your config to restrict who can confirm
## Config
```json
{
"plugins": {
"load": {
"paths": ["/path/to/plugins"]
},
"allow": ["emoji-confirm-mvp"],
"entries": {
"emoji-confirm-mvp": {
"enabled": true,
"config": {
"allowedUserIds": ["YOUR_DISCORD_USER_ID"],
"expiresMinutes": 10,
"yesEmojis": ["๐", "โ
"],
"noEmojis": ["๐", "โ"]
}
}
}
}
}
```
## State
Pending confirmations are stored at `workspace/.state/emoji-confirm-mvp.json` and auto-expire.
channels
Comments
Sign in to leave a comment