Skip to content

Releases: code-yeongyu/oh-my-opencode

v2.4.1

21 Dec 16:39

Choose a tag to compare

  • 6087f14 Refine sisyphus frontend delegation rules - classify changes before delegating
  • 4df8504 Convert frontend-ui-ux-engineer agent prompt to pure Markdown format (#149) (#152)
  • d7bc817 feat: auto-detect model provider and apply appropriate options (#146)
  • a9459c0 Improve preemptive compaction with Claude model filtering and configurable context limits
  • 12ccb7f docs: update X account manager from junhoyeo to justsisyphus (#148)
  • bc36b97 feat(agents): add Angular support to frontend delegation rules (#145)
  • e54a65d let sisyphus to verify the delegated output's result
  • bd8c43e feat: add 'Loved by professionals at' section with company logos
  • a29e50c fix(todo-continuation-enforcer): clear reminded state on assistant finish
  • a3ff28b feat(preemptive-compaction): add onBeforeSummarize callback and context injection
  • 8406f3d fix(anthropic-auto-compact): handle empty messages at arbitrary indices
  • 4f24423 chore(agents): remove dead code file build.ts
  • 5a9d8e8 Merge pull request #133 from code-yeongyu/sync-lsp-with-opencode
  • 9e490d3 feat(lsp): sync with OpenCode LSP implementation
  • 9179794 fix(preemptive-compaction): increase token threshold from 0.80 to 0.85
  • 3c039cb feat(preemptive-compaction): implement automatic session compaction at token threshold
  • 6e72173 fix(config): support both ~/.config and %APPDATA% paths on Windows (#131)
  • a926ebc feat(ci): auto-commit schema.json changes on master push
  • c4186bc feat(ci): add test and typecheck gates to publish workflow
  • f5ce55e fix(todo-continuation-enforcer): show reminder only once per session with 2s countdown

Thank you to 2 community contributors:

  • @rynfar:
    • feat(agents): add Angular support to frontend delegation rules (#145)
  • @christso:
    • feat: auto-detect model provider and apply appropriate options (#146)

v2.4.0

20 Dec 02:40

Choose a tag to compare

v2.4.0

This release brings background auto-updates, CI infrastructure, and enhanced ultrawork mode with zero-tolerance completion enforcement.

Highlights

🔄 Background Auto-Update

Your oh-my-opencode now updates itself automatically in the background. No more manual version checks.

  • Configurable version pinning via pinned_version setting
  • Local development mode detection (skips updates when running from source)
  • Non-intrusive toast notifications

🏗️ CI Infrastructure

Full GitHub Actions CI pipeline for quality assurance:

  • Automated test, typecheck, and build jobs on every push
  • Automatic draft release management with changelog generation
  • Community contributions now get proper CI validation

⚡ Enhanced Ultrawork Mode

The ultrawork / ulw keyword now includes zero-tolerance completion enforcement:

  • NO Scope Reduction - No "demo" or "skeleton" versions
  • NO Partial Completion - No stopping at 60-80%
  • NO Assumed Shortcuts - No skipping "optional" requirements
  • NO Premature Stopping - All TODOs must complete before done

🔔 Todo Countdown Toast

Visual countdown notification when incomplete todos exist, keeping agents accountable.

Bug Fixes

  • Session Recovery: Improved anthropic-auto-compact session recovery with Continue prompt handling
  • Keyword Injection: Fixed first message keyword injection for correct session titles
  • Non-Interactive Env: Added EDITOR and PAGER environment variables to block interactive UI prompts
  • Todo Countdown: Only shows countdown when incomplete todos exist in main session

Documentation

  • Fixed fallback model logic in installation instructions
  • Added max20 (20x mode) follow-up question for librarian agent configuration

  • 8b8f21e refactor(keyword-detector): consolidate completion enforcement from prove-yourself into ultrawork mode
  • f2f73d1 fix: skip keyword injection on first message for correct session titles (#125)
  • 049134b Add notice for news updates on X account suspension
  • 12cd338 fix(anthropic-auto-compact): improve session recovery with Continue prompt
  • b9e373a feat(ci): extract changelog generation script and use for draft releases
  • 9d10de5 feat(ci): implement automatic draft release management
  • 30ae22a feat(ci): add GitHub Actions CI workflow with test, typecheck, and build jobs
  • 346aba0 docs: fix fallback model logic in installation instructions
  • 2025f7e fix(todo-continuation-enforcer): only show countdown when incomplete todos exist in main session
  • 15d36ab feat(todo-continuation-enforcer): implement countdown toast notification
  • eccbfa5 feat(keyword-detector): add prove-yourself mode for frustration keywords
  • 09e04e7 docs: add max20 (20x mode) follow-up question for librarian agent configuration
  • 4da4302 fix(non-interactive-env): add editor and pager environment variables to block interactive UI
  • f5e65b8 feat(auto-update-checker): add local development mode toast notification
  • a475717 Merge commit 'e261853451addb9d3d5d5d0fb7aae830ab492470'
  • e261853 feat(auto-update-checker): implement background auto-update with configurable pinning
  • 85a3111 refactor(keyword-detector): relax analyze-mode recommendations for practical agent usage

Thank you to 1 community contributor:

  • @ajoslin:
    • fix: skip keyword injection on first message for correct session titles (#125)

v2.3.1

19 Dec 03:10

Choose a tag to compare

  • 8440dce fix(hooks): restore grep truncation by removing unused grep-output-truncator (#120)
  • 5dba599 fix(schema): update schema to reflect Sisyphus agent (#119)
  • 662bae2 feat(lsp): add bash-language-server to builtin servers (#112)
  • c37d41e fix(auto-update-checker): add bun.lock handling to invalidatePackage()

Thank you to 1 community contributor:

  • @TechDufus:
    • feat(lsp): add bash-language-server to builtin servers (#112)

v2.3.0

18 Dec 19:13

Choose a tag to compare

v2.3.0 - Meet Sisyphus

Introducing Our Main Agent: Sisyphus

Meet 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

18 Dec 16:10

Choose a tag to compare

  • 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:

  • @fcoury:
    • docs: add uninstallation instructions to README (#82)
  • @devxoul:
    • Remove self dependency from package.json (#83)
  • @fayimora:
    • docs: make installation instructions more explicit (#87)
  • @tyler-dot-earth:
    • fix openai/chatgpt/codex auth via bump to v4.1.1 (#88)

v2.2.0

17 Dec 10:26

Choose a tag to compare

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.json configuration 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

17 Dec 00:39

Choose a tag to compare

  • f6a5096 Add plan agent system prompt and permission configuration to OmO-Plan
  • 0625ebb Add star request prompt to LLM installation guide
  • 942fbde Emphasizing that this is not another agent shit
  • 980ffe8 Update README Image

v2.1.6

16 Dec 15:48

Choose a tag to compare

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

  • 90baab3 fix(agents): restrict OmO-Plan to read-only tools, inherit from default plan agent (#72) (#75)
  • 715756b Optimize tool descriptions for token efficiency (#73)
  • cdde8da Optimize LSP tool descriptions for token efficiency (#71)
  • d7ce740 Update README

v2.1.5

16 Dec 14:17

Choose a tag to compare

  • de57f84 docs: update README with subscription messaging and installation guidelines
  • b984bfd fix(session-notification): skip notification for subagent sessions (#70)
  • ecc8ade Leverage your subscriptions
  • 33d2a00 Update README

v2.1.4

16 Dec 12:46

Choose a tag to compare

  • 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:

  • @junhoyeo:
    • fix(session-notification): Replace blocking MessageBox with native toast on Windows (#62)