TokenLab

程式工具

DeepSeek Harness

在 Harness 設定 TokenLab 模型、驗證請求,並按需選擇 MCP、Skills 或 provider bundle

選擇接入方式

要以 TokenLab 作為 Agent 主模型,在 Harness Web UI 新增 custom provider 即可,不依賴可選的 TokenLab bundle。MCP 提供工具,Skill 提供 API 使用說明,兩者都不會自行切換主模型。

Harness 仍是開發者預覽版。本頁於 2026 年 9 月 27 日對照官方文件及已發布的 @deepseek-ai/dsh 0.1.5-rc.3 套件核對。下方 bundle 說明也以此版本為目標;其他 Harness 版本的相容性需另行確認。

把任務交給現有 Agent

閱讀 https://tokenlab.sh/docs/zh-TW/integrations/deepseek-harness,核對已安裝版本與作業系統。
確認我要使用 TokenLab 主模型、MCP 工具還是 API Skill。
保留既有帳戶、供應商設定和權限,說明改動後如何還原。
不要在聊天中索取或填寫 API key;我會在本機填入並完成必要的介面操作。
先說明一次小驗證的費用,只有我明確選擇該測試後,才協助執行並核對 TokenLab 請求記錄。

啟動 Harness

在 macOS、Linux 或 Windows 使用受支援的 Node 版本,初次安裝可用 Node 24 LTS。在專案目錄的終端或 PowerShell 執行:

node --version
npx @deepseek-ai/dsh@0.1.5-rc.3 web

開啟命令輸出的本機地址,先以 Choose workspace 新增並選中專案。這些命令使用 web profile;Electron 的 desktop profile 不由這套 CLI 管理。參見官方啟動指南與 Web UI 指南。

設定一個 TokenLab provider

  1. 開啟 Settings → Models → Add a custom provider,保留既有供應商和權限。
  2. 填寫小寫 Provider ID,例如 tokenlab-chat,從下表選一種協定及 Base URL。
  3. 在本機表單填入 TokenLab key。UI 管理的 key 儲存在 $DSH_HOME/.credentials.yaml,設定只存引用;不要傳到聊天或提交至 git。
  4. 從目前模型目錄加入一個精確 ID,依模型詳情的 tokenlab.accepted_request_formats 選協定。
  5. 儲存 provider、選中模型並建立新會話。已發過請求的舊會話保留原模型。
Provider ID 範例Harness API protocolBase URL必須宣告的請求格式
tokenlab-chatopenai-completionshttps://api.tokenlab.sh/v1openai_chat_completions
tokenlab-responsesopenai-responseshttps://api.tokenlab.sh/v1openai_responses
tokenlab-messagesanthropic-messageshttps://api.tokenlab.shanthropic_messages

第一次文字測試可用仍在目錄中的 gpt-4.1-mini,選 Chat 列。Fetch available models → Add selected 只是發現模型,之後仍需儲存;失敗時可手動輸入 ID。列表不證明協定相容。此處沒有 Gemini native 協定,只能在模型宣告支援時使用 Chat。圖像輸入或推理控制需要按模型詳情核對額外的 settings.yaml 欄位,參見官方 provider 文件。

驗證一次小請求

在新會話傳送:

只回覆 TOKENLAB_CONNECTION_OK。不要使用工具,也不要修改檔案。

本次請求會計費。核對回覆與 TokenLab 請求記錄的模型、時間和狀態。初次接通不需要跑遍三種協定或生成付費媒體;模型列表或 MCP 發現成功也不能驗證生成權限。

可選:TokenLab bundle

@tokenlabai/dsh-provider@0.1.5 面向 Harness 0.1.5-rc.3。只需設定一個模型時,可用上方原生 custom-provider 步驟;需要預設模型路由和工具時,可安裝 bundle。

bundle 包含 2026 年 9 月 27 日核對的 136 個公開聊天模型固定快照:Responses 27 個、Messages 10 個、Chat 99 個,每個模型只出現在一條路由上。它固定使用 @tokenlabai/mcp-server@0.6.24,另附獨立的 tokenlab_wait_task 工具。安裝此版本不會更新模型目錄;使用前請核對即時目錄,按需透過 custom provider 加入新模型。

已有相容安裝時,先確認 pnpm 在 PATH。安裝與啟動使用同一個 dsh 版本和 profile;若使用 npx,把下列 dsh 換成原本帶版本號的啟動命令:

dsh --version
pnpm --version
dsh plugin --profile web add --workspace-root @tokenlabai/dsh-provider@0.1.5

啟動 profile 前,在啟動環境或其 .env 中設定:

TOKENLAB_API_KEY=sk-your-tokenlab-key

