- name
- arkcli-helper
- version
- 1.1.5
- description
- arkcli helper:为 Claude Code / Codex / OpenCode / OpenClaw / Hermes / ZCode 配置火山方舟 Plan 或 Platform Endpoint 的 model/provider,或给支持的 Agent(含 MCP-only Trae)配置 Harness 工具。真人 TTY 运行 `arkcli helper` 可选择模型和 Harness 能力;`helper mcp` 默认保持整组 Agent Plan MCP 行为,传 `--capability datapro|web-search|agent-memory` 只配单项,传 `--capability cua` 只给目标 Agent 安装云电脑 Skill;连 model/provider 一起配置用 `helper configure`,查状态用 `helper list`,移除用 `helper reset`。Agent Plan / Team 还支持专业数据集、豆包搜索、Agent 记忆、AI Native 应用开发底座、Agent 进化与 routing.v1 强制检索路由;上下文出现 ARKCLI ROUTING ENFORCEMENT / routing.v1,或用户要求在豆包搜索、DataPro、OpenViking、Supabase 之间强制分流时也使用本 Skill:调用这四类受管 Provider 前先提交 Route Plan,再调用唯一授权 Provider;原生 WebSearch/WebFetch/WebExtract 位于路由管理范围之外。Platform 只允许本人创建、Running、已验证为文本输出的 Endpoint,不配置 MCP、Supabase 或强制路由。豆包搜索配置成功后默认关闭目标客户端原生 WebSearch;传 `--keep-native-websearch` 可保留,并可用 `helper reset` 完整恢复 ArkCLI 配置。
- metadata
- {"requires":{"bins":["arkcli"]},"cliHelp":"arkcli helper mcp --help"}
# arkcli helper —— 给本机 AI Agent 配置 Plan / Platform Endpoint / 注入 MCP
**前置:** 先用 Read 读 [`../arkcli-shared/SKILL.md`](../arkcli-shared/SKILL.md) 获取共享安全规则与认证闸门。
**CRITICAL — `arkcli helper` 整个命令域不支持 `--dry-run`。** Helper
面向 TTY/本地 harness 配置,不是 API request preview。任何 helper
命令带 `--dry-run` 都应 fail-fast 为 unknown flag;Agent 不得生成该
组合,也不得把它当作写操作保护。真实 `configure/reset/mcp/supabase`
仍必须先展示目标与路径并取得明确确认。
## 命令选择(先选最具体的子命令)
- 普通 Helper 准入从 `arkcli helper list` 和用户指定的目标开始;不要为补齐上下文自动执行 `profile show/list/keys list`。这些 Profile 命令可能在线同步并回写 Key,只有用户显式要求 Profile 管理时才进入,并先说明影响。
- 用户要查看或配置 Agent 的 model/provider、Plan、Platform Endpoint,或核对 `--with-mcp` / `--with-supabase` / `--with-routing` 等非交互选项时,必须选择 `arkcli helper configure`;只查看用法也要运行 `arkcli helper configure --help`,不能退化成父级 `arkcli helper --help`。
- 用户只要 Harness 工具、不改 model/provider 时,选择 `arkcli helper mcp [target]`。不传 `--capability` 配整组 Agent Plan MCP;只要专业数据集、豆包搜索或 Agent 记忆时分别传 `--capability datapro|web-search|agent-memory`;只要云电脑时传 `--capability cua`。选择豆包搜索后默认关闭目标客户端的原生 `WebSearch/web_search`,用户要求保留时加 `--keep-native-websearch`。发生关闭时立即输出作用域、配置文件和完整 reset 命令。只查看用法时运行 `arkcli helper mcp --help`。
- Helper 配置 Agent Plan 时只能使用该 profile 的专属/席位 Key,不能用普通 API Key 池兜底。个人版专属记录存在但非 Active(如 `Restricted`)时,真人 TTY 会先说明轮转将立即使旧 Key 失效并询问;确认后只轮转一次、最多读 3 次状态,第一轮 Active 即停止。无专属记录、用户拒绝或非 TTY 时不轮转;失败引导必须去 Agent Plan 使用配置页,不能去普通 API Key 页面或 `auth apikey`。
- `arkcli-auth` 只处理实际认证阻塞。用户仅要求查看 helper 的 `--help` 时,不要转去登录、`init-volc` 或其他认证命令。
## 适用场景 / 唤起信号
- 用户要给本机 Claude Code / Codex / OpenCode / OpenClaw / Hermes / ZCode 配置 Plan 或 Platform Endpoint 的 model/provider。
- 用户要给支持的目标 Agent 配置豆包搜索、专业数据集或 OpenViking MCP,只安装云电脑 CUA Skill,或配置 byted-supabase。
- 用户询问 `arkcli helper` 的安装态、配置态、文件落点、重载方式或 Agent Plan Harness 抵扣/超额后付费矩阵。
## 反唤起信号 / 不该唤起
- 只查询/购买/续费套餐或管理团队席位时转 `arkcli-plans`。
- 只搜索基础模型、查询用量或价格时分别转 `arkcli-models`、`arkcli-usage`、`arkcli-pricing`。
- 把 arkcli 内嵌 Skills 安装到 Agent 时转 `arkcli-connect`;不要把“安装 arkcli skill”误判为配置 Harness。
- 仅排查登录、401 或 profile 覆盖问题时转 `arkcli-auth` / `arkcli-config`,不要反复重写 Agent 配置。
- 用户问 **CC Switch / cc-switch 图形界面里如何选豆包、添加供应商或填写模型槽位**,而非要求 ArkCLI 修改本机 Agent 配置时,不走 `helper configure`;转 [`arkcli-docs`](../arkcli-docs/SKILL.md) 查官方 Claude Code/CC Switch 接入正文。按用户实际套餐区分 Key、Base URL 与 Model Name;套餐当前可用模型要以实时查询为准,认证失败时只给标明来源的文档示例,不能冒充实时清单。
## TTY Harness 能力矩阵(Agent Plan / Agent Plan Team)
真人直接运行 `arkcli helper` 时,向导顺序固定为:选择 Agent Plan profile → 选择模型 → 选择 AI Agent → 写入 model/provider → 进入 Harness 能力选择页。每行同时显示:
1. 本次是否重新配置(`[✓]` 已选、`[ ]` 未选、`[-]` 当前不可配置);
2. 套餐抵扣是否开启;
3. 超额后付费是否开启;
4. 当前所选 AI Agent 的本地配置状态。
本次选择与当前状态互相独立:默认勾选全部可配置能力;已显示“已配置”的能力进入下一步后仍必须重新执行配置。仅远端能力、当前 Agent 不支持以及团队版不提供的 Agent 记忆显示 `[-]`,不能选择。用户可取消任意能力;全部取消后选择“进入配置”会被阻止,也可以显式选择“跳过能力配置”。
已知本地适配是精确映射,不按服务端名称做模糊猜测:
| Harness 能力 | 本地交付形态 | “已配置”的判定 |
|---|---|---|
| 专业数据集 | MCP | `dataPro-search` 已注入且使用真实 Plan Key |
| 豆包搜索 | MCP + Skill | 搜索 MCP 使用真实 Plan Key、`byted-web-search` Skill 已安装,且 Skill 根目录 `.env` 中存在可用的 `WEB_SEARCH_API_KEY` |
| Agent 记忆 | MCP | OpenViking control-plane 已注入且使用真实 Plan Key |
| AI Native 应用开发底座 | CLI + Skill | byted-supabase CLI、Skill、`ark_login` Agent Plan 登录态均就绪 |
| Agent 进化 | CLI + Skill | 官方 Evolve CLI、`evolve-setup` Skill、workspace 配置与凭证均就绪 |
服务端目录是远端权益状态的事实源:上面五个已知能力始终显示;当前套餐未返回映射时标明无远端权益、不开启远端切换,但仍可查看或补充本地配置。服务端新增但 arkcli 尚未适配的 Harness 显示在已知五项之后,标为“仅远端能力”,只允许查看/切换服务端权益,不提供猜测性的本地配置动作。
- 个人版直接管理账号开关。
- 团队版普通成员管理当前席位;管理员同时有席位时默认当前席位,也可选择企业账号范围。账号总闸关闭时,席位开关显示未开启并在详情中解释上级限制。
- 开启超额后付费属于真实计费写操作:CLI 必须展示确认文案,默认选“取消”。服务端下发协议/购买链接时一并展示。不得用 `--dry-run` 代替确认。
- Agent 进化只检测官方安装布局;当前不会自动执行未固定版本的远程 `latest/install.sh`,详情页提供官方命令让真人手动执行后刷新。
- 豆包搜索 Skill 下载期间持续显示 Spinner;真人可按 `Ctrl+C` 立即取消当前下载并只跳过豆包搜索剩余配置。此时已注入的搜索 MCP 保留,不写 Skill 凭证、不修改原生 WebSearch,并继续配置本次已勾选的 Agent 记忆等后续能力。该按键只属于 TTY 矩阵,不改变非交互命令语义。
- 强制路由只在能力配置完成后确认。Helper 从磁盘重新检测真实 Provider,动态列出可授权能力;零 Provider 时只能返回继续配置或不启用退出,不能安装空授权路由。
- `helper configure/mcp/supabase/list/reset` 的非交互契约不因矩阵改变;Agent 自动化仍应选最具体的子命令,不得尝试操纵 TTY 菜单。
## Agent Plan 强制检索路由(配置与运行时协议)
本 Skill 负责分类与调用协议;真正的强制性来自 Helper 安装到 Harness 的 `UserPromptSubmit` / `PreToolUse` gate。它为每轮注入新的 `turn_id`,并在受管 Provider 执行前阻断错误或未授权 Provider。原生 WebSearch、WebFetch、WebExtract 不属于受管 Provider,不进入该 gate。
仅 Volc `agent-plan` / `agent-plan-team` 与正式支持的 Claude Code、Codex、OpenCode、OpenClaw 可配置:
```bash
arkcli helper configure <claude-code|codex|opencode|openclaw> \
--profile <agent-plan-profile> \
--with-routing
```
`--with-routing` 隐含业务 MCP;Supabase 必须显式加 `--with-supabase`,且只有真实配置成功后才进入 Provider 集合。Hermes/Trae 缺少可验证的 hook + MCP 闭环时必须失败且保持 Harness 配置不变;Platform、Coding Plan 与非 Volc 产品不支持。
上下文出现 `ARKCLI ROUTING ENFORCEMENT (routing.v1)` 时,每轮必须:
1. 原样读取本轮 `turn_id` 与 `Available providers`,不得伪造或复用上一轮 ID。
2. 把混合问题拆成可验收 task,并按固定映射选择唯一 Provider:`latest_public_web -> doubao_search`、`structured_dataset -> datapro`、`persistent_knowledge -> openviking`、`application_data -> supabase`、本地计算或需澄清 -> `none`。
3. 在任何受管业务 Provider 前恰好调用一次 `arkcli-agentplan-search-router.submit_route_plan`,提交完整 `routing.v1` 计划;只调用原生 Web 工具时不提交计划。
4. 计划接受后只调用已授权且真实可用的 Provider;正确 Provider 不可用时说明缺失并等待用户重新配置,不得 fallback。
总领 Skill / 当前 Agent 负责理解用户意图,`arkcli-agentplan-search-router` 只接收计划并由 gate 执行授权,不是搜索服务,也不自行读取 Prompt。选择豆包搜索、DataPro、OpenViking 或 Supabase 时才进入 `routing.v1`;用户明确要求原生 WebSearch/WebFetch/WebExtract 时可直接调用,它们不消耗也不继承受管 Provider 授权。
豆包搜索的同 Provider 入口顺序固定:已加载时优先调用 `byted-web-search` Skill;Skill 未安装、用户明确要求 MCP,或 Skill 在**业务请求发出前**因本地命令/配置错误失败时,保留原始错误并只改用一次 `mcp-server-askecho-search-infinity`。业务请求已经发出后出现鉴权、超时或服务错误必须停止,不得换入口重试。不得自行提取、打印或向工具手工传递 API Key。
受管 Provider 之间禁止互相替代、先调用后补计划,也不得把路由 MCP 当作搜索 Provider。原生 WebSearch/WebFetch/WebExtract 位于该约束之外;但用户明确指定某个受管 Provider 时,不得在其失败后静默换成原生工具。Route Plan schema、混合请求与授权生命周期见 [`references/arkcli-helper.md`](references/arkcli-helper.md#routingv1-强制检索路由协议)。
`helper mcp` 是**不改模型的非交互 Harness 工具入口**。不传 `--capability` 时保持存量整组 MCP 行为:个人版 `agent-plan` 注入四台,团队版 `agent-plan-team` 只注入豆包搜索 + DataPro。传 `--capability` 时只配所选单项,不带入其他已开启工具。
## Platform Endpoint 配置
Platform profile 只负责配置 Agent 的 model/provider:`model` 写为用户选择的 Endpoint ID,base URL 使用 Platform 的 `/api/v3`,协议继续由各 harness 保持现有行为(Chat 或 Responses)。
- 只展示**当前 SSO 子用户创建**、`Running`、模型被明确验证为**文本输出**的 Endpoint;VLM(图文输入、文本输出)可用。
- 生图、生视频、生 3D、音频、Embedding、内容生成或未知模型一律不展示,也不能通过 `--model` 绕过。
- Agent 配置中的 `model` 仍写 Endpoint ID;context window、max completion tokens、输入/输出模态按 Endpoint 绑定的基础模型名,复用 Agent Plan / Coding Plan 现有的 ArkModels 元数据富化规则(ArkModels 权威数据优先;查不到或字段为零时用内置 Plan 模型能力表兜底,仍未知才省略扩展字段并在 helper configure 输出中提示)。元数据查询失败同样 best-effort,不阻断已通过资格校验的 Endpoint。
- Hermes Agent 支持把 Platform Endpoint 写成 `volcengine-platform` model/provider;仍不支持 MCP 注入。
- 该接入只为 Platform 增加元数据调用方,不修改 Plan 模型清单、默认模型、元数据查询、MCP 或 Supabase 行为。
- 没有自己创建的 Endpoint 时,向导打开 `https://ark.volcengine.com/region:cn-beijing/endpoint/create?agentMode=close`;创建完成后选择“刷新列表”。已有但未运行的 Endpoint 需先启动再刷新。
- Platform **不支持** MCP、OpenViking、Supabase 或强制路由;`--with-mcp`、`--with-supabase`、`--with-routing` 会报错。
非交互调用:
```bash
arkcli helper configure codex \
--profile <platform-profile> \
--endpoint <ep-id>
```
配置成功后,Endpoint 可按 OpenAI 兼容入口调用:`/responses` 或 `/chat/completions`,请求的 `model` 均使用该 `<ep-id>`。
## 注入的是哪几台 MCP(写死,勿幻觉)
| server | 传输 | key 来源 |
|--------|------|---------|
| `mcp-server-askecho-search-infinity`(豆包搜索) | stdio(`uvx`) | **Agent Plan 的 API Key**(env `ASK_ECHO_SEARCH_INFINITY_API_KEY`,与 dataPro / 控制面**同一把** plan key);取不到则写占位符 |
| `dataPro-search` | http(streamable) | **Agent Plan 的 API Key**(header `X-Agent-Plan-Key`,裸 key) |
| `openviking-dataplane`(**仅个人版 agent-plan**) | http(streamable) | **OpenViking 库的访问 key**(数据面;header `Authorization: Bearer <key>`);经 vikingdb 两步取:列库 → 按库取 key。账号多库时要选库(见下)。账号下 0 个库时跳过 |
| `openviking-controlplane`(**仅个人版 agent-plan**) | stdio(`uvx`) | **Agent Plan 的 API Key**(控制面;env `AGENTPLAN_API_KEY`);不依赖 OV 库列表,个人版有 Agent Plan 即注入 |
> **个人版 vs 团队版:** 上表 OpenViking 两台是**个人版 `agent-plan`** 专属。**团队版 `agent-plan-team` 与 OpenViking 无关** —— 只注入豆包搜索 + dataPro 两台,`openviking-dataplane` / `openviking-controlplane` 都不配,也不会去查 vikingdb。
## 豆包搜索成功后的原生 WebSearch 选择
仅当豆包搜索 MCP 被选择、`byted-web-search` Skill 安装成功,且所选 Agent Plan 的同一把 API Key 已写入 Skill 根目录 `.env` 的 `WEB_SEARCH_API_KEY` 后,`helper` 才处理目标客户端的原生 `WebSearch/web_search`。TTY 会让用户选择“关闭(推荐)/保留”;非交互命令默认关闭,传 `--keep-native-websearch` 时保留。普通 model/provider 配置、Platform、Coding Plan、显式跳过豆包搜索、MCP 注入失败、Skill 安装失败或 Skill 凭证写入失败都不触发。Helper 不修改第三方 Skill 源码,也不得打印该 Key。
- 范围严格限定为 `WebSearch/web_search`;**不会**关闭 `webfetch`、`web_extract`、`x_search`、浏览器或其它工具。
- 项目级配置从当前目录向上寻找 `.git`(worktree 的 `.git` 文件也支持);找不到时使用当前目录。
- 配置成功后命令立即输出:客户端、作用域、配置路径,以及 `arkcli helper reset <harness>`。该 reset 是**完整回滚**,会同时移除 ArkCLI 写入的 model/provider/MCP,不是“只恢复搜索”。
- ArkCLI 只恢复自己拥有且未被用户再次修改的字段。用户原本已经关闭搜索时不接管;配置后同一字段被外部修改时,reset 保留用户当前值并警告。
- TRAE 写入 `.trae/hooks.json` 后,还必须在 `TRAE Settings > Hooks` 中启用当前项目;命令会明确提示“待激活”,不得宣称仅写文件就已生效。
## host ≠ target(最关键的概念)
- **host** = 你(这个 AI Agent)此刻跑在哪 —— 命令读环境变量自动检测,无需你判断。
- **target** = 要把 MCP 写进谁的配置 —— 可以是 host 自己,也可以是另一个 agent。
- 二者解耦:人在 OpenCode 里,也能给 Claude Code 配 MCP。
→ 用户在 prompt 里**点名了某个 agent**(如"给 opencode / codex 配"):跑 `arkcli helper mcp opencode` / `arkcli helper mcp codex`
→ 用户说"**当前 / 这个 Agent**"或没点名:跑 `arkcli helper mcp`(自动检测当前 host)
## 子命令穷举
| 调用 | 说明 |
|------|------|
| `arkcli helper mcp [target] [--capability <datapro\|web-search\|agent-memory\|cua>] [--profile P] [--ov-resource <库名>] [--scope project] [--keep-native-websearch] [--codex-config-scope profile\|global] [--codex-profile <name>] [--dsh-config-scope home\|profile] [--dsh-profile <name>]` | 不传 `--capability` 保持整组 MCP 旧行为;显式选择时只配一项,**不改 model**。`web-search` 还会安装 Skill 并按原规则处理原生 WebSearch;`agent-memory` 仅个人版,多库用 `--ov-resource`;`cua` 仅个人版 Medium/Large/Max,只给 target 安装 `byted-util-ark-cua` Skill,不写任何 MCP;Codex 的 MCP 默认写 profile `~/.codex/arkcli.config.toml`;DSH 默认写 home 层,profile 层需同时指定两个 DSH flag |
| `arkcli helper configure <harness> [--profile P] [--model M\|--endpoint ep-id] [--with-mcp] [--keep-native-websearch] [--with-supabase] [--with-routing] [--codex-config-scope profile\|global] [--codex-profile <name>]` | Plan 用 model/provider;Platform 必须用 `--endpoint` 选择文本 Endpoint。仅 Plan 可加 MCP/Supabase;强制路由仅 Agent Plan 可用。`--keep-native-websearch` 只影响豆包搜索配置,不改变路由 gate。 |
| `arkcli helper list` | 查支持的 agent + 安装/配置状态(只读) |
| `arkcli helper supabase [--profile P]` | **非 MCP**:装 byted-supabase-cli + skill + 注入火山登录态(打通 byted-supabase 数据库能力);跟 harness 无关。仅 Agent Plan(个人版全档 + 团队版全档) |
| `arkcli helper reset <harness>` | 完整移除 arkcli 注入的 model/provider/MCP/托管路由 hook/tool/plugin,并恢复 ArkCLI 拥有且未被外部修改的原生搜索字段 |
| `arkcli helper` | TTY 交互向导(需终端;非交互场景改用上面的);进入向导前会检查登录态,未登录/SSO 过期时按当前登录上下文拉起 SSO(火山走 volc-sso;全新用户无明确上下文时走 auth login 菜单),成功后继续向导;Agent Plan/Team 按 profile→model→Agent→能力多选→逐项配置推进,随后只基于已验真的真实 Provider 动态确认强制路由 |
> ⚠️ 想"只加 MCP" → `helper mcp`;想"把 agent 接到 plan、连模型一起" → `helper configure --with-mcp`。别用 `configure` 去只加 MCP(它会一并(重)写 model)。
>
> 🎯 用户说"**把(我 plan 的)全套 harness 工具都配上 / 都给我 set 好**"(MCP + Supabase 一次到位)→ `arkcli helper configure <harness> --with-mcp --with-supabase`。这是 agent 唯一能一条命令配齐 MCP 三件套 + Supabase 的路径(交互向导 `arkcli helper` 要 TTY、agent 跑不了;它的自动 SSO 只服务真人终端);`--with-mcp` 只配 MCP、不含 Supabase,想带 Supabase **必须显式加 `--with-supabase`**(资格不够 / 失败只 warn,不阻断 harness 配置)。
>
> 🧭 用户明确要“强制受管 Provider 路由 / routing.v1 / 防止豆包搜索、DataPro、OpenViking、Supabase 串路由”→ 使用本 Skill 的“Agent Plan 强制检索路由”协议,并执行 `helper configure <harness> --with-routing`。该 flag 隐含业务 MCP;Supabase 仍需显式加 `--with-supabase`,原生 Web 工具不受此 flag 管理。
## byted-supabase 数据库能力(`helper supabase`;**非 MCP**)
`arkcli helper supabase` 跟上面的 MCP 注入是**两类能力**:它**不写** agent 的 mcp.json,而是**装 byted-supabase-cli + skill** 并用当前火山 Agent Plan 登录态**注入登录态**(打通 byted-supabase / Volcengine Supabase 数据库平台)。**跟选哪个 harness 无关** —— 它配的是 byted-supabase-cli 这个独立工具本身。
- **门槛**:仅 Agent Plan —— 个人版 `agent-plan` **全档**支持(含 small/medium/large/max),团队版 `agent-plan-team` **全档**支持。不合格命令直接报错说明。
- **动作**:装 CLI(`npx -y @byted-supabase/cli@latest install`,连匹配的 byted-supabase agent skill 一起)→ 用所选 Agent Plan 身份的 STS + refresh_token 组装 Console Login 凭证 → `byted-supabase-cli login --credential-file`(个人版带 `--is-agent-plan`,团队版额外 `--agent-plan-seat-id <实时反查>`)注入到固定 profile `ark_login`。
- **触发**:用户说『配 byted-supabase / 打通数据库 / 装 supabase cli / 连接 supabase / 用我的 plan 连数据库』。
- **三条配置入口**(同一内核 `supabase.Configure`):① 专配 `arkcli helper supabase`;② 非交互/agent 顺带配 `arkcli helper configure <h> --with-supabase`(无确认框、失败只 warn,不阻断 harness 配置);③ 交互向导 `arkcli helper` 末尾可选步骤(仅合格 plan)。`helper mcp` / `configure --with-mcp` **不含** Supabase —— 想顺带配必须显式 `--with-supabase`。
- ⚠️ **v3 ve handoff 身份 (source=ve) 不能配 supabase**: `helper supabase` 内核 `gatherInputs` 强依赖 `LoadIdentityTokenFull(key)` 读 identity_store `token.json` 里的 refresh_token 组装 Console Login 凭证; 而 source=ve 身份**不落 token.json** (refresh_token 由 volcengine-go-sdk 内部管, arkcli 侧拿不到明文), 会报 `读 identity token: ...`。命中该报错时告诉用户: 想配 supabase 需要走 arkcli 原生 SSO 登录一次 (跳过 ve handoff), 具体做法是先 `ve logout` (或让 `ve` 处于未登录态) 再跑 `arkcli auth login` 拿到 `source="arkcli"` 的 identity。
## 范围边界(管好,别越界)
- **model/provider 可配置 target**:`claude-code` / `codex` / `deepseek-harness` / `pi` / `opencode` / `openclaw` / `hermes` / `zcode` / `workbuddy`。其中 Hermes 与 Pi 支持 Plan 和 Platform Endpoint,但都不支持 MCP;DSH 支持 Plan / Platform / Coding Plan 与 MCP 注入;ZCode 与 WorkBuddy 支持 model + MCP。
- **可注入 MCP 的 target 有 8 个**:`claude-code` / `codex` / `opencode` / `openclaw` / `trae` / `deepseek-harness` / `zcode` / `workbuddy`。CUA 是 Skill 而非 MCP,还可精确安装给 `hermes` / `pi`;命令只传单个 target,不扫描或改动其他 Agent。
- 本 skill 会被 `arkcli +connect` 装进很多 agent(cursor / gemini-cli / codex …40+),但 **MCP 注入只支持上一条列出的 8 个 target**。host 是其它 agent 时:要么用户点名其一作 target,要么命令会报"请显式指定" —— **绝不静默配错对象**。
- `codex` 支持 model/provider + MCP。默认 **profile 模式**写 `~/.codex/arkcli.config.toml`,需用 `codex --profile arkcli` 启动 terminal/TUI 才生效;传 `--codex-config-scope global` 才写 `~/.codex/config.toml`,该范围可能被 Codex CLI/TUI、Codex App、IDE extension 共享读取。
- `trae`(AI IDE)是 MCP-only:不配 model/provider;**无运行态宿主检测**(不会被自动当成 host),只能显式 `arkcli helper mcp trae`。默认写用户级 `~/.trae/mcp.json`,加 `--scope project` 写项目级 `./.trae/mcp.json`(项目级需在 Trae「设置 → MCP」开启「启用项目级 MCP」开关 + 重开项目)。豆包搜索成功后另写项目根 `.trae/hooks.json`,还需在 `TRAE Settings > Hooks` 启用当前项目。
- `hermes` 支持 Plan / Platform Endpoint 的 model/provider 配置,但暂不支持 MCP 注入 → MCP 请求命中就直说"暂不支持"。
- `deepseek-harness` (DSH):默认 home scope,可直接运行 `arkcli helper configure deepseek-harness --profile <plan>` 或 `arkcli helper mcp deepseek-harness`;若要写 profile scope,传 `--dsh-config-scope profile --dsh-profile <name>`,Helper 会确保 profile 目录存在。DSH provider/模型配置落到 `$DSH_HOME/settings.yaml` 的 `llm-pi-ai.providers.arkcli-<planType>:` 段(独立 provider,**不覆盖** `llm-deepseek:` 下的 DeepSeek 官方模型;用户可在 DSH 里切换官方 DeepSeek 与 arkcli 火山模型);默认模型写 `agent-default-model:`;API key 写入 `$DSH_HOME/.credentials.yaml` version 1 文档的 `refs.ARKCLI_<PLAN>_API_KEY`,由 DSH credentials service 按 `apiKeyEnv` 解析(不覆盖用户的 `DEEPSEEK_API_KEY`)。这是 breaking change:检测到旧版 ArkCLI 的 `llm-deepseek:` 指纹、纯 flat credentials,或 version 1 文档顶层残留的 legacy credential key 时,`configure` 不自动迁移,而是拒绝写入并要求先运行 `arkcli helper reset deepseek-harness`;`reset` 兼容清理这些旧格式,但任意自定义 `apiKeyEnv` 仍视为用户配置。settings 与 credentials 作为一个可回滚事务更新;`reset` 只删除仍保持 ArkCLI provider fingerprint 的条目、对应凭据以及仍指向它的默认模型。MCP / 原生 WebSearch 关闭落在 `$DSH_HOME/profiles/<name>/cordis.patch.yml`(profile scope)或 `$DSH_HOME/cordis.patch.yml`(home scope)。DSH 不导出 env marker,`helper mcp` 不传 target 不会自动选 DSH。原生 WebSearch 用 patch 层对 `@deepseek-ai/dsh-tool-web` 加 `disabled: true`(trae 风格 hook 兜底,精确作用当前 profile,reset 时按 marker 还原)。
View on GitHub