Commit Graph
100 Commits
Author SHA1 Message Date
Bohdan Triapitsyn 2618efe8e5 release v1.5.4 2026-01-22 19:49:52 +02:00
Bohdan Triapitsyn 64da44e7f6 feat(layout): refine desktop sidebar background overlays 2026-01-22 19:32:02 +02:00
Bohdan Triapitsyn 87175566b9 feat: add Apply Patch tool with patch input and diff view (#196)
* feat: add Apply Patch tool with patch input and diff view

Introduce Apply Patch tool with a patch input field and diff preview
Display target file path or file count for patch operations in tool UI
Update status label to show applying patch during execution

* fix: include apply_patch in editing tools detection
2026-01-22 19:09:07 +02:00
Bohdan Triapitsyn ef4d37df09 chore: add oc integration and review workflows 2026-01-22 18:41:46 +02:00
Bohdan Triapitsyn abf6ed37ae chore[ci]: use env var for OPENCODE_SERVER_PASSWORD in workflows 2026-01-22 18:34:39 +02:00
Bohdan Triapitsyn 2dd4a7a3a6 feature: header layout changes (#195)
* fix(ui): remove fixed sessions button and mac titlebar coupling

Remove fixed sessions button from header on desktop Mac
Eliminate Mac titlebar spacer and drag-to-dock logic in sidebar
Update layout to rely on standard header/sidebar without mac-specific tweaks

* feat: improve mobile header with session toggle and back button

Add back button in mobile header to exit session switcher
Show Sessions label when session switcher is open in mobile header
Toggle between opening sessions and back navigation based on session state
2026-01-22 14:12:19 +02:00
Bohdan Triapitsyn 05caf4cc58 feat: provider config management (#193)
* feat: support scoped removal of provider config (auth, user, project, custom)

* feat: implement UI session token management with cookies for window visibility control
2026-01-22 13:45:30 +02:00
Bohdan Triapitsyn d4f1d8abbf feat: add workbox-window and improve event stream cleanup
Add workbox-window dependency to bun.lock and web package.json
Cancel and release the stream reader on disconnect to avoid leaks
2026-01-22 12:30:33 +02:00
Bohdan Triapitsyn d97181bcd2 feat(UI): Introduce new UI components for file attachments and related views (#191)
Add file management API and UI components
Implement directory listing, search and CRUD operations in desktop backend
Expose new Files API on frontend to list, search, and modify files
2026-01-22 12:21:19 +02:00
Bohdan Triapitsyn 1f23b63c0b feat: add Web Push API support and PWA integration (#189)
* feat: add Web Push API support and PWA integration

Add web Push API with subscribe/unsubscribe and visibility endpoints
Introduce usePushVisibilityBeacon and useSessionDeepLink hooks
Integrate PWA with service worker, registerSW, and VAPID key persistence

* feat: add heartbeat visibility beacon for web runtime

Add a 10s heartbeat to ping visibility while visible
Subscribe to visibilitychange, focus, blur, pageshow, and pagehide events to report state
Clear heartbeat interval on unmount to avoid leaks
2026-01-22 01:19:24 +02:00
Bohdan Triapitsyn d01b58593a release v1.5.3 2026-01-20 15:32:52 +02:00
Bohdan Triapitsyn 6544b12e78 refactor: streamline chat scroll manager
- Removed unused activeTurnAnchorId and activeTurnSpacerHeight from MemoryDebugPanel.
- Simplified useChatScrollManager by eliminating unnecessary state and functions related to active turn anchoring.
- Updated loadMessages function signatures to accept an optional limit parameter across message and session stores.
- Enhanced scroll behavior in useScrollEngine to support dynamic bottom tracking during animations.
- Improved event stream handling to allow for resyncing messages with a specified limit.
- Cleaned up session memory state to remove active turn properties, focusing on viewport anchoring.
2026-01-20 03:23:39 +02:00
Bohdan Triapitsyn 8fa16baf3b fix: improve anchor management by adding tolerance for anchor position and refining scroll behavior 2026-01-19 16:23:27 +02:00
Bohdan Triapitsyn b95957fe9c fix: enhance scroll management by adding grace period for anchor clearing and direct scroll intent detection 2026-01-19 15:38:15 +02:00
Bohdan Triapitsyn 2743349b5e feat: add memory limits UI settings for messages in session 2026-01-19 14:56:27 +02:00
Bohdan Triapitsyn 477c17f02c fix: update stroke and fill colors in icon-titlebar.svg to match branding 2026-01-19 14:10:36 +02:00
Bohdan Triapitsyn f59c7b2525 fix: skip trimming for active sessions to preserve anchor 2026-01-19 14:04:23 +02:00
Bohdan Triapitsyn 0f7eefe574 refactor(vscode): simplify accent color derivation 2026-01-19 13:53:29 +02:00
Bohdan Triapitsyn 494da1315c refactoring: switched to gpt-5-nano for commit message generation
Remove commitMessageModel from persisted settings and defaults
Eliminate UI controls and state for commitMessageModel in GitSettings and config store
Update backend and persistence layers to stop reading or writing commitMessageModel
2026-01-19 03:42:34 +02:00
Bohdan Triapitsyn ce1622b1e2 refactor: replace 'sonner' toast import with local toast component (#177) 2026-01-19 02:50:40 +02:00
Bohdan Triapitsyn 28d9324735 Fix/active session tracking (#176)
* refactor(chat): enhance scroll management

Add bottom detection with epsilon tolerance for precise positioning
Introduce pending anchor restoration for seamless session switching
Include active turn anchor and spacer height in message store
2026-01-19 02:48:56 +02:00
Bohdan Triapitsyn 3df362b220 feat(web): enable automatic port assignment if default is in use (#175) 2026-01-18 18:18:42 +02:00
Bohdan Triapitsyn 6c3b653fbd refactor: allow dot files and directories in file search logic 2026-01-18 18:01:26 +02:00
Bohdan Triapitsyn 85f41c39c1 refactor(chat): enhance scroll management (#174)
- Add bottom detection with epsilon tolerance for precise positioning
- Introduce pending anchor restoration for seamless session switching
Include active turn anchor and spacer height in message store
2026-01-18 18:00:19 +02:00
Bohdan Triapitsyn 24969ba856 feat: implement file editing capabilities with CodeMirror integration
- Added CodeMirror editor for file content editing in FilesView.
- Introduced draft saving functionality with unsaved changes confirmation dialog.
- Implemented file writing API to persist changes to the filesystem.
- Enhanced language support for syntax highlighting based on file extensions.
- Updated UI components to support new editing features, including save and discard options.
- Refactored line selection logic for improved user experience on both desktop and mobile.
- Added new utility functions for language detection by file extension.
- Introduced a new theme for CodeMirror to align with the application's design.
2026-01-18 17:29:31 +02:00
Bohdan Triapitsyn 8879573def release v1.5.2 2026-01-17 22:44:09 +02:00
Bohdan Triapitsyn bb9c181b72 feat(session): enhance delete dialog for worktrees 2026-01-17 22:30:30 +02:00
Bohdan Triapitsyn 1ca08cf2d8 Revert "feat: add --remote-url CLI option to connect to remote OpenCode instances (#161)"
This reverts commit 53f8e1324e.
2026-01-17 22:20:26 +02:00
Bohdan Triapitsyn 1ce24d474c feat(session): enhance BranchPickerDialog with improved layout and new worktree session description 2026-01-17 22:15:28 +02:00
Bohdan Triapitsyn 033e370c55 feat(git): cache gitmojis locally with ttl 2026-01-17 11:17:12 +02:00
Bohdan Triapitsyn 71857eab99 style(session): prevent text selection in sidebar 2026-01-17 11:09:05 +02:00
Bohdan Triapitsyn 2bcae5b49f feat: update MCP server configuration message and enhance new worktree session visability button 2026-01-17 11:00:21 +02:00
Bohdan Triapitsyn 8a3e432dd0 perf: optimize message loading based on streaming state
Decreased message limit to 90 for historical views when not streaming.
Add fetch buffer to preload additional messages for efficient syncing.
2026-01-17 02:32:22 +02:00
Bohdan Triapitsyn 458bc0239d feat(vscode): update layout thresholds and improve server readiness timeout 2026-01-16 18:44:11 +02:00
Bohdan Triapitsyn 976018dd32 feat: add copy diagnostics button
Add copy diagnostics button in About dialog.
Button copies report with OpenChamber state, OpenCode health, directories, and projects.
Show success or error toasts after copying attempt.
2026-01-16 14:43:53 +02:00
Bohdan Triapitsyn 5389bae465 feat: enhance process cleanup to avoid orphaned processes and improve reliability 2026-01-16 02:38:09 +02:00
Bohdan Triapitsyn f0fe9632ef release v1.5.1 2026-01-16 02:29:48 +02:00
Bohdan Triapitsyn fafdce62d7 feat: fix orphaned OpenCode processes cleanup on restart or exit 2026-01-16 02:20:12 +02:00
Bohdan Triapitsyn ba49a291bd release v1.5.0 2026-01-16 01:24:38 +02:00
Bohdan Triapitsyn cf9b7a6516 feat: implement process cleanup for OpenCode server and enhance internal function handling 2026-01-16 01:22:43 +02:00
Bohdan Triapitsyn 1ae18d4793 feat: implement login shell path detection and augment environment variables for command execution 2026-01-16 00:42:18 +02:00
Bohdan Triapitsyn b1964c217c feat: enhance VSCode layout with expanded view and responsive design; update sidebar visibility and settings for VSCode runtime 2026-01-16 00:26:29 +02:00
Bohdan Triapitsyn 592351df9f feat: add notifications for agent questions 2026-01-16 00:26:29 +02:00
Bohdan Triapitsyn 1be5dfda05 feat: add Files tab for browsing workspace files (#154)
* feat: add Files tab for browsing workspace files

- Add Files tab between Diff and Terminal in header
- Implement hierarchical file tree with expand/collapse
- Add fuzzy search with debouncing and relevance ranking
- Support gitignore filtering via `git check-ignore` (web + desktop)
- Add syntax highlighting for 150+ file types
- Add image preview (SVG, PNG, JPG, etc.)
- Add line numbers, wrap toggle, and copy button
- Desktop: split-pane layout matching DiffView
- Mobile: drill-in navigation with full-width sidebar
- Update help dialog with Cmd+3 shortcut
- Increase header breakpoint to 940px for new tab

* feat: enhance context and session stores to track agent/model/variant choices for historical sessions

* feat: implement line selection and commenting functionality in FilesView
2026-01-15 20:19:06 +02:00
Bohdan Triapitsyn ecf81c901d feat: enhance DiffViewer with asking agent for comment functionality and mobile support (#153) 2026-01-15 18:59:23 +02:00
Bohdan Triapitsyn a360ee9d5b feat: enhance waitForReady function to accept working directory parameter for context-aware readiness checks 2026-01-15 18:56:14 +02:00
Bohdan Triapitsyn be6aba3605 feat(web): auto-resolve available port for serve 2026-01-15 00:52:08 +02:00
Bohdan Triapitsyn ffb4b5e69f chore: update changelog and enhance README files with badges and project information 2026-01-15 00:49:58 +02:00
Bohdan Triapitsyn 060aa4b79f chore: update changelog with default identity setting and add new badges to README 2026-01-15 00:24:33 +02:00
Bohdan Triapitsyn e0279e59b0 feat: implement default Git identity management and local identity check 2026-01-14 22:34:17 +02:00
Bohdan Triapitsyn 475bd3288a release v1.4.9 2026-01-14 18:05:52 +02:00
Bohdan Triapitsyn 032229c7a2 feat(vscode): add session editor panel (#146)
Add command to open active session in editor panel.
Introduce editor view mode for displaying sessions alongside files.
Update toolbar navigation for editor and sidebar modes.
2026-01-14 17:13:47 +02:00
Bohdan Triapitsyn c52a5f27a2 feat(vscode): enhance server readiness with multiple URL candidates (#145)
Add support for multiple candidate base URLs in readiness check.
Automatically set API URL override upon successful server connection.
2026-01-14 15:40:41 +02:00
Bohdan Triapitsyn be5a12af6e refactor(diff): enchance file list display 2026-01-14 15:21:44 +02:00
Bohdan Triapitsyn c4fb9d5730 fix(upload): increase attachment size limit to 50mb (#144)
* fix(upload): increase attachment size limit to 50mb

Raises body limits in web proxy and desktop app. Adds client-side size checks and better 413 error handling.

* fix(client): auto-compress large images to avoid server body limits

Adds client-side compression for images >1MB. Resizes to max 2048px and converts large PNGs to JPEG. Adds detailed logging for debugging.

* chore: remove debug logs from client and proxy
2026-01-14 13:23:17 +02:00
Bohdan Triapitsyn 5ffec2acba release v1.4.8 2026-01-14 02:55:52 +02:00
Bohdan Triapitsyn 1319033df9 feat(git): enhance token authentication and credential handling 2026-01-14 02:54:48 +02:00
btriapitsyn fa83c1e645 feat(git): add token authentication and credential discovery
Add support for token-based git authentication in identity profiles.
Enable discovery and import of credentials from ~/.git-credentials file.
Introduce remote URL-based filtering for token identities in git view.
2026-01-14 02:47:26 +02:00
Bohdan Triapitsyn 126cc366d7 chore: updated changelog 2026-01-14 01:47:24 +02:00
Bohdan Triapitsyn 84650e16c3 feat(chat): add turn duration display 2026-01-14 01:23:24 +02:00
Bohdan Triapitsyn b84c17e0e2 feat: add notification mode settings and enhance notification handling 2026-01-14 01:03:26 +02:00
Bohdan Triapitsyn 0d43725802 fix(web): refine OpenCode health monitoring 2026-01-14 00:25:23 +02:00
Bohdan Triapitsyn fbb058ed97 feat(server): add function to wait for OpenCode port 2026-01-13 19:44:13 +02:00
Bohdan Triapitsyn 1e1ca9f15e release v1.4.7 2026-01-10 11:02:25 +02:00
Bohdan Triapitsyn eca270ba97 feat: enhance TerminalViewport styling and hide system caret in terminal input 2026-01-10 11:01:16 +02:00
Bohdan Triapitsyn 3809fdb93c feat: add functions to retrieve login shell path and build augmented PATH 2026-01-10 10:26:58 +02:00
Bohdan Triapitsyn 04804993f0 refactor: streamline AGENTS.md for clarity and updated project structure 2026-01-10 01:02:00 +02:00
Bohdan Triapitsyn 21fdba08a3 feat: Integrate ClawdHub skill registry 2026-01-10 01:01:47 +02:00
Bohdan Triapitsyn 591cbb723a release v1.4.6 2026-01-09 22:52:11 +02:00
Bohdan Triapitsyn 87d0f0b6d1 feat: implement health check for OpenCode server readiness during startup 2026-01-09 22:50:52 +02:00
Bohdan Triapitsyn 4a87126b74 feat: added questions and permissions 2026-01-09 21:38:22 +02:00
Bohdan Triapitsyn 4db0d01fd9 feat: enhance OpenCodeManager with improved server readiness check and CLI availability detection 2026-01-09 18:03:12 +02:00
Bohdan Triapitsyn f1889d73af refactor: streamline OpenCode process management by removing unused code and integrating SDK for server initialization 2026-01-09 12:23:12 +02:00
Bohdan Triapitsyn d1ac3f92b4 refactor: clean up OpenCode manager by removing unused code and optimizing server initialization 2026-01-09 12:15:09 +02:00
Bohdan Triapitsyn 6fdeb833b2 feat: disable spell check and autocomplete for input, number input, and textarea components 2026-01-09 11:13:52 +02:00
Bohdan Triapitsyn 2382c6e82a release v1.4.5 2026-01-09 00:01:22 +02:00
Bohdan Triapitsyn e134f0f14e feat: implement DirectoryAutocomplete component and integrate it into DirectoryExplorerDialog for enhanced path selection 2026-01-08 23:53:03 +02:00
Bohdan Triapitsyn 6eace604de feat: add McpDropdown component with related UI enhancements 2026-01-08 23:14:29 +02:00
Bohdan Triapitsyn 699fc7596a feat: rename summarize command to compact and update related descriptions for session compression 2026-01-08 21:10:38 +02:00
Bohdan Triapitsyn 49fb01f42d feat: implement fuzzy matching for autocomplete components and add Fuse.js for improved search functionality 2026-01-08 20:49:22 +02:00
Bohdan Triapitsyn 2a895311d9 feat: enhance autocomplete components with agent and command metadata support 2026-01-08 20:19:33 +02:00
Bohdan Triapitsyn a2f2d91a22 feat: add SkillAutocomplete component and integrate skill selection in ChatInput 2026-01-08 19:58:31 +02:00
Bohdan Triapitsyn b9ed2217a6 feat: enhance environment path handling with buildAugmentedPath function 2026-01-08 19:33:43 +02:00
Bohdan Triapitsyn 04d6a2b2bf feat: add VS Code runtime detection to session sidebar and agent manager components 2026-01-08 17:59:36 +02:00
Bohdan Triapitsyn 59031ff99b chore: update changelog with model variants support and agent cycling shortcut change 2026-01-08 17:21:44 +02:00
Bohdan Triapitsyn bc4425567d feat: add keyboard shortcuts for cycling agent and thinking variant 2026-01-08 17:20:33 +02:00
Bohdan Triapitsyn 4b0ae1d95f feat: add variant support across model selection and multi-run components 2026-01-08 17:01:24 +02:00
Bohdan Triapitsyn ab731fdc79 feat: add default variant support in settings and UI components 2026-01-08 16:08:51 +02:00
Bohdan Triapitsyn 8e777a94c2 feat: add support for model variants across chat components and session management 2026-01-08 14:48:06 +02:00
Bohdan Triapitsyn 2cbec5c3ce release v1.4.4 2026-01-08 02:05:17 +02:00
Bohdan Triapitsyn cc09f802ce feat: add new session button and integrate worktree session creation logic 2026-01-08 01:48:42 +02:00
Bohdan Triapitsyn 8902662f74 feat: add rename branch functionality with UI integration 2026-01-08 01:13:51 +02:00
Bohdan Triapitsyn d6f74087c4 feat: update SessionSidebar to include new session creation and worktree handling 2026-01-08 00:29:20 +02:00
Bohdan Triapitsyn 29ba318f0f feat: enhance SessionSidebar with worktree metadata and UI updates 2026-01-08 00:06:02 +02:00
Bohdan Triapitsyn c7700d5384 feat: add auto-create worktree setting and related UI components 2026-01-07 23:37:32 +02:00
Bohdan Triapitsyn b6646b6b3e feat: enhance worktree session creation with loading screen 2026-01-07 23:00:26 +02:00
Bohdan Triapitsyn d92a1ab297 feat: implement worktree session creation and management
- Added `createWorktreeSession` utility to handle the creation of new sessions with auto-generated worktrees.
- Introduced branch name generation utilities for creating unique and friendly branch names.
- Updated `CommandPalette` to trigger worktree session creation via a command.
- Refactored keyboard shortcuts to support new worktree session creation with Shift + Cmd/Ctrl + N.
- Enhanced project settings to include worktree defaults (branch prefix, base branch, auto-create option).
- Updated persistence logic to preserve worktree defaults when saving project settings.
- Modified menu actions to initiate new worktree sessions.
- Ensured proper handling of existing branches to avoid conflicts during worktree creation.
2026-01-07 22:06:28 +02:00
Bohdan Triapitsyn 4f6eea9ea5 refactor: reorganize worktree action buttons in SessionDialogs component 2026-01-07 22:01:49 +02:00
Bohdan Triapitsyn 4433888903 feat: implement worktree setup commands management
- Introduced `readFile` and `writeFile` methods in the FilesAPI for reading and writing files.
- Added `execCommands` method to execute shell commands in a specified directory.
- Implemented `runWorktreeSetupCommands` function to handle setup commands for worktrees.
- Created `OpenChamberConfig` service for managing project-specific configuration, including setup commands.
- Enhanced `useMultiRunStore` to save and execute setup commands during multi-run creation.
- Updated VSCode bridge to handle file read/write and command execution requests.
- Added server endpoints for reading and writing files, and executing shell commands.
2026-01-07 22:01:49 +02:00
Bohdan Triapitsyn 18c5b4c7b5 feat: add multi-project support (#110)
* feat: Implement project management store with project path validation and synchronization

- Added `useProjectsStore` for managing projects, including adding, removing, renaming, and validating project paths.
- Implemented persistence for projects and active project ID using safe storage.
- Introduced synchronization from desktop settings to keep project data consistent.
- Enhanced session store to manage sessions by directory and added new methods for session management.
- Updated todo store to fetch session todos based on the directory context.
- Refactored server code to validate and resolve project directories for various API endpoints.
- Added project entry validation and sanitization to ensure data integrity.

* feat(settings): migrate legacy project settings and update settings loading logic

* feat: enhance project management with directory-aware settings and improved agent/command source handling

* feat: enhance session and project management with directory-aware settings and improved configuration refresh logic

* feat: enhance project management with worktree manager integration and project directory resolution

* feat: enhance agent groups store with project directory resolution and loading logic

* feat: add heartbeat management and global wrapping for SSE blocks in agent and chat providers

* feat: refactor command and project handling in useCommandsStore

- Replaced useDirectoryStore with useProjectsStore to manage project paths.
- Introduced getRequestDirectory function to determine the active project directory.
- Updated command fetching to respect project-level scoping.
- Enhanced error handling and logging for command configuration fetching.
- Improved command configuration saving and updating to utilize project directory context.

feat: enhance project path normalization in useProjectsStore

- Added resolveTildePath function to expand paths starting with ~.
- Updated normalizeProjectPath to utilize home directory for path expansion.

fix: update permission handling in useSessionStore

- Changed Permission type to PermissionRequest for clarity.
- Updated respondToPermission method to use requestId instead of permissionId.

refactor: improve permission utilities

- Introduced types for PermissionAction and PermissionRule.
- Enhanced getAgentDefinition and resolveConfigStore functions for better type safety.
- Added resolvePermissionAction to streamline permission resolution logic.

feat: add agent configuration retrieval endpoint

- Implemented new API endpoint to fetch agent configuration based on project directory.
- Enhanced getAgentPermissionSource to prioritize project-level permissions.

chore: update SDK version in package.json files

- Bumped @opencode-ai/sdk version to ^1.1.1 across all relevant package.json files.

refactor: streamline bridge message handling

- Updated handleBridgeMessage to accept directory parameter for agent and command requests.
- Improved local API request handling to extract directory from query parameters and headers.

feat: enhance project configuration management

- Added functions to retrieve and merge project configuration paths.
- Improved handling of existing project configuration files for agents and commands.

* feat: enhance VSCode integration and session management

- Added support for a sticky sidebar header background in light and dark themes.
- Introduced functions to read VSCode workspace directory and check if running in VSCode.
- Implemented detailed logging for session loading and creation processes.
- Enhanced session filtering based on directory structure and canonical paths.
- Added a new method to reorder projects and prevent modifications in VSCode workspace.
- Improved error handling and logging for app initialization and markdown file parsing.
- Updated API checks and health checks to ensure readiness before proceeding.
- Refactored code for better readability and maintainability across various modules.

* feat: improve agent and branch selection logic, enhance session management, and update multi-run creation response

* feat: add worktree management actions in agent group detail and sidebar, including delete and keep only options

* fix(ui): share IME guard and cover multi-run

* fix(session): reduce maximum visible sessions in group from 7 to 5
2026-01-06 21:31:04 +02:00