- Inverted expandedStepIds logic to track collapsed steps instead of expanded
- Steps now show expanded by default, users can collapse if desired
- Added max-h-96 overflow-auto to step containers to prevent overwhelming the view
* feat: host mode prefers OpenWork server for skills/plugins management
- Add hostToken support to OpenWork server client (X-OpenWork-Host-Token header)
- Add includeGlobal query param to listSkills and listPlugins
- Host mode now uses OpenWork server first for:
- refreshSkills (with includeGlobal for global skills)
- refreshPlugins (project scope)
- addPlugin (project scope)
- installSkillCreator
- Falls back to local filesystem if OpenWork server unavailable
- Fix missing WorkspaceInfo import in dashboard.tsx
* feat: add server binary build script and prefer opencode.jsonc
- Add packages/server/script/build.ts for compiling standalone server binary
- Add build:bin and build:bin:all scripts to server package.json
- Update workspace-files.ts to prefer opencode.jsonc over opencode.json
* fix: compile openwork-server as standalone binary on all platforms
Replace shell launcher script with bun build --compile to create
a standalone binary that doesn't require Bun at runtime.
* feat: host mode uses OpenWork server for commands, MCP, and default model
- Prefer OpenWork server for command save/delete/list in host mode
- Use OpenWork server for Notion MCP setup and MCP refresh/connect when available
- Resolve host workspace id via OpenWork server in host mode
- Fetch host capabilities and pass host token to server client
- Read/write default model via OpenWork server when connected
* fix: rebuild openwork-server sidecar reliably
- Use bun build CLI for compiled server binary
- Detect and replace stub launcher before building
* fix: create target-specific openwork-server sidecar
- Copy compiled openwork-server to platform triple name
- Regenerate stub targets when needed
* feat: add OpenWork host orchestration
* fix: resolve host startup errors
* fix: run openwork server sidecar with bun
* feat: default to OpenCode direct
* feat: move status into bottom bar
* feat: auto-start OpenWork server sidecar
* refactor: simplify openwork server host pairing
* chore: prep openwork server sidecar for dev
* chore: allow web CORS in dev
* feat: add workspace config sharing
* Revert "fix: quiet engine doctor for sidecar"
This reverts commit 0d780d272d.
* fix: allow save dialog for export
- Show confirmation dialog instead of silently overwriting existing commands
- Add hint showing the sanitized name when spaces/special chars are used
- Create reusable ConfirmModal component for confirmation dialogs
After saving a command, directly update the local state instead of
relying on loadCommands() which depends on the SDK's cached list.
The SDK doesn't see newly written command files until app restart.
Also add scroll-to-center and highlight animation (2s pulsing indigo
border) to help users locate the newly saved command in the list.
* feat: enable URL-based navigation for web QA and restore workspace switch branding
* fix: use solid router Route list for compatibility
* fix: mount app inside root route for router context
* fix: patch solid router exports
* fix: render views via switch while syncing URL
* push
* fix: allow remote workspace creation in web
* fix: list skills across skill directories
* feat: move context panel to right rail
* fix: align skill paths with opencode docs
* fix: show full-screen boot loader during connect
* fix: improve reload toast UX and allow forcing reload during active runs
* fix: redesign reload toast to be less modal-like and warn about active tasks
* fix: move reload toast to top-center
* chore: refresh tauri Cargo.lock
* fix: start MCP OAuth from the UI
* feat: add manual MCP OAuth callback completion
* fix: clarify MCP reload setup messaging
* chore: allow PORT override for dev server
* fix: show MCP remote callback only for remote workspaces