* 🐛 fix(cc-resume): guard resume against cwd mismatch (LOBE-7336)
Claude Code CLI stores sessions per-cwd under `~/.claude/projects/<encoded-cwd>/`,
so resuming a session from a different working directory fails with
"No conversation found with session ID". Persist the cwd alongside the session
id on each turn and skip `--resume` when the current cwd can't be verified
against the stored one, falling back to a fresh session plus a toast explaining
the reset.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* ✨ feat(cc-desktop): Claude Code desktop polish + completion notifications
Bundles the follow-on UX improvements for Claude Code on desktop:
- Completion notifications: CC / Codex / ACP runs now fire a desktop
notification (when the window is hidden) plus dock badge when the turn
finishes, matching the Gateway client-mode behavior.
- Inspector + renders: add Skill and TodoWrite inspectors, wire them
through Render/index + renders registry, expose shared displayControls.
- Adapter: extend claude-code adapter with additional event coverage and
regression tests.
- Sidebar / home menu: clean up Topic list item and dropdown menu, rename
"Claude Code Agent" entry point to "Add Claude Code" across EN/ZH.
- Assorted: NotificationCtr, Browser, WorkflowCollapse, ServerMode upload,
agent/tool selectors — small follow-ups surfaced while building the
above.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* ✅ test(browser): mock electron.app for badge-clear on focus
Browser.focus handler now calls app.setBadgeCount / app.dock.setBadge to
clear the completion badge when the user returns. Tests imported the
Browser module without exposing app on the electron mock, causing a
module-load failure.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* ✨ feat(cc-topic): folder chip + unify cwd into workingDirectory (#13949)
✨ feat(cc-topic): show bound folder chip and unify cwd into workingDirectory
Replace the separate `ccSessionCwd` metadata field with the existing
`workingDirectory` so a CC topic's bound cwd has one source of truth:
persisted on first CC execution, read back by resume validation, and
surfaced in a clickable folder chip next to the topic title on desktop.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* v2 init
* chore: update eslint suppressions and package dependencies
- Removed several eslint suppressions related to array sorting and reversing from eslint-suppressions.json to clean up the configuration.
- Updated @lobehub/lint package version from 2.0.0-beta.6 to 2.0.0-beta.7 in package.json for improvements and bug fixes.
- Made minor formatting adjustments in vitest.config.mts and various SKILL.md files for better readability and consistency.
Signed-off-by: Innei <tukon479@gmail.com>
* fix: clean up import statements and formatting
- Removed unnecessary whitespace in replaceComponentImports.ts for improved readability.
- Standardized import statements in contextEngineering.ts and createAgentExecutors.ts by adding missing spaces for consistency.
Signed-off-by: Innei <tukon479@gmail.com>
* chore: update eslint suppressions and clean up code formatting
* 🐛 fix: use vi.hoisted for mock variable initialization
Fix TDZ error in persona service test by using vi.hoisted() to ensure
mock variables are available when vi.mock factory runs.
---------
Signed-off-by: Innei <tukon479@gmail.com>
* 🐛 fix(upload): resolve file upload button unresponsive issue
The file upload dropdown menu was not properly handling the interaction
between the dropdown and the Upload component, causing the menu to block
file selection events.
Changes:
- Add controlled open state for upload dropdown
- Mark upload menu items with closeOnClick: false to prevent premature closing
- Manually close dropdown after file selection completes
- Enhance ActionDropdown to support interactive elements with proper event handling
- Add scheduleClose functionality for delayed menu closing
Closes LOBE-3503
* 🔧 chore: update package dependencies and enhance VSCode settings
- Bump version of @lobehub/ui to ^4.22.0 in package.json.
- Update VSCode settings to exclude additional locale directories from search, improving performance and relevance.
Signed-off-by: Innei <tukon479@gmail.com>
---------
Signed-off-by: Innei <tukon479@gmail.com>
* ✨ feat(mcp): improve system dependency checks and error handling
- Refactored checkSystemDependency method to streamline command execution and error handling.
- Removed unnecessary npx command for package version checks, simplifying the installation verification process.
- Enhanced error handling in InstallError component for better user feedback during MCP installation failures.
- Updated UpdaterManager to prevent auto-update checks in development mode.
Signed-off-by: Innei <tukon479@gmail.com>
* ✨ feat: update ChatWithModel component to use DropdownMenu
- Replaced the Dropdown component with DropdownMenu for better integration with UI library.
- Added type definitions for DropdownMenuProps to support new properties.
Signed-off-by: Innei <tukon479@gmail.com>
---------
Signed-off-by: Innei <tukon479@gmail.com>
* ✨ feat: add nativeButton prop to various components for improved UI consistency
- Updated SwitchPanel, HeaderActions, ActionPopover, and ModelSwitchPanel to include nativeButton={false} for better button behavior.
- Introduced ToolsList component to enhance the tools dropdown functionality in the ActionBar.
- Refactored Tools component to utilize the new ToolsList and streamline the rendering of tool items.
Signed-off-by: Innei <tukon479@gmail.com>
* 🔧 refactor: correct CheckboxItem import and enhance Tools component structure
- Fixed import path for CheckboxItem in multiple files to ensure consistent naming.
- Introduced PopoverContent component to streamline the rendering of tool items in the Tools component.
- Refactored Tools component to utilize PopoverContent for improved organization and maintainability.
Signed-off-by: Innei <tukon479@gmail.com>
* ✨ feat: enhance PopoverContent and ToolsList components for improved UI
- Introduced static styles for header and footer in PopoverContent to enhance layout consistency.
- Updated ToolsList to include itemIcon styling for better alignment and presentation of icons.
- Modified ToolItem to remove padding for a cleaner appearance.
- Added hasPadding prop to CheckboxItem for flexible padding control.
Signed-off-by: Innei <tukon479@gmail.com>
---------
Signed-off-by: Innei <tukon479@gmail.com>
* chore: update lint to use type imports
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* revert
* chore: add workspaces and overrides to package.json
* refactor: clean up imports in lobe-web-browsing executor
---------
Co-authored-by: Claude <noreply@anthropic.com>