feat: add conversation-scoped yolo controls

This commit is contained in:
2026-09-22 08:12:07 +00:00
parent b672762be8
commit 18c4b34d08
5 changed files with 218 additions and 2 deletions
+24
View File
@@ -292,6 +292,30 @@ clarifications accept free text.
---
## Auto-approve (YOLO)
YOLO is always conversation-scoped. It skips ordinary dangerous-command
approval prompts for that Hermes session, while Hermes hard deny rules and
hardline safety floors still apply.
```json
→ { "type": "yolo.current", "conversation_id": "a1b2…", "request_id": "r15" }
← { "type": "yolo.snapshot", "enabled": false, "scope": "conversation",
"conversation_id": "a1b2…", "request_id": "r15" }
→ { "type": "yolo.set", "conversation_id": "a1b2…", "enabled": true,
"request_id": "r16" }
← { "type": "yolo.changed", "enabled": true, "scope": "conversation",
"conversation_id": "a1b2…", "request_id": "r16" }
// plus broadcast of yolo.changed (without request_id) to all clients
```
`enabled` must be a JSON boolean. Unknown conversations return
`conversation_not_found`. The adapter also persists the flag in Hermes session
metadata so it can be restored after the gateway restarts.
---
## Attachments (agent → client deliverables)
When the agent produces a file (image, document, audio, video… via Hermes's