原生集成

CodeNomad 提供 OpenCode 的原生 MCP 连接、插件激活、技能和自定义命令。这些在执行主机上运行,与沙箱面板扩展和 SideCar 分开。

选择正确的控件

集成 操作位置 控件更改的内容
MCP 服务器 状态 → MCP 服务器 显示 Location 的原生连接;不会安装服务器。
原生插件 状态 → 插件 持久的全局或项目激活规则;对于软件包插件,可显式检查或更新该软件包。不会安装或移除软件包。
技能 输入框 @ 菜单 显式附加到对话 Location 中的下一条提示词。
自定义命令 输入框 / 菜单 运行 OpenCode 为该 Location 提供的命令。

请先使用 OpenCode 支持的配置和 CLI 配置/安装集成。安装软件包、声明来源、启用规则、连接服务和使工具可用是独立步骤。原生集成拥有其宿主进程权限,并受 OpenCode 权限约束;它们不是沙箱 HTML 面板。

连接或断开 MCP

  1. 按 OpenCode MCP 文档在 OpenCode 执行主机上配置 MCP 服务器。
  2. 打开项目的状态 → MCP 服务器。
  3. 使用服务器旁的开关连接或断开。等待连接指示器稳定。

开关针对报告的 Location 调用原生连接 API,不是设备本地安装程序,也不是按窗口的可见性偏好。使用该 Location 的其他客户端可以观察到连接更改。断开不会移除服务器声明或卸载其可执行文件。

若未显示服务器,请验证活动 Location 及其原生配置。连接失败时,请检查服务器配置、所需环境和原生认证流程;不要假定开关能完成 OAuth。重新连接后再次检查状态。仅在必要时显式重新加载配置,并注意 OpenCode 设置中描述的中断影响。

在全局或项目范围激活插件

  1. 使用 OpenCode 安装/声明原生插件;然后打开状态 → 插件。
  2. 悬停或聚焦名称,检查来源、运行时失败和配置目标详情。
  3. 有意识地切换全局或项目。等待写入完成,状态不明时使用刷新插件控件。
  4. 对于从软件包安装的插件,使用其名称旁的图标。其菜单会写明确切操作:检查 … 的更新,或在发现较新版本后更新 …。

全局以所连接守护进程发现的全局配置为目标。项目以活动 Location 内的配置为目标,而非继承的祖先文件。后续项目规则可以覆盖全局;全局开关仍显示全局规则,而不会假装是最终项目状态。没有项目规则时,项目继承解析后的全局状态。

这些开关追加精确激活规则,同时保留来源声明和无关配置。不会编辑插件选项、安装软件包或移除文件。内置 OpenCode 插件不会作为用户激活开关提供。项目目标无法安全地与全局分离,或会超出活动 Location 时,项目控件会禁用。

软件包更新会在 OpenCode 的共享缓存中更改该软件包,影响所有使用它的 Location,其工具提示中也会说明这一点;它不会更改激活规则、重启 OpenCode 或重新加载配置。本地、内置和 SDK 提供的插件没有软件包操作。在报告插件 ID 之前就加载失败的软件包会按软件包名称列出,其工具提示中包含失败信息,并提供检查/更新操作,但没有激活开关。检查或更新失败会被报告,且绝不会自动重试。

界面隐藏时保留上次快照,并在显示时、原生更改/重新连接后及显式刷新时重新验证。已保存规则与实时运行时可用性可能短暂不同。插件持续不可用时,先检查工具提示和原生配置,再选择重新加载 OpenCode 配置;该操作影响所有已加载 Location,而非仅此插件。格式错误的配置或并发编辑不会被静默覆盖:请解决、刷新后显式重试。

附加技能

  1. 在输入框输入 @,搜索 Location 可用技能并选择一个。
  2. 在文件/智能体旁检查其可移除附件;如果不打算使用,请在发送前移除。
  3. 发送提示词。技能标签会保留在已发送消息中。

选择会附加原生技能 ID 并移除 @query 标记;不会将指令粘贴到可见草稿。发送会清除输入框选择,而非 OpenCode 随该消息已存储的指令。移除附件无法撤销先前发送。

技能可用性来自对话的 Location,而非全局 CodeNomad 技能目录。列表无法加载时,关闭并重新打开选择器重试;为空时检查原生发现/配置。参阅 OpenCode 技能文档和对话。

运行自定义命令

  1. 在输入框输入 / 并选择可用原生命令。
  2. 提供参数,并根据该命令需要在提交前检查智能体、模型和思考。
  3. 如果确认不明确,请检查生成的对话,而非反复提交。

命令由 OpenCode 针对活动 Location 发现。其自身的原生定义可以选择执行行为;菜单不是软件包安装程序或无限制配置编辑器。CodeNomad 会在提交原生自定义命令前应用配置文件的会话环境;环境更新失败会阻止发送。/btw 是 CodeNomad 独立的临时提问流程,而非普通自定义命令。

命令定义和原生配置继承请使用 OpenCode 命令文档。配置更改后,先刷新/重新打开相关界面;仅当运行时仍需要时才显式重新加载配置。切勿仅为刷新显示而重放可能已接纳的命令。