- 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
50 lines
2.5 KiB
Markdown
50 lines
2.5 KiB
Markdown
# Dirigent – Fixes & Improvements
|
||
|
||
> Note: Project rename from WhisperGate → Dirigent implies updating all code/docs references (plugin/tool names, strings, files, configs).
|
||
|
||
## 1) Identity Prompt Enhancements
|
||
- ✅ Added Discord userId to identity injection via `resolveDiscordUserId()`.
|
||
- Identity format now: `You are <name> (Discord account: <accountId>, Discord userId: <userId>).`
|
||
|
||
## 2) Scheduling Identifier (Default: ➡️)
|
||
- ✅ Added `schedulingIdentifier` config field (default: `➡️`) to `DirigentConfig` and `openclaw.plugin.json`.
|
||
- ✅ Updated `buildEndMarkerInstruction()` to explain scheduling identifier semantics to agents:
|
||
- The identifier itself is meaningless.
|
||
- When receiving `<@USER_ID>` + identifier, check chat history and decide whether to reply.
|
||
- If nothing to say, reply `NO_REPLY`.
|
||
|
||
## 3) Moderator Handoff Message Format
|
||
- ✅ Moderator no longer sends semantic messages.
|
||
- Handoff format is now: `<@TARGET_USER_ID>` + scheduling identifier (e.g., `<@123>➡️`).
|
||
|
||
## 4) Prompt Language
|
||
- ✅ All prompts converted to English:
|
||
- `buildEndMarkerInstruction()` — English with scheduling identifier explanation
|
||
- `buildAgentIdentity()` — English format
|
||
- Slash command help text — English
|
||
- Error messages — English
|
||
- Code comments — English
|
||
|
||
## 5) Full Project Rename
|
||
- ✅ Plugin id: `whispergate` → `dirigent`
|
||
- ✅ Plugin name: `WhisperGate` → `Dirigent`
|
||
- ✅ Tool name: `whispergate_tools` → `dirigent_tools`
|
||
- ✅ Config type: `WhisperGateConfig` → `DirigentConfig`
|
||
- ✅ Config lookup key: `entries.whispergate` → `entries.dirigent`
|
||
- ✅ Channel policies file: `whispergate-channel-policies.json` → `dirigent-channel-policies.json`
|
||
- ✅ Log prefixes: `whispergate:` → `dirigent:`
|
||
- ✅ Slash command: `/whispergate` → `/dirigent`
|
||
- ✅ Gateway browser/device identifier: `whispergate` → `dirigent`
|
||
- ✅ Scripts renamed: `install-whispergate-*` → `install-dirigent-*`
|
||
- ✅ All docs, configs, examples updated
|
||
- ✅ dist/ folder: `dist/whispergate/` → `dist/dirigent/`
|
||
- ✅ package.json names updated
|
||
- ✅ README.md, CHANGELOG.md updated
|
||
- ✅ Version bumped to 0.2.0
|
||
|
||
---
|
||
|
||
## Open Items / Notes
|
||
- User requested the previous README commit should have been pushed to `main` directly (was pushed to a branch). Address separately if needed.
|
||
- **Migration note**: Existing deployments need to update their `openclaw.json` config from `plugins.entries.whispergate` → `plugins.entries.dirigent` and rename the channel policies file.
|