跳到正文
cccskills
免费在 GitHub 公开

tdd

Use when implementing PlainTab features or bug fixes with test-first development, red-green-refactor, regression scripts, browser checks, or behavior-focused validation before production code changes.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(2)

  • SKILL.md2.6 KB
  • agents/openai.yaml228 B

SKILL.md(原文)

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

PlainTab TDD

Use this skill when changing runtime behavior. Adapted for PlainTab from Matt Pocock's tdd skill.

Philosophy

Tests should describe observable behavior through the public interface, not internal structure. In PlainTab, the public interface might be a runtime module API, a settings interaction, a stored config shape, a wallpaper source lifecycle, or the rendered new-tab page.

PlainTab has no package manager or test framework. Do not add one. Use focused Node scripts, browser automation, and existing validation commands.

Before Code

  1. Read .claude/rules/00-core.md and the relevant module rule.
  2. Identify the behavior to lock down in user-facing language.
  3. Choose the smallest useful feedback loop:
    • Node script in docs/ai-tasks/ for pure JS behavior.
    • Browser/Playwright check for DOM, settings, command palette, or wallpaper rendering.
    • Manual web-mode check only when automation is not practical.
  4. Name the check after behavior, not implementation.

Red-Green Loop

Work one vertical slice at a time:

  1. RED: write one failing check for one behavior.
  2. Verify RED: run it and confirm it fails for the expected reason.
  3. GREEN: write the smallest production change to pass.
  4. Verify GREEN: run the check again.
  5. Repeat for the next behavior.

Do not write a batch of tests and then a batch of implementation. Do not refactor while RED.

PlainTab Test Shape

Good checks:

  • Exercise real modules and real serialized config shapes.
  • Preserve existing localStorage keys unless the task includes a migration.
  • Cover extension/web-mode differences when the behavior depends on browser APIs.
  • Assert visible wallpaper safety when touching image layers: at least one layer should remain visible.
  • Assert language key completeness when adding UI copy.

Avoid:

  • Adding npm, package.json, lint frameworks, test frameworks, or frontend frameworks.
  • Tests that only assert private helper names or DOM implementation details unrelated to behavior.
  • Long startup work in repro code that would never exist in the real first-paint path.

Validation

Use the narrowest meaningful command, then broaden when the change is shared:

Get-ChildItem -Recurse js -Include *.js | ForEach-Object { node --check $_.FullName }

For i18n changes, use the update-i18n skill. For visual or interaction changes, verify in a real browser whenever practical.

评价

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

评论

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

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

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

0 / 1000 字

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

同一仓库的技能

Use when preparing a PlainTab release or bumping the PlainTab version, triggered by phrases like "更新版本", "bump version", "upgrade to vX.Y.Z", "发布新版本". Updates manifest.json, runtime UI/version constants, localized changelogs, store listings, release notes, validation notes, and current project docs.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

Claude adapter for bumping the PlainTab version. Use when the user asks "更新版本", "bump version", "upgrade to vX.Y.Z", "发布新版本", or asks to prepare a PlainTab release.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

Prepare and create PlainTab git commits with scoped Conventional Commit subjects and detailed commit bodies. Use when the user asks to commit, 提交, create a git commit, stage changes, or asks for precise Conventional Commits / Google-style commit messages; especially when the worktree may contain unrelated user changes.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

Claude adapter for preparing and creating PlainTab git commits with scoped, detailed Conventional Commit messages. Use when the user asks to commit, 提交, stage changes, or use precise Conventional Commit / Google-style commit messages.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

diagnose

免费

Claude adapter for diagnosing PlainTab bugs, broken flows, startup issues, storage or wallpaper regressions, and performance regressions.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

diagnose

免费

Use when diagnosing PlainTab bugs, broken UI behavior, failing extension/web-mode flows, storage or wallpaper regressions, startup issues, or performance regressions.

中文简介正在准备中。当前显示原文说明。

kaininx/PlainTab952026年5月27日 更新

查看 kaininx 的全部技能

报告此技能的问题