:Release Notes: - pi configuration do not configured to work with devtools mcp server :Detailed Notes: - Added configuration for agent-browser, but no good results was received. Seems like on a complex webpages like rutube.ru we could encounter several buttons which compacting to the identical nodes, leading to a problems with navigation - agent-browser compaction of a11y tree seems to be a good starting point, but not sufficient :Testing Performed: - prompt: Launch <Movie> on rutube in both opencode and pi :QA Notes: - :Issues Addressed: -
1.9 KiB
name, description
| name | description |
|---|---|
| ms-teams-multiline-typing | Type multiline messages into the Microsoft Teams chat compose box using agent-browser. Covers the Shift+Enter newline pattern and why literal newline input fails. Use only when the user asks to type or compose a multi-paragraph Teams message. |
MS Teams multiline typing
Microsoft Teams uses a CKEditor-backed <div role="textbox" contenteditable="true">, exposed in snapshots as textbox "Type a message" multiline. Its state lives in CKEditor's model rather than directly in the DOM.
Required pattern
Do not send an embedded newline in one fill, type, or keyboard type command. CKEditor may reject the entire insertion. Focus the compose box, then alternate typing and Shift+Enter:
agent-browser snapshot -i -c
agent-browser click @eN
agent-browser keyboard type 'Line 1'
agent-browser press Shift+Enter
agent-browser keyboard type 'Line 2'
agent-browser press Shift+Enter
agent-browser keyboard type 'Line 3'
Each Shift+Enter produces a real keyboard event that CKEditor maps to a new paragraph or line break.
For a single line, use:
agent-browser type @eN 'Hello'
Verify the draft
agent-browser eval '(() => { const e=document.querySelector("[role=textbox]"); return JSON.stringify(e ? {innerText:e.innerText,pCount:e.querySelectorAll("p").length} : null); })()'
A fresh agent-browser snapshot -i -c should also expose the inserted paragraph structure.
Do not
- Do not use a literal
\nin one fill/type command for the Teams editor. - Do not mutate
innerHTML; this can violate Trusted Types and desynchronize Teams/CKEditor state. - Do not send the message unless the user explicitly asked to send it. Typing/composing alone means leave the draft for review.
The same keystroke pattern often works in other contenteditable chat apps. A true <textarea> generally accepts multiline fill; inspect the element type first.