Repository navigation
feat(chat): add Antigravity conversation support - #789
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Summary
Merge Risk: ⚪ Minimal · up to No merge-blocking issue is established for this change; it is ready for normal checks. Pre-merge checks |
|
## Change Supplemental fix for Grok (#777) and Antigravity (#789). Both agents can write native activity while Herdr reports ready or done, leaving Chat looking idle and keeping tool rows folded. Chat now shows native turn activity and opens live tool rows independently of that pane status. Missing native history gets an explicit notice for either agent. Grok shows Thinking from thought events and Working from prompts, messages and tools, clearing on native turn completion. Antigravity shows Working from the current prompt/tool sequence and clears on a completed tool-free planner answer. Its individual `DONE` steps are not mistaken for turn completion; saved reasoning is not presented as live thinking. Late tool results do not restart completed activity. The Agy boundaries follow the captured native 1.3.3 sequence, without interpreting numeric database statuses or decoding payloads. The shared activity field controls display only. Input delivery, queue authority, supported builds, process/session binding and Hako's helper removal remain unchanged. Interrupted or errored turns without a saved completion can retain the indicator until another native turn or rewind; Agy completion patterns other than a tool-free planner answer have the same limitation. See [Grok limits](https://github.com/infowolfe/herdr-web-ui/blob/fix/grok-native-activity/docs/grok-chat.md) and [Agy limits](https://github.com/infowolfe/herdr-web-ui/blob/fix/grok-native-activity/docs/agy-chat.md). ## Validation - `bun run check fast` on `fa05ac7`: passed workflow syntax, generated types, application/tooling typecheck, build and 2,695 unit tests (8 skips, 0 failures). - Isolated Grok and Agy conversation API contracts: 2 passed, covering activity transitions and HTTP validators alongside existing session/history/output-reference checks. - Built-client desktop/mobile checks for both agents: passed, including activity while Herdr never reports working, live tool rows, completion and unavailable-history notices. Agy also covers late tool results and a database-only rewind. - Agy unit cases follow the native prompt/context/planner-call/tool-result/final-answer sequence, plus partial records, unfinished answers, database/export lag, rewind and cold-cache replay. The new browser script is included in the CI lane. - The combined API/browser run verified unchanged source; the subsequent commit adds only the screenshot to that tested source. Full integration/browser lanes and native Windows checks were not run. Mobile screenshots from isolated test sessions with fictional messages:   --------- Co-authored-by: Hako <devswha@gmail.com>
Change
Closes #784.
Agy panes currently fall back to terminal text in Chat. This adds a native reader for user messages, assistant text, and expandable tool activity, using the existing conversation API, pager, and UI. Terminal remains available for native commands and approvals; reading Chat makes no model call and requires no hook configuration.
The reader resolves the active store from the selected Agy process's held presence lock. It replays the JSONL ledger and checks the database's active step indices to respect saved rewinds without decoding payloads. History changes invalidate cursors and expanded-output references. The transcript monitor watches the ledger, database, and WAL. An authoritative fallback now hides rejected Chat history even if the subsequent terminal read stalls or fails.
Planner calls and exported tool results remain separate rows because the tested format has no shared call ID. Reasoning, images, child-session expansion, and native approval handling are outside this scope.
Linux was exercised with Agy 1.3.3 and Herdr 0.9.3. The macOS
lsofpath is implemented but not natively tested; Windows retains Terminal fallback. Please report platform/version failures here; I can follow up with fixes. The database and ledger are separate writes: a rewind-and-regrow completed before observation, or after index eviction/reset, can briefly expose old export text until replacement records arrive. Details and bounded-read limits are indocs/agy-chat.md.This branch is based directly on upstream
main; it does not include or depend on Grok PR #777.Validation
/new,/resume, repeated rewind, graceful restart, and a crash while working.API/browser checks ran on
006aa61; the final amendment adds only the screenshot and compatibility notes. Full integration/browser lanes and native macOS/Windows checks were not run.Fictional demo, using the existing Chat UI: