Wave 2: 五件套打通全链路(安装/检测/配置/授权/诊断)
- 五个适配器 YAML 全字段补齐(codex/claude-code/gemini/kimi/opencode) - agentdock-config:TOML/JSON 编解码 + 原子写 + 自动备份 - agentdock-diag:PATH/依赖版本/版本冲突/配置损坏四类规则 - agentdock-core:detectCli/previewAction/runAction 流式/readConfig/writeConfig/authStatus/diagnose - Tauri IPC 命令 + CLI 详情页/安装确认弹窗/配置表单/诊断页 - cargo test 75 项通过(含 4 项真机 ignored 自测),前端 build 通过
This commit is contained in:
+121
-21
@@ -1,28 +1,128 @@
|
||||
# ============================================================
|
||||
# AgentDock 适配器占位(Wave 1,对齐架构 §3.1 完整 schema)
|
||||
# 本波仅填五字段(id/name/name_zh/vendor/status);其余字段留空,
|
||||
# Wave 2 起按调研底稿 agent-cli-survey-2026-08-24.md 逐项填充,禁止编造。
|
||||
#
|
||||
# 完整字段(全部留空占位,Wave 2 填写):
|
||||
# adapter_version # semver,如 1.2.0
|
||||
# license # 展示用;专有许可注明「仅官方渠道安装、不重打包」
|
||||
# platforms # windows/linux:architectures、notes、min_ubuntu
|
||||
# official # homepage / docs / allowed_hosts(网络白名单)
|
||||
# runtime_deps # [ { id, semver_range, required_for: [install|run] } ]
|
||||
# install # preferred + channels[ {id, platforms, command[], script, package, elevate, elevate_reason_zh, post_checks} ]
|
||||
# detect # executable / version_args / version_regex / version_unconfirmed / path_hints
|
||||
# update # method + command[]
|
||||
# uninstall # method + command[] + keep_config_default
|
||||
# authorization # modes[ {mode, command[], env_keys[], status_command[], notes_zh} ]
|
||||
# configuration # files[] / environment[] / fields[]
|
||||
# diagnostics # [ { rule_id } ]
|
||||
# documentation # quickstart_zh / commands[] / updated_at / risks_zh[]
|
||||
#
|
||||
# 铁律:所有 command 一律 argv 数组,禁止 shell 元字符(| & ; $ \ > < (`);
|
||||
# 本波不实现任何真实安装/检测/配置/授权命令(那是 Wave 2 的事)。
|
||||
# AgentDock 适配器 · OpenCode(opencode.ai)(Wave 2 全字段)
|
||||
# 数据依据:调研底稿 agent-cli-survey-2026-08-24.md(OpenCode 章节)+ 架构 §3.3
|
||||
# ============================================================
|
||||
id: opencode
|
||||
name: OpenCode
|
||||
name_zh: OpenCode
|
||||
vendor: opencode.ai
|
||||
status: available
|
||||
adapter_version: 1.0.0
|
||||
license: MIT
|
||||
|
||||
platforms:
|
||||
windows:
|
||||
architectures: [x64]
|
||||
notes: 原生支持(choco/scoop/exe,无需 WSL)
|
||||
linux:
|
||||
distributions: [ubuntu]
|
||||
architectures: [x64]
|
||||
|
||||
official:
|
||||
homepage: https://opencode.ai
|
||||
docs: https://opencode.ai/docs
|
||||
allowed_hosts: [opencode.ai, registry.npmjs.org, github.com, community.chocolatey.org, get.scoop.sh]
|
||||
|
||||
runtime_deps: []
|
||||
|
||||
install:
|
||||
preferred: npm
|
||||
channels:
|
||||
- id: npm
|
||||
platforms: [windows, linux]
|
||||
command: [npm, install, -g, opencode-ai]
|
||||
package: opencode-ai
|
||||
elevate: never
|
||||
post_checks: [detect]
|
||||
- id: choco
|
||||
platforms: [windows]
|
||||
command: [choco, install, opencode]
|
||||
package: opencode
|
||||
elevate: required
|
||||
elevate_reason_zh: choco 安装需要管理员权限写入系统目录
|
||||
post_checks: [detect]
|
||||
- id: scoop
|
||||
platforms: [windows]
|
||||
command: [scoop, install, opencode]
|
||||
package: opencode
|
||||
elevate: never
|
||||
post_checks: [detect]
|
||||
- id: official_script
|
||||
platforms: [linux]
|
||||
script:
|
||||
url: https://opencode.ai/install
|
||||
kind: bash_pipe
|
||||
elevate: never
|
||||
post_checks: [detect]
|
||||
|
||||
detect:
|
||||
executable: opencode
|
||||
version_args: ["--version"]
|
||||
|
||||
update:
|
||||
method: self_update_cmd
|
||||
command: [opencode, upgrade]
|
||||
|
||||
uninstall:
|
||||
method: npm_uninstall
|
||||
command: [npm, uninstall, -g, opencode-ai]
|
||||
keep_config_default: true
|
||||
|
||||
authorization:
|
||||
modes:
|
||||
- mode: browser_oauth
|
||||
command: [opencode, auth, login]
|
||||
notes_zh: 浏览器 OAuth(Claude Pro/Max、ChatGPT 订阅等)
|
||||
- mode: api_key
|
||||
status_command: [opencode, auth, list]
|
||||
env_keys: [OPENAI_API_KEY, ANTHROPIC_API_KEY]
|
||||
notes_zh: 各家 API Key;opencode auth list 可查看凭据
|
||||
- mode: device_code
|
||||
notes_zh: GitHub Copilot 设备码登录(github.com/login/device 输码)
|
||||
|
||||
configuration:
|
||||
files:
|
||||
- path: "~/.config/opencode/opencode.json"
|
||||
format: json
|
||||
scope: user
|
||||
environment:
|
||||
- key: OPENAI_API_KEY
|
||||
sensitive: true
|
||||
maps_to_field: api_key
|
||||
- key: ANTHROPIC_API_KEY
|
||||
sensitive: true
|
||||
maps_to_field: api_key
|
||||
fields:
|
||||
- id: model
|
||||
label_zh: 默认模型
|
||||
help_zh: OpenCode 使用的默认模型
|
||||
required: false
|
||||
sensitive: false
|
||||
type: string
|
||||
storage: file
|
||||
- id: api_key
|
||||
label_zh: API Key
|
||||
help_zh: 存入系统密钥库(对应 OPENAI_API_KEY / ANTHROPIC_API_KEY)
|
||||
required: false
|
||||
sensitive: true
|
||||
type: string
|
||||
storage: keyring
|
||||
|
||||
diagnostics:
|
||||
- rule_id: path.not_installed
|
||||
- rule_id: path.not_in_path
|
||||
- rule_id: version_conflict.multiple_copies
|
||||
- rule_id: config.corrupt
|
||||
|
||||
documentation:
|
||||
quickstart_zh: 安装后运行 `opencode` 或 `opencode run "提示词"` 无头执行。
|
||||
commands:
|
||||
- cmd: opencode
|
||||
desc_zh: 启动交互式会话
|
||||
- cmd: opencode run "提示词"
|
||||
desc_zh: 无头单次执行
|
||||
- cmd: opencode auth list
|
||||
desc_zh: 查看已配置凭据
|
||||
updated_at: "2026-08-24"
|
||||
risks_zh:
|
||||
- 官方未文档化安装包校验(SHA256/签名),适配器不强制校验
|
||||
|
||||
Reference in New Issue
Block a user