这个 Skill 能做什么,适合哪些场景?
该技能是 OpenChamber 仓库(一个基于 OpenCode AI 代理的跨设备开发环境)内 18 个技能之一,位于 .agents/skills/ui-api-decoupling。它是一份架构约束指南:当代码代理创建或修改共享 UI 的数据访问层时,规定官方 OpenCode API 必须走 @opencode-ai/sdk/v2,OpenChamber 自有路由走 runtimeFetch,运行时能力走 RuntimeAPIs。技能内置 13 条强制规则、任务分类表、按任务加载的参考文档,以及常见反模式对照和验证清单。适用于 web、Electron、VS Code、移动端等多种运行时的一致性维护。
- 按任务分类数据访问路径:官方 SDK、自有 HTTP 路由、运行时能力或浏览器认证 URL
- 强制通过 opencodeClient 调用 OpenCode SDK,禁止绕过或手动重建请求
- 规定 runtimeFetch 的使用方式,禁止硬编码 localhost、端口或凭证
- 在运行时切换时审查缓存、认证状态和传输连接,防止复用过期端点状态
- 要求在边界处解析外部载荷,禁止把原始 JSON 验证后继续传递
- 提供三个参考文档(浏览器资产认证、运行时对等、实现映射)按需加载
- 开发 OpenChamber 贡献者,在添加或修改共享 UI 组件的数据获取逻辑时,需要确定走 SDK 还是 runtimeFetch
- 维护者需要为某个运行时(如 VS Code 或 Electron)补齐能力或明确声明不支持行为
- 开发者实现运行时切换功能,需要确保缓存、SDK 客户端和认证状态不会跨运行时复用
- 处理 iframe、下载、图片等浏览器认证资产,需要使用作用域短时 URL 认证而非在 URL 中放长时凭证
- 代码评审者检查提交是否违反分层规则,如组件直接读取运行时全局或把 fetch 失败转成空数组
- 不适用于 OpenChamber 仓库之外的通用前端项目——所有规则均绑定其特定的 RuntimeAPIs、runtimeFetch 和运行时适配器架构
- 不覆盖 relay-transport 等实时传输本身的实现细节,仅要求同时加载该技能
如何安装这个 Skill?
- 该技能仅适用于 OpenChamber 仓库内部开发,不适合作为通用架构指导;
- 静态审查未执行任何测试,所列测试文件与 CI 覆盖情况未经独立验证;
- 发布者未经验证,安全相关主张(作用域 URL 令牌、允许列表)应在使用前对照实际代码核实;
- 技能文件无独立版本/变更记录,更新时需自行比对仓库提交历史。
- 本地文件系统
该技能随 OpenChamber 仓库分发,位于 .agents/skills/ui-api-decoupling/。README 未提供独立的技能安装命令,需要克隆仓库后将技能目录放入支持 Agent Skills 标准的客户端技能路径:
git clone https://github.com/openchamber/openchamber.git
cp -r openchamber/.agents/skills/ui-api-decoupling <你的技能目录>/如何使用这个 Skill?
安装后,把下面任意一句发给 Agent 即可触发:
- 给共享 UI 增加一个新的 OpenChamber HTTP 路由 /api/config/settings 的调用,确保在通用 OpenCode 代理之前注册
- 我需要为 VS Code 运行时支持一个 Web 端已有的能力,请按运行时对等规则实现并声明各运行时行为
- 把组件里直接读取运行时全局 URL 的代码改成 runtimeFetch,并去掉硬编码的 localhost 端口
- 运行时切换后终端和会话缓存出现旧数据,请检查并修复跨运行时的缓存键与认证状态复用问题
技能由模型代理在创建或修改共享 UI 数据访问代码时自动触发(依据 SKILL.md 的 description 触发条件)。流程为:先按分类表判断数据访问需求属于哪条路径,再按任务加载对应参考文档(如 references/runtime-parity.md),然后按 13 条强制规则实施修改,最后按验证清单检查。无命令行选项。
这个 Skill 有哪些优点和局限?
- 规则具体可执行,含 13 条强制规则和反模式对照表,而非空泛建议
- 按任务索引参考文档,避免一次性加载全部上下文
- 覆盖多运行时(web/Electron/VS Code/移动端)对等性这一实际难题
- 明确验证标准:要求传输/桥接/代理测试通过,静态检查不算数
- 强绑定 OpenChamber 代码库内部架构,对其他项目几乎没有迁移价值
- 无自动化脚本或测试工具,仅是文档型指导
- 技能效果依赖代理主动加载参考文档,无强制机制
这个 Skill 与同类方案有什么区别?
与相关 Skills 并排比较;分数均按同一 FSRS 标准得出。
| Skill | FS 评分 | Star 数 | 最近更新 | License |
|---|---|---|---|---|
| OpenChamber UI/API 解耦技能 本页 | 58 · 推荐 | ★ 12k | 11 天前 | MIT |
| OpenChamber 桌面外壳技能 | 54 · 谨慎使用 | ★ 12k | 11 天前 | MIT |
| VS Code 集成测试运行助手 ✓ Microsoft · 官方 | 52 · 谨慎使用 | ★ 194k | 11 天前 | MIT |
| Locale UI Patterns —— OpenChamber 界面文案国际化规范 | 61 · 推荐 | ★ 12k | 11 天前 | MIT |
| Callimachus Recall | 58 · 推荐 | ★ 43 | 3 个月前 | AGPL-3.0 |
README 将 OpenChamber 定位为 OpenCode 的可视化替代/增强界面(TUI 之外的 GUI),但未为该技能本身指定可比的替代品。
FollowSkills 如何评估这个 Skill?
技能明确要求最小权限(特权留在原生边界)、信任边界变更需显式确认、URL 中禁止长期凭证、边界处解析外部数据、失败不得伪装为空值;安全数据流披露较完整。扣分:发布者身份未经注册表验证,部分安全声明(如 ui-auth 允许列表、作用域令牌)仅为主张,未静态核实实现。
SKILL.md 内部自洽,分类表、规则、反模式、参考文件路径和测试清单一致且可静态交叉对照;有明确失败反馈规则(规则8)。扣分:静态审查未执行任何测试,未确认所列测试文件均存在且通过,边界场景覆盖靠声明。
description 触发条件列举具体(RuntimeAPIs、runtime fetch/auth、SDK 调用、运行时切换等),误触发风险低;明确列出五个运行时及不支持行为。扣分:技能高度绑定 OpenChamber 仓库内部结构,对外部项目几乎不可用,边界与非适用范围未显式声明为限制。
分层良好:SKILL.md 主文 + 三个任务导向参考文件,渐进披露清晰,仓库有 MIT 许可证、版本号与变更脚本。扣分:技能文件本身无版本/更新记录,维护责任与更新路径仅在仓库层面部分体现。
对该仓库内 UI/API 解耦开发任务能提供直接、可操作的规则与代码路径,明显优于口头约定。扣分:仅静态评估,未验证产出可直接使用;适用面窄,通用边际价值有限。
引用了具体测试文件路径与验证清单,主张与文件位置可审计。扣分:静态审查未执行测试,未确认测试文件内容或 CI 实际覆盖这些路径,证据类型单一。
点击维度查看打分理由
证据充分度:低 — 主要依赖静态检查、作者材料或有限演示;适合发现线索,不适合做高风险决策。
查看完整评分方法 →