Commit Graph
192 Commits
Author SHA1 Message Date
Bohdan Triapitsyn 458bc0239d feat(vscode): update layout thresholds and improve server readiness timeout 2026-01-16 18:44:11 +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 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 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
JovinesandJovines 4fa4c8d40b fix(mobile): add iOS keyboard home indicator safe area (#141)
On iOS devices, when the keyboard is open, there's a home indicator bar
(approximately 34px tall) at the bottom of the keyboard that needs additional
safe area padding.

Changes:
- Add --oc-keyboard-home-indicator CSS variable
- Add ios-keyboard-safe-area class for keyboard open state
- Detect iOS userAgent and set keyboard home indicator height
- Apply ios-keyboard-safe-area class to ChatInput when keyboard is open

Co-authored-by: Jovines <jovines@qq.com>
2026-01-14 13:25:18 +02:00
Bohdan Triapitsyn 6eace604de feat: add McpDropdown component with related UI enhancements 2026-01-08 23:14:29 +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
wienans 0bccf71996 feat(vscode) Agent Manager (#87)
* Add Agent Manager

* Basic Mock UP

* Fix Comand naming Ctrl+P Uses Category to group

* Move the UI in views

* Agent Manager Landing Page

* Fix attachment buig

* Change Session Name for multi run to incoporate groupSlug

* First running UI

* Fix Max Model Multi Run

* Rework Agent Group detection

* ignore false positives with ' ' in it

* Simplify Logic

* remove unused dropdowns

* Clean up

* Update Changelog
2026-01-03 23:11:16 +02:00
Bohdan Triapitsyn a0eac480b4 refactor: update keyboard shortcuts to prevent conflicts (#100)
Change Keyboard Shortcuts dialog shortcut from Cmd+H to Cmd+.
Update memory debug shortcut from Cmd+Shift+M to Cmd+Shift+D
Modify model selector shortcut to use Cmd+Shift+M
2026-01-03 02:27:10 +02:00
Michael Sakhniuk ff825c7651 feat: update the shortcuts in the desktop app for macOS (#96)
* feat(ui): update keyboard shortcuts to use platform-appropriate modifier keys

* fix(macos): update keyboard shortcuts to use Cmd modifier

Change Command Palette shortcut from Ctrl+X to Cmd+K
Update all menu shortcuts to use Cmd instead of Ctrl on macOS

* Fix linter issue
2026-01-03 02:18:57 +02:00
wienans 2e732c2481 feat(vscode): Implement Git Backend via VS Code Git extension (#92) 2026-01-01 21:39:05 +02:00
Bohdan Triapitsyn 2f2c127f13 feat(mobile): add keyboard avoidance for input area 2026-01-01 16:02:41 +02:00
Bohdan Triapitsyn 10e64b4f90 feat: add ability to run multiple agents from one prompt in isolated worktrees (#91)
* feat: WIP multirun implementation

* feat(chat): replace MindMap icon with ArrowsMerge

* feat(multirun): add base branch selection for worktrees

* feat(mobile): add multi-run launcher overlay
2026-01-01 14:59:51 +02:00
aurorafluxandauroraflux 39b9f985ce feat: add input bar offset setting for curved screen devices (#89)
Co-authored-by: auroraflux <auroraflux@users.noreply.github.com>
2026-01-01 11:01:46 +02:00
wienans 919eeea53b feat(vscode): Move Navigation into the title bar (#88)
* Move Navigation into the title bar

* Fix spacing

* Update Changelog

* Remove unused function
2025-12-31 17:16:03 +02:00
aurorafluxandauroraflux fa2223a0e7 fix: inconsistent mobile keyboard input bar positioning on Android (#86)
Co-authored-by: auroraflux <auroraflux@users.noreply.github.com>
2025-12-31 15:38:22 +02:00
Bohdan Triapitsyn 69c7ef0222 feat: improve mobile git and diff experience 2025-12-28 14:03:20 +02:00
Bohdan Triapitsyn 0d27c0b6d5 fix: improve keyboard focus handling between inputs for mobile view 2025-12-28 13:43:53 +02:00
Bohdan Triapitsyn ef61c3ec6d fix(layout): add header safe area to mobile settings dialog 2025-12-28 13:15:34 +02:00
Bohdan Triapitsyn df07094d1e feat: enhance sidebar components for VS Code runtime support and improve styling 2025-12-28 03:28:13 +02:00
Bohdan Triapitsyn 0fefc1b301 feat: refactor settings components and sidebar layout 2025-12-28 02:17:09 +02:00
Bohdan Triapitsyn 8e98a72ddf fix: vscode runtime stability and cli connection 2025-12-24 03:31:07 +02:00
Bohdan Triapitsyn d2b3d056cc feat(chat): remove mobile check and open new session draft when no active session 2025-12-22 01:29:11 +02:00
Bohdan Triapitsyn 7699aab123 feat(chat): delay session creation until first message
The app now opens to a new chat by default on startup
New chats no longer create a session until you send your first message
Fixed mobile and VSCode sessions handling for better consistency
2025-12-21 20:18:51 +02:00
Bohdan Triapitsyn 64a0b80710 feat: enhance header tab responsiveness 2025-12-20 14:30:08 +02:00
Bohdan Triapitsyn 79ed6abab7 feat: implement update management system with new update store and UI components 2025-12-20 01:04:32 +02:00
Bohdan Triapitsyn 6323050461 feat: add web update check and installation functionality 2025-12-19 19:57:18 +02:00
Bohdan Triapitsyn bddb174bd3 feat: add about dialog with custom information 2025-12-19 18:59:08 +02:00
Bohdan Triapitsyn 560db1c5fa feat(macos): implement comprehensive native menu system 2025-12-19 17:57:50 +02:00
Bohdan Triapitsyn 0b091c6c15 feat(ui): improve theme consistency and add diff panel shortcut 2025-12-19 16:48:25 +02:00
Bohdan Triapitsyn d28c4e9da6 feat: enhance mobile experience by adjusting layout and keyboard handling 2025-12-18 11:20:37 +02:00
Bohdan Triapitsyn 5186a4c9e2 feat: add settings dialog and header button for mobile view 2025-12-17 23:12:59 +02:00
Bohdan Triapitsyn 9bd866ade1 feat: add update check functionality and improve menu options for macOS 2025-12-17 18:57:20 +02:00
Bohdan Triapitsyn c87815a2a6 feat: enhance UI components, update theme handling, and improve tool expansion logic for better performance 2025-12-16 13:14:28 +02:00
theblazehen 235f80643e feat: add UI customization and model management features (#60)
* feat: add UI customization and model management features

Add comprehensive UI customization options and enhanced model selection:

- **Favorite & Recent Models**: Star models for quick access, track 5 most recent
  - Add favorite/recent sections to model dropdowns
  - Persist preferences in local storage
  - Works in ModelControls and ModelSelector components

- **Tool Call Expansion Settings**: Control default expansion state for tool outputs
  - Three modes: collapsed, activity (summary), detailed
  - Applies to activity groups and individual tool calls
  - Configurable in Appearance Settings

- **Font Size & Spacing Controls**: Adjustable typography and layout density
  - Font size: 50-200% scaling of all semantic typography
  - Spacing/padding: 50-200% scaling of margins, gaps, line heights
  - Real-time preview with reset buttons
  - Settings in Appearance Settings

- **VSCode Extension Settings View**: Full settings access in VSCode extension
  - Add settings navigation and view type
  - Settings button in header
  - Navigate between sessions, chat, and settings

Technical changes:
- Enhanced useUIStore with new state management
- Dynamic CSS variable scaling for typography and spacing
- Typography helper functions for variable access
- ThemeProvider integration for auto-applying scales

* fix: hide theme mode in VSCode and fix detailed tool expansion

- Hide "Theme Mode" setting in VSCode extension settings as VSCode
  dynamically applies its own theme to the extension
- Fix bug where tools from subsequent messages in a turn weren't
  expanded when "Detailed" mode was selected
- Now correctly aggregates all tool IDs from turnGroupingContext when
  calculating effective expanded tools for progressive groups
2025-12-15 18:11:38 +02:00
Bohdan Triapitsyn 3b9b65a398 feat: simplify mobile header and improve context usage display 2025-12-15 14:07:18 +02:00
Bohdan Triapitsyn f9b3646f17 fix: Improve mobile responsiveness for diff view 2025-12-15 13:43:32 +02:00
Bohdan Triapitsyn 0b92bbc487 feat: Replaced Monaco diff editor with Pierre/diffs for better performance 2025-12-14 02:29:46 +02:00
Bohdan Triapitsyn bb72c0fb0c feat: vscode extension (#59)
* feat: add initial VS Code extension plan and implementation tasks

* feat(vscode): added initial version of an Openchamber VSCode extension

* feat(vscode): enhance VS Code extension with theme integration and session management

* feat(vscode): implement connection status handling and overlay in VSCode layout

* feat: move extension to secondary sidebar

* chore: upgrade @opencode-ai/sdk to 1.0.150

* vscode: editor bridge, file picker, click-to-open in tool parts

* vscode: layout session lifecycle, theme sync, typography overrides

* ui: compact mode for vscode, model search, autocomplete width fixes

* perf: scroll force flag, raf placeholder, git polling backoff

* ui: tool output styling, markdown code block fix, gitignore

* refactor: update typography handling for VSCode runtime, remove unused styles

* docs: update README with VS Code extension details and add extension image

* docs: update changelog with new features and performance improvements
2025-12-13 16:34:17 +02:00
Bohdan Triapitsyn 2779e19103 feat: add fork assistant message to new session
Add fork button on assistant messages to start new execution session
Include synthetic meta-instruction when forking to explain context
2025-12-09 00:40:43 +02:00
Bohdan Triapitsyn cac0cc9c67 fix: update styles in Sidebar and SessionSidebar components 2025-12-07 20:46:40 +02:00
Bohdan Triapitsyn 4b2edf7318 Initial public release 2025-12-07 19:32:53 +02:00