omnilane 0.8.1 → 0.8.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.
- package/CHANGELOG.md +23 -1
- package/README.ja.md +68 -14
- package/README.ko.md +64 -13
- package/README.md +65 -15
- package/README.zh-CN.md +59 -11
- package/README.zh-TW.md +59 -11
- package/VERSION +1 -1
- package/bin/omnilane +8 -0
- package/bin/omnilane-mcp +465 -0
- package/completions/_omnilane +1 -1
- package/completions/omnilane.bash +1 -1
- package/package.json +1 -1
- package/routing.yaml +4 -2
- package/scripts/configure.sh +7 -1
- package/scripts/dispatch.sh +4 -4
- package/scripts/jobs.sh +3 -3
- package/scripts/lib/common.sh +6 -0
- package/scripts/runners/run-opencode.sh +51 -0
- package/scripts/runners/run-openrouter.sh +86 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,26 @@ semantic version tags.
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.8.3] - 2026-07-18
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- Dependency-free MCP stdio server (`omnilane mcp`) exposing routing, lane
|
|
14
|
+
discovery, and background-job status/results to any MCP-capable host.
|
|
15
|
+
|
|
16
|
+
## [0.8.2] - 2026-07-18
|
|
17
|
+
|
|
18
|
+
### Added
|
|
19
|
+
|
|
20
|
+
- `openrouter` vendor: direct OpenRouter API dispatch (curl + `OPENROUTER_API_KEY`,
|
|
21
|
+
no CLI dependency). Advise/consult only — work mode fails hard with guidance —
|
|
22
|
+
and the model slug is mandatory. Hundreds of hosted models become reachable
|
|
23
|
+
from any omnilane install without adding a coding-agent CLI.
|
|
24
|
+
- `opencode` vendor: headless `opencode run` dispatch through the OpenCode
|
|
25
|
+
multi-provider aggregator CLI. Advise mode pins OpenCode's built-in read-only
|
|
26
|
+
`plan` agent; work mode uses `--auto`. Appended as the last fallback in the
|
|
27
|
+
default `coding-overflow` chain.
|
|
28
|
+
|
|
9
29
|
## [0.8.1] - 2026-07-18
|
|
10
30
|
|
|
11
31
|
### Added
|
|
@@ -239,7 +259,9 @@ semantic version tags.
|
|
|
239
259
|
- Initial shared routing table, cross-vendor dispatcher, runners, installer,
|
|
240
260
|
and baseline lint fixes.
|
|
241
261
|
|
|
242
|
-
[Unreleased]: https://github.com/Seraphim0916/omnilane/compare/v0.8.
|
|
262
|
+
[Unreleased]: https://github.com/Seraphim0916/omnilane/compare/v0.8.3...HEAD
|
|
263
|
+
[0.8.3]: https://github.com/Seraphim0916/omnilane/compare/v0.8.2...v0.8.3
|
|
264
|
+
[0.8.2]: https://github.com/Seraphim0916/omnilane/compare/v0.8.1...v0.8.2
|
|
243
265
|
|
|
244
266
|
[0.8.1]: https://github.com/Seraphim0916/omnilane/compare/v0.8.0...v0.8.1
|
|
245
267
|
|
package/README.ja.md
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
### ルーティングテーブルは一枚、ハーネスは全部。
|
|
6
6
|
|
|
7
7
|
*メインループはもう、どのモデルを使うか迷わない。*<br/>
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
**Claude Code · Codex · Grok Build · Antigravity** のどれから操縦しても、すべてのサブタスクを<br/>
|
|
9
|
+
その作業が本当に得意なモデルへ——Codex、Claude、Grok、Gemini、Kimi、Qwen、OpenCode、<br/>
|
|
10
|
+
さらに OpenRouter 経由の任意のホスト型モデル——いまのサブスクリプションのまま、または API キー一つで。
|
|
10
11
|
|
|
11
12
|
<img src="docs/hero.ja.png" alt="omnilane が各サブタスクを Claude Code・Codex・Grok・Antigravity の最適なモデルへ振り分ける" width="820"/>
|
|
12
13
|
|
|
@@ -20,6 +21,27 @@
|
|
|
20
21
|
|
|
21
22
|
---
|
|
22
23
|
|
|
24
|
+
## v0.8.3 の新機能
|
|
25
|
+
|
|
26
|
+
- **MCP サーバー** — `omnilane mcp` は依存ゼロの stdio MCP サーバーを起動し、
|
|
27
|
+
MCP 対応ホスト(Claude Code、Codex、Gemini CLI、Cursor、OpenCode など)が
|
|
28
|
+
スキルなしで omnilane を発見・呼び出しできます:ツールは `route`、
|
|
29
|
+
`jobs_status`、`jobs_result`、`list_lanes`。`route` は読み取り専用の
|
|
30
|
+
advise がデフォルトで、work モードには明示的な workdir が必須です。
|
|
31
|
+
|
|
32
|
+
## v0.8.2 の新機能
|
|
33
|
+
|
|
34
|
+
- **`openrouter` vendor** — `curl` と `OPENROUTER_API_KEY` だけで
|
|
35
|
+
OpenRouter API に直接ディスパッチ。どの omnilane インストールからでも
|
|
36
|
+
数百のホスト型モデルに到達でき、コーディングエージェント CLI の追加は
|
|
37
|
+
不要。advise/consult 専用(ファイル編集不可、work モードは明確に
|
|
38
|
+
エラーで案内)、モデル slug は必須。例:
|
|
39
|
+
`dispatch.sh --vendor openrouter --model anthropic/claude-sonnet-5 consult "..."`
|
|
40
|
+
- **`opencode` vendor** — マルチプロバイダ集約 CLI OpenCode 経由の
|
|
41
|
+
ヘッドレスディスパッチ(`opencode run`)。advise モードは組み込みの
|
|
42
|
+
読み取り専用 `plan` エージェントを使用し、work モードは `--auto`。
|
|
43
|
+
デフォルトの `coding-overflow` チェーンの最終フォールバックに追加。
|
|
44
|
+
|
|
23
45
|
## v0.8.1 の新機能
|
|
24
46
|
|
|
25
47
|
- **Claude Code プラグインがルーティングリマインダーを自動読み込み** —
|
|
@@ -101,8 +123,9 @@ omnilane ui start # 任意:ブラウザでジョブをライブ表示
|
|
|
101
123
|
## 🧭 仕組み
|
|
102
124
|
|
|
103
125
|
omnilane は、**どの** agentic CLI のメインループでも、サブタスクをレーンに
|
|
104
|
-
|
|
105
|
-
|
|
126
|
+
分類し、各レーンをその作業が最も得意なベンダーへヘッドレスで
|
|
127
|
+
ディスパッチさせる仕組みです。既存のサブスクリプションログインをそのまま
|
|
128
|
+
使います(`openrouter` vendor は例外:CLI 不要、API キー一つで直接接続):
|
|
106
129
|
|
|
107
130
|
```mermaid
|
|
108
131
|
flowchart LR
|
|
@@ -149,7 +172,7 @@ flowchart LR
|
|
|
149
172
|
| 📚 long-context | Gemini 3.1 Pro (High) | Claude Opus 4.8 (high) | 100 万トークン級の長文統合——分析専用、agentic ループ禁止 |
|
|
150
173
|
| ⚡ fast-agentic | Gemini 3.5 Flash (High) | GPT-5.6 Luna (high) | 高速なマルチステップ agentic ループ、マルチモーダル確認 |
|
|
151
174
|
| 📡 live-search | Grok 4.5 | —(off) | リアルタイム X/ウェブ検索とソーシャル文脈 |
|
|
152
|
-
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus | Codex クォータ逼迫時の中級コーディング逃し弁 |
|
|
175
|
+
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus → OpenCode | Codex クォータ逼迫時の中級コーディング逃し弁 |
|
|
153
176
|
| 🗳️ arbitrate | off(オプトイン) | — | 内蔵オピニオンパネル(重大な判断用)——デフォルト無効。`routing.local.yaml` で有効化;投票者×ラウンドごとに 1 コール消費 |
|
|
154
177
|
|
|
155
178
|
**バックアップ**はチェーンの次の候補——第一候補のベンダー CLI が未インストールの
|
|
@@ -230,9 +253,11 @@ omnilane ui stop # 正常に停止
|
|
|
230
253
|
|
|
231
254
|
## 📦 インストール
|
|
232
255
|
|
|
233
|
-
前提:ルーティングしたいベンダー CLI(`codex`、`claude`、`grok`、`agy
|
|
234
|
-
|
|
235
|
-
|
|
256
|
+
前提:ルーティングしたいベンダー CLI(`codex`、`claude`、`grok`、`agy`、
|
|
257
|
+
任意で `kimi`、`qwen`、`opencode`)がログイン済みで `PATH` 上にあること——
|
|
258
|
+
**持っている分だけで OK**、足りないレーンは自動的に降格します。
|
|
259
|
+
`openrouter` vendor は例外で、CLI は不要——`curl` と環境変数の
|
|
260
|
+
`OPENROUTER_API_KEY` だけで動きます。
|
|
236
261
|
|
|
237
262
|
最速:`./install.sh` — 本機の CLI を検出してスキルを接続し、残りのプラグイン
|
|
238
263
|
コマンドを表示、実効ルーティングを出力し、最後に対話式設定メニューを
|
|
@@ -258,6 +283,28 @@ CLI バージョンにより異なる場合あり)へマーカー付きの可逆
|
|
|
258
283
|
- **Antigravity**:`agy plugin install <このリポジトリ>`(先に
|
|
259
284
|
`agy plugin validate` で確認)
|
|
260
285
|
|
|
286
|
+
### MCP サーバー
|
|
287
|
+
|
|
288
|
+
`omnilane mcp` は依存ゼロでローカル実行される MCP stdio サーバーを起動し、
|
|
289
|
+
MCP 対応ホストがスキルの導入やルーティングリマインダーなしで omnilane を
|
|
290
|
+
発見・呼び出しできるようにします。ホスト側の設定でインストール済み CLI を
|
|
291
|
+
指定してください:
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"omnilane": {
|
|
297
|
+
"command": "omnilane",
|
|
298
|
+
"args": ["mcp"]
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
サーバーは `route`、`jobs_status`、`jobs_result`、`list_lanes` を公開します。
|
|
305
|
+
`route` のデフォルトは読み取り専用の `advise` モードで、`work` を選ぶ呼び
|
|
306
|
+
出しには明示的な `workdir` が必須です。
|
|
307
|
+
|
|
261
308
|
## ⚙️ カスタマイズ
|
|
262
309
|
|
|
263
310
|
三層、すべて任意:
|
|
@@ -312,9 +359,13 @@ configure.sh # 対話式レーンメニ
|
|
|
312
359
|
## 🎭 モード
|
|
313
360
|
|
|
314
361
|
- **advise(デフォルト)** — 読み取り専用ワーカー。Codex は read-only
|
|
315
|
-
サンドボックス、Claude は Read/Glob/Grep のみ、Grok は plan
|
|
362
|
+
サンドボックス、Claude は Read/Glob/Grep のみ、Grok は plan モード、
|
|
363
|
+
Kimi と OpenCode はそれぞれの読み取り専用 plan モードに固定、
|
|
364
|
+
OpenRouter は設計上 advise 専用(純推論)。
|
|
316
365
|
- **work** — 指定した `--workdir` 内でのみファイル編集可。Codex は
|
|
317
366
|
workspace-write、Claude は編集自動承認、Gemini は accept-edits モード。
|
|
367
|
+
`openrouter` vendor は work モードを明確に拒否します——編集はエージェント型
|
|
368
|
+
CLI ベンダーへ。
|
|
318
369
|
|
|
319
370
|
## 🔒 安全機構
|
|
320
371
|
|
|
@@ -368,11 +419,14 @@ configure.sh # 対話式レーンメニ
|
|
|
368
419
|
|
|
369
420
|
## 🌱 ステータス
|
|
370
421
|
|
|
371
|
-
v0.
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
422
|
+
v0.8.3 は 8 つのディスパッチベンダーを備えます——4 つのハーネスネイティブ
|
|
423
|
+
(codex、claude、grok、gemini)、3 つの集約/オーバーフロー CLI(kimi、qwen、
|
|
424
|
+
opencode)、そして CLI 不要の `openrouter` 直接 API ベンダー——すべて統一
|
|
425
|
+
runner 契約と契約テスト付き。Claude Code の `SessionStart` 自動リマインダー
|
|
426
|
+
も同梱。kimi、qwen、opencode、openrouter の runner はフェイクバイナリで
|
|
427
|
+
契約テスト済みです。実モデルでの報告を歓迎します。Grok/Antigravity の
|
|
428
|
+
コマンドシェル挙動は CLI バージョンで変わる可能性があります。issue と PR を
|
|
429
|
+
歓迎します。
|
|
376
430
|
|
|
377
431
|
プロジェクト文書:[コントリビューション](CONTRIBUTING.md) ·
|
|
378
432
|
[セキュリティ](SECURITY.md) · [変更履歴](CHANGELOG.md)
|
package/README.ko.md
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
### 라우팅 테이블 하나로, 모든 하네스를.
|
|
6
6
|
|
|
7
7
|
*메인 루프가 더 이상 어떤 모델을 쓸지 고민하지 않습니다.*<br/>
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
**Claude Code · Codex · Grok Build · Antigravity** 어디서 운전하든, 모든 서브태스크를<br/>
|
|
9
|
+
그 일을 정말 잘하는 모델에게——Codex, Claude, Grok, Gemini, Kimi, Qwen, OpenCode,<br/>
|
|
10
|
+
그리고 OpenRouter 를 통한 모든 호스팅 모델까지——이미 내고 있는 구독 그대로, 또는 API 키 하나로.
|
|
10
11
|
|
|
11
12
|
<img src="docs/hero.ko.png" alt="omnilane 이 각 서브태스크를 Claude Code·Codex·Grok·Antigravity 중 가장 잘하는 모델로 보냅니다" width="820"/>
|
|
12
13
|
|
|
@@ -20,6 +21,27 @@
|
|
|
20
21
|
|
|
21
22
|
---
|
|
22
23
|
|
|
24
|
+
## v0.8.3 새 기능
|
|
25
|
+
|
|
26
|
+
- **MCP 서버** — `omnilane mcp` 는 의존성 없는 stdio MCP 서버를 시작하여,
|
|
27
|
+
MCP 지원 호스트(Claude Code, Codex, Gemini CLI, Cursor, OpenCode 등)가
|
|
28
|
+
스킬 설치 없이 omnilane 을 발견하고 호출할 수 있습니다: 도구는 `route`,
|
|
29
|
+
`jobs_status`, `jobs_result`, `list_lanes`. `route` 는 읽기 전용 advise 가
|
|
30
|
+
기본값이며, work 모드는 명시적 workdir 이 필요합니다.
|
|
31
|
+
|
|
32
|
+
## v0.8.2 새 기능
|
|
33
|
+
|
|
34
|
+
- **`openrouter` vendor** — `curl`과 `OPENROUTER_API_KEY`만으로
|
|
35
|
+
OpenRouter API에 직접 디스패치합니다. 어떤 omnilane 설치에서도 수백 개의
|
|
36
|
+
호스팅 모델에 접근할 수 있으며 코딩 에이전트 CLI를 추가로 설치할 필요가
|
|
37
|
+
없습니다. advise/consult 전용(파일 편집 불가, work 모드는 명확한 오류로
|
|
38
|
+
안내)이며 모델 slug는 필수입니다. 예:
|
|
39
|
+
`dispatch.sh --vendor openrouter --model anthropic/claude-sonnet-5 consult "..."`
|
|
40
|
+
- **`opencode` vendor** — 멀티 프로바이더 집합 CLI OpenCode를 통한
|
|
41
|
+
헤드리스 디스패치(`opencode run`). advise 모드는 내장 읽기 전용 `plan`
|
|
42
|
+
에이전트를 사용하고 work 모드는 `--auto`를 사용합니다. 기본
|
|
43
|
+
`coding-overflow` 체인의 마지막 폴백으로 추가되었습니다.
|
|
44
|
+
|
|
23
45
|
## v0.8.1 새 기능
|
|
24
46
|
|
|
25
47
|
- **Claude Code 플러그인이 라우팅 리마인더를 자동 로드** — 플러그인에
|
|
@@ -101,8 +123,9 @@ omnilane ui start # 선택: 브라우저에서 잡을 실시간 확인
|
|
|
101
123
|
## 🧭 동작 방식
|
|
102
124
|
|
|
103
125
|
omnilane 은 **어떤** agentic CLI 든 메인 루프가 서브태스크를 레인으로 분류하고,
|
|
104
|
-
각 레인을 그 작업에 가장 강한
|
|
105
|
-
기존 구독 로그인을 그대로
|
|
126
|
+
각 레인을 그 작업에 가장 강한 벤더로 헤드리스 디스패치하게 해 줍니다.
|
|
127
|
+
기존 구독 로그인을 그대로 사용합니다(`openrouter` vendor 는 예외: CLI 없이
|
|
128
|
+
API 키 하나로 직접 연결):
|
|
106
129
|
|
|
107
130
|
```mermaid
|
|
108
131
|
flowchart LR
|
|
@@ -148,7 +171,7 @@ flowchart LR
|
|
|
148
171
|
| 📚 long-context | Gemini 3.1 Pro (High) | Claude Opus 4.8 (high) | 100만 토큰급 장문 통합——분석 전용, agentic 루프 금지 |
|
|
149
172
|
| ⚡ fast-agentic | Gemini 3.5 Flash (High) | GPT-5.6 Luna (high) | 빠른 멀티스텝 agentic 루프, 멀티모달 확인 |
|
|
150
173
|
| 📡 live-search | Grok 4.5 | —(off) | 실시간 X/웹 검색과 소셜 맥락 |
|
|
151
|
-
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus | Codex 쿼터 소진 시 중급 코딩 안전 밸브 |
|
|
174
|
+
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus → OpenCode | Codex 쿼터 소진 시 중급 코딩 안전 밸브 |
|
|
152
175
|
| 🗳️ arbitrate | off(옵트인) | — | 내장 의견 패널(중대한 결정용)——기본 비활성. `routing.local.yaml` 에서 활성화;투표자×라운드마다 1콜 소모 |
|
|
153
176
|
|
|
154
177
|
**백업**은 체인의 다음 후보입니다——1순위 벤더 CLI 가 설치되지 않았을 때
|
|
@@ -227,8 +250,10 @@ omnilane ui stop # 정상 중지
|
|
|
227
250
|
|
|
228
251
|
## 📦 설치
|
|
229
252
|
|
|
230
|
-
전제: 라우팅할 벤더 CLI(`codex`, `claude`, `grok`, `agy
|
|
231
|
-
`PATH` 에 있을 것——**가진 것만
|
|
253
|
+
전제: 라우팅할 벤더 CLI(`codex`, `claude`, `grok`, `agy`, 선택적으로
|
|
254
|
+
`kimi`, `qwen`, `opencode`)가 로그인된 채 `PATH` 에 있을 것——**가진 것만
|
|
255
|
+
있으면 됩니다**, 없는 레인은 자동 강등. `openrouter` vendor 는 예외로 CLI 가
|
|
256
|
+
필요 없습니다——`curl` 과 환경 변수의 `OPENROUTER_API_KEY` 만 있으면 됩니다.
|
|
232
257
|
|
|
233
258
|
가장 빠른 방법: `./install.sh` — 로컬 CLI 를 감지해 스킬을 연결하고, 나머지
|
|
234
259
|
플러그인 명령을 안내하며, 실효 라우팅을 출력한 뒤 대화형 설정 메뉴를
|
|
@@ -252,6 +277,27 @@ omnilane ui stop # 정상 중지
|
|
|
252
277
|
- **Antigravity**: `agy plugin install <이 저장소>`(먼저
|
|
253
278
|
`agy plugin validate` 로 확인)
|
|
254
279
|
|
|
280
|
+
### MCP 서버
|
|
281
|
+
|
|
282
|
+
`omnilane mcp` 는 의존성 없이 로컬에서 실행되는 MCP stdio 서버를 시작하여,
|
|
283
|
+
MCP 지원 호스트가 스킬 설치나 라우팅 리마인더 없이 omnilane 을 발견하고
|
|
284
|
+
호출할 수 있게 합니다. 호스트 설정에서 설치된 CLI 를 지정하면 됩니다:
|
|
285
|
+
|
|
286
|
+
```json
|
|
287
|
+
{
|
|
288
|
+
"mcpServers": {
|
|
289
|
+
"omnilane": {
|
|
290
|
+
"command": "omnilane",
|
|
291
|
+
"args": ["mcp"]
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
서버는 `route`, `jobs_status`, `jobs_result`, `list_lanes` 를 제공합니다.
|
|
298
|
+
`route` 의 기본값은 읽기 전용 `advise` 모드이며, `work` 를 선택한 호출은
|
|
299
|
+
명시적 `workdir` 을 함께 제공해야 합니다.
|
|
300
|
+
|
|
255
301
|
## ⚙️ 사용자 설정
|
|
256
302
|
|
|
257
303
|
세 계층, 모두 선택 사항:
|
|
@@ -305,9 +351,12 @@ CLI 를 사용할 수 없음, `5` 1라운드 성공 투표자 부족, `6` 2라
|
|
|
305
351
|
## 🎭 모드
|
|
306
352
|
|
|
307
353
|
- **advise(기본)** — 읽기 전용 워커. Codex 는 read-only 샌드박스,
|
|
308
|
-
Claude 는 Read/Glob/Grep 만, Grok 은 plan
|
|
354
|
+
Claude 는 Read/Glob/Grep 만, Grok 은 plan 모드, Kimi 와 OpenCode 는 각자의
|
|
355
|
+
읽기 전용 plan 모드 고정, OpenRouter 는 설계상 advise 전용(순수 추론).
|
|
309
356
|
- **work** — 지정한 `--workdir` 안에서만 파일 수정 허용. Codex 는
|
|
310
357
|
workspace-write, Claude 는 편집 자동 승인, Gemini 는 accept-edits 모드.
|
|
358
|
+
`openrouter` vendor 는 work 모드를 명확한 오류로 거부합니다——파일 편집은
|
|
359
|
+
에이전트형 CLI 벤더로 보내세요.
|
|
311
360
|
|
|
312
361
|
## 🔒 안전 장치
|
|
313
362
|
|
|
@@ -358,11 +407,13 @@ CLI 를 사용할 수 없음, `5` 1라운드 성공 투표자 부족, `6` 2라
|
|
|
358
407
|
|
|
359
408
|
## 🌱 상태
|
|
360
409
|
|
|
361
|
-
v0.
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
410
|
+
v0.8.3 는 8개의 디스패치 벤더를 갖춥니다——4개의 하네스 네이티브(codex,
|
|
411
|
+
claude, grok, gemini), 3개의 집합/오버플로 CLI(kimi, qwen, opencode), 그리고
|
|
412
|
+
CLI 가 필요 없는 `openrouter` 직접 API 벤더——모두 통일 runner 계약과 계약
|
|
413
|
+
테스트를 갖추었고, Claude Code `SessionStart` 자동 리마인더도 포함합니다.
|
|
414
|
+
kimi, qwen, opencode, openrouter 의 runner 는 페이크 바이너리로 계약 테스트를
|
|
415
|
+
마쳤습니다. 실제 모델 사용 보고를 환영합니다. Grok/Antigravity 커맨드 셸
|
|
416
|
+
동작은 CLI 버전에 따라 달라질 수 있습니다. issue 와 PR 환영합니다.
|
|
366
417
|
|
|
367
418
|
프로젝트 문서: [기여 가이드](CONTRIBUTING.md) · [보안 정책](SECURITY.md) ·
|
|
368
419
|
[변경 기록](CHANGELOG.md)
|
package/README.md
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
### One routing table, every harness.
|
|
6
6
|
|
|
7
7
|
*Your main loop stops guessing which model to use.*<br/>
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
Drive it from **Claude Code · Codex · Grok Build · Antigravity**, and every subtask goes<br/>
|
|
9
|
+
to the model that is actually best at it — Codex, Claude, Grok, Gemini, Kimi, Qwen, OpenCode,<br/>
|
|
10
|
+
or any hosted model via OpenRouter — on the subscriptions you already pay for, or a single API key.
|
|
10
11
|
|
|
11
12
|
<img src="docs/hero.png" alt="omnilane routes each subtask to the best model across Claude Code, Codex, Grok and Antigravity" width="820"/>
|
|
12
13
|
|
|
@@ -20,6 +21,27 @@ Every subtask goes to the model that is actually best at it — across<br/>
|
|
|
20
21
|
|
|
21
22
|
---
|
|
22
23
|
|
|
24
|
+
## What's new in v0.8.3
|
|
25
|
+
|
|
26
|
+
- **MCP server** — `omnilane mcp` starts a zero-dependency stdio MCP server,
|
|
27
|
+
so any MCP-capable host (Claude Code, Codex, Gemini CLI, Cursor, OpenCode…)
|
|
28
|
+
can discover and call omnilane without installing the skill: tools `route`,
|
|
29
|
+
`jobs_status`, `jobs_result`, and `list_lanes`. `route` defaults to
|
|
30
|
+
read-only advise mode; work mode requires an explicit workdir.
|
|
31
|
+
|
|
32
|
+
## What's new in v0.8.2
|
|
33
|
+
|
|
34
|
+
- **`openrouter` vendor** — dispatch straight to the OpenRouter API with
|
|
35
|
+
nothing but `curl` and an `OPENROUTER_API_KEY`: hundreds of hosted models
|
|
36
|
+
become reachable from any omnilane install, no coding-agent CLI required.
|
|
37
|
+
Advise/consult only (it cannot edit files; work mode fails with guidance)
|
|
38
|
+
and the model slug is mandatory, e.g.
|
|
39
|
+
`dispatch.sh --vendor openrouter --model anthropic/claude-sonnet-5 consult "..."`.
|
|
40
|
+
- **`opencode` vendor** — headless dispatch through the OpenCode
|
|
41
|
+
multi-provider aggregator CLI (`opencode run`). Advise mode pins OpenCode's
|
|
42
|
+
built-in read-only `plan` agent; work mode uses `--auto`. Joins the default
|
|
43
|
+
`coding-overflow` chain as its last fallback.
|
|
44
|
+
|
|
23
45
|
## What's new in v0.8.1
|
|
24
46
|
|
|
25
47
|
- **Claude Code plugin auto-loads the routing reminder** — the plugin now
|
|
@@ -102,8 +124,9 @@ omnilane ui start # optional: watch jobs live in your browser
|
|
|
102
124
|
## 🧭 How it works
|
|
103
125
|
|
|
104
126
|
omnilane lets the main loop of **any** agentic CLI classify subtasks into
|
|
105
|
-
lanes and dispatch each lane to the best vendor
|
|
106
|
-
|
|
127
|
+
lanes and dispatch each lane to the best vendor — headlessly, using your
|
|
128
|
+
existing subscription logins (or, for the `openrouter` vendor, a direct API
|
|
129
|
+
key with no extra CLI at all):
|
|
107
130
|
|
|
108
131
|
```mermaid
|
|
109
132
|
flowchart LR
|
|
@@ -150,7 +173,7 @@ flowchart LR
|
|
|
150
173
|
| 📚 long-context | Gemini 3.1 Pro (High) | Claude Opus 4.8 (high) | 1M-token synthesis — analysis only, never agentic loops |
|
|
151
174
|
| ⚡ fast-agentic | Gemini 3.5 Flash (High) | GPT-5.6 Luna (high) | Fast multi-step agentic loops, multimodal checks |
|
|
152
175
|
| 📡 live-search | Grok 4.5 | — (off) | Realtime X/web search and social context |
|
|
153
|
-
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus | Codex-quota relief valve for mid-tier coding |
|
|
176
|
+
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus → OpenCode | Codex-quota relief valve for mid-tier coding |
|
|
154
177
|
| 🗳️ arbitrate | off (opt-in vote panel) | — | Built-in opinion panel for big calls — disabled by default; enable it in `routing.local.yaml`, one call per voter per round |
|
|
155
178
|
|
|
156
179
|
The **backup** is the next candidate in the lane's `routing.yaml` chain — what
|
|
@@ -231,8 +254,10 @@ Core routing does not need Python; only this UI requires Python 3.9 or newer.
|
|
|
231
254
|
## 📦 Install
|
|
232
255
|
|
|
233
256
|
Requirements: the vendor CLIs you want to route to, logged in (`codex`,
|
|
234
|
-
`claude`, `grok`, `agy
|
|
235
|
-
rest of the table degrades
|
|
257
|
+
`claude`, `grok`, `agy`, and optionally `kimi`, `qwen`, `opencode`) and on
|
|
258
|
+
`PATH` — install only the ones you have; the rest of the table degrades
|
|
259
|
+
automatically. The `openrouter` vendor is the exception: it needs no CLI,
|
|
260
|
+
only `curl` and an `OPENROUTER_API_KEY` in your environment.
|
|
236
261
|
|
|
237
262
|
Quickest: `./install.sh` — symlinks the skill for the CLIs it finds, prints
|
|
238
263
|
the plugin commands for the rest, shows your effective routing, and offers the
|
|
@@ -259,6 +284,27 @@ Rollback the installer-owned links and marked reminders with
|
|
|
259
284
|
- **Antigravity**: `agy plugin install <this repo>` (check first with
|
|
260
285
|
`agy plugin validate <this repo>`)
|
|
261
286
|
|
|
287
|
+
### MCP server
|
|
288
|
+
|
|
289
|
+
`omnilane mcp` starts a zero-dependency, local MCP stdio server so any
|
|
290
|
+
MCP-capable host can discover and call omnilane without installing the skill or
|
|
291
|
+
adding a routing reminder. Configure the host to launch the installed CLI:
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"omnilane": {
|
|
297
|
+
"command": "omnilane",
|
|
298
|
+
"args": ["mcp"]
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
The server exposes `route`, `jobs_status`, `jobs_result`, and `list_lanes`.
|
|
305
|
+
`route` defaults to read-only `advise` mode. Calls that select `work` must also
|
|
306
|
+
provide an explicit `workdir`.
|
|
307
|
+
|
|
262
308
|
## ⚙️ Configure
|
|
263
309
|
|
|
264
310
|
Three layers, all optional:
|
|
@@ -330,11 +376,13 @@ code passes through.
|
|
|
330
376
|
## 🎭 Modes
|
|
331
377
|
|
|
332
378
|
- **advise** (default) — read-only worker. Codex runs in a read-only sandbox;
|
|
333
|
-
Claude gets only Read/Glob/Grep; Grok runs in plan mode
|
|
334
|
-
|
|
379
|
+
Claude gets only Read/Glob/Grep; Grok runs in plan mode; Kimi and OpenCode
|
|
380
|
+
pin their read-only plan modes; OpenRouter is advise-only by design (pure
|
|
381
|
+
inference). Use for reviews, questions, second opinions.
|
|
335
382
|
- **work** — the worker may edit files, only inside the `--workdir` you name.
|
|
336
383
|
Codex gets a workspace-write sandbox; Claude auto-accepts edits; Gemini runs
|
|
337
|
-
in accept-edits mode.
|
|
384
|
+
in accept-edits mode. The `openrouter` vendor refuses work mode with a clear
|
|
385
|
+
error — route edits to an agentic CLI vendor instead.
|
|
338
386
|
|
|
339
387
|
## 🔒 Safety rails
|
|
340
388
|
|
|
@@ -391,11 +439,13 @@ configurator and `routing.local.yaml` exist so you can disagree.
|
|
|
391
439
|
|
|
392
440
|
## 🌱 Status
|
|
393
441
|
|
|
394
|
-
v0.
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
442
|
+
v0.8.3 spans eight dispatch vendors — four harness natives (codex, claude,
|
|
443
|
+
grok, gemini), three aggregator/overflow CLIs (kimi, qwen, opencode), and the
|
|
444
|
+
CLI-free `openrouter` direct-API vendor — on the uniform runner contract with
|
|
445
|
+
contract tests, plus the Claude Code `SessionStart` auto-reminder. kimi, qwen,
|
|
446
|
+
opencode, and openrouter runners are contract-tested against fake binaries;
|
|
447
|
+
real-model reports welcome. Grok/Antigravity command-shell behavior may still
|
|
448
|
+
vary across CLI versions. Issues and PRs welcome.
|
|
399
449
|
|
|
400
450
|
Project policies: [Contributing](CONTRIBUTING.md) · [Security](SECURITY.md) ·
|
|
401
451
|
[Changelog](CHANGELOG.md)
|
package/README.zh-CN.md
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
### 一张路由表,四个执行框架通用。
|
|
6
6
|
|
|
7
7
|
*让主循环不再猜要用哪个模型。*<br/>
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
从 **Claude Code · Codex · Grok Build · Antigravity** 任一框架驾驶,每个子任务都派给<br/>
|
|
9
|
+
真正最擅长它的模型——Codex、Claude、Grok、Gemini、Kimi、Qwen、OpenCode,<br/>
|
|
10
|
+
或经 OpenRouter 直达任何托管模型——用你已经在付的订阅,或一把 API 密钥。
|
|
10
11
|
|
|
11
12
|
<img src="docs/hero.zh-CN.png" alt="omnilane 把每个子任务派给 Claude Code、Codex、Grok、Antigravity 中最擅长的模型" width="820"/>
|
|
12
13
|
|
|
@@ -20,6 +21,25 @@
|
|
|
20
21
|
|
|
21
22
|
---
|
|
22
23
|
|
|
24
|
+
## v0.8.3 新功能
|
|
25
|
+
|
|
26
|
+
- **MCP server** — `omnilane mcp` 启动零依赖的 stdio MCP server,任何支持
|
|
27
|
+
MCP 的宿主(Claude Code、Codex、Gemini CLI、Cursor、OpenCode……)无需安装
|
|
28
|
+
skill 即可发现并调用 omnilane:提供 `route`、`jobs_status`、`jobs_result`、
|
|
29
|
+
`list_lanes` 四个工具。`route` 默认只读 advise 模式;work 模式必须明确
|
|
30
|
+
指定 workdir。
|
|
31
|
+
|
|
32
|
+
## v0.8.2 新功能
|
|
33
|
+
|
|
34
|
+
- **`openrouter` vendor** — 只需 `curl` 加一个 `OPENROUTER_API_KEY`,
|
|
35
|
+
即可直连 OpenRouter API 派工:任何 omnilane 安装都能访问数百个
|
|
36
|
+
托管模型,无需再装任何代理 CLI。仅限 advise/consult(不能改文件,
|
|
37
|
+
work 模式会明确报错指路),模型 slug 必填,例如
|
|
38
|
+
`dispatch.sh --vendor openrouter --model anthropic/claude-sonnet-5 consult "..."`。
|
|
39
|
+
- **`opencode` vendor** — 通过 OpenCode 多供应商聚合 CLI 无头派工
|
|
40
|
+
(`opencode run`)。advise 模式锁定内置只读 `plan` agent;work 模式
|
|
41
|
+
用 `--auto`。加入默认 `coding-overflow` 链作为最后回退。
|
|
42
|
+
|
|
23
43
|
## v0.8.1 新功能
|
|
24
44
|
|
|
25
45
|
- **Claude Code 插件开场自动载入路由提醒** — 插件新增 `SessionStart`
|
|
@@ -90,7 +110,8 @@ omnilane ui start # 可选:在浏览器实时查看派发
|
|
|
90
110
|
## 🧭 工作原理
|
|
91
111
|
|
|
92
112
|
omnilane 让**任何**一个 agentic CLI 的主循环把子任务分类到通道(lane),
|
|
93
|
-
|
|
113
|
+
再以无头方式把每条通道派发给该项工作最强的厂商——直接沿用你已有的订阅登录
|
|
114
|
+
(`openrouter` vendor 例外:免装任何 CLI,一把 API 密钥直连):
|
|
94
115
|
|
|
95
116
|
```mermaid
|
|
96
117
|
flowchart LR
|
|
@@ -134,7 +155,7 @@ flowchart LR
|
|
|
134
155
|
| 📚 long-context | Gemini 3.1 Pro (High) | Claude Opus 4.8 (high) | 百万 token 长文整合——仅限分析,不派 agentic 长链 |
|
|
135
156
|
| ⚡ fast-agentic | Gemini 3.5 Flash (High) | GPT-5.6 Luna (high) | 快速多步骤 agentic 循环、多模态检查 |
|
|
136
157
|
| 📡 live-search | Grok 4.5 | —(off) | 实时 X/网络搜索与社群脉络 |
|
|
137
|
-
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus | Codex 额度吃紧时的中量级编码溢流道;事实性声明须另行查证 |
|
|
158
|
+
| 🚰 coding-overflow | Grok 4.5 | Kimi K3 → Qwen3 Coder Plus → OpenCode | Codex 额度吃紧时的中量级编码溢流道;事实性声明须另行查证 |
|
|
138
159
|
| 🗳️ arbitrate | off(可选评审团) | — | 内置意见评审团,重大决定用——默认关闭,要用在 `routing.local.yaml` 打开;每评审每轮烧一次额度 |
|
|
139
160
|
|
|
140
161
|
**备选模型**是候选链的下一位——首选那家的厂商 CLI 没装时,派发就降到它。
|
|
@@ -204,8 +225,10 @@ Esc。服务器发送事件(SSE)会实时更新,又不会重建当前聚焦的
|
|
|
204
225
|
|
|
205
226
|
## 📦 安装
|
|
206
227
|
|
|
207
|
-
前置需求:想路由到的厂商 CLI(`codex`、`claude`、`grok`、`agy
|
|
208
|
-
`PATH`
|
|
228
|
+
前置需求:想路由到的厂商 CLI(`codex`、`claude`、`grok`、`agy`,另可选
|
|
229
|
+
`kimi`、`qwen`、`opencode`)已登录且在 `PATH` 上——**有几家装几家就好**,
|
|
230
|
+
缺的通道会自动降级。`openrouter` vendor 是例外:不需要任何 CLI,只要
|
|
231
|
+
`curl` 和环境变量里的 `OPENROUTER_API_KEY`。
|
|
209
232
|
|
|
210
233
|
最快:`./install.sh` — 自动检测本机的 CLI、接好技能、列出其余的插件安装命令、
|
|
211
234
|
打印这台机器的生效路由表,最后询问是否进入交互设置菜单(`--uninstall` 可逆)。
|
|
@@ -227,6 +250,27 @@ Esc。服务器发送事件(SSE)会实时更新,又不会重建当前聚焦的
|
|
|
227
250
|
- **Antigravity**:`agy plugin install <本仓库路径>`(先用
|
|
228
251
|
`agy plugin validate` 检查)
|
|
229
252
|
|
|
253
|
+
### MCP server
|
|
254
|
+
|
|
255
|
+
`omnilane mcp` 会启动零依赖、跑在本机的 MCP stdio server,让任何支持 MCP
|
|
256
|
+
的宿主无需安装 skill、也不用加路由提醒,即可发现并调用 omnilane。在宿主
|
|
257
|
+
配置里指向已安装的 CLI 即可:
|
|
258
|
+
|
|
259
|
+
```json
|
|
260
|
+
{
|
|
261
|
+
"mcpServers": {
|
|
262
|
+
"omnilane": {
|
|
263
|
+
"command": "omnilane",
|
|
264
|
+
"args": ["mcp"]
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
```
|
|
269
|
+
|
|
270
|
+
Server 提供 `route`、`jobs_status`、`jobs_result`、`list_lanes` 四个工具。
|
|
271
|
+
`route` 默认只读 `advise` 模式;选择 `work` 的调用必须同时提供明确的
|
|
272
|
+
`workdir`。
|
|
273
|
+
|
|
230
274
|
## ⚙️ 自定义设置
|
|
231
275
|
|
|
232
276
|
三层,全部可选:
|
|
@@ -280,9 +324,11 @@ configure.sh # 交互通道菜单
|
|
|
280
324
|
## 🎭 模式
|
|
281
325
|
|
|
282
326
|
- **advise(默认)** — 只读工作端。Codex 跑只读沙箱;Claude 只给
|
|
283
|
-
Read/Glob/Grep;Grok 跑 plan
|
|
327
|
+
Read/Glob/Grep;Grok 跑 plan 模式;Kimi 与 OpenCode 锁各自的只读
|
|
328
|
+
plan 模式;OpenRouter 天生只做 advise(纯推理)。适合审查、提问、第二意见。
|
|
284
329
|
- **work** — 允许改文件,仅限你指定的 `--workdir`。Codex 给
|
|
285
330
|
workspace-write 沙箱;Claude 自动接受编辑;Gemini 跑 accept-edits 模式。
|
|
331
|
+
`openrouter` vendor 会明确拒绝 work 模式——改文件请走代理式 CLI vendor。
|
|
286
332
|
|
|
287
333
|
## 🔒 内置安全机制
|
|
288
334
|
|
|
@@ -334,10 +380,12 @@ configure.sh # 交互通道菜单
|
|
|
334
380
|
|
|
335
381
|
## 🌱 状态
|
|
336
382
|
|
|
337
|
-
v0.
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
383
|
+
v0.8.3 共有八个派发 vendor——四个框架原生(codex、claude、grok、gemini)、
|
|
384
|
+
三个聚合/溢流 CLI(kimi、qwen、opencode),加上免 CLI 的 `openrouter` 直连
|
|
385
|
+
API vendor——全部走统一 runner 契约并附 contract 测试,另有 Claude Code
|
|
386
|
+
`SessionStart` 自动提醒。kimi、qwen、opencode、openrouter 的 runner 以假
|
|
387
|
+
可执行文件做过契约测试;欢迎反馈真实模型使用经验。Grok/Antigravity 命令壳
|
|
388
|
+
行为仍可能随 CLI 版本变动。欢迎提交 issue 与 PR。
|
|
341
389
|
|
|
342
390
|
项目文档:[贡献指南](CONTRIBUTING.md) · [安全政策](SECURITY.md) ·
|
|
343
391
|
[变更记录](CHANGELOG.md)
|