docs: add WhisperGate architecture and implementation plan
This commit is contained in:
28
README.md
28
README.md
@@ -2,6 +2,30 @@
|
|||||||
|
|
||||||
Rule-based no-reply gate for OpenClaw.
|
Rule-based no-reply gate for OpenClaw.
|
||||||
|
|
||||||
## Status
|
## What it does
|
||||||
|
|
||||||
Initial scaffold.
|
WhisperGate adds a deterministic gate **before model selection**:
|
||||||
|
|
||||||
|
1. If message is not from Discord → skip gate
|
||||||
|
2. If sender is in bypass user list → skip gate
|
||||||
|
3. If message ends with configured end-symbol → skip gate
|
||||||
|
4. Otherwise switch this turn to a no-reply model/provider
|
||||||
|
|
||||||
|
The no-reply provider returns `NO_REPLY` for any input.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Repo layout
|
||||||
|
|
||||||
|
- `plugin/` — OpenClaw plugin (before_model_resolve hook)
|
||||||
|
- `no-reply-api/` — OpenAI-compatible minimal API that always returns `NO_REPLY`
|
||||||
|
- `docs/` — rollout and configuration notes
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Development plan (incremental commits)
|
||||||
|
|
||||||
|
- [x] Task 1: project docs + structure
|
||||||
|
- [ ] Task 2: no-reply API MVP
|
||||||
|
- [ ] Task 3: plugin MVP with rule chain
|
||||||
|
- [ ] Task 4: sample config + quick verification scripts
|
||||||
|
|||||||
21
docs/IMPLEMENTATION.md
Normal file
21
docs/IMPLEMENTATION.md
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
# WhisperGate Implementation Notes
|
||||||
|
|
||||||
|
## Decision path
|
||||||
|
|
||||||
|
WhisperGate evaluates in strict order:
|
||||||
|
|
||||||
|
1. channel check (discord-only)
|
||||||
|
2. bypass sender check
|
||||||
|
3. message ending symbol check
|
||||||
|
4. fallback to no-reply model override
|
||||||
|
|
||||||
|
## Why before_model_resolve
|
||||||
|
|
||||||
|
- deterministic
|
||||||
|
- no LLM dependency
|
||||||
|
- low overhead
|
||||||
|
- uses built-in override path (`providerOverride` + `modelOverride`)
|
||||||
|
|
||||||
|
## Known limitation
|
||||||
|
|
||||||
|
This does not fully skip OpenClaw prompt assembly. It reduces provider-side LLM usage by routing no-reply turns to a deterministic API.
|
||||||
Reference in New Issue
Block a user