跳到正文
cccskills
免费在 GitHub 公开

cmux-testing

Choose checks for cmux changes, add tests that reproduce observable bugs, and verify that Swift test files are included in build targets. It also guides local and CI validation, including evidence that selected tests actually ran.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Choose scoped cmux verification, add behavioral tests, and validate Swift test targets and wiring. Use when adding tests or deciding what local/CI evidence a change needs.

查看安装方法

适用场景

  • Choose validation checks for a cmux change
  • Add a regression test that reproduces a bug
  • Verify Swift test files are included in the build
  • Inspect UI test screenshots and execution results

包含的文件(11)

  • SKILL.md5.7 KB
  • agents/openai.yaml306 B
  • references/dogfood-scenarios.md9.3 KB
  • references/local-vs-ci-validation.md6.1 KB
  • references/pr-ci-coverage.md2.2 KB
  • references/regression-and-quality.md975 B
  • references/remote-tmux-sizing-e2e.md7.2 KB
  • references/swift-testing-migration.md1.4 KB
  • references/ui-lab.md2.5 KB
  • references/ui-test-frames.md1.3 KB
  • references/web-test-flakes.md5.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

cmux Testing

Choose the first check

Run repository commands only from a trusted checkout; even verify-local.py --help and --list load repository code.

TaskCommand
Choose checks and parse changed Swiftpython3 scripts/verify-local.py
Run the full CI static recipepython3 scripts/verify-local.py --all
Parse current Swift editspython3 scripts/verify-local.py --only swift-syntax --swift-changed
Check new Swift test-file wiringpython3 scripts/verify-local.py --only test-wiring
See what a UI test did, one frame per actionscripts/ui-test ClassName or scripts/ui-test <run URL> (guide)
Render view code to PNGs in seconds, light and dark, without building the appscripts/ui-lab/ui-lab.py <harness> [--watch] (guide)
Dogfood the app from CI: drive it with a JSON tour and get screenshots and accessibility treesscripts/run-e2e.sh --scenario dogfood/scenarios/<tour>.json --ref <sha> --frames (guide)
Read the screenshots and GIF CI posted of an app PR's build before merging itthe PR's dogfood comment (guide)
Decide whether a red web test is the PR's fault or a flakepython3 scripts/ci/web_test_verdict.py --pr <N> (guide; --coverage runs the PR's code)

Add a base ref after --swift-changed to include committed changes. Use --list to find other checks and --help for options. Parsing checks syntax; it doesn't typecheck or run tests.

Read the command guide for piped paths or JSON receipts. Use the validation guide to choose package, native, web or runtime checks. Docs and portable tooling use their scoped checks.

Reproduce and repair

Keep a focused command that fails on the reported symptom, then rerun it after the repair. Setup failures and zero executed tests don't demonstrate the bug. Exercise one behavior at a time so a failure identifies what needs fixing.

Keep two commits: first the failing behavioral regression, then the fix. Run the same focused command on both and record the commit SHAs, the expected failure and the passing result. A setup failure or zero executed tests is not regression proof. When the proof is available locally, push both commits together after the fix passes; a separate hosted CI run on the deliberately broken intermediate commit is unnecessary. If the failure only reproduces in CI, use that lane and keep its receipts. Required CI and review still apply to the final pushed head.

Test wiring

New cmuxTests/*.swift files need both PBXFileReference and Sources build-phase membership in cmux.xcodeproj/project.pbxproj. Add through Xcode or follow a wired sibling, then run the wiring check above: an unwired file can otherwise produce a misleading zero-test pass.

After creating, renaming, or deleting a direct cmuxTests/*.swift file, run ./scripts/sync-test-wiring. It deterministically reconciles the PBXFileReference, PBXBuildFile, cmuxTests group child, and cmuxTests Sources membership; --check performs the same validation without writing. Foreign target membership is rejected with an explicit diagnostic. New Sources/**/*.swift app files are wired with ./scripts/wire-app-sources.py (--check lists unwired ones); UI tests with --target cmuxUITests --dir cmuxUITests; run it after any merge that took main's project.pbxproj, which drops a branch's app-source entries. The workflow-guard-tests CI job still runs ./scripts/lint-pbxproj-test-wiring.sh as a defensive Sources-phase guard.