Harness 讀取啟動目錄與 $DSH_HOME(通常為 ~/.dsh)的 .env,繼承的環境變數優先。後來選工作區不會切換 .env。勿提交此檔;修改後重啟同一 profile。UI 儲存的模型 key 不會自動成為 bundle 的 TOKENLAB_API_KEY。使用 headless 時,安裝與啟動都要選 headless;web 安裝不會配置它。

Harness 0.1.5-rc.3 依 provider key 合併已儲存的 llm-pi-ai.providers,不同名稱的 provider 可共存。已儲存的 tokenlab-responses、tokenlab-messages 或 tokenlab-chat 條目會覆蓋 bundle 中對應的同名路由,升級舊目錄時請檢查這些條目。保留 $DSH_HOME/settings.yaml 中其他 provider 和模型,不要用整份 Cordis patch 取代設定文件。

公開模型詳情僅標識 reasoning 能力,沒有列舉每個模型支援的 effort 值,因此 bundle 不宣告 reasoningEfforts。Harness 不會為這些自訂路由提供 effort 等級選項,這不表示伺服器端推理已關閉。若自行設定 reasoningEfforts,應先獨立驗證取值,再寫入對應 provider 的 models 清單中的模型條目,並保留其他模型。僅有 reasoning 能力不能證明支援 xhigh 或 max。

bundle 預設使用 TOKENLAB_MCP_TOOL_PROFILE=core,提供 32 個 MCP 工具,schema 預設為 TOKENLAB_MCP_SCHEMA_MODE=portable。僅作發現可選 catalog(6 個工具);需要全部 89 個工具及額外的 response 生命週期、batch、Seedance 資產/群組和 worlds 操作時,選 full。獨立的 tokenlab_wait_task 輪詢工具在所有 profile 均可用,不計入上述 MCP 工具數。其餘環境變數如下:

變數預設值用途
TOKENLAB_API_KEY無模型路由、MCP 工具與非同步 poll 憑證
TOKENLAB_API_BASEhttps://api.tokenlab.shMCP 與 task API root
TOKENLAB_OPENAI_BASE_URLhttps://api.tokenlab.sh/v1Responses 與 Chat base URL
TOKENLAB_ANTHROPIC_BASE_URLhttps://api.tokenlab.shMessages base URL
TOKENLAB_MCP_TOOL_PROFILEcorecatalog (6) / core (32) / full (89)
TOKENLAB_MCP_SCHEMA_MODEportable可選 portable、exact、strict

媒體工具的 delivery.mode 為 complete 時直接取結果;為 async 時把 delivery.task_id 交給 tokenlab_wait_task,讀取終態 status、response 與 result_urls。等待逾時不等於完成。保留計費或破壞性工具的審批,參見非同步任務。

卸載使用同一入口和 profile,然後重啟:

dsh plugin --profile web remove --workspace-root @tokenlabai/dsh-provider

疑難排解

  • **輸入框不可用:**選中工作區與模型。
  • **MISSING_CREDENTIAL 或 401:**核對 provider 憑據;bundle 工具另外讀取啟動環境的 TOKENLAB_API_KEY。
  • **UNKNOWN_MODEL 或舊 ID 下線:**核對即時目錄、設定精確 ID,再開新會話。重裝 0.1.5 不會刷新快照。
  • **生成失敗:**核對協定、Base URL 和接受的格式;不要靠刪掉歷史、工具或圖像來製造成功。
  • **缺少 dsh 或 pnpm:**可用上面的版本化 npx 啟動;plugin 命令前需安裝 pnpm。

MCP 和 Skills 是獨立選擇

手動 provider 不安裝工具。若不需要 bundle,可按 TokenLab MCP 指南加入工具,先檢查發現,再執行生成。Skill 的完整目錄應放在專案根目錄 .dsh/skills/tokenlab-api-integration/,保留 SKILL.md 與引用檔案;Harness 也會讀取 .agents/skills/。Skill 不安裝 provider、MCP server 或 key,詳見官方 Skills 文件。

Jev / System One & Webhooks

Jev(POST /v1/systemone)使用 core 或 full 的 mcp__tokenlab__evaluate_decisions。先查 category=decision 與模型詳情。決策是同步結果,不是聊天模型或非同步任務;不要加入模型選擇器或交給 tokenlab_wait_task。

Webhook 管理需要 full 與啟動環境中獨立的 TOKENLAB_MANAGEMENT_TOKEN=mt-...,由 bundle 明確傳給 MCP。推理 key 不能替代管理 token;後者權限超出 Webhook。登記 Webhook 不代表 Harness 已成為接收端。

本頁內容