Parent: #398
Depends on: Context Builder core selection and assembly model.
Goal
Add a launcher-facing context curation UI where the user can select files and preview the exact context block that will be handed to the agent.
Implementation Notes
Target area: MultiSessionLaunchView / MultiSessionLaunchViewModel, plus a small focused ContextBuilderView and ContextBuilderViewModel.
Use existing FileIndexService.rootNodes, children, and readFile behavior for project tree data. The initial UI should stay small:
- button in the launcher:
Curate Context
- tree/list of project files with multi-select
- selected-files list
- assembled-context preview
- clear/remove selection controls
Do not build line slicing, profiles, or code maps in this issue. Leave hooks/placeholders where useful, but keep the first UI shippable.
Acceptance Criteria
- User can open context curation from the launcher.
- User can select and deselect files from the current repository.
- User can preview the exact assembled context block.
- Launching a session includes the assembled context before the prompt.
- Existing attached-file behavior is not broken.
Tests
Add view-model tests for selection updates and assembly handoff. Keep UI components small and composable.
Parent: #398
Depends on: Context Builder core selection and assembly model.
Goal
Add a launcher-facing context curation UI where the user can select files and preview the exact context block that will be handed to the agent.
Implementation Notes
Target area:
MultiSessionLaunchView/MultiSessionLaunchViewModel, plus a small focusedContextBuilderViewandContextBuilderViewModel.Use existing
FileIndexService.rootNodes,children, andreadFilebehavior for project tree data. The initial UI should stay small:Curate ContextDo not build line slicing, profiles, or code maps in this issue. Leave hooks/placeholders where useful, but keep the first UI shippable.
Acceptance Criteria
Tests
Add view-model tests for selection updates and assembly handoff. Keep UI components small and composable.