开发与工程

cmux 测试技能

为 cmux 仓库选择合适的本地/CI 验证方式,添加有行为依据的测试,并确保 Swift 测试文件在 Xcode 工程中正确接线。

60/ 100
推荐

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

查看评分依据 ↓
可直接使用于
Codex · Claude Code
Star 数
★ 28k
最近更新
1 天前
License
NOASSERTION
swift-testingtest-wiringregression-testingxcodeproj
+4ci-verificationui-testingmacoscmux

这个 Skill 能做什么,适合哪些场景?

这是 manaflow-ai/cmux 单仓库(共 25 个技能之一)中的 cmux-testing 技能,面向为 cmux 这个 Swift/AppKit macOS 终端应用贡献代码的开发者。它指导你如何用 scripts/verify-local.py 选择范围恰当的检查,如何编写失败的回归测试再修复(双提交加证据),以及如何用 sync-test-wiring 等脚本保证新的 cmuxTests/*.swift 文件在 project.pbxproj 中正确接线。它还规定了 Swift Testing 的使用规范、原生测试证据要求和 PR CI 标签规则。适合 cmux 的贡献者,不适合普通终端用户。

  • 从受信任的 checkout 运行 python3 scripts/verify-local.py(可加 --all / --only swift-syntax --swift-changed / --only test-wiring)来选择并执行本地验证
  • 用 scripts/ui-test 以逐帧截图查看 UI 测试行为,用 scripts/ui-lab/ui-lab.py 秒级把视图渲染成明暗两版 PNG
  • 通过 scripts/run-e2e.sh --scenario 消费 CI 上的 dogfood JSON 场景,获取截图、GIF 和 accessibility tree
  • 要求回归修复采用两个提交:先失败的行为测试,后修复,并记录命令、SHA 与结果
  • 用 ./scripts/sync-test-wiring 同步 cmuxTests 的 PBXFileReference/Sources 成员,用 ./scripts/wire-app-sources.py 接线新增 app 源文件
  • 规定 Swift 单元/集成测试使用 Swift Testing(@Test、#expect 等),UI 测试保持 XCTest
适合
  • 向 cmux 贡献代码的开发者在提交 PR 前,想用最小的本地检查集验证自己的 Swift 改动
  • 贡献者新增了一个 cmuxTests/*.swift 测试文件,需要确保它在 Xcode 工程中接线,避免零测试的假通过
  • 开发者在修复一个 bug,需要按规范先提交失败的回归测试再提交修复并保留证据
  • 评审者在合并 PR 前,想查看 CI dogfood 评论中的截图和 GIF 来确认 UI 行为
  • 贡献者改动涉及远程 tmux 尺寸,需要按 E2E 配方执行验证
不适合
  • 只想安装和使用 cmux 终端应用的普通用户——本技能是面向该仓库的贡献/测试流程
  • 非 cmux 仓库的项目——脚本如 verify-local.py、sync-test-wiring 等绑定 cmux 仓库结构
  • 非 macOS 环境——cmux 是 Swift/AppKit macOS 应用,UI 测试和 Xcode 工程接线依赖 macOS 工具链

如何安装这个 Skill?

使用前请注意
  • 本评估为纯静态源码审查,未执行任何脚本或测试;低置信度。
  • 仓库 license 元数据为 NOASSERTION,实际为 GPL-3.0 加 BUSL-1.1(web/ 等目录)混合许可,商用/自托管前需自行核实适用范围。
  • 技能重度依赖 macOS、Xcode、tmux 与 GitHub Actions(含 Blacksmith runner),非 macOS 环境基本不可用;CI 调度在中国大陆网络下可能受限或缓慢。
  • 仅英文文档,无中文支持。
  • 运行仓库命令前请确认处于受信 checkout;即便 --help 也会加载仓库代码。
  • 发布者未通过 FollowSkills 企业注册表验证,身份视为未知。
开始前你需要
Agent 需要具备
  • Shell / 命令行
  • 本地文件系统
需要预先安装
  • Python 3
  • Xcode / cmux.xcodeproj
  • Swift toolchain
  • cmux repo checkout (scripts/verify-local.py, scripts/ui-test, scripts/ui-lab, scripts/sync-test-wiring, scripts/wire-app-sources.py)

本技能是 cmux 单仓库内 skills/ 目录下的一个 SKILL.md,源材料未提供独立的安装命令;获取该技能集合的方式是克隆仓库:

git clone https://github.com/manaflow-ai/cmux.git

(README 中的 DMG/Homebrew 安装是针对 cmux 应用本身,而非本技能。)

如何使用这个 Skill?

试试这样说

安装后,把下面任意一句发给 Agent 即可触发:

  • 我改了 cmux 里的几个 Swift 文件,帮我决定提交前需要跑哪些本地验证
  • 我新增了一个 cmuxTests 测试文件,检查它在 project.pbxproj 里是否正确接线
  • 我要修复一个 cmux 的 bug,按规范生成失败的回归测试提交和修复提交
  • 帮我看看这个 PR 的 CI dogfood 评论里的截图,判断 UI 行为是否正确

技能通过"添加测试或决定改动需要什么本地/CI 证据"的场景触发。核心流程:先在受信任的 checkout 中运行 verify-local.py 选择检查;修复 bug 时保持一个聚焦的失败命令,做两个提交并记录 SHA 与结果;新增/重命名/删除测试文件后运行 sync-test-wiring(--check 仅校验);app 源文件用 wire-app-sources.py,UI 测试加 --target cmuxUITests --dir cmuxUITests。常用命令:

python3 scripts/verify-local.py --all
python3 scripts/verify-local.py --only test-wiring
./scripts/sync-test-wiring
./scripts/wire-app-sources.py --check

注意:解析类检查只做语法检查,不做类型检查也不运行测试;app 构建不会编译测试目标,公共 API 改动需编译并实际执行相关测试目标。

这个 Skill 有哪些优点和局限?

优点
  • 提供了从本地静态检查到 CI dogfood 截图的完整验证决策路径
  • 明确防止常见陷阱:零执行测试的假通过、未接线的测试文件、镜像实现细节的伪测试
  • 对 Swift Testing 与 XCTest 的迁移边界有清晰规则,避免不必要的迁移
局限
  • 仅在 cmux 仓库内有意义,脚本和路径高度绑定该仓库
  • 源材料未提供该技能的独立测试套件或跨平台验证证据
  • 某些验证(UI 测试、Xcode 接线、dogfood)需要 macOS 与 Xcode,门槛较高

这个 Skill 与同类方案有什么区别?

与相关 Skills 并排比较;分数均按同一 FSRS 标准得出。

Skill FS 评分 Star 数 最近更新 License
cmux 测试技能 本页 60 · 推荐 ★ 28k 1 天前 NOASSERTION
cmux 共享行为规则 48 · 谨慎使用 ★ 28k 1 天前 NOASSERTION
cmux 开发工作流技能 53 · 谨慎使用 ★ 28k 1 天前 NOASSERTION
cmux 工作区操作技能 64 · 推荐 ★ 28k 1 天前 NOASSERTION
cmux-browser:cmux 内置浏览器自动化技能 60 · 推荐 ★ 28k 1 天前 NOASSERTION

README 将 cmux 与 tmux 对比(cmux 是带 GUI 的原生 macOS 应用而非终端复用器),但那是应用层面;源材料未为本测试技能指定同类替代品。

FollowSkills 如何评估这个 Skill?

FollowSkills 评估 · FSRS-2.0
推荐
60/ 100 五分制 3.0 / 5
1信任安全18 / 25 · 3.6/5

证据显示技能明确要求仅从受信 checkout 运行仓库命令,并指出即使 --help 也会加载仓库代码;文档本身为纯指导性文本,不执行破坏性操作、不索取凭据;e2e/UI 测试要求通过已 pin commit 的 CI wrapper 调度,避免本地运行未标记 app。扣分:技能引用的脚本本体未在本次审查范围内直接审读,最小权限与外部效果需由读者信任其描述;发布者未经验证。

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

SKILL.md 与 references 高度自洽:明确区分'编译测试目标'与'执行测试'、零测试不算验证、wiring 缺失会导致虚假通过,并有详细的失败诊断(shim-check、pane_grids 输出、fuzz 的具体 setup 错误与修复)。扣分:静态审查未执行,关键路径(verify-local.py、sync-test-wiring、fuzz 脚本)的可运行性与依赖(tmux、Xcode、GitHub Actions runner)可用性未经证实,故不上 10 以上。

3适用触发11 / 15 · 3.7/5

受众与场景清晰(为 cmux 贡献者/agent 决定测试与验证证据),description 触发条件明确('adding tests or deciding what local/CI evidence a change needs'),边界披露充分(ui-lab 明示'不是运行中的 app';sizing suite 明示 hermetic 条件)。扣分:环境强绑定 macOS/Xcode/GitHub Actions,未声明对其他环境的非适用范围;无中文支持;CI 调度依赖海外 GitHub Actions 与 Blacksmith runner,中国大陆可达性存在不确定性。

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

信息架构分层良好:SKILL.md 主文档 + 多个 references 深度指南,渐进披露清晰,命令与命名稳定且互相链接。仓库层面有 LICENSE、SECURITY.md、版本化实践。扣分:仓库 license 元数据为 NOASSERTION 且实际为 GPL-3.0 与 BUSL-1.1 混合许可,技能自身未声明版本/变更记录,维护责任与更新路径未在技能文件内明示。

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

技能对核心任务(选择范围化验证、编写行为测试、修复测试 wiring)给出直接可用的命令和判断规则,相比自行摸索有明确边际价值。扣分:静态审查无法验证输出实际可用性;其价值高度依赖仓库工具链的存在与正确性,且多数关键验证最终仍需 CI 时间成本(文档自承 10-20 runner 分钟),收益/成本比例未经执行验证。

6证据核验5 / 10 · 2.5/5

仓库内含真实 CI workflow(如 app-host-test-rerun.yml,含固定 SHA 的 action 引用与 permissions 限制)与技能引用相互印证,claim 大多有源可查。扣分:静态审查只能确认文件存在与一致性,无法独立复现执行结论;引用的部分外部路径(references、docs)未在本次证据中给出。

1 2 3 4 5 6

点击维度查看打分理由

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

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

查看完整评分方法 →

常见问题

这个技能需要什么环境?
macOS + Swift/Xcode 工具链和 Python 3,且必须在 cmux 仓库的受信任 checkout 中运行;即使 verify-local.py --help 也会加载仓库代码。
verify-local.py --all 就是完整 CI 吗?
它是完整的 CI 静态配方;但解析类检查只验证语法,不类型检查也不运行测试,测试目标的编译与执行需另行遵循 local-vs-ci-validation 指南。
我删了测试文件但没跑 sync-test-wiring 会怎样?
project.pbxproj 中的 PBXFileReference/BuildFile 条目会与磁盘不一致,可能导致误导性的零测试通过;sync-test-wiring 会确定性 reconciliation,--check 可只校验不写入。
full-ci / unit-ci 标签是合并要求吗?
不是。普通 PR CI 已运行 diff 触及的套件,full-ci 和 unit-ci 不是评审或合并要求,添加前应先查看 PR CI coverage 文档。

同仓库的其他 Skills

均来自 manaflow-ai/cmux

开发与工程

cmux 共享行为规则

为 cmux 多入口行为制定统一的实现与验证规则,避免某个入口改了、其他入口仍是旧逻辑或旧 bug。

★ 28k FS 48 谨慎使用 1 天前
开发与工程

cmux 开发工作流技能

为 cmux 贡献者提供原生构建、带标签开发包、Xcode 工程规范化与侧边栏扩展的标准化工作流,避免破坏正在运行的 cmux 会话。

★ 28k FS 53 谨慎使用 1 天前
开发与工程

cmux 工作区操作技能

让 AI 代理安全地在调用它的 cmux 工作区内工作,避免误触用户正在查看的其他工作区或窗口。

★ 28k FS 64 推荐 1 天前
开发与工程

cmux-browser:cmux 内置浏览器自动化技能

在不抢夺焦点的前提下,通过 cmux CLI 打开网页、探查浏览器表面、等待页面状态并提取数据,专为并行开发场景设计。

★ 28k FS 60 推荐 1 天前
开发与工程

cmux 键盘快捷键定制

把你的按键习惯变成 cmux 的快捷键绑定:提供向导、模板与一键应用,避免误绑和冲突。

★ 28k FS 58 推荐 1 天前
开发与工程

cmux 设置管理技能(cmux-settings)

安全查看、修改和回滚 cmux 终端的 cmux. 配置,改完即存即生效,无需重启应用。

★ 28k FS 58 推荐 1 天前
开发与工程

cmux Socket 策略规范技能

为 cmux 的 socket/CLI 命令开发提供线程调度与焦点行为规范,避免高遥测负载卡死主线程、避免自动化命令抢占用户焦点。

★ 28k FS 58 推荐 1 天前
开发与工程

cmux 自定义技能

针对 cmux 终端的配置技能:安全地编辑 cmux.、Dock 配置与 Ghostty 偏好,定制动作、布局、快捷键和通知,而不破坏现有配置。

★ 28k FS 55 谨慎使用 1 天前
效率与协作

cmux Markdown 查看器

把 .md 文件在 cmux 终端旁的格式化面板中打开,文件一变就自动重渲染,让计划、文档和笔记始终可见。

★ 28k FS 52 谨慎使用 1 天前
开发与工程

cmux 诊断

为 cmux 用户收集安全、只读的诊断信息,快速定位钩子、通知、会话恢复和 CLI 控制不工作的问题。

★ 28k FS 51 谨慎使用 1 天前
自动化与运维

cmux Computer Use 技能

让 cmux 中的 AI 编码代理通过本地计算机使用引擎操作真实 macOS 应用,前提是用户明确提出请求。

★ 28k FS 50 谨慎使用 1 天前
开发与工程

cmux 自定义侧边栏

从一句自然语言需求生成可热重载的 cmux 自定义侧边栏,无需 Xcode、无需构建、无需签名。

★ 28k FS 50 谨慎使用 1 天前
开发与工程

cmux-capture:cmux 窗口截图与录制

用一条 CLI 命令截图或录制 cmux 窗口,为 PR、bug 报告或视觉验证提供真实证据,且无需任何屏幕录制权限。

★ 28k FS 55 谨慎使用 1 天前
开发与工程

cmux 架构规范技能

在向 cmux 添加或大幅改写 Swift 文件、包、协调器、服务或公共 API 之前,先加载这套包架构、分层、依赖倒置与 Swift 6 并发规则,避免违反项目约定。

★ 28k FS 63 推荐 1 天前
自动化与运维

cmux Cloud 虚拟机技能

让 AI 代理通过 cmux CLI 操作云端虚拟机:在持久化的远程终端上运行长时命令和编码代理,并在完成后向用户展示结果工作区。

★ 28k FS 56 谨慎使用 1 天前
开发与工程

cmux 发布助手

为 cmux 仓库维护者整理发版全流程:版本号递增、变更日志汇总、预发布守卫、打标签与产物校验,减少手工遗漏。

★ 28k FS 53 谨慎使用 1 天前
开发与工程

cmux 调试技能

为 cmux(基于 Ghostty 的 macOS 终端)开发者提供调试日志、Debug 菜单、运行时陷阱和性能敏感路径的规范知识,避免在打字延迟敏感代码中引入卡顿。

★ 28k FS 56 谨慎使用 1 天前
开发与工程

cmux 本地化规范与审计技能

在修改 cmux 任何用户可见文案时,强制执行本地化规则并跑完一条可核验的翻译审计流程,杜绝硬编码英文串。

★ 28k FS 56 谨慎使用 1 天前
开发与工程

cmux Ghostty 子模块工作流技能

为 cmux 贡献者提供 Ghostty 子模块与 GhosttyKit.xcframework 的标准化构建、推送与指针更新流程,避免子模块指针悬空导致的拉取失败。

★ 28k FS 54 谨慎使用 1 天前
开发与工程

cmux 计费运维技能

为 cmux 项目的 Stripe 计费、定价、订阅、Webhook 与 Pro 权益开发提供一份可直接执行的架构地图与运维手册。

★ 28k FS 50 谨慎使用 1 天前

相关 Skills