oh-my-opencode 2.12.2 → 2.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.ja.md +32 -7
  2. package/README.ko.md +32 -7
  3. package/README.md +17 -8
  4. package/README.zh-cn.md +32 -7
  5. package/dist/agents/sisyphus-prompt-builder.d.ts +1 -0
  6. package/dist/cli/config-manager.d.ts +9 -0
  7. package/dist/cli/index.js +185 -81
  8. package/dist/features/claude-code-command-loader/loader.d.ts +5 -0
  9. package/dist/features/context-injector/collector.d.ts +11 -0
  10. package/dist/features/context-injector/collector.test.d.ts +1 -0
  11. package/dist/features/context-injector/index.d.ts +3 -0
  12. package/dist/features/context-injector/injector.d.ts +39 -0
  13. package/dist/features/context-injector/injector.test.d.ts +1 -0
  14. package/dist/features/context-injector/types.d.ts +83 -0
  15. package/dist/features/opencode-skill-loader/async-loader.d.ts +6 -0
  16. package/dist/features/opencode-skill-loader/async-loader.test.d.ts +1 -0
  17. package/dist/features/opencode-skill-loader/blocking.d.ts +2 -0
  18. package/dist/features/opencode-skill-loader/blocking.test.d.ts +1 -0
  19. package/dist/features/opencode-skill-loader/discover-worker.d.ts +1 -0
  20. package/dist/features/opencode-skill-loader/loader.d.ts +5 -0
  21. package/dist/features/opencode-skill-loader/types.d.ts +6 -0
  22. package/dist/features/skill-mcp-manager/env-cleaner.d.ts +2 -0
  23. package/dist/features/skill-mcp-manager/env-cleaner.test.d.ts +1 -0
  24. package/dist/features/skill-mcp-manager/manager.d.ts +8 -0
  25. package/dist/hooks/ralph-loop/types.d.ts +1 -0
  26. package/dist/hooks/tool-output-truncator.test.d.ts +1 -0
  27. package/dist/index.js +1143 -444
  28. package/dist/shared/frontmatter.d.ts +2 -0
  29. package/dist/shared/index.d.ts +3 -0
  30. package/dist/shared/opencode-config-dir.d.ts +19 -0
  31. package/dist/shared/opencode-config-dir.test.d.ts +1 -0
  32. package/dist/shared/opencode-version.d.ts +10 -0
  33. package/dist/shared/opencode-version.test.d.ts +1 -0
  34. package/dist/shared/permission-compat.d.ts +12 -0
  35. package/dist/shared/permission-compat.test.d.ts +1 -0
  36. package/dist/tools/index.d.ts +1 -0
  37. package/package.json +3 -3
package/README.ja.md CHANGED
@@ -2,12 +2,14 @@
2
2
  >
3
3
  > *「私はエージェントが生成したコードと人間が書いたコードを区別できない、しかしはるかに多くのことを達成できる世界を作り、ソフトウェア革命を起こすことを目指しています。私はこの旅に個人的な時間、情熱、そして資金を注ぎ込んできましたし、これからもそうし続けます。」*
4
4
  >
