Repository navigation
Improve browser sessions, sidebar operations and tool details - #154
Merged
Merged
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
Browser-store lifecycle handling remains incomplete for headless session operations and TUI retention cleanup.
2 open issues
1 file not reviewed
docs/help/assets/search-index.js: Generated file
What changed in this PR
This PR integrates browser-session storage, sidebar organization, and tool-detail improvements across ACECode’s Desktop, Web, daemon, and TUI surfaces.
Changes:
- Connect browser cookie lifecycle handling, visit recording, and shared desktop helpers.
- Add sidebar multi-selection support, batch operations, and drag-to-composer session references.
- Simplify tool details, add preview-file location controls, and limit responsive auto-collapse to the left sidebar.
| File | Description |
|---|---|
| web/src/styles/tool-details.css | Styles diff cards with metadata. |
| web/src/styles/shell-command-card.css | Adjusts transcript command-card spacing. |
| web/src/lib/useAgentBrowserCookieMode.js | Shares cookie-mode state and subscriptions. |
| web/src/lib/transcriptProjection.test.js | Updates tool-rendering assertions. |
| web/src/lib/transcriptProjection.js | Restores tool arguments and separate results. |
| web/src/lib/submenuPosition.js | Positions submenus within the viewport. |
| web/src/lib/sidebarWorkspaceRefresh.test.js | Adds batch-operation fixture state. |
| web/src/lib/sidebarWorkspaceDragArchitecture.test.js | Updates multi-selection drag assertions. |
| web/src/lib/sidebarSessionSelection.test.js | Tests selection and batch reordering. |
| web/src/lib/sidebarSessionSelection.js | Implements selection and reorder helpers. |
| web/src/lib/shortcutBindings.js | Defines the preview-file reveal shortcut. |
| web/src/lib/settingsSearch.test.js | Tests cookie-setting discovery. |
| web/src/lib/settingsSearch.js | Indexes cookie-setting search terms. |
| web/src/lib/sessionTranscript.test.js | Verifies non-mutating argument restoration. |
| web/src/lib/runTests.js | Registers new frontend tests. |
| web/src/lib/richComposerModel.js | Creates composer session-reference tags. |
| web/src/lib/responsiveSidebars.js | Restricts automatic collapse to the left sidebar. |
| web/src/lib/questionFeedback.test.js | Updates tool-presentation test dependencies. |
| web/src/lib/fileTreeLocate.test.js | Tests workspace-bound preview location. |
| web/src/lib/fileTreeLocate.js | Derives preview-file location plans. |
| web/src/lib/desktopContextMenu.test.js | Tests reveal actions and preview context. |
| web/src/lib/connection.js | Returns read/unread send outcomes. |
| web/src/lib/appShortcuts.test.js | Tests reveal shortcut matching and context. |
| web/src/lib/appShortcuts.js | Documents the reveal shortcut in-app. |
| web/src/lib/api.js | Adds batch-session and browser-site requests. |
| web/src/i18n/catalogs.js | Includes tool-transcript translations. |
| web/src/components/ToolDetailMetadata.jsx | Renders compact tool metadata. |
| web/src/components/ShellCommandCard.jsx | Adds simplified transcript presentation. |
| web/src/components/InputBar.jsx | Accepts dragged session references. |
| web/src/components/DesktopContextMenu.jsx | Labels file reveal and its shortcut. |
| web/src/components/ActivityLine.jsx | Supports separators and overflow measurement. |
| web/src/App.jsx | Installs browser visit recording. |
| tests/web/sidebar_sessions_test.cpp | Tests atomic batch moves over HTTP. |
| tests/cpp_source_paths.json | Maps extracted browser helper sources. |
| tests/CMakeLists.txt | Adds opt-in cookie-mode smoke testing. |
| src/layers.tsv | Records scoped Linux ownership exceptions. |
| src/domain/session/sidebar_tree.hpp | Declares atomic multi-node moves. |
| src/domain/session/sidebar_tree.cpp | Implements ordered, atomic multi-node moves. |
| src/domain/session/session_manager.cpp | Emits successful fork notifications. |
| src/domain/session/session_fork_listeners.hpp | Declares the fork-listener contract. |
| src/domain/session/session_fork_listeners.cpp | Implements process-local fork notifications. |
| src/base/environment/data_dir_migration.hpp | Documents both browser-profile directory names. |
| src/apps/web/server.cpp | Registers batch-session and browser routes. |
| src/apps/web/server_impl.hpp | Declares shared batch-operation interfaces. |
| src/apps/tui/app/tui_services.hpp | Owns the browser-store lifecycle service. |
| src/apps/tui/app/tui_services.cpp | Initializes TUI browser-store lifecycle handling. |
| src/apps/desktop/main.cpp | Installs the cookie-mode bridge. |
| src/apps/desktop/agent_browser_host_common.hpp | Declares shared browser-host helpers. |
| src/apps/desktop/agent_browser_host_common.cpp | Implements shared browser-host helpers. |
| src/apps/desktop/agent_browser_cookie_bridge.hpp | Declares cookie-bridge installation. |
| src/apps/daemon/worker.cpp | Initializes daemon browser-store lifecycle handling. |
| src/adapters/tool/agent_browser/cdp_client.hpp | Declares store-task notification support. |
| src/adapters/tool/agent_browser/cdp_client.cpp | Sends store-task drain requests. |
| openspec/changes/sync-preview-file-to-list/tasks.md | Records file-location work and verification. |
| openspec/changes/sync-preview-file-to-list/proposal.md | Defines preview-file reveal behavior. |
| openspec/changes/sync-preview-file-to-list/.openspec.yaml | Adds change metadata. |
| openspec/changes/simplify-transcript-tool-details/tasks.md | Records tool-detail implementation and validation. |
| openspec/changes/simplify-transcript-tool-details/proposal.md | Defines simplified tool presentation. |
| openspec/changes/simplify-transcript-tool-details/design.md | Documents presentation and history decisions. |
| openspec/changes/simplify-transcript-tool-details/.openspec.yaml | Adds change metadata. |
| openspec/changes/add-sidebar-session-multiselect/tasks.md | Records multi-selection implementation tasks. |
| openspec/changes/add-sidebar-session-multiselect/proposal.md | Defines selection and batch-operation behavior. |
| openspec/changes/add-sidebar-session-multiselect/.openspec.yaml | Adds change metadata. |
| openspec/changes/add-agent-browser-cookie-modes/.openspec.yaml | Adds cookie-mode change metadata. |
| openspec/changes/adapt-sidebars-to-transcript-width/tasks.md | Records left-only collapse validation. |
| openspec/changes/adapt-sidebars-to-transcript-width/specs/webui-side-panel/spec.md | Specifies manual right-panel visibility. |
| openspec/changes/adapt-sidebars-to-transcript-width/proposal.md | Updates responsive-sidebar requirements. |
| docs/user-manual.md | Documents preview-file reveal controls. |
| docs/help-source/sources.json | Adds the browser menu as a help source. |
Review effort: Balanced
Comment on lines
+444
to
+445
| // Agent Browser 按会话 cookie 存储:会话永久删除 / 分叉时给 Desktop 记待办。 | ||
| acecode::AgentBrowserStoreLifecycle agent_browser_stores; |
| workspace_tool_deps->projects_dir = projects; | ||
| register_workspace_tools(*tools, workspace_tool_deps); | ||
| skill_usage = std::make_shared<SkillUsageStore>(get_acecode_dir() + "/.skill_usage_state.json"); | ||
| agent_browser_stores = std::make_unique<AgentBrowserStoreLifecycle>(); |
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.

整合待发布功能:Agent 浏览器 Cookie 三档存储与新标签页、会话多选及批量操作、会话拖入输入框引用、工具详情展示、预览文件定位高亮,以及窄屏侧栏行为和数据目录迁移修复。
为满足现有文件大小限制,将浏览器平台辅助代码和 Cookie bridge 拆为独立模块;保留既有分层和所有权约束。补齐相关 OpenSpec 文档,并更新批量接口的浏览器测试夹具。
验证:Web 全量 3323 项测试与生产构建通过;Windows 全量 6546 项通过、12 项条件跳过、0 失败;Linux ctest 报告 6481 项、0 失败。真实 WebView2 Cookie 与宿主冒烟、46 场景侧栏回归、响应式侧栏/文件定位/工具展示浏览器回归,以及严格分层、所有权、文档路径和 OpenSpec 检查通过。九个平台的打包预检均通过。未执行的 Cookie 菜单及平台行为人工专项仍保留待补验记录。