feat(webchat): add slash commands, autocomplete popup, and web search button

Add 6 slash commands (/help, /reset, /compact, /usage, /status, /model)
with autocomplete popup (arrow keys, Enter/Tab/Escape navigation).
Search button toggles web search mode by prepending instruction to message.
Backend agent.send extended with metadata for server-side command routing.
This commit is contained in:
William Valentin
2026-02-10 20:45:14 -08:00
parent 7a69794418
commit 4c8ba3f20c
4 changed files with 554 additions and 18 deletions
+28
View File
@@ -962,6 +962,34 @@
],
"test_status": "21/21 passing (html.test) + 18/18 passing (gmail.test) + 16/16 passing (automation/gmail.test)"
},
"webchat-slash-commands": {
"status": "completed",
"date": "2026-02-10",
"summary": "Slash commands, autocomplete popup, and web search button for the webchat SPA. 6 commands: /help, /reset, /compact, /usage, /status, /model. Search button toggles web search mode (prepends instruction to message). Backend agent.send extended with metadata for command routing.",
"phases": {
"backend_command_handling": {
"status": "completed",
"description": "Extended agent.send RPC handler to accept optional metadata (isCommand, command). /reset handled server-side via agent.reset().",
"files_modified": [
"src/gateway/handlers/agent.ts"
]
},
"frontend_slash_commands": {
"status": "completed",
"description": "Slash command parsing, autocomplete popup (arrow keys, Enter/Tab/Escape), search button toggle, system messages, /help /reset /compact /usage /status /model handlers",
"files_modified": [
"src/gateway/ui/pages/chat.js"
]
},
"css_styling": {
"status": "completed",
"description": "Styles for .chat-actions, .btn-action, .slash-popup, .slash-popup-item, .message.system, .chat-input-wrapper, plus responsive breakpoints for 600px and 768px",
"files_modified": [
"src/gateway/ui/style.css"
]
}
}
},
"tui-fullscreen-improvements": {
"status": "completed",
"date": "2026-02-10",