VS Code Copilot Chat — OmniCopilot extension (中文 (繁體))
- 執行 OmniRoute —
npm install -g omniroute && omniroute(儀表板位於http://localhost:20128)。 - 安裝擴充功能 — 在「擴充功能」檢視中搜尋「OmniRoute」。
- 選擇模型 — Copilot Chat → 模型選擇器 → 管理模型… → OmniRoute,然後勾選 您想要的模型。
當 OmniRoute 在預設連接埠上執行時,無需進行任何設定。若使用遠端執行個體,請開啟
活動列中的 OmniRoute 圖示(或執行 OmniRoute: Manage Connection),並設定:
- 伺服器 URL — 伺服器根位址,例如
http://192.168.0.15:20128。擴充功能會自動附加/v1後綴;請勿自行加入。 - API 金鑰 — 僅在伺服器設定
REQUIRE_API_KEY時需要。透過 VS Code SecretStorage 儲存在作業系統鑰匙圈中,絕不會寫入settings.json。
選擇器會顯示什麼
Section titled “選擇器會顯示什麼”擴充功能不會直接顯示原始的 GET /v1/models 承載資料——它會整理資料,而且您看到的
數量會少於目錄大小,這是基於兩個刻意的設計原因。
每個模型只要求一個 id
Section titled “每個模型只要求一個 id”MODELS_CATALOG_PREFIX_MODE 預設為 dual,這會將每個模型發布兩次——一次使用
簡短別名前綴,另一次使用標準提供者前綴——讓較舊的用戶端設定仍可解析任一形式:
cc/claude-sonnet-4-6 ← 別名前綴claude/claude-sonnet-4-6 ← 標準前綴,相同模型擴充功能會要求 GET /v1/models?prefix=alias,因此每個模型只會傳回一個 id,
而不會變更其他用戶端所使用的全伺服器設定。在參考執行個體上,這讓
2345 個項目縮減為 1396 個——移除 949 個重複項目,且未遺失任何模型。
如果您希望針對 每個 用戶端在整個伺服器層級修正此行為,請在儀表板中將
MODELS_CATALOG_PREFIX_MODE 功能旗標設為 alias。查詢參數與各模式表格請參閱
API_REFERENCE → prefix。
隱藏無法聊天的模型
Section titled “隱藏無法聊天的模型”目錄也會列出影像、影片、音訊、重新排序、嵌入與內容審核模型。無論如何,這些模型 都會拒絕聊天請求:
HTTP 400 — 模型 '<id>' 是影像生成模型,無法用於/v1/chat/completions。請改用 POST /v1/images/generations。因此,它們會在進入選擇器前,依據其 type 欄位被篩除。Responses-API
模型則會保留——每個 Codex / GPT-5.x 項目都會宣告 supported_endpoints: ["responses"],
而 OmniRoute 會針對 /v1/chat/completions 轉譯這些模型,因此完全可以使用。
您從未設定的提供者
Section titled “您從未設定的提供者”目錄會列出具有有效連線的提供者模型,以及所有 noAuth
提供者——這些無需金鑰的提供者構成了免費層級的大部分內容。這是刻意的設計。若要隱藏
它們,請將它們加入儀表板設定中的 blockedProviders;擴充功能本身無需變更。
VS Code 分頁內的儀表板
Section titled “VS Code 分頁內的儀表板”omnicopilot.dashboardOpen: "editor" 會透過 Simple Browser 在編輯器分頁中呈現 OmniRoute 儀表板,而不是在外部瀏覽器中開啟。嵌入功能必須在伺服器上選擇啟用,方法是設定 DASHBOARD_ALLOW_EMBED=vscode;這會讓提供的 HTML 頁面使用 frame-ancestors 'self' vscode-webview:,而不是預設的 frame-ancestors 'none' + X-Frame-Options: DENY。無論如何設定,API 介面(/api、/v1、/v1beta、/a2a、/healthz)都會保留嚴格的標頭。
⚠️ 這是建置時旗標,而不是執行階段旗標。 Next.js 會將
headers()編譯至路由 資訊清單,因此next.config.mjs會在建置套件時讀取此變數 (next.config.mjs→resolveDashboardEmbedMode、scripts/build/dashboardEmbed.mjs)。 在已完成建置的伺服器啟動指令前匯出此變數不會有任何作用——標頭已被寫入建置結果中。
# 此變數必須存在於 BUILD 指令中DASHBOARD_ALLOW_EMBED=vscode npm run build # 或 npm run build:releasenpm start| 安裝方式 | 是否能啟用嵌入功能? |
|---|---|
| 從原始碼安裝 | ✅ 如上所示,在建置指令中設定此變數 |
npm install -g omniroute |
❌ 發佈的套件隨附預先建置的套件——請改為從原始碼建置 |
| Docker 映像 | ✅ docker build --build-arg DASHBOARD_ALLOW_EMBED=vscode -t omniroute:embed .——Docker Hub 上的預先建置映像並未啟用嵌入功能 |
如果建置時未啟用嵌入功能,頁面會拒絕在框架中顯示;擴充功能會從回應標頭偵測到此情況,並改用外部瀏覽器——不會造成任何功能損壞,而且它只會提示一次。請參閱 ENVIRONMENT.md 和議題 #10273。
從 VS Code 內設定其他工具
Section titled “從 VS Code 內設定其他工具”OmniRoute: Configure Coding CLI 會驅動 omniroute CLI,為 Codex CLI、Claude Code、Cline、Continue、Cursor、Aider、OpenCode、Goose、Crush、Qwen Code、Kilo 和 Roo 寫入可直接使用的設定檔——也就是 CLI-INTEGRATIONS.md 中所述的相同設定。API 金鑰會透過 OMNIROUTE_API_KEY 環境變數傳給 CLI,絕不會出現在命令列上。
| 症狀 | 原因/修正方式 |
|---|---|
| 選擇器中沒有 OmniRoute 模型 | 無法連線至伺服器。狀態列圓點會變成灰色;請執行 OmniRoute: Check Connection。模型探索依設計不會顯示提示,無法連線時不會提供任何模型。 |
| 每個模型都出現兩次 | 您使用的 OmniCopilot 版本低於 1.0.1——請更新。擴充功能現在會要求 ?prefix=alias。 |
| 先前列出的圖片/音訊模型消失了 | 自 1.0.1 起刻意如此——這些模型本來就無法回應聊天請求。 |
| Activity Bar 中缺少面板 | VS Code 會將額外的檢視容器移至 Activity Bar 底部的 「…」 溢位選單中,而透過右鍵選單隱藏的容器會保持隱藏。請在 Activity Bar 上按一下滑鼠右鍵 → 勾選 OmniRoute,或使用 OmniRoute: Manage Connection 開啟。 |
儘管使用 editor 模式,儀表板仍在瀏覽器中開啟 |
伺服器在建置時未設定 DASHBOARD_ALLOW_EMBED=vscode(見上文)——在預先建置的安裝項目啟動時設定它不會有任何作用。這是刻意設計的備援行為。 |
| 變更提供者後,模型清單仍是舊的 | 執行 OmniRoute: Refresh Models,或按一下分頁中的 ↻ 連結。 |
CLI-INTEGRATIONS.md— 其他所有程式設計工具REMOTE-MODE.md— 操作遠端 OmniRoute../reference/API_REFERENCE.md—/v1/models規範docs/CATALOG.md— 此擴充功能本身的目錄說明
HagiCode
HagiCode 是智慧代理程式開發工作台,結合結構化工作流程、多代理程式執行與 Hero Dungeon 介面,將想法化為交付成果。
以更聰明、更快速且更有趣的智慧代理程式工作流程,打造實用的軟體。

- Smart結構化流程將意圖轉化為從構想到交付的可執行步驟。
- Efficient多代理程式工作流程讓研究、實作與審查並行進行。
- FunHero Dungeon 讓長時間的程式協作更直覺、更有參與感。