- Added skill scope helpers and CRUD operations for skills in opencodeConfig.ts.
- Introduced API endpoints for skill management in main.tsx and index.js.
- Enhanced server-side logic to support skill discovery, creation, updating, and deletion.
- Implemented supporting file operations for skills, including reading, writing, and deleting files.
- Updated package.json to use the latest version of @opencode-ai/sdk.
- Added support for project-level agents, allowing agents to be created, updated, and deleted within a specified working directory.
- Introduced `getAgentScope` function to determine the scope of agents based on their existence in project or user directories.
- Updated `getAgentSources`, `createAgent`, `updateAgent`, and `deleteAgent` functions to handle project-level paths and configurations.
- Enhanced logging to provide clearer information about agent operations, including scope and working directory.
- Refactored configuration reading and writing to accommodate project-specific configurations alongside user-level settings.
- Introduced command scope types (user and project) to manage command configurations at different levels.
- Enhanced command management functions to check and create commands based on their scope.
- Updated the API to handle command creation, updates, and deletions with respect to their scope.
- Added a reload button in the AboutSettings component to refresh OpenCode configuration.
- Improved command source retrieval to prioritize project-level commands over user-level commands.
- Refactored related functions to ensure proper handling of command paths and configurations based on scope.
* 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