feat: session 2 — subgrouping, chat focus, split view, browser context - #1
Merged
Conversation
- Strengthen LLM prompt to MUST-decompose large groups into children at specificity 5+ (6+ tabs) and 7+ (4+ tabs) - Add enforceSubgroups() post-LLM enforcement via domain clustering - Lower shouldRePrompt thresholds for more aggressive re-prompting - Add tabTags to LLM schema (Zod + prompts + types) - Render tag badge pills on large tab tiles (h>64, w>120) - Add .gt-tag pill CSS styles Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- LLM can return focusGroupLabel/focusChildLabel to auto-zoom into a group when user asks via chat (e.g. "show me my Claude tabs") - TreemapView accepts requestedFocusLabel prop with effect to auto-focus - onFocusDismissed callback clears focus when user navigates back - Breadcrumb, Escape, and group click all properly dismiss chat focus Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace emitGutterTabs() with emitGutterChildren() — sidebar groups now show labeled child-group tiles instead of cluttered favicon grids. Groups without children show just their label and tab count. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- splitViewTab() tiles GroupThink left, clicked tab right using chrome.windows + system.display APIs - Wire enforceSubgroups step 4 + hydrate tags in background pipeline - Add split-view-tab and browser context gathering to message handler Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- New browser-context.ts gathers history visits, top sites, bookmarks, and recently closed tabs via optional Chrome APIs - Options page: context enrichment toggle (Off/Basic/Full) with runtime permission request on enable - Move tabGroups to optional_permissions for Dia compatibility - Default off — opt-in only, data never persisted Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ge.json pnpm/action-setup@v4 now errors when both `version` input and `packageManager` in package.json are set. Let it read from package.json. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
env.ts is gitignored (generated at build time from env.json). CI needs the stub to exist before tsc runs. Co-Authored-By: Claude Opus 4.6 <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.
Summary
enforceSubgroups()domain clustering ensures large groups decompose into children at specificity 5+tabGroupsmoved to optional permissionsKnown issues
chrome.storage.onChangedlistener + silentdoGroupingapproach needs debugging — new tabs opened after initial grouping may not appear until manual Refresh.Test plan
🤖 Generated with Claude Code