OpenCode v1.15.9: Redesigned Diff Viewer & Error Clarity

OpenCode v1.15.9 ships a redesigned diff viewer with file tree navigation, clearer error messages across the platform, and desktop UI refinements. Session status now appears in the title bar.

OpenCode v1.15.9: Redesigned Diff Viewer & Error Clarity

TL;DR

  • Redesigned diff viewer with file tree and new layout, now enabled by default
  • Clearer error messages across model validation, PTY sessions, skill invocation, and MCP servers
  • Desktop UI improvements: session status in title bar, refined tab navigation
  • MCP OAuth callback port support and Vertex Anthropic multi-region endpoint fixes

New

  • Redesigned diff viewer — File tree navigation and refreshed layout, enabled by default for all users
  • Session status in title bar — Desktop app now displays active session state directly in the window title
  • Copy worktree path from command palette — TUI improvement for faster project navigation

Fixed

  • Return to previous screen when closing diff viewer instead of getting stuck
  • Clearer error messages for invalid or unavailable default models
  • Surface missing PTY session errors instead of generic failures
  • Improve diff viewer empty states and context handling
  • Show explicit errors when skill invocation or installation upgrades fail
  • Better error reporting from HTTP API for project not found, PTY errors, MCP server not found, and session busy states
  • Extract user codes correctly from callback URLs containing multiple colons
  • Preserve native reasoning continuation metadata across conversation turns
  • Use correct Vertex Anthropic endpoints for us and eu multi-region setups
  • MCP OAuth configs now support callback port configuration and include configured scopes in client metadata
  • Debounce VCS refreshes to reduce unnecessary session page updates
  • Refine diff viewer keyboard shortcuts and restore question prompt key handling
  • Keep spinner color aligned with active agent state

Breaking Changes

  • Diff viewer is now enabled by default — disable in settings if you prefer the previous behavior

Update: brew upgrade opencode or download the latest release from GitHub.

Source: OpenCode