feat: complete Dirigent rename + all TASKLIST items
- Task 1: Identity prompt now includes Discord userId
- Task 2: Added configurable schedulingIdentifier (default: ➡️)
- Task 3: Moderator handoff uses <@userId>+identifier instead of semantic messages
- Task 4: All prompts/comments/help text converted to English
- Task 5: Full project rename WhisperGate → Dirigent across all files
Breaking: config key changed from plugins.entries.whispergate to plugins.entries.dirigent
Breaking: channel policies file renamed to dirigent-channel-policies.json
Breaking: tool name changed from whispergate_tools to dirigent_tools
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
## Context
|
||||
|
||||
WhisperGate implements turn-based speaking for Discord group channels where multiple AI agents coexist. Only one agent (the "current speaker") is allowed to respond at a time. Others are silenced via a no-reply model override.
|
||||
Dirigent implements turn-based speaking for Discord group channels where multiple AI agents coexist. Only one agent (the "current speaker") is allowed to respond at a time. Others are silenced via a no-reply model override.
|
||||
|
||||
## The Problem
|
||||
|
||||
@@ -12,7 +12,7 @@ When the current speaker responds with **NO_REPLY** (decides the message is not
|
||||
|
||||
1. A message arrives in the Discord channel
|
||||
2. OpenClaw routes it to **all** agent sessions in that channel simultaneously
|
||||
3. The WhisperGate plugin intercepts at `before_model_resolve`:
|
||||
3. The Dirigent plugin intercepts at `before_model_resolve`:
|
||||
- Current speaker → allowed to process
|
||||
- Everyone else → forced to no-reply model (message is "consumed" silently)
|
||||
4. Current speaker processes the message and returns NO_REPLY
|
||||
|
||||
Reference in New Issue
Block a user