feat(claude-terminal): meeting context + persistent session + remove insights - #24
Merged
Merged
Conversation
…remove insights A batch of Claude Code terminal improvements + UX cleanup: - **Meeting context:** the embedded terminal now primes the active recording meeting (id + title) into the `claude` session, so it knows which meeting it's helping with — no more "which meeting?" guessing. For "summarize so far" it reads get_transcript directly (skips the empty mid-meeting get_summary). - **Persistent session across tabs AND routes:** the terminal is now a single app-level instance (ClaudeTerminalHost in the root layout). Its DOM node is re-parented (never re-created) between a hidden parking spot and the right panel's slot — so switching tabs (Copilot/Notes/Claude) or navigating routes no longer restarts `claude`. Bound to the active recording meeting once, so browsing other pages mid-recording doesn't reset it. - **Light theme** for the terminal to match the app surface. - **Sidebar fix:** "selected" (the meeting you're viewing) and "recording" (the live one) are now distinct — only one row is highlighted, and the recording meeting gets a small red pulsing dot instead of sharing the selection bg. (Previously both lit up.) - **Remove the Copilot insights / proactive-watcher feature** entirely: it ran background LLM scans every 20s during recording (RAM/CPU/cost) and wasn't worth it. Deleted the watcher hook, InsightsPanel, the /insights/scan endpoint + PROACTIVE_WATCHER_SYSTEM prompt, and all store/types/refs. Recording now does zero extra background AI work. Deps: portable-pty (Rust), @xterm/xterm + @xterm/addon-fit (frontend). macOS build + clippy + fmt green; backend ruff/mypy/pytest green; frontend typecheck/lint/build green. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
emretheus
added a commit
that referenced
this pull request
May 27, 2026
…remove insights (#24) A batch of Claude Code terminal improvements + UX cleanup: - **Meeting context:** the embedded terminal now primes the active recording meeting (id + title) into the `claude` session, so it knows which meeting it's helping with — no more "which meeting?" guessing. For "summarize so far" it reads get_transcript directly (skips the empty mid-meeting get_summary). - **Persistent session across tabs AND routes:** the terminal is now a single app-level instance (ClaudeTerminalHost in the root layout). Its DOM node is re-parented (never re-created) between a hidden parking spot and the right panel's slot — so switching tabs (Copilot/Notes/Claude) or navigating routes no longer restarts `claude`. Bound to the active recording meeting once, so browsing other pages mid-recording doesn't reset it. - **Light theme** for the terminal to match the app surface. - **Sidebar fix:** "selected" (the meeting you're viewing) and "recording" (the live one) are now distinct — only one row is highlighted, and the recording meeting gets a small red pulsing dot instead of sharing the selection bg. (Previously both lit up.) - **Remove the Copilot insights / proactive-watcher feature** entirely: it ran background LLM scans every 20s during recording (RAM/CPU/cost) and wasn't worth it. Deleted the watcher hook, InsightsPanel, the /insights/scan endpoint + PROACTIVE_WATCHER_SYSTEM prompt, and all store/types/refs. Recording now does zero extra background AI work. Deps: portable-pty (Rust), @xterm/xterm + @xterm/addon-fit (frontend). macOS build + clippy + fmt green; backend ruff/mypy/pytest green; frontend typecheck/lint/build green. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A batch of Claude Code terminal improvements and UX cleanup (developed + tested live this session).
Claude Code terminal
claudesession — it knows which meeting it's helping with, no more "which meeting?" guessing. For "summarize so far" it readsget_transcriptdirectly (skips the empty mid-meetingget_summary).ClaudeTerminalHostin the root layout). Its DOM node is re-parented (never re-created) between a hidden parking spot and the right-panel slot, so switching tabs or navigating routes no longer restartsclaude. Bound once to the active recording meeting, so browsing other pages mid-recording doesn't reset it.UX
Removed: Copilot insights / proactive-watcher
Ran background LLM scans every 20s while recording (RAM/CPU/cost), not worth it. Deleted the watcher hook,
InsightsPanel, the/insights/scanendpoint +PROACTIVE_WATCHER_SYSTEMprompt, and all store/types/refs. Recording now does zero extra background AI work.Deps
portable-pty(Rust),@xterm/xterm+@xterm/addon-fit(frontend).Verified
macOS build + clippy + fmt; backend ruff/mypy/pytest (82); frontend typecheck/lint/build — all green.
🤖 Generated with Claude Code