omnilane 0.34.0 → 0.41.1
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +47 -1
- package/README.ja.md +44 -33
- package/README.ko.md +44 -32
- package/README.md +71 -77
- package/README.zh-CN.md +42 -30
- package/README.zh-TW.md +65 -68
- package/VERSION +1 -1
- package/docs/aa-model-coverage-2026-09-05.json +29204 -0
- package/docs/model-capabilities-2026-09.md +380 -0
- package/package.json +3 -1
- package/plugin.json +1 -1
- package/routing.local.yaml.example +8 -3
- package/routing.yaml +16 -16
- package/scripts/configure.sh +4 -4
- package/scripts/dispatch.sh +83 -14
- package/scripts/doctor.sh +55 -1
- package/scripts/jobs.sh +6 -2
- package/scripts/lib/common.sh +47 -1
- package/scripts/lib/job-worker.sh +312 -20
- package/scripts/lib/live-protocol.sh +147 -2
- package/scripts/lib/normalize-claude-stream.py +72 -0
- package/scripts/lib/prepare-agy-mode.py +374 -0
- package/scripts/release-audit.sh +103 -0
- package/scripts/runners/run-claude.sh +81 -47
- package/scripts/runners/run-codex-live.py +462 -0
- package/scripts/runners/run-codex.sh +62 -3
- package/scripts/runners/run-gemini.sh +85 -10
- package/scripts/runners/run-grok-live.py +426 -0
- package/scripts/runners/run-grok.sh +113 -6
- package/scripts/runners/run-vote.sh +3 -3
- package/skills/omnilane/SKILL.md +106 -59
package/README.zh-TW.md
CHANGED
|
@@ -103,23 +103,23 @@ flowchart LR
|
|
|
103
103
|
|
|
104
104
|
| 通道 | 首選模型 | 備選模型 | 用途 |
|
|
105
105
|
|---|---|---|---|
|
|
106
|
-
| 🔥 hardest-coding | Claude Fable 5.1
|
|
107
|
-
| 🏗️ bulk-mechanical | GPT-5.6 Sol
|
|
108
|
-
| 🧹 triage | GPT-5.6 Luna
|
|
109
|
-
| ⚖️ hard-judgment | Claude
|
|
110
|
-
| ✒️ taste-final | Claude Fable 5.1
|
|
111
|
-
| 💬 consult | GPT-
|
|
112
|
-
| 🎨 ui-draft | GPT-5.6 Sol
|
|
113
|
-
| 📚 long-context | Gemini 3.
|
|
114
|
-
| ⚡ fast-agentic | Gemini 3.
|
|
115
|
-
| 📡 live-search | Grok 4.6 | Gemini 3.
|
|
116
|
-
| 🚰 coding-overflow | Grok 4.6 | Gemini 3.
|
|
106
|
+
| 🔥 hardest-coding | Claude Fable 5.1(max) | GPT-6 Astra(max)→ Grok 4.6 → Gemini 3.8 Flash(High) | 最難的實作、深度除錯、正確性攸關的修改 |
|
|
107
|
+
| 🏗️ bulk-mechanical | GPT-5.6 Sol(high) | Gemini 3.8 Flash(High)→ Claude Sonnet 5(high) | 重構、搬遷、測試、大面積掃描等耐力工作 |
|
|
108
|
+
| 🧹 triage | GPT-5.6 Luna(high) | Gemini 3.8 Flash(Low)→ Claude Haiku 4.5 | 大量掃描、第一輪篩選 |
|
|
109
|
+
| ⚖️ hard-judgment | Claude Fable 5.1(xhigh) | GPT-6 Astra(max)→ Grok 4.6 | 架構裁決、深度推理、第二意見 |
|
|
110
|
+
| ✒️ taste-final | Claude Fable 5.1(xhigh) | GPT-6 Astra(xhigh)→ Grok 4.6 → Gemini 3.8 Flash(High) | 對外文字與風格裁決;評測不等於審美證明 |
|
|
111
|
+
| 💬 consult | GPT-6 Astra(xhigh) | Claude Fable 5.1(xhigh)→ Grok 4.6 → Gemini 3.8 Flash(Medium) | 直接點名模型諮詢;保留 `--vendor` 避免降級 |
|
|
112
|
+
| 🎨 ui-draft | GPT-5.6 Sol(high) | Claude Fable 5.1(xhigh)→ Gemini 3.8 Flash(High) | 只有附設計系統/參考圖時做 UI 草稿;不把評測誇大成審美證明 |
|
|
113
|
+
| 📚 long-context | Gemini 3.8 Flash(Medium) | GPT-5.6 Terra(max)→ Claude Opus 5(medium) | 長文件整合;上下文容量本身不證明任務品質 |
|
|
114
|
+
| ⚡ fast-agentic | Gemini 3.8 Flash(Low) | GPT-5.6 Luna(high)→ Claude Haiku 4.5 | 高速多步驟工具迴圈、多模態檢查 |
|
|
115
|
+
| 📡 live-search | Grok 4.6 | Gemini 3.8 Flash(High)→ Claude Sonnet 5(high) | 即時 X/網頁搜尋;備援只有一般網搜,不等同 X 脈絡 |
|
|
116
|
+
| 🚰 coding-overflow | Grok 4.6 | Gemini 3.8 Flash(High)→ Kimi K3 → Qwen3 Coder Plus → OpenCode | 顯式 Codex 額度卸載;供應商失敗後不自動跨家重試 |
|
|
117
117
|
| 🗳️ arbitrate | `off`(選配模型評審團) | — | 重大決定的內建意見評審團;預設停用,在 `routing.local.yaml` 啟用,每位評審每輪一次呼叫 |
|
|
118
118
|
|
|
119
119
|
**備選模型**是候選鏈的下一位——首選那家的廠商 CLI 沒裝時,派工就降到它。每條
|
|
120
120
|
通道都是這樣一條鏈;整條都沒裝時,通道自動降為 `off`。
|
|
121
121
|
|
|
122
|
-
> **Fable 5.1
|
|
122
|
+
> **Fable 5.1 與 Astra 現在領頭困難工作。** 同條件證據見[常見問題](#-常見問題)。
|
|
123
123
|
|
|
124
124
|
### 自然語言諮詢
|
|
125
125
|
|
|
@@ -140,12 +140,13 @@ flowchart LR
|
|
|
140
140
|
你哪些通道**自己做**(你本來就是那個模型,省一次呼叫)、哪些**派出去**。你 CLI 裡
|
|
141
141
|
的 `omnilane` 技能會自動套對的那一列,這裡是給人看的版本。
|
|
142
142
|
|
|
143
|
-
- **Claude Code · Fable 5.1
|
|
144
|
-
- **Claude Code · Opus 5
|
|
145
|
-
- **Codex · Sol
|
|
146
|
-
- **Codex ·
|
|
143
|
+
- **Claude Code · Fable 5.1**——品質敏感工作建議的提示詞層主控;這是角色,不是新通道或自動選模器。最難編碼用 max,判斷/文字用 xhigh;獨立 Codex 複核用 Astra,bulk 用 Sol,長文/高速工作用 Gemini 3.8 Flash,即時搜尋用 Grok。
|
|
144
|
+
- **Claude Code · Opus 5**——顯式點名時可做均衡型提示詞層主控與獨立複核(一般用 `high`,更深複核可選 `xhigh`),也保留為 long-context 備援;這是選配角色,不是新通道或 hard-judgment 預設。
|
|
145
|
+
- **Codex · Sol**——bulk-mechanical 與有參考限制的 ui-draft 用 high 自己做;最難編碼/判斷升級 Fable 或 Astra,長文/高速工作交 Gemini 3.8 Flash,即時搜尋交 Grok。
|
|
146
|
+
- **Codex · Astra**——提示詞層主控備位與獨立複核者;最難編碼/判斷用 max,consult/taste 用 xhigh,顯式 model/effort 永遠優先。
|
|
147
|
+
- **Codex · Terra**——用 max 接 Codex 的 long-context 備援;bulk 留給 Sol high,困難工作升級 Fable/Astra。
|
|
147
148
|
- **Grok Build · Grok 4.6**——自己做 live-search、coding-overflow,並兼任 hardest-coding、hard-judgment、taste-final 的備援。首選人手在的話,最難的編碼/判斷/文字交給 Codex、Claude、Gemini;仍要驗證 API 簽章與引用事實。
|
|
148
|
-
- **Antigravity · Gemini 3.
|
|
149
|
+
- **Antigravity · Gemini 3.8 Flash**——long-context 用 Medium,fast-agentic/triage 用 Low,bulk/overflow/網搜備援用 High。不要把代理/編碼評測推論成審美或主控權。
|
|
149
150
|
|
|
150
151
|
</details>
|
|
151
152
|
|
|
@@ -323,17 +324,13 @@ codex/claude/grok/gemini 自選 1-4 個評審。開了之後,同一個問題丟
|
|
|
323
324
|
|
|
324
325
|
## 🎭 模式
|
|
325
326
|
|
|
326
|
-
- **advise
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
(`launchctl` 之類)。Codex 以 `-s danger-full-access` 執行;其他 vendor
|
|
334
|
-
一律當成一般 `work`。這等於把整台機器的存取權交給工作端,因此只能逐次
|
|
335
|
-
明確指定,永遠不能設成 lane 預設。只有在你親眼看到 `work` 因沙箱拒絕而
|
|
336
|
-
失敗時才動用它。
|
|
327
|
+
- **advise(預設)**:本機唯讀分析;供應商支援時可用原生網頁/搜尋工具。模型連線保留,修改工具受限;不同供應商的 X/網搜能力不視為等同。
|
|
328
|
+
- **work**:檔案與命令操作限制在明示的 `--workdir`,關閉代理工具對外連線,但保留模型連線。尚未支援的強制邊界會在呼叫模型前停止,不偷偷變成 sysops。
|
|
329
|
+
- **sysops**:每次派工明示選用,開放代理工具、檔案與網路存取;永遠不是通道預設值,任務須列明可執行操作。
|
|
330
|
+
|
|
331
|
+
CLI 省略 `--workdir` 時預設為呼叫端目前目錄;任務書仍應明示工作目錄。MCP `route`/`dry_run` 的 work 介面則另行要求明示 `workdir`。
|
|
332
|
+
|
|
333
|
+
Codex 與 Claude 的三種模式使用不同政策。Agy advise/sysops 使用獨立的每工作階段原生設定,不替換訂閱認證;Agy 1.1.27 work 已以四個經驗證工具及原生終端沙箱完成限定的新建/續接驗收:工作目錄內讀寫、修改、編譯及越界寫入拒絕通過。外部暫存/快取讀取也受限;每次啟動重寫明示設定,不宣稱設定全程不可變。另一次正式 work 即時/FIFO 兩輪驗收已通過前輪讀回、越界寫入拒絕及正常關閉,來源保持不變。Grok advise 使用原生工具允許/拒絕規則;Grok 1.0.13 的完整一次性 `plain` 路徑已驗證原生關鍵字搜尋、抓頁及寫入拒絕,使用內部網頁工具 ID 與每筆工作的 MCP 就緒狀態隔離,不關閉掛鉤。若 `CONTEXT_MODE_MCP_SENTINEL_DIR` 已設為非空值,會在呼叫模型前明確回報衝突,不覆寫原設定。原生子程序網路隔離僅支援 Linux,因此 macOS Grok work 仍保留閘門;Grok 即時模式仍須明示 sysops,此次 advise 結果不擴張到其他路徑。OpenRouter 維持僅 advise;其餘供應商不自動納入這份四供應商契約。證據範圍見[日期化執行驗收表](docs/model-capabilities-2026-09.md#f-mode-runtime-gate-2026-09-06)。
|
|
337
334
|
|
|
338
335
|
## 🔒 內建安全機制
|
|
339
336
|
|
|
@@ -366,7 +363,7 @@ codex/claude/grok/gemini 自選 1-4 個評審。開了之後,同一個問題丟
|
|
|
366
363
|
|
|
367
364
|
## 📬 即時信箱
|
|
368
365
|
|
|
369
|
-
|
|
366
|
+
即時信箱是常駐背景派工,不是一次性派工。Claude 與 Gemini 保留 `--background` 自動使用即時信箱的既有行為;Codex 與 Grok 預設維持一次性派工,只有明示 `--background --live` 才啟用,Grok 另須指定 `--mode sysops --workdir DIR`。派工者能補傳指示,並負責用 `jobs.sh close ID` 收尾;閒置上限或設定的整體工作逾時(`--job-timeout`)仍會使工作結束。
|
|
370
367
|
|
|
371
368
|
```bash
|
|
372
369
|
scripts/dispatch.sh --background --vendor claude hard-judgment "檢查逾時測試失敗的原因"
|
|
@@ -378,7 +375,7 @@ scripts/jobs.sh close "$ID"
|
|
|
378
375
|
scripts/jobs.sh retry "$ID" --background
|
|
379
376
|
```
|
|
380
377
|
|
|
381
|
-
`watch` 追隨 `$JOB_DIR/events.jsonl`;`tail` 讀取公開的 `out.txt
|
|
378
|
+
`watch` 追隨 `$JOB_DIR/events.jsonl`;`tail` 讀取公開的 `out.txt`。Claude、Gemini、Codex 與 Grok 都支援即時信箱,但 Codex/Grok 自動選擇時仍是一次性派工,必須明示 `--live`。Grok 的 advise/work 即時請求會在啟動前停止,因為 ACP 未強制這些受限模式的邊界;一般 advise 採用一次性原生工具允許/拒絕規則。供應商不支援 `--live` 時立即失敗。`--single-shot` 對所有供應商強制一次性派工。`--idle-timeout SECONDS` 設定閒置上限,預設 900 秒,設為 `0` 則停用。
|
|
382
379
|
|
|
383
380
|
閒置時不會發出 API 呼叫,也不會增加 API 費用。預設若 900 秒內沒有新信箱訊息或新結果事件,工作程序會自動收尾;整體工作逾時仍是外層上限。處理完成可提早執行 `close`。對已結束或不是即時信箱的工作使用 `jobs.sh send`,會明確報錯並失敗。送出後不需追蹤的工作、沒有即時支援的供應商,或必須從乾淨狀態重跑的情況都不適用;請使用新的派工,或在工作完成後使用 `retry`。
|
|
384
381
|
|
|
@@ -426,49 +423,32 @@ omnilane goal close "$GOAL_ID" --summary "結帳整合已穩定"
|
|
|
426
423
|
</details>
|
|
427
424
|
|
|
428
425
|
<details>
|
|
429
|
-
<summary><b
|
|
426
|
+
<summary><b>為什麼困難工作現在由 Fable 5.1 與 Astra 領頭?</b></summary>
|
|
430
427
|
|
|
431
428
|
<br/>
|
|
432
429
|
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
| 編碼 | 80.7 | 77.0 | 77.4 |
|
|
444
|
-
| 幻覺率(越低越好) | .71 | **.60** | .92 |
|
|
445
|
-
| AA 每任務成本 | $2.65 | $1.80 | **$0.95** |
|
|
446
|
-
|
|
447
|
-
Fable 5.1 沒進 bulk 或 triage:每 token 價格是 Opus 5 的兩倍,而且每回合
|
|
448
|
-
消耗最多 Claude Code 訂閱額度。Opus 5 現在預設領頭 `hard-judgment`,並以
|
|
449
|
-
medium 留在 `long-context`;也能透過 `~/.omnilane/routing.local.yaml`
|
|
450
|
-
放回任何通道——例如把 Fable 換回來:
|
|
451
|
-
|
|
452
|
-
```yaml
|
|
453
|
-
hard-judgment: claude claude-fable-5-1 xhigh
|
|
454
|
-
```
|
|
430
|
+
2026-09-05 更新用 AA v4.2 同檔位比較兩者:Fable/Astra 在 max 為
|
|
431
|
+
57/55、xhigh 為 54/54;AA Briefcase 在 max 為 1666/1566、xhigh
|
|
432
|
+
為 1657/1540。原生編碼代理比較中,Fable max 完成 70、每題 $9.18、
|
|
433
|
+
耗時 24 分鐘;Astra max 完成 67、每題 $4.72、耗時 26.8 分鐘。因此
|
|
434
|
+
`hardest-coding` 用 Fable max,`hard-judgment`/`taste-final` 用 Fable
|
|
435
|
+
xhigh,Astra 則是 Codex 家族備援與獨立複核者。
|
|
436
|
+
|
|
437
|
+
品質優先的提示詞層主控首選是 Fable max;Opus high/xhigh 是均衡型主控與
|
|
438
|
+
獨立複核選項;Astra 則是沿用 Codex 額度的備位與複核者。這些都是角色建議,
|
|
439
|
+
不是新增通道或自動主控選模器。Opus 也保留為 Claude 的 `long-context` 備援。
|
|
455
440
|
|
|
456
441
|
</details>
|
|
457
442
|
|
|
458
443
|
<details>
|
|
459
|
-
<summary><b
|
|
444
|
+
<summary><b>為什麼最難編碼用 <code>max</code>,其他 Claude 通道用 <code>xhigh</code>?</b></summary>
|
|
460
445
|
|
|
461
446
|
<br/>
|
|
462
447
|
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
你的工作型態如果不同意,單條通道自己拉高:
|
|
468
|
-
|
|
469
|
-
```bash
|
|
470
|
-
omnilane configure set hard-judgment "claude claude-opus-5 max"
|
|
471
|
-
```
|
|
448
|
+
推理檔位依任務選,不預設越高一定越好。目前同條件比較與原生編碼證據支持
|
|
449
|
+
正確性優先的 `hardest-coding` 用 max;`hard-judgment`、`taste-final`
|
|
450
|
+
及具名 Fable 諮詢則以 xhigh 平衡品質與成本。顯式 `--model`/`--effort`
|
|
451
|
+
永遠覆蓋這些通道路由預設。
|
|
472
452
|
|
|
473
453
|
</details>
|
|
474
454
|
|
|
@@ -492,11 +472,11 @@ scripts/dispatch.sh --dry-run hardest-coding "…" # 完整解析後的計畫,
|
|
|
492
472
|
|
|
493
473
|
<br/>
|
|
494
474
|
|
|
495
|
-
除非你明講要它改。派工預設是 `advise
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
475
|
+
除非你明講要它改。派工預設是 `advise`,以各廠商的唯讀沙箱或原生工具權限
|
|
476
|
+
維持唯讀,並保留支援的網搜。一般修改使用 `--mode work` 與明確的 `--workdir`,
|
|
477
|
+
關閉代理工具網路,但保留模型連線。`--mode sysops` 是 Codex、Claude、Grok、Agy
|
|
478
|
+
各自獨立的完整權限政策,不是 work 的別名;只有任務明示允許超出 work 邊界的
|
|
479
|
+
操作,例如服務管理,才逐次選用,永遠不是通道預設值。
|
|
500
480
|
工作端也不能再往外派——深度守衛會用退出碼 86 拒絕巢狀派工,一道
|
|
501
481
|
指令不可能失控變成一整串 AI 燒你的額度。
|
|
502
482
|
|
|
@@ -521,6 +501,21 @@ vendor 一律當成 `work`,而且它只能逐次明確指定,永遠不是 lane
|
|
|
521
501
|
|
|
522
502
|
## 📜 版本歷程
|
|
523
503
|
|
|
504
|
+
## v0.41.1 新功能
|
|
505
|
+
|
|
506
|
+
- **Python 3.9 相容性。** Agy 工作目錄政策的建立與清理改用 `Path.lstat()`,保留符號連結、inode 與並行替換保護。
|
|
507
|
+
- **隔離 CI 測試資料。** 嚴格 doctor 驗收補齊明示啟用外掛與目錄來源設定;設定缺少、停用或路徑不符仍會失敗。
|
|
508
|
+
- **npm 上架後升級。** 執行 `npm i -g omnilane@0.41.1`,或更新 checkout 後再跑 `./install.sh`。npm 另行發布,GitHub 發布不代表 npm 已上架。
|
|
509
|
+
|
|
510
|
+
## v0.40.0 新功能
|
|
511
|
+
|
|
512
|
+
- **明確區分模式並修復 Grok 網頁工具。** advise 唯讀且保留支援的原生搜尋;work 限定明示 `--workdir` 並關閉代理工具網路;sysops 每次明示完整權限。Grok 完整一次性 `plain` advise 已取得真實搜尋、抓頁及寫入拒絕證據;macOS work 與受限即時模式仍保留閘門。
|
|
513
|
+
- **Codex 與 Grok 明示即時工作階段。** Codex work 與 Grok sysops 工作可用 `--background --live` 接續補傳與明確關閉;Codex/Grok 自動派工仍維持一次性,Claude/Gemini 則保留既有自動即時行為。Grok advise 因 ACP 沒有強制唯讀邊界,所以拒絕 `--live`。
|
|
514
|
+
- **有界且可觀察的關閉流程。** 能辨識 EOF 的能力探測、每筆工作的不可變 worker 快照、直譯器/SHA 來源、關閉期限與程序群組清理,能約束卡住或被終止的即時工作,但不宣稱是作業系統沙箱隔離。
|
|
515
|
+
- **完成通知與閒置判定修正。** 完成通知可處理截斷的 UTF-8 尾端;終態以持久 exit 紀錄為準;閒置時間只在完整結果事件後推進,不受任意串流流量干擾。
|
|
516
|
+
- **AA 驅動的模型覆蓋。** 12 條通道預設已納入 Fable 5.1、GPT-6 Astra 與 Gemini 3.8 Flash,同時保留既有供應商與明示模型覆寫。日期化 AA v4.2 覆蓋快照記錄 643 個榜單設定;模型出現在目錄不等於執行環境已驗證支援。
|
|
517
|
+
- **升級。** 執行 `npm i -g omnilane@0.40.0`,或更新 checkout 後再跑 `./install.sh`。
|
|
518
|
+
|
|
524
519
|
## v0.33.0
|
|
525
520
|
|
|
526
521
|
- **四供應商續談派工。** `--thread NAME` 可讓固定供應商、模型、effort 與
|
|
@@ -608,6 +603,8 @@ vendor 一律當成 `work`,而且它只能逐次明確指定,永遠不是 lane
|
|
|
608
603
|
|
|
609
604
|
## v0.12.0 新功能
|
|
610
605
|
|
|
606
|
+
以下保留當時版本的歷史說明。目前三種模式的契約以[模式](#-模式)為準,包含 0.40.0 獨立的完整權限 sysops 政策。
|
|
607
|
+
|
|
611
608
|
- **`hardest-coding` 的 Sol 從 `max` 降到 `xhigh`**——在 AA 分檔位的 Coding Index
|
|
612
609
|
上,Sol 的 xhigh 不但勝過自己的 max,也勝過所有 Claude 檔位,成本還少約三分之一。
|
|
613
610
|
這種工作超過 xhigh 之後,多加的 effort 買到的是過度思考,不是正確率。
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.41.1
|