Releases: code-yeongyu/oh-my-opencode
v2.3.0
v2.3.0 - Meet Sisyphus
Introducing Our Main Agent: Sisyphus
In Greek mythology, Sisyphus was condemned to roll a boulder up a hill for eternity as punishment for deceiving the gods. LLM Agents haven't really done anything wrong, yet they too roll their "stones"—their thoughts—every single day. My life is no different. Looking back, we are not so different from these agents.
Yes! LLM Agents are no different from us. They can write code as brilliant as ours and work just as excellently—if you give them great tools and solid teammates.
I believe that code written by agents should be indistinguishable from human-written code. This philosophy inspired the name "Sisyphus"—an agent that rolls its boulder every day, just like us, producing work that seamlessly blends with human output.
Sisyphus's Toolkit
Meet our main agent: Sisyphus (Claude Opus 4.5 with 32k extended thinking). Below are the tools Sisyphus uses to keep that boulder rolling:
- Curated Teammates
- Oracle: Design & debugging (GPT 5.2)
- Frontend UI/UX Engineer: Beautiful interfaces (Gemini 3 Pro)
- Librarian: Official docs & OSS implementations (Claude Sonnet 4.5)
- Explore: Blazing fast codebase exploration (Grok Code)
- Full LSP / AST-Grep Support: Refactor decisively
- Todo Continuation Enforcer: Forces the agent to continue if it quits halfway—this is what keeps Sisyphus rolling that boulder
- Comment Checker: Prevents AI from adding excessive comments. Code generated by Sisyphus should be indistinguishable from human-written code
Enhanced Orchestration
Sisyphus brings more refined orchestration capabilities:
- Smarter delegation to specialized subagents
- Aggressive parallel execution for maximum throughput
- Todo-driven workflow with real-time progress tracking
- Prevented proactive implementation without explicit user request (#106)
Experimental Features
New opt-in experimental features for power users. Use with caution—these may change or be removed in future versions.
{
"experimental": {
"aggressive_truncation": true,
"empty_message_recovery": true,
"auto_resume": true
}
}| Option | Description |
|---|---|
aggressive_truncation |
When token limit is exceeded, aggressively truncates tool outputs to fit within limits |
empty_message_recovery |
Automatically recovers from "non-empty content" API errors by fixing empty messages |
auto_resume |
Automatically resumes session after successful recovery from thinking block errors |
Other Changes
- Added Simplified Chinese README (zh-cn)
- Fixed circular dependency in config error utilities preventing plugin loader crash
- Added Windows config path documentation
- Fixed background-agent to cancel all nested descendant tasks recursively (#107)
- Increased todo-continuation-enforcer delay to 5s with write permission check (#105)
Commits
- df87f5f Introducing our main agent: Sisyphus (#113)
- 4cd2745 refactor(auto-update-checker): remove config path from startup toast
- 8cf713e feat(config): add experimental config for gating unstable features (#110)
- 7fe6423 docs: add Simplified Chinese README (zh-cn)
- dad534e fix: break circular dependency in config error utilities to prevent plugin loader crash
- 63fea77 fix: add Windows config path documentation and config error warnings (#97) (#109)
- 845a1d2 fix(background-agent): cancel all nested descendant tasks recursively (#107)
- df0a9e6 Prevent OmO from proactively implementing without explicit user request (#106)
- a48fc3e fix(todo-continuation-enforcer): increase delay to 5s and add write permission check (#89) (#105)
v2.2.1
- d788599 feat(claude-code-skill-loader): add base directory context (#103)
- 2b368ad feat(omo): improve orchestration with key triggers and tool guidance (#100)
- 67a1dba refactor(keyword-detector): inject keywords on every message (#99)
- 98df151 chore(document-writer): switch to Gemini 3 Flash model (#98)
- 9a8d631 fix openai/chatgpt/codex auth via bump to v4.1.1 (#88)
- 7a26cad docs: make installation instructions more explicit (#87)
- 7a135f3 refactor(frontend-ui-ux-engineer): make prompt model-agnostic
- d7e45a1 fix(anthropic-auto-compact): ensure executeCompact always runs for truncation/revert regardless of model info
- 7546d57 Remove self dependency from package.json (#83)
- 1400f15 docs: add uninstallation instructions to README (#82)
Thank you to 4 community contributors:
v2.2.0
New Features
OmO Agent Model Fallback Chain
- OmO agent now inherits OpenCode system default model as fallback, providing better flexibility in model selection
Improvements
OmO System Prompt Enhancement
- Got some feedbacks about too much subagent (which I still think make sense) but refined prompt to be more precise
Default permissions
- Now by default web fetch and external directory permissions are automatically allowed
Cleaner Terminal Experience
- Removed terminal title update feature (session-rename-hook) as it is supported by the opencode team
Bug Fixes
- fix(auth): Resolved Google Antigravity OAuth 404 error by using fallback project ID
- fix(agents): Restricted OmO-Plan to read-only tools, properly inheriting from default plan agent
Documentation
- Added concrete
oh-my-opencode.jsonconfiguration examples to LLM installation guide - Added opencode-antigravity-auth plugin guide and model override documentation
- 17b4304 Expand Todo Management section with detailed guidelines
- c6595be Add OmO agent model fallback chain to inherit OpenCode system default (#79)
- e144dd5 Merge branch 'remove-session-rename-hook'
- 8cdbd1c refactor: remove terminal title update feature
- 276b1ba Merge branch 'fix-omo-plan-agent-permissions'
- 1de27e4 Merge branch 'allow-external-read-webfetch-hooks'
- 98ffe3f feat: auto-allow webfetch and external_directory permissions
- 0261652 Add concrete oh-my-opencode.json configuration examples to LLM installation guide
- 9cef9d1 Add opencode-antigravity-auth plugin guide and oh-my-opencode.json model override documentation
- 67bcd4d fix(auth): resolve Google Antigravity OAuth 404 error by using fallback project ID
- 1ecf35f fix(agents): restrict OmO-Plan to read-only tools, inherit from default plan agent (#72)
v2.1.7
v2.1.6
Token Efficiency Improvements
This release significantly reduces tool description token usage, saving context window space.
LSP Tools (#71)
| Metric | Before | After | Reduction |
|---|---|---|---|
| Description chars | 1,826 | 671 | 63% |
| Estimated tokens | ~550 | ~410 | ~25% |
Other Tools (#73)
| Tool | Before | After | Reduction |
|---|---|---|---|
| background_task | 571 chars | 127 chars | 78% |
| background_output | 268 chars | 95 chars | 65% |
| background_cancel | 374 chars | 83 chars | 78% |
| call_omo_agent | 841 chars | 156 chars | 81% |
| look_at | 278 chars | 119 chars | 57% |
| interactive_bash | 346 chars | 130 chars | 62% |
| Total | 2,678 chars | 710 chars | ~73% |
Combined Impact
- Total character reduction: ~4,500 → ~1,380 chars (~69%)
- Estimated token savings: ~800-1000 tokens per conversation
Commits
v2.1.5
v2.1.4
- 6ab0ff7 refactor(agents): improve librarian agent framing as 'Reference Grep' for parallel structure with explore
- 2706fe4 refactor(agents): restructure OmO system prompt with Phase-based architecture
- 08d612d docs: update AGENTS.md with latest metadata and OpenCode version
- 846bb7a Update README
- 72d9d13 fix(hook-message-injector): add validation to prevent empty message injection and improve logging
- 337b2e7 fix(google-auth): enable google antigravity auth by default (#66)
- d40add5 docs: fix outdated librarian model and add empty-message-sanitizer hook documentation
- 7293b88 feat(hooks): add empty-message-sanitizer to prevent API errors from empty chat messages
- 3761d45 Merge branch 'fix-empty-message-content'
- 1e8de07 fix(antigravity): handle multiple FREE tier ID formats in onboarding
- 838f49b fix(session-recovery): Replace empty text parts before injecting new ones
- ed233d7 fix(antigravity): implement FREE tier onboarding via onboardUser API
- cb360e0 refactor(omo): balance proactivity with user confirmation in prompt
- 4112be7 feat(background-task): add all parameter to cancel all running tasks at once
- b461ef4 feat(anthropic-auto-compact): Add tool output truncation recovery layer for token limit handling (#63)
- 059f2bf fix(antigravity): fix auth on free plan with random project ID fallback
- 407eeb3 fix(anthropic-auto-compact): use OpenCode's official compaction mechanism and proper retry
- 7c9b9f5 fix(session-notification): Replace blocking MessageBox with native toast on Windows (#62)
- 13a47c5 refactor(agents): simplify explore agent prompt for clarity and efficiency
- 3e1a270 fix(lsp): cleanup orphan LSP servers on process exit
Thank you to 1 community contributor:
v2.1.2
Bug Fixes
fix(session-notification): Replace blocking MessageBox with native toast on Windows
- Windows UX 대폭 개선:
System.Windows.Forms.MessageBox(blocking modal) →Windows.UI.Notifications.ToastNotificationManager(non-blocking toast) - 플랫폼별 올바른 이스케이핑 적용: 각 플랫폼 셸 특성에 맞게 수정
- macOS: AppleScript용 백슬래시 처리 (
\\→\\\\,"→\") - Linux: raw 값 처리 (셸이 자동 처리)
- Windows: PowerShell용 작은따옴표 이스케이핑 (
'→'')
- macOS: AppleScript용 백슬래시 처리 (
- 에러 핸들링 추가: Windows에서 graceful degradation 지원 (older Windows versions)
- 코드 구조 개선: 플랫폼별 이스케이핑 로직을 각 case 블록으로 분리하여 가독성 향상
Technical Details:
- 사용자 입력 없음: config-driven values만 사용하여 보안 위험 감소
- PowerShell 단일 따옴표 문자열 내 안전한 값 삽입
- 타입 에러 없음: LSP diagnostics clean
Fixes: #62
Thank you to our community contributor:
- @junhoyeo: fix(session-notification): Replace blocking MessageBox with native toast on Windows (#62)
- da63b09 fix(session-notification): Replace blocking MessageBox with native toast on Windows (#62)
Thank you to our community contributor:
v2.1.1
Bug Fixes and Improvements
This patch release includes several platform compatibility fixes and stability improvements:
- Windows Compatibility: Improved path handling and shell configuration for better Windows support.
- MCP Tools: Fixed agent configuration to correctly enable MCP tools using exclude patterns.
- Background Agent: Prevented recursive tool calls and added logic to wait for session todos completion.
- Documentation: Added Japanese README translation and updated language selector links.
- Session Recovery: Improved logic to detect empty content messages in error patterns.
- Terminal Security: Blocked
tmuxoutput capture commands to enhance security. - Token Management: Implemented fallback mechanism for auto-compact token limit recovery.
- WSL Support: Suppressed stderr output from Linux notification commands to fix WSL errors.
- be90045 fix: Improve Windows compatibility for paths and shell config
- a10ee64 fix(agents): Use exclude pattern for tools config to enable MCP tools
- 116a90d enhance(background-agent): Prevent recursive tool calls and wait for session todos before completion
- 060e58e Update AGENTS.md
- 780bb37 docs: Add Japanese README translation and update language selector links
- bf39c83 Fix: detect empty content messages in session-recovery error patterns
- 9b2048b feat(interactive-bash): block tmux output capture commands
- cea64e4 feat(#61): Implement fallback mechanism for auto-compact token limit recovery
- 151ebbf Suppress stderr output from Linux notification commands to fix WSL errors
v2.1.0
v2.1.0
This release focuses on making OmO smarter, more efficient, and more stable.
New Features
OmO is Now Much Smarter
- Clarified when to use explore vs librarian agents - no more over-calling
- OmO now treats explore agents as "contextual grep" and librarian as an online helper
- Frontend-UI-UX-Engineer is now called more actively for UI work
Librarian is Sonnet Again, with Clear Purpose
- Simplified prompt for pure, smart librarian behavior
- TYPE A (Conceptual) vs TYPE B (Implementation) classification
- PHASE 0-1 Structured Approach for smarter tool selection
- Web search only activated for recent resources; prefers GitHub for code snippets
Interactive Bash (tmux Support)
- New
interactive_bashtool for managing long-running processes - No more agent timeouts when running dev servers or REPLs
- Quote-aware command parsing for complex shell operations
- Automatically activates if tmux is installed on your system
Context Injection
- New
createEnvContext()automatically injects:- Current Date & Time (Timezone aware)
- Locale
- Platform details
- The agent now knows it's 3 AM on macOS when your build fails
Improvements & Fixes
Smarter Resource Management
- Recursion Prevention: Subagents and Oracle banned from calling
background_taskortasktools recursively - Lazy Exploration: OmO no longer calls Explore agent on every single request
- Background Mode: Automatically restores previous agent mode when background tasks complete
Bug Fixes
- English Enforcement: All subagents strictly instructed to prompt in English internally
- Todo Continuation: Fixed
remindedSessionsnot clearing properly - Session Recovery: Added filesystem fallback when API returns empty session parts
- Agent Mode Persistence: Fixed respect for previous message's agent mode in message sending hooks
Commits
- 689c568 enhance(agents): Add comprehensive guardrails, Oracle examples, and specialized playbooks to OmO prompt
- 906d304 Restore model to claude-opus-4-5 with thinking enabled, fix maxTokens to 64000 (correct max output for Opus 4.5 per Anthropic docs)
- 424723f refactor(agents): Complete rewrite of OmO system prompt with Task Complexity assessment
- 3ba5e1a Add date/time context to Librarian agent, emphasize NOT 2024
- e324f09 refactor(agents): Restructure Librarian prompt with clear request classification flow
- 9f636e1 fix(agents): enforce English prompting for all subagents (#58)
- 5ce025f feat(agents): prevent all subagents from accessing background_task tool
- 153fa84 Add tmux availability check for conditional interactive_bash tool registration
- 2d2834f feat(agents): prevent oracle from calling task tool to avoid recursive invocation
- ab37193 Clarify that today's date is NOT 2024 in envContext
- aa2f9a6 OmO to not to call Explore every single time, only when required
- e326e2d Interactive Bash Simpler
- f19a7a5 Specify agents
- 03a4501 refactor(hooks): improve interactive bash session tracking and command parsing
- c2e96f1 feat(hooks): restrict background_task for task tool subagents
- e8e10b9 fix(hooks): clear remindedSessions on assistant response to enable repeated continuation
- 5cbef25 feat(tools): add interactive_bash tool for tmux session management
- 2524c90 fix(hooks): add lowercase tool names to truncator hooks
- 50112b9 feat(agents): inject environment context into OmO system prompt
- 355fa35 fix(hooks): respect previous message's agent mode in message sending hooks
- 9aab980 fix(session-recovery): fallback to filesystem when API parts empty