Test quality

  • Exercise observable behavior through unit, integration, CLI or end-to-end paths.
  • Do not assert source snippets, signatures, AST shape or metadata keys solely to mirror implementation. For metadata behavior, inspect the produced artifact or execute the code that consumes it.
  • Add a small runtime harness when needed; skip a fake regression test if there is no meaningful behavioral oracle and explain the limit. See regression and quality for the judgment call.

Swift tests

Swift unit/integration targets use Swift Testing (import Testing, @Test, @Suite, #expect, #require). Portable Python/shell guards retain their existing frameworks. UI tests remain XCTest/XCUITest; do not migrate XCUIApplication tests.

New Swift package test targets start on Swift Testing. Prefer parameterized tests for repeated cases and tags for selection. Use .serialized for suites that require ordering, not locks or sleeps. Migrate an existing XCTest file only when an edit already crosses it; see the migration mapping.

Native test evidence

An app build does not compile test targets. Package/refactor and public API changes need the relevant test target compiled, then the selected tests actually executed. Follow build-for-testing and execution guidance; report skipped/unsupported checks explicitly.

For remote tmux sizing changes, use the E2E recipe.

PR CI labels

Normal PR CI already runs the suites a diff edits or touches. full-ci and unit-ci are not review or merge requirements; see PR CI coverage before adding either.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

cmux

免费

Organize cmux windows, workspaces, and split panes so an agent can target the right terminal reliably. Create terminals with startup commands, move or reorder panels, change focus, and flash a panel to identify it.

中文简介正在准备中。当前显示英语简介。

  • Arrange terminals for several tasks
  • Start a development command in a new split
  • Move or reorder panels
manaflow-ai/cmux2.8万2026年10月19日 更新

Guide substantial Swift changes in cmux with rules for package boundaries, dependency direction, state management, concurrency, and API documentation. Structure code so public package types can be tested without launching the app.

中文简介正在准备中。当前显示英语简介。

  • Extracting a large app feature into Swift Packages
  • Reviewing dependencies between UI, domain models, and services
  • Restructuring state management and Swift 6 concurrency
manaflow-ai/cmux2.8万2026年10月19日 更新

Guide cmux backend changes with consistent rules for Effect, a TypeScript library for structured error handling. Covers Cloud VM state, database migrations, provider integrations, and authentication and payment checks so changes follow the intended architecture.

中文简介正在准备中。当前显示英语简介。

  • Implementing API error handling
  • Updating Cloud VM lifecycle logic
  • Preparing database migrations
manaflow-ai/cmux2.8万2026年10月19日 更新

Maintain cmux billing code with guidance on Stripe checkout, pricing, subscriptions, and access rights. It maps the relevant services and provides workflows for testing purchases, handling payment events, and rolling out billing changes.

中文简介正在准备中。当前显示英语简介。

  • Debugging checkout and subscription records
  • Updating prices and plan switching
  • Checking paid access and Cloud VM limits
manaflow-ai/cmux2.8万2026年10月19日 更新

Automate browsing in cmux panels without taking focus away from current work. Target a specific panel to open pages, fill forms, click controls, wait for page changes, extract content, and inspect download history.

中文简介正在准备中。当前显示英语简介。

  • Open and inspect sites without changing focus
  • Fill forms and check the result
  • Extract page text or HTML
manaflow-ai/cmux2.8万2026年10月19日 更新

Capture cmux windows as screenshots or video clips from the CLI. Create visual evidence for pull requests and bug reports, with region selection and captions to explain drags, animations, or layout changes.

中文简介正在准备中。当前显示英语简介。

  • Attaching screenshots of visual changes to a pull request
  • Recording drags and animations for a bug report
  • Capturing a specific window region with explanatory captions
manaflow-ai/cmux2.8万2026年10月19日 更新

查看 manaflow-ai 的全部技能

报告此技能的问题