开发与工程

OpenChamber UI/API 解耦技能

在修改 OpenChamber 共享 UI 的数据访问时,强制执行 SDK 调用、RuntimeAPIs 与浏览器资产之间的正确分层,避免硬编码与跨运行时的状态污染。

58/ 100
推荐

整体可靠,存在已披露的局限;按说明试用并保留回滚路径。

查看评分依据 ↓
可直接使用于
Codex · Claude Code
Star 数
★ 12k
最近更新
11 天前
License
MIT
opencodeui-architecturesdk-integrationruntime-abstraction
+4api-decouplingauth-handlingelectronvscode-extension

这个 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 令牌、允许列表)应在使用前对照实际代码核实;
  • 技能文件无独立版本/变更记录,更新时需自行比对仓库提交历史。
开始前你需要
Agent 需要具备
  • 本地文件系统

该技能随 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?

FollowSkills 评估 · FSRS-2.0
推荐
58/ 100 五分制 2.9 / 5
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
1信任安全18 / 25 · 3.6/5

技能明确要求最小权限(特权留在原生边界)、信任边界变更需显式确认、URL 中禁止长期凭证、边界处解析外部数据、失败不得伪装为空值;安全数据流披露较完整。扣分:发布者身份未经注册表验证,部分安全声明(如 ui-auth 允许列表、作用域令牌)仅为主张,未静态核实实现。

2可靠稳定9 / 20 · 2.3/5

SKILL.md 内部自洽,分类表、规则、反模式、参考文件路径和测试清单一致且可静态交叉对照;有明确失败反馈规则(规则8)。扣分:静态审查未执行任何测试,未确认所列测试文件均存在且通过,边界场景覆盖靠声明。

3适用触发10 / 15 · 3.3/5

description 触发条件列举具体(RuntimeAPIs、runtime fetch/auth、SDK 调用、运行时切换等),误触发风险低;明确列出五个运行时及不支持行为。扣分:技能高度绑定 OpenChamber 仓库内部结构,对外部项目几乎不可用,边界与非适用范围未显式声明为限制。

4规范维护11 / 15 · 3.7/5

分层良好:SKILL.md 主文 + 三个任务导向参考文件,渐进披露清晰,仓库有 MIT 许可证、版本号与变更脚本。扣分:技能文件本身无版本/更新记录,维护责任与更新路径仅在仓库层面部分体现。

5有效结果6 / 15 · 2.0/5

对该仓库内 UI/API 解耦开发任务能提供直接、可操作的规则与代码路径,明显优于口头约定。扣分:仅静态评估,未验证产出可直接使用;适用面窄,通用边际价值有限。

6证据核验4 / 10 · 2.0/5

引用了具体测试文件路径与验证清单,主张与文件位置可审计。扣分:静态审查未执行测试,未确认测试文件内容或 CI 实际覆盖这些路径,证据类型单一。

1 2 3 4 5 6

点击维度查看打分理由

评估于 2026年9月9日 审查版本 f8b929edf989 评估证据[1][2][3][4][5][6][7][8][9][10][11][12]

证据充分度:低 — 主要依赖静态检查、作者材料或有限演示;适合发现线索,不适合做高风险决策。

查看完整评分方法 →

常见问题

这个技能需要联网或额外依赖吗?
不需要。它是纯文档型技能,无脚本、无 CLI 依赖;实际联网行为发生在它所指导的 OpenChamber 代码中,而非技能本身。
如果我的项目不用 OpenChamber,还有用吗?
价值有限。规则中的 opencodeClient、RuntimeAPIs、runtimeFetch 都是 OpenChamber 专有抽象,但分层原则(SDK 边界、运行时适配器、边界解析)可作架构参考。
技能如何保证代理遵守这些规则?
通过触发条件、强制规则清单和验证章节约束代理行为,但没有技术强制手段——最终依赖模型遵循文本指令和代码评审。

同仓库的其他 Skills

均来自 openchamber/openchamber

开发与工程

OpenChamber 桌面外壳技能

在修改 OpenChamber 的 Electron 主进程、preload、IPC 或打包逻辑时,为 AI 代理提供正确的架构边界与安全规则。

★ 12k FS 54 谨慎使用 11 天前
开发与工程

Locale UI Patterns —— OpenChamber 界面文案国际化规范

为 OpenChamber 项目编写或修改任何用户可见文案时,确保每个语言的字典都拿到真正的翻译,而不是英文占位符。

★ 12k FS 61 推荐 11 天前
开发与工程

OpenChamber 中继传输技能

为 OpenChamber 的端到端加密中继隧道正确编写 WebSocket、SSE 与流式端点,避免只在桌面直连下能通过的隐性中继缺陷。

★ 12k FS 58 推荐 11 天前
开发与工程

Clack CLI 模式规范

为 OpenChamber 终端命令定义统一的交互提示、--quiet 与 -- 输出契约,确保任何运行模式下策略校验先行、行为确定一致。

★ 12k FS 57 谨慎使用 11 天前
设计与前端

OpenChamber 主题系统技能

在修改 OpenChamber UI 时,强制使用语义化主题令牌、共享按钮/图标契约与键盘导航规范,避免硬编码颜色和重复实现。

★ 12k FS 57 谨慎使用 11 天前
设计与前端

OpenChamber 设置界面模式指南

在修改 OpenChamber 设置页面、对话框和搜索行为时,强制代理使用共享原语与本地化、搜索注册约定,避免各页面各自造轮子。

★ 12k FS 54 谨慎使用 11 天前
开发与工程

OpenChamber 同步状态不变量守则

在改动会话同步、事件归约器、轮询与缓存逻辑时,一套强制执行的状态所有权与失败语义规范,防止数据误删与状态错乱。

★ 12k FS 49 谨慎使用 11 天前
开发与工程

OpenChamber 性能工程技能

在优化单条操作之前先消除结构性浪费:为交互、渲染、轮询、缓存与大规模数据路径提供以测量为准的性能优化方法论。

★ 12k FS 62 推荐 11 天前
设计与前端

OpenChamber 拖拽排序技能(drag-to-reorder)

一份沉淀自真实项目的 @dnd-kit 拖拽排序实践指南,专门解决变宽条目、换行布局和移动端触摸交互中最容易踩的坑。

★ 12k FS 59 推荐 11 天前
开发与工程

OpenChamber 变更纪律

在修改 OpenChamber 代码库时,强制执行“最小完整变更 + 最窄级别验证”的工程纪律,防止局部修复演变成投机性重写。

★ 12k FS 52 谨慎使用 11 天前
开发与工程

serve-sim — 终端里的 iOS 模拟器遥控器

无需打开 Xcode,就能在终端中启动、安装、串流并操控 Apple 模拟器里的 Capacitor iOS 应用。

★ 12k FS 52 谨慎使用 11 天前

相关 Skills