5
+ > [![The Orchestrator is coming](./.github/assets/orchestrator-sisyphus.png)](https://x.com/justsisyphus/status/2006250634354548963)
6
+ > > **オーケストレーターが来ます。今週中に。[Xで通知を受け取る](https://x.com/justsisyphus/status/2006250634354548963)**
7
+ >
5
8
  > 一緒に歩みましょう!
6
9
  >
7
- > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/aSfGzWtYxM) | [Discordコミュニティ](https://discord.gg/aSfGzWtYxM)に参加して、コントリビューターや`oh-my-opencode`仲間とつながりましょう。 |
10
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | [Discordコミュニティ](https://discord.gg/PUwSMR9XNk)に参加して、コントリビューターや`oh-my-opencode`仲間とつながりましょう。 |
8
11
  > | :-----| :----- |
9
12
  > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | `oh-my-opencode`に関するニュースは私のXアカウントで投稿していましたが、無実の罪で凍結されたため、<br />[@justsisyphus](https://x.com/justsisyphus)が代わりに更新を投稿しています。 |
10
- > | [<img alt="Sponsor" src="https://img.shields.io/badge/Sponsor-❤-ff69b4?style=flat-square&logo=github-sponsors&labelColor=black" width="156px" />](https://github.com/sponsors/code-yeongyu) | [スポンサーになって](https://github.com/sponsors/code-yeongyu) `oh-my-opencode` の開発を応援してください。皆さまのご支援がこのプロジェクトを成長させます。 |
11
13
 
12
14
  <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
13
15
 
@@ -46,6 +48,11 @@
46
48
 
47
49
  > "Oh My Opencodeを使って、たった1日で8000個のeslint警告を解消しました" — [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
48
50
 
51
+ > "Ohmyopencodeとralph loopを使って、一晩で45,000行のtauriアプリをSaaSウェブアプリに変換しました。インタビュープロンプトから始めて、質問に対する評価と推奨を求めました。作業する様子を見ているのは驚きでしたし、朝起きたらほぼ完成したウェブサイトがありました!" - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
52
+
53
+ > "今週末はopen code、oh my opencode、supermemoryでマインクラフト/ソウルライクな何かを作る実験をしています。"
54
+ > "昼食後の散歩に行く間に、しゃがみアニメーションを追加するよう頼みました。[動画]" - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
55
+
49
56
  > "これをコアに取り入れて彼を採用すべきです。マジで。本当に、本当に、本当に良いです" — Henning Kilset
50
57
 
51
58
  > "@yeon_gyu_kimを説得できるなら雇うべきです。彼はopencodeに革命を起こしました" — [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
@@ -56,6 +63,8 @@
56
63
 
57
64
  > "Oh My Opencodeは頂点に立っています、敵はいません" — [RyanOnThePath](https://x.com/RyanOnThePath/status/2001438321252118548)
58
65
 
66
+ > "Oh My OpenCode Is Actually Insane" - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
67
+
59
68
  > "シジフォスという名前自体が美しいじゃないですか?" — Sigrid ([@sigridjin_eth](https://x.com/sigridjin_eth))
60
69
 
61
70
  ---
@@ -70,6 +79,19 @@
70
79
  - [インストール](#インストール)
71
80
  - [人間の方へ](#人間の方へ)
72
81
  - [LLM エージェントの方へ](#llm-エージェントの方へ)
82
+ - [ステップ 0: サブスクリプション情報を確認](#ステップ-0-サブスクリプション情報を確認)
83
+ - [ステップ 1: OpenCode インストール確認](#ステップ-1-opencode-インストール確認)
84
+ - [ステップ 2: インストーラーを実行](#ステップ-2-インストーラーを実行)
85
+ - [ステップ 3: 設定確認](#ステップ-3-設定確認)
86
+ - [ステップ 4: 認証情報の設定](#ステップ-4-認証情報の設定)
87
+ - [4.1 Anthropic (Claude)](#41-anthropic-claude)
88
+ - [4.2 Google Gemini (Antigravity OAuth)](#42-google-gemini-antigravity-oauth)
89
+ - [4.3 OpenAI (ChatGPT Plus/Pro)](#43-openai-chatgpt-pluspro)
90
+ - [⚠️ 注意](#️-注意)
91
+ - [セットアップの確認](#セットアップの確認)
92
+ - [ユーザーに「おめでとうございます!🎉」と伝える](#ユーザーにおめでとうございますと伝える)
93
+ - [複雑すぎますか?](#複雑すぎますか)
94
+ - [アンインストール](#アンインストール)
73
95
  - [機能](#機能)
74
96
  - [Agents: あなたの新しいチームメイト](#agents-あなたの新しいチームメイト)
75
97
  - [バックグラウンドエージェント: 本当のチームのように働く](#バックグラウンドエージェント-本当のチームのように働く)
@@ -826,7 +848,7 @@ Oh My OpenCode は以下の場所からフックを読み込んで実行しま
826
848
  有効時(デフォルト)、Sisyphus はオプションの特殊エージェントを備えた強力なオーケストレーターを提供します:
827
849
 
828
850
  - **Sisyphus**: プライマリオーケストレーターエージェント (Claude Opus 4.5)
829
- - **Builder-Sisyphus**: OpenCode のデフォルトビルドエージェント(SDK 制限により名前変更、デフォルトで無効)
851
+ - **OpenCode-Builder**: OpenCode のデフォルトビルドエージェント(SDK 制限により名前変更、デフォルトで無効)
830
852
  - **Planner-Sisyphus**: OpenCode のデフォルトプランエージェント(SDK 制限により名前変更、デフォルトで有効)
831
853
 
832
854
  **設定オプション:**
@@ -842,7 +864,7 @@ Oh My OpenCode は以下の場所からフックを読み込んで実行しま
842
864
  }
843
865
  ```
844
866
 
845
- **例:Builder-Sisyphus を有効化:**
867
+ **例:OpenCode-Builder を有効化:**
846
868
 
847
869
  ```json
848
870
  {
@@ -852,7 +874,7 @@ Oh My OpenCode は以下の場所からフックを読み込んで実行しま
852
874
  }
853
875
  ```
854
876
 
855
- これにより、Sisyphus と並行して Builder-Sisyphus エージェントを有効化できます。Sisyphus が有効な場合、デフォルトのビルドエージェントは常にサブエージェントモードに降格されます。
877
+ これにより、Sisyphus と並行して OpenCode-Builder エージェントを有効化できます。Sisyphus が有効な場合、デフォルトのビルドエージェントは常にサブエージェントモードに降格されます。
856
878
 
857
879
  **例:すべての Sisyphus オーケストレーションを無効化:**
858
880
 
@@ -873,7 +895,7 @@ Oh My OpenCode は以下の場所からフックを読み込んで実行しま
873
895
  "model": "anthropic/claude-sonnet-4",
874
896
  "temperature": 0.3
875
897
  },
876
- "Builder-Sisyphus": {
898
+ "OpenCode-Builder": {
877
899
  "model": "anthropic/claude-opus-4"
878
900
  },
879
901
  "Planner-Sisyphus": {
@@ -886,7 +908,7 @@ Oh My OpenCode は以下の場所からフックを読み込んで実行しま
886
908
  | オプション | デフォルト | 説明 |
887
909
  | --------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
888
910
  | `disabled` | `false` | `true` の場合、すべての Sisyphus オーケストレーションを無効化し、元の build/plan をプライマリとして復元します。 |
889
- | `default_builder_enabled` | `false` | `true` の場合、Builder-Sisyphus エージェントを有効化します(OpenCode build と同じ、SDK 制限により名前変更)。デフォルトでは無効です。 |
911
+ | `default_builder_enabled` | `false` | `true` の場合、OpenCode-Builder エージェントを有効化します(OpenCode build と同じ、SDK 制限により名前変更)。デフォルトでは無効です。 |
890
912
  | `planner_enabled` | `true` | `true` の場合、Planner-Sisyphus エージェントを有効化します(OpenCode plan と同じ、SDK 制限により名前変更)。デフォルトで有効です。 |
891
913
  | `replace_plan` | `true` | `true` の場合、デフォルトのプランエージェントをサブエージェントモードに降格させます。`false` に設定すると、Planner-Sisyphus とデフォルトのプランの両方を利用できます。 |
892
914
 
@@ -1025,5 +1047,8 @@ OpenCode が Debian / ArchLinux だとしたら、Oh My OpenCode は Ubuntu / [O
1025
1047
  - **Numman Ali** [GitHub](https://github.com/numman-ali) [X](https://x.com/nummanali)
1026
1048
  - 最初のスポンサー
1027
1049
  - **Aaron Iker** [GitHub](https://github.com/aaroniker) [X](https://x.com/aaroniker)
1050
+ - **Suyeol Jeon (devxoul)** [GitHub](https://github.com/devxoul)
1051
+ - 私のキャリアをスタートさせてくださった方であり、優れたエージェンティックワークフローをどのように構築できるかについて多大なインスピレーションを与えてくださった方です。優れたチームを作るために優れたシステムをどう設計すべきか多くのことを学び、その学びがこのharnessを作る上で大きな助けとなりました。
1052
+ - **Hyerin Won (devwon)** [GitHub](https://github.com/devwon)
1028
1053
 
1029
1054
  *素晴らしいヒーロー画像を作成してくれた [@junhoyeo](https://github.com/junhoyeo) に感謝します*
package/README.ko.md CHANGED
@@ -2,12 +2,14 @@
2
2
  >
3
3
  > *"저는 에이전트가 생성한 코드와 인간이 작성한 코드를 구분할 수 없으면서도, 훨씬 더 많은 것을 달성할 수 있는 세상을 만들어 소프트웨어 혁명을 일으키고자 합니다. 저는 이 여정에 개인적인 시간, 열정, 그리고 자금을 쏟아부었고, 앞으로도 계속 그렇게 할 것입니다."*
4
4
  >
5
+ > [![The Orchestrator is coming](./.github/assets/orchestrator-sisyphus.png)](https://x.com/justsisyphus/status/2006250634354548963)
6
+ > > **오케스트레이터가 옵니다. 이번 주에요. [X에서 알림받기](https://x.com/justsisyphus/status/2006250634354548963)**
7
+ >
5
8
  > 함께해주세요!
6
9
  >
7
- > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/aSfGzWtYxM) | [Discord 커뮤니티](https://discord.gg/aSfGzWtYxM)에서 기여자들과 `oh-my-opencode` 사용자들을 만나보세요. |
10
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | [Discord 커뮤니티](https://discord.gg/PUwSMR9XNk)에서 기여자들과 `oh-my-opencode` 사용자들을 만나보세요. |
8
11
  > | :-----| :----- |
9
12
  > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | `oh-my-opencode` 관련 소식은 제 X 계정에서 올렸었는데, 억울하게 정지당해서 <br />[@justsisyphus](https://x.com/justsisyphus)가 대신 소식을 전하고 있습니다. |
10
- > | [<img alt="Sponsor" src="https://img.shields.io/badge/Sponsor-❤-ff69b4?style=flat-square&logo=github-sponsors&labelColor=black" width="156px" />](https://github.com/sponsors/code-yeongyu) | [스폰서가 되어](https://github.com/sponsors/code-yeongyu) `oh-my-opencode` 개발을 응원해주세요. 여러분의 후원이 이 프로젝트를 계속 성장시킵니다. |
11
13
 
12
14
  <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
13
15
 
@@ -43,6 +45,11 @@
43
45
 
44
46
  > "Oh My Opencode를 사용해서, 단 하루만에 8000개의 eslint 경고를 해결했습니다" — [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
45
47
 
48
+ > "Ohmyopencode와 ralph loop을 사용해서, 하룻밤 만에 45,000줄짜리 tauri 앱을 SaaS 웹앱으로 전환했습니다. 인터뷰 프롬프트로 시작해서, 질문에 대한 평점과 추천을 요청했습니다. 일하는 모습을 지켜보는 것도 놀라웠고, 아침에 일어나니 거의 완성된 웹사이트가 있었습니다!" - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
49
+
50
+ > "이번 주말에 open code, oh my opencode와 supermemory로 마인크래프트/소울라이크 같은 괴물을 만들어보고 있습니다."
51
+ > "점심 먹고 산책하러 가는 동안 웅크리기 애니메이션 추가해달라고 시켰습니다. [영상]" - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
52
+
46
53
  > "이걸 코어에 넣고 그를 채용해야 합니다. 진심으로요. 이건 정말, 정말, 정말 좋습니다." — Henning Kilset
47
54
 
48
55
  > "@yeon_gyu_kim 을 설득할 수 있다면 고용하세요, 이 사람은 opencode를 혁신했습니다." — [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
@@ -53,6 +60,8 @@
53
60
 
54
61
  > "Oh My Opencode는 독보적입니다, 경쟁자가 없습니다" — [RyanOnThePath](https://x.com/RyanOnThePath/status/2001438321252118548)
55
62
 
63
+ > "Oh My OpenCode Is Actually Insane" - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
64
+
56
65
  > "시지푸스 이름 자체가 이쁘잖아요?" — Sigrid ([@sigridjin_eth](https://x.com/sigridjin_eth))
57
66
 
58
67
  ---
@@ -67,6 +76,19 @@
67
76
  - [설치](#설치)
68
77
  - [인간인 당신을 위한 설치 가이드](#인간인-당신을-위한-설치-가이드)
69
78
  - [LLM Agent 를 위한 설치 가이드](#llm-agent-를-위한-설치-가이드)
79
+ - [0단계: 구독 정보 확인](#0단계-구독-정보-확인)
80
+ - [1단계: OpenCode 설치 확인](#1단계-opencode-설치-확인)
81
+ - [2단계: 설치 프로그램 실행](#2단계-설치-프로그램-실행)
82
+ - [3단계: 설정 확인](#3단계-설정-확인)
83
+ - [4단계: 인증정보 설정](#4단계-인증정보-설정)
84
+ - [4.1 Anthropic (Claude)](#41-anthropic-claude)
85
+ - [4.2 Google Gemini (Antigravity OAuth)](#42-google-gemini-antigravity-oauth)
86
+ - [4.3 OpenAI (ChatGPT Plus/Pro)](#43-openai-chatgpt-pluspro)
87
+ - [⚠️ 주의](#️-주의)
88
+ - [설정 확인](#설정-확인)
89
+ - [사용자에게 '축하합니다! 🎉'라고 말하세요](#사용자에게-축하합니다-라고-말하세요)
90
+ - [너무 복잡한가요?](#너무-복잡한가요)
91
+ - [언인스톨](#언인스톨)
70
92
  - [기능](#기능)
71
93
  - [Agents: 당신의 새로운 팀원들](#agents-당신의-새로운-팀원들)
72
94
  - [백그라운드 에이전트: 진짜 팀 처럼 일 하도록](#백그라운드-에이전트-진짜-팀-처럼-일-하도록)
@@ -819,7 +841,7 @@ Schema 자동 완성이 지원됩니다:
819
841
  활성화 시 (기본값), Sisyphus는 옵션으로 선택 가능한 특화 에이전트들과 함께 강력한 오케스트레이터를 제공합니다:
820
842
 
821
843
  - **Sisyphus**: Primary 오케스트레이터 에이전트 (Claude Opus 4.5)
822
- - **Builder-Sisyphus**: OpenCode 기본 빌드 에이전트 (SDK 제한으로 이름만 변경, 기본적으로 비활성화)
844
+ - **OpenCode-Builder**: OpenCode 기본 빌드 에이전트 (SDK 제한으로 이름만 변경, 기본적으로 비활성화)
823
845
  - **Planner-Sisyphus**: OpenCode 기본 플랜 에이전트 (SDK 제한으로 이름만 변경, 기본적으로 활성화)
824
846
 
825
847
  **설정 옵션:**
@@ -835,7 +857,7 @@ Schema 자동 완성이 지원됩니다:
835
857
  }
836
858
  ```
837
859
 
838
- **예시: Builder-Sisyphus 활성화하기:**
860
+ **예시: OpenCode-Builder 활성화하기:**
839
861
 
840
862
  ```json
841
863
  {
@@ -845,7 +867,7 @@ Schema 자동 완성이 지원됩니다:
845
867
  }
846
868
  ```
847
869
 
848
- 이렇게 하면 Sisyphus와 함께 Builder-Sisyphus 에이전트를 활성화할 수 있습니다. Sisyphus가 활성화되면 기본 빌드 에이전트는 항상 subagent 모드로 강등됩니다.
870
+ 이렇게 하면 Sisyphus와 함께 OpenCode-Builder 에이전트를 활성화할 수 있습니다. Sisyphus가 활성화되면 기본 빌드 에이전트는 항상 subagent 모드로 강등됩니다.
849
871
 
850
872
  **예시: 모든 Sisyphus 오케스트레이션 비활성화:**
851
873
 
@@ -866,7 +888,7 @@ Schema 자동 완성이 지원됩니다:
866
888
  "model": "anthropic/claude-sonnet-4",
867
889
  "temperature": 0.3
868
890
  },
869
- "Builder-Sisyphus": {
891
+ "OpenCode-Builder": {
870
892
  "model": "anthropic/claude-opus-4"
871
893
  },
872
894
  "Planner-Sisyphus": {
@@ -879,7 +901,7 @@ Schema 자동 완성이 지원됩니다:
879
901
  | 옵션 | 기본값 | 설명 |
880
902
  | --------------------------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
881
903
  | `disabled` | `false` | `true`면 모든 Sisyphus 오케스트레이션을 비활성화하고 원래 build/plan을 primary로 복원합니다. |
882
- | `default_builder_enabled` | `false` | `true`면 Builder-Sisyphus 에이전트를 활성화합니다 (OpenCode build와 동일, SDK 제한으로 이름만 변경). 기본적으로 비활성화되어 있습니다. |
904
+ | `default_builder_enabled` | `false` | `true`면 OpenCode-Builder 에이전트를 활성화합니다 (OpenCode build와 동일, SDK 제한으로 이름만 변경). 기본적으로 비활성화되어 있습니다. |
883
905
  | `planner_enabled` | `true` | `true`면 Planner-Sisyphus 에이전트를 활성화합니다 (OpenCode plan과 동일, SDK 제한으로 이름만 변경). 기본적으로 활성화되어 있습니다. |
884
906
  | `replace_plan` | `true` | `true`면 기본 플랜 에이전트를 subagent 모드로 강등시킵니다. `false`로 설정하면 Planner-Sisyphus와 기본 플랜을 모두 사용할 수 있습니다. |
885
907
 
@@ -1018,5 +1040,8 @@ OpenCode 를 사용하여 이 프로젝트의 99% 를 작성했습니다. 기능
1018
1040
  - **Numman Ali** [GitHub](https://github.com/numman-ali) [X](https://x.com/nummanali)
1019
1041
  - 첫 번째 스폰서
1020
1042
  - **Aaron Iker** [GitHub](https://github.com/aaroniker) [X](https://x.com/aaroniker)
1043
+ - **전수열 (devxoul)** [GitHub](https://github.com/devxoul)
1044
+ - 저의 커리어 시작을 만들어주신분이며, 좋은 에이전틱 워크플로우를 어떻게 만들 수 있을까에 대해 많은 영감을 주신 분입니다. 좋은 팀을 만들기 위해 좋은 시스템을 어떻게 설계 할 수 있을지 많은 배움을 얻었고 그러한 내용들이 이 harness를 만드는데에 큰 도움이 되었습니다.
1045
+ - **원혜린 (devwon)** [GitHub](https://github.com/devwon)
1021
1046
 
1022
1047
  *멋진 히어로 이미지를 만들어주신 히어로 [@junhoyeo](https://github.com/junhoyeo) 께 감사드립니다*
package/README.md CHANGED
@@ -7,10 +7,9 @@
7
7
  >
8
8
  > Be with us!
9
9
  >
10
- > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/aSfGzWtYxM) | Join our [Discord community](https://discord.gg/aSfGzWtYxM) to connect with contributors and fellow `oh-my-opencode` users. |
10
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | Join our [Discord community](https://discord.gg/PUwSMR9XNk) to connect with contributors and fellow `oh-my-opencode` users. |
11
11
  > | :-----| :----- |
12
12
  > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | News and updates for `oh-my-opencode` used to be posted on my X account. <br /> Since it was suspended mistakenly, [@justsisyphus](https://x.com/justsisyphus) now posts updates on my behalf. |
13
- > | [<img alt="Sponsor" src="https://img.shields.io/badge/Sponsor-❤-ff69b4?style=flat-square&logo=github-sponsors&labelColor=black" width="156px" />](https://github.com/sponsors/code-yeongyu) | Support the development of `oh-my-opencode` by [becoming a sponsor](https://github.com/sponsors/code-yeongyu). Your contribution helps keep this project alive and growing. |
14
13
 
15
14
  <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
16
15
 
@@ -54,6 +53,11 @@ No stupid token consumption massive subagents here. No bloat tools here.
54
53
 
55
54
  > "Knocked out 8000 eslint warnings with Oh My Opencode, just in a day" — [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
56
55
 
56
+ > "I converted a 45k line tauri app into a SaaS web app overnight using Ohmyopencode and ralph loop. Started with interview me prompt, asked it for ratings and recommendations on the questions. It was amazing to watch it work and to wake up this morning to a mostly working website!" - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
57
+
58
+ > "Experimenting with open code, oh my opencode and supermemory this weekend to build some minecraft/souls-like abomination."
59
+ > "Asking it to add crouch animations while I go take my post-lunch walk. [Video]" - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
60
+
57
61
  > "You guys should pull this into core and recruit him. Seriously. It's really, really, really good." — Henning Kilset
58
62
 
59
63
  > "Hire @yeon_gyu_kim if you can convince him, this dude has revolutionized opencode." — [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
@@ -64,7 +68,9 @@ No stupid token consumption massive subagents here. No bloat tools here.
64
68
 
65
69
  > "Oh My Opencode is king of the hill and has no contenders" — [RyanOnThePath](https://x.com/RyanOnThePath/status/2001438321252118548)
66
70
 
67
- > "Isn't the name Sisyphus itself beautiful?" Sigrid ([@sigridjin_eth](https://x.com/sigridjin_eth))
71
+ > "Oh My OpenCode Is Actually Insane" - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
72
+ >
73
+ > "Isn't the name Sisyphus beautiful by itself?" — Sigrid ([@sigridjin_eth](https://x.com/sigridjin_eth))
68
74
 
69
75
  ---
70
76
 
@@ -897,7 +903,7 @@ Available built-in skills: `playwright`
897
903
  When enabled (default), Sisyphus provides a powerful orchestrator with optional specialized agents:
898
904
 
899
905
  - **Sisyphus**: Primary orchestrator agent (Claude Opus 4.5)
900
- - **Builder-Sisyphus**: OpenCode's default build agent, renamed due to SDK limitations (disabled by default)
906
+ - **OpenCode-Builder**: OpenCode's default build agent, renamed due to SDK limitations (disabled by default)
901
907
  - **Planner-Sisyphus**: OpenCode's default plan agent, renamed due to SDK limitations (enabled by default)
902
908
 
903
909
  **Configuration Options:**
@@ -913,7 +919,7 @@ When enabled (default), Sisyphus provides a powerful orchestrator with optional
913
919
  }
914
920
  ```
915
921
 
916
- **Example: Enable Builder-Sisyphus:**
922
+ **Example: Enable OpenCode-Builder:**
917
923
 
918
924
  ```json
919
925
  {
@@ -923,7 +929,7 @@ When enabled (default), Sisyphus provides a powerful orchestrator with optional
923
929
  }
924
930
  ```
925
931
 
926
- This enables Builder-Sisyphus agent alongside Sisyphus. The default build agent is always demoted to subagent mode when Sisyphus is enabled.
932
+ This enables OpenCode-Builder agent alongside Sisyphus. The default build agent is always demoted to subagent mode when Sisyphus is enabled.
927
933
 
928
934
  **Example: Disable all Sisyphus orchestration:**
929
935
 
@@ -944,7 +950,7 @@ You can also customize Sisyphus agents like other agents:
944
950
  "model": "anthropic/claude-sonnet-4",
945
951
  "temperature": 0.3
946
952
  },
947
- "Builder-Sisyphus": {
953
+ "OpenCode-Builder": {
948
954
  "model": "anthropic/claude-opus-4"
949
955
  },
950
956
  "Planner-Sisyphus": {
@@ -957,7 +963,7 @@ You can also customize Sisyphus agents like other agents:
957
963
  | Option | Default | Description |
958
964
  | --------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
959
965
  | `disabled` | `false` | When `true`, disables all Sisyphus orchestration and restores original build/plan as primary. |
960
- | `default_builder_enabled` | `false` | When `true`, enables Builder-Sisyphus agent (same as OpenCode build, renamed due to SDK limitations). Disabled by default. |
966
+ | `default_builder_enabled` | `false` | When `true`, enables OpenCode-Builder agent (same as OpenCode build, renamed due to SDK limitations). Disabled by default. |
961
967
  | `planner_enabled` | `true` | When `true`, enables Planner-Sisyphus agent (same as OpenCode plan, renamed due to SDK limitations). Enabled by default. |
962
968
  | `replace_plan` | `true` | When `true`, demotes default plan agent to subagent mode. Set to `false` to keep both Planner-Sisyphus and default plan available. |
963
969
 
@@ -1096,5 +1102,8 @@ I have no affiliation with any project or model mentioned here. This is purely p
1096
1102
  - **Numman Ali** [GitHub](https://github.com/numman-ali) [X](https://x.com/nummanali)
1097
1103
  - The first sponsor
1098
1104
  - **Aaron Iker** [GitHub](https://github.com/aaroniker) [X](https://x.com/aaroniker)
1105
+ - **Suyeol Jeon (devxoul)** [GitHub](https://github.com/devxoul)
1106
+ - The person who launched my career and inspired me deeply on how to build great agentic workflows. I learned so much about designing great systems to build great teams, and those lessons were instrumental in creating this harness.
1107
+ - **Hyerin Won (devwon)** [GitHub](https://github.com/devwon)
1099
1108
 
1100
1109
  *Special thanks to [@junhoyeo](https://github.com/junhoyeo) for this amazing hero image.*
package/README.zh-cn.md CHANGED
@@ -2,12 +2,14 @@
2
2
  >
3
3
  > *"我致力于引发一场软件革命,创造一个AI生成的代码与人类代码无法区分、却能实现更多的世界。我已经在这段旅程中投入了个人时间、热情和资金,并将继续这样做。"*
4
4
  >
5
+ > [![The Orchestrator is coming](./.github/assets/orchestrator-sisyphus.png)](https://x.com/justsisyphus/status/2006250634354548963)
6
+ > > **编排器即将到来。就在本周。[在X上获取通知](https://x.com/justsisyphus/status/2006250634354548963)**
7
+ >
5
8
  > 与我们同行!
6
9
  >
7
- > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/aSfGzWtYxM) | 加入我们的 [Discord 社区](https://discord.gg/aSfGzWtYxM),和贡献者们、`oh-my-opencode` 用户们一起交流。 |
10
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | 加入我们的 [Discord 社区](https://discord.gg/PUwSMR9XNk),和贡献者们、`oh-my-opencode` 用户们一起交流。 |
8
11
  > | :-----| :----- |
9
12
  > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | `oh-my-opencode` 的消息之前在我的 X 账号发,但账号被无辜封了,<br />现在 [@justsisyphus](https://x.com/justsisyphus) 替我发更新。 |
10
- > | [<img alt="Sponsor" src="https://img.shields.io/badge/Sponsor-❤-ff69b4?style=flat-square&logo=github-sponsors&labelColor=black" width="156px" />](https://github.com/sponsors/code-yeongyu) | [成为赞助者](https://github.com/sponsors/code-yeongyu),支持 `oh-my-opencode` 的开发。您的支持让这个项目持续成长。 |
11
13
 
12
14
  <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
13
15
 
@@ -48,6 +50,11 @@
48
50
 
49
51
  > "只用了一天,就用 Oh My Opencode 干掉了 8000 个 eslint 警告" — [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
50
52
 
53
+ > "用Ohmyopencode和ralph loop,一夜之间把45,000行的tauri应用转成了SaaS网页应用。从面试提示开始,让它对问题进行评分和推荐。看着它工作真是太神奇了,早上醒来一个基本能用的网站就搞定了!" - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
54
+
55
+ > "这个周末在用open code、oh my opencode和supermemory做一个我的世界/魂类的怪物项目。"
56
+ > "吃完午饭去散步的时候让它加蹲下动画。[视频]" - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
57
+
51
58
  > "你们应该把它合并到核心代码里并聘用他。认真的。这真的、真的、真的很好" — Henning Kilset
52
59
 
53
60
  > "如果你能说服 @yeon_gyu_kim,就雇佣他吧,这家伙彻底改变了 opencode" — [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
@@ -58,6 +65,8 @@
58
65
 
59
66
  > "Oh My Opencode 独孤求败,没有对手" — [RyanOnThePath](https://x.com/RyanOnThePath/status/2001438321252118548)
60
67
 
68
+ > "Oh My OpenCode Is Actually Insane" - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
69
+
61
70
  > "西西弗斯这个名字本身不就很美吗?" — Sigrid ([@sigridjin_eth](https://x.com/sigridjin_eth))
62
71
 
63
72
  ---
@@ -72,6 +81,19 @@
72
81
  - [安装](#安装)
73
82
  - [人类专用](#人类专用)
74
83
  - [给 LLM Agent 看的](#给-llm-agent-看的)
84
+ - [步骤 0:确认订阅情况](#步骤-0确认订阅情况)
85
+ - [步骤 1:确认 OpenCode 装没装](#步骤-1确认-opencode-装没装)
86
+ - [步骤 2:跑安装程序](#步骤-2跑安装程序)
87
+ - [步骤 3:验货](#步骤-3验货)
88
+ - [步骤 4:搞定认证](#步骤-4搞定认证)
89
+ - [4.1 Anthropic (Claude)](#41-anthropic-claude)
90
+ - [4.2 Google Gemini (Antigravity OAuth)](#42-google-gemini-antigravity-oauth)
91
+ - [4.3 OpenAI (ChatGPT Plus/Pro)](#43-openai-chatgpt-pluspro)
92
+ - [⚠️ 注意](#️-注意)
93
+ - [检查作业](#检查作业)
94
+ - [跟用户说"恭喜!🎉"](#跟用户说恭喜)
95
+ - [太麻烦了?](#太麻烦了)
96
+ - [卸载](#卸载)
75
97
  - [功能](#功能)
76
98
  - [Agents:你的神队友](#agents你的神队友)
77
99
  - [后台 Agent:像真正的团队一样干活](#后台-agent像真正的团队一样干活)
@@ -830,7 +852,7 @@ Agent 爽了,你自然也爽。但我还想直接让你爽。
830
852
  默认开启。Sisyphus 提供一个强力的编排器,带可选的专门 Agent:
831
853
 
832
854
  - **Sisyphus**:主编排 Agent(Claude Opus 4.5)
833
- - **Builder-Sisyphus**:OpenCode 默认构建 Agent(因 SDK 限制仅改名,默认禁用)
855
+ - **OpenCode-Builder**:OpenCode 默认构建 Agent(因 SDK 限制仅改名,默认禁用)
834
856
  - **Planner-Sisyphus**:OpenCode 默认计划 Agent(因 SDK 限制仅改名,默认启用)
835
857
 
836
858
  **配置选项:**
@@ -846,7 +868,7 @@ Agent 爽了,你自然也爽。但我还想直接让你爽。
846
868
  }
847
869
  ```
848
870
 
849
- **示例:启用 Builder-Sisyphus:**
871
+ **示例:启用 OpenCode-Builder:**
850
872
 
851
873
  ```json
852
874
  {
@@ -856,7 +878,7 @@ Agent 爽了,你自然也爽。但我还想直接让你爽。
856
878
  }
857
879
  ```
858
880
 
859
- 这样能和 Sisyphus 一起启用 Builder-Sisyphus Agent。启用 Sisyphus 后,默认构建 Agent 总会降级为子 Agent 模式。
881
+ 这样能和 Sisyphus 一起启用 OpenCode-Builder Agent。启用 Sisyphus 后,默认构建 Agent 总会降级为子 Agent 模式。
860
882
 
861
883
  **示例:禁用所有 Sisyphus 编排:**
862
884
 
@@ -877,7 +899,7 @@ Sisyphus Agent 也能自定义:
877
899
  "model": "anthropic/claude-sonnet-4",
878
900
  "temperature": 0.3
879
901
  },
880
- "Builder-Sisyphus": {
902
+ "OpenCode-Builder": {
881
903
  "model": "anthropic/claude-opus-4"
882
904
  },
883
905
  "Planner-Sisyphus": {
@@ -890,7 +912,7 @@ Sisyphus Agent 也能自定义:
890
912
  | 选项 | 默认值 | 说明 |
891
913
  | --------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
892
914
  | `disabled` | `false` | 设为 `true` 就禁用所有 Sisyphus 编排,恢复原来的 build/plan。 |
893
- | `default_builder_enabled` | `false` | 设为 `true` 就启用 Builder-Sisyphus Agent(与 OpenCode build 相同,因 SDK 限制仅改名)。默认禁用。 |
915
+ | `default_builder_enabled` | `false` | 设为 `true` 就启用 OpenCode-Builder Agent(与 OpenCode build 相同,因 SDK 限制仅改名)。默认禁用。 |
894
916
  | `planner_enabled` | `true` | 设为 `true` 就启用 Planner-Sisyphus Agent(与 OpenCode plan 相同,因 SDK 限制仅改名)。默认启用。 |
895
917
  | `replace_plan` | `true` | 设为 `true` 就把默认计划 Agent 降级为子 Agent 模式。设为 `false` 可以同时保留 Planner-Sisyphus 和默认计划。 |
896
918
 
@@ -1028,5 +1050,8 @@ Oh My OpenCode 送你重构工具(重命名、代码操作)。
1028
1050
  - **Numman Ali** [GitHub](https://github.com/numman-ali) [X](https://x.com/nummanali)
1029
1051
  - 第一位赞助者
1030
1052
  - **Aaron Iker** [GitHub](https://github.com/aaroniker) [X](https://x.com/aaroniker)
1053
+ - **Suyeol Jeon (devxoul)** [GitHub](https://github.com/devxoul)
1054
+ - 他是开启我职业生涯的人,也是在如何构建优秀的代理工作流方面给了我很多启发的人。我从他那里学到了很多关于如何设计好的系统来打造优秀团队的知识,这些经验对开发这个harness起到了巨大的帮助作用。
1055
+ - **Hyerin Won (devwon)** [GitHub](https://github.com/devwon)
1031
1056
 
1032
1057
  *感谢 [@junhoyeo](https://github.com/junhoyeo) 制作了这张超帅的 hero 图。*
@@ -23,3 +23,4 @@ export declare function buildFrontendSection(agents: AvailableAgent[]): string;
23
23
  export declare function buildOracleSection(agents: AvailableAgent[]): string;
24
24
  export declare function buildHardBlocksSection(agents: AvailableAgent[]): string;
25
25
  export declare function buildAntiPatternsSection(agents: AvailableAgent[]): string;
26
+ export declare function buildUltraworkAgentSection(agents: AvailableAgent[]): string;
@@ -1,4 +1,13 @@
1
+ import { type OpenCodeBinaryType, type OpenCodeConfigPaths } from "../shared";
1
2
  import type { ConfigMergeResult, DetectedConfig, InstallConfig } from "./types";
3
+ interface ConfigContext {
4
+ binary: OpenCodeBinaryType;
5
+ version: string | null;
6
+ paths: OpenCodeConfigPaths;
7
+ }
8
+ export declare function initConfigContext(binary: OpenCodeBinaryType, version: string | null): void;
9
+ export declare function getConfigContext(): ConfigContext;
10
+ export declare function resetConfigContext(): void;
2
11
  export declare function fetchLatestVersion(packageName: string): Promise<string | null>;
3
12
  type ConfigFormat = "json" | "jsonc" | "none";
4
13
  export declare function detectConfigFormat(): {