Releases: chriswritescode-dev/opencode-manager
Releases · chriswritescode-dev/opencode-manager
Release v0.9.16
Features
OAuth Improvements
- Dynamic OAuth Prompt System: Added support for conditional prompt fields with different input types (text, select) that adapt based on previous inputs
- Copy Buttons with Toast Notifications: Added convenient copy buttons for device codes, URLs, and authorization codes with toast feedback
- Auto-start Authorization: Automatically starts authorization flow for single-method OAuth providers
- Improved OAuth Dialog UX: Enhanced responsive layout, better truncation for long labels, and proper session state management
Mobile Experience
- Swipe-back Navigation: Implemented native swipe-to-close gestures for mobile modals and dialogs with smooth push/pop animations
- Page Transition Component: Added reusable navigation component with directional animations
- Mobile File Browser Sheet: New sheet component optimized for mobile file browsing
Fixes
- Stale Model Cleanup: Added validation to remove non-existent models from recentModels and validate current selection against available providers
- Config Cache Management: Replaced non-existent function with proper
invalidateConfigCachesimplementation - JSON Pointer Path Decoding: Fixed decoding of JSON Pointer paths in validation errors for proper error display
Refactoring
- UI Component Consolidation: Merged
RepoSelectionBarintoRepoListControlsto reduce component fragmentation - Tabs Component: Replaced native radio buttons with Radix UI Tabs in
AddRepoDialogfor better consistency - Simplified Dialog Help Text: Streamlined descriptions and help text across repository dialogs
Technical Improvements
- Added comprehensive tests for model fallback logic and swipe gesture behavior
- Improved accessibility with
prefers-reduced-motionsupport - Enhanced touch targets with consistent min-height on inputs
- Better error handling in OAuth callback flow
Full Changelog: v0.9.15...v0.9.16
v0.9.15
Changes
Features
- Add OpenCode models editor with mobile repos UI refactoring
Fixes
- Read config from file for reload and improve provider validation
- Clean up mobile repo controls and prevent event bubbling
Chore
- Bump version to 0.9.15
v0.9.13
What's Changed
Improvements
- Add an OpenCode models editor for managing provider model definitions directly in settings
- Add explicit OpenCode host import and repo relink support
- Improve OpenCode config handling and shared schema/types for provider model configuration
Bug Fixes
- Fix config cache invalidation by using the correct cache reset path after updates
- Reload OpenCode config and invalidate provider caches after credential changes
- Protect existing workspace OpenCode state during host import instead of replacing it by default
- Make host state import fail safely by staging imported data before replacing workspace state
- Improve frontend import error handling so blocked imports show clearer guidance
- Keep invalid OpenCode configs visible in Settings with field-level validation issues
- Improve OpenCode startup errors by summarizing config validation paths instead of raw stack-heavy stderr
- Fix OpenCode import handling for same-path and missing-database cases
UI and UX
- Improve mobile prompt input and floating TTS button behavior
- Fix mic button border styling to prevent input height shifts
- Clarify host import messaging when workspace state is protected
- Highlight invalid configs in Settings and surface the affected config fields
Docker and Runtime
- Improve container handling for SQLite volume permissions by fixing ownership at startup before dropping to the
nodeuser - Add cache and OpenCode directories to Docker setup
Full Changelog: v0.9.12...v0.9.13
v0.9.12
What's Changed
Bug Fixes
- Fix SSH credential host matching and Bitbucket test detection (#178)
- Fix session creation error handling and health endpoint status codes (#179)
- Fix Basic Auth handling in v2 client and CLI status command
- Fix normalizeConfig bug in memory plugin
Changes
- Migrate memory plugin to standalone repository and remove Kasm files (#182)
- Add
stallTimeoutMsto default config.jsonc - Rename "Ralph" terminology to "Loop" across entire codebase
Documentation
- Update CHANGELOG with v0.0.18–v0.0.27 changes
- Update architect agent prompt to clarify memory curation and approval process
- Various documentation updates for Loop naming and loop implementation details
Full Changelog: v0.9.11...v0.9.12
v0.9.11
v0.9.11
20 commits | 82 files changed | +6,820 / -2,271 lines
Ralph Loop Overhaul
- Worktree-based session tracking — Ralph loops are now keyed by worktree name instead of session ID, with a KV-backed session mapping (
registerSession/resolveWorktreeName/unregisterSession) enabling session rotation without losing loop state (#172) - Session rotation — Loops can now rotate to a fresh OpenCode session mid-run, preventing context bloat while preserving iteration state and worktree
- Watchdog with stall detection — Watchdog now tracks by worktree name, resolves the current session dynamically, and includes
compactas an active work status (#170) - Ralph status dialog — New frontend UI (
RepoRalphList,useRalphStatushook) showing active/completed loops with status icons, duration, iteration count, phase badges, and cancel buttons (#171) - Audit improvements — Auditor now checks KV store for prior review findings (
review-finding:prefix), verifies if issues are resolved, and cleans up stale findings - Partial name matching —
findCandidatesByPartialNamefor fuzzy Ralph loop lookup from CLI - Graceful cancellation — Cancelled loops now commit and clean up worktrees (same as completed)
KV Store Enhancements
- Extended default TTL — KV entries now expire after 7 days (was 24 hours)
- Configurable TTL —
createKvServiceacceptsdefaultKvTtlMsfor project-level TTL override - Prefix filtering —
memory-kv-listsupports optionalprefixparameter for scoped queries - Delete support — New
memory-kv-deletetool for removing individual entries
Schedule Run History
- New Run History tab on GlobalSchedules page with run detail panel and history cards
listAllScheduleRunsAPI endpoint and DB query for cross-schedule run listing
Frontend Improvements
- PWA update prompt — Notification when a new service worker version is available
- Dynamic prompt overlay height — Session detail page now measures prompt input height with ResizeObserver instead of fixed padding
- Session status —
compactstate now treated as active (prevents premature "session ended" display) - Scroll-to-bottom — Improved auto-scroll UI and session status handling
Backend Refactoring
- Shared route helpers — New
route-helpers.tsutility (parseId,handleServiceError) used across schedule, STT, TTS, prompt-template, and OAuth routes - Discovery cache — New
discovery-cache.tsfor caching model discovery results with 1-hour TTL - Schedule hooks refactored to accept
repoIdas parameter
Memory Package (v0.0.23)
- CLI commands enhanced with partial matching and improved formatting
- Memory package tests added to root test script
- Comprehensive test suites for CLI commands (cancel, cleanup, list, stats, status), Ralph, and partial matching
Bug Fixes
- Fixed TypeScript errors in schedule components and
useScheduleshook mutation callbacks - Fixed global schedule repo selector broken mutations (#168)
- Removed unnecessary bottom padding from repo list container
Release v0.9.10
Features
Global Schedules Dashboard (#167)
- Mobile-responsive UI for managing schedules across all repositories
- New GlobalSchedules page with comprehensive schedule management
- Backend API endpoints for global schedule queries
Skills Editor UI & Backend Service (#165)
- Full skills management interface with dialog components
- Backend service for CRUD operations on skills
- Shared schema for skills validation
- Repository-level skills with prompt injection support
Cron-Based Scheduling with Prompt Templates (#164)
- Database migrations for cron support
- Prompt templates integration
- New routes for prompt template management
- Enhanced schedule service with cron job support
Question Prompt UI Simplification (#166)
- Space-saving design with minimized state
- Drag-down gesture support
- Orange theme accents
Mobile Fullscreen Settings (#163)
- Added mobileFullscreen option to settings dialogs
- Improved responsive layout
Enhancements
- Cross-origin cookie support with credentials include
- Dialog button spacing improvements
- Auto-focus disabled on dialog open
Bug Fixes
- TypeScript build errors in frontend
- Schedule-related test mocks
- Duplicate import in repo.ts
- Dialog button spacing and auto-focus issues
v0.9.09
v0.9.09
Folder Discovery & Session Reconnection
- Discover local repositories — point OpenCode Manager at a parent directory and import all nested git repositories and worktrees in one step
- Link existing repos in place — discovered repositories keep their original source path instead of being copied, with a persisted
sourcePathfor session matching - Reconnect existing OpenCode sessions — first-run import of existing OpenCode config/state automatically links prior chats to matching discovered repositories
- Updated onboarding flow with folder discovery dialog in the add-repository UI
- Docker documentation for preserving host absolute paths so imported sessions still match
Memory Plugin (v0.0.21)
- Ralph iterative development loops — new execution mode with stall detection watchdog, session lifecycle management, and automatic cleanup
- Project KV store — ephemeral key-value storage with 24-hour TTL (
memory-kv-set,memory-kv-get,memory-kv-listtools) - Plan approval interception — user-in-the-loop workflows with question tool result handling
- CLI commands for Ralph loop management:
status,cancel,restart,upgrade - Upgrade command with version check and caching
- Model fallback utilities for API resilience
- Agent rename to lowercase conventions (code-review → auditor, memory → librarian)
- Memory curation guideline added to architect agent
Frontend
- LSP server status UI — toolbar button with color-coded status indicator, dialog showing active LSP servers with connection state and root paths
- KV store UI — form dialog and list components for managing project key-value entries
- Improved delete/unlink messaging for local vs cloned repos
- SSE event handling for
lsp.updatedevents
Backend
- LSP initialization fix — pre-initializes OpenCode bin directory to prevent Bun package resolution conflicts causing pyright timeouts
- Replace shell commands with native fs operations in repo service
- Repo source path migration and discovery API endpoints
Documentation
- Updated memory plugin docs with KV store tools and architecture
- Docker setup guide for folder discovery with path preservation
- Quickstart updates for the new onboarding flow
Tests
- Comprehensive test suites for Ralph loops, KV store, plan approval, tool blocking
- LSP status hook and component tests
- OpenCode single-server service tests
Release v0.9.08
Changes
- Fixed Docker build failure by adding jsonc-parser to shared/package.json dependencies
- The shared package now explicitly declares jsonc-parser ^3.3.1 as a dependency, resolving strict pnpm install issues in Docker environments
v0.9.07
What's Changed
- Memory plugin v0.0.15: improved code-review workflow with actionable findings, updated agent prompts and tool permissions
- Replaced strip-json-comments with jsonc-parser for better JSONC error reporting with line/column details
- Shared JSONC utilities extracted to @opencode-manager/shared
- Config editor error line highlighting and improved error messages
- Enhanced API fetch wrapper error detail formatting
- Skip notifications for subagent sessions
v0.9.06
v0.9.06
Memory Plugin
- Add
executionModelconfig option for plan execution model override - Refactor CLI from monolithic
export.tsinto modular command architecture (ocm-membinary) - New CLI commands:
list,stats,cleanupalongside existingexportandimport - Add global CLI options (
--db-path,--project,--dir) with project name resolution - Add default
executionModelfield to bundled config
Frontend
- Improve MemoryPluginConfig component UI/UX
- Update combobox component for better selection experience
Documentation
- Add full CLI section to plugin docs with all commands and usage examples
- Update README CLI section from legacy
bun runpattern toocm-membinary
What's Changed
- Fix mobile input prompt command selection by @chriswritescode-dev in #148
- Add executionModel feature and refactor CLI into modular commands by @chriswritescode-dev in #150
Full Changelog: v0.9.05...v0.9.06