self-test

A post-coding self-check checklist for reviewing implementation quality and tests. It checks user-visible behavior, data consistency, dependencies, compatibility, code quality, and—when relevant—visual details against a design.

In plain words
What is it for?
Use it after coding to review feature coverage, error handling, database changes, external dependencies, backward compatibility, test quality, and UI details.
Why use it?
It helps catch missing requirements, edge cases, broken data flows, leftover debugging work, and tests that depend too heavily on internal code structure.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/today-hbw/claude-code-dev-workflow/self-test
Any agent
npx skills add Today-Hbw/claude-code-dev-workflow --skill self-test
Clone the repo
git clone --depth 1 https://github.com/Today-Hbw/claude-code-dev-workflow

Made for: Claude Code, Codex.

Per session 26 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,170 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00026 $0.01170
Opus 5 $0.00013 $0.00585
Sonnet 5 $0.00005 $0.00234
Haiku 4.5 $0.00003 $0.00117

Measured 2d ago against content hash 496b043ba38d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

self-test scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/dev-flow/skills/self-test/SKILL.md · 117 lines

What it actually says

自测 · 检查清单

你的任务

编码完成后,按照以下清单逐项检查,确保代码质量。

测试哲学

在检查之前,先确认测试本身的质量:

好测试的特征:

  • 通过公共接口验证行为,不关心内部实现
  • 读起来像规格说明:"用户可以带着有效购物车结算"
  • 内部重构后依然通过(测试的是"做什么",不是"怎么做")

坏测试的特征:

  • mock 内部协作者、测试私有方法
  • 改了内部函数名就挂,但行为没变
  • 描述的是实现细节而非用户可见行为

警告信号:如果你的测试在重构后失败,但行为没变,说明测试在测实现而非行为。

检查清单

1. 功能验证

  • 每个任务的核心功能是否实现(对照计划.md 的验收标准逐条检查)
  • 是否覆盖了 QA 中提到的所有场景
  • 边界条件是否处理(空值、极值、异常输入)
  • 错误提示是否友好(用户能看到有意义的错误信息)

2. 数据一致性

  • 数据库字段是否与 Schema 描述一致
  • 新增/修改/删除操作是否完整
  • 数据流转是否正确(从输入到存储到展示)

3. 依赖检查

  • 外部依赖(接口、表、配置)是否就绪
  • 依赖的字段/列是否存在
  • 同步任务/ETL 是否需要配合

4. 代码质量

  • 是否有遗留的 TODO 或调试代码
  • 命名是否清晰(变量、函数、文件)
  • 注释是否充分(复杂逻辑处)
  • 是否有重复代码可以提取

5. 兼容性

  • 是否与现有功能兼容(不破坏已有逻辑)
  • 接口变更是否有向后兼容处理

6. 测试质量

  • 测试是否通过公共接口验证行为
  • 测试是否能扛住内部重构(重命名内部函数不应让测试挂掉)
  • 是否避免了横向切片(不要先批量写所有测试,再批量写所有实现)
  • 测试命名是否描述了行为而非实现("用户可以结算"而非"调用了 processOrder 函数")

7. 视觉规格核对(对照 PRD 截图/原型)

仅当本次涉及 UI 时执行。基准是 PRD 原图,不因 计划.md 未写而跳过——上游可能漏抽截图规格。

  • 字段列归属:新增字段折进已有列还是独立列,与截图一致
  • 字段/筛选顺序:同一列或区域内排列顺序与截图一致
  • 按钮/入口文案:与截图逐字一致,未自拟或改写
  • 所在容器:按钮/筛选挂在截图指定的页签/工具栏,未擅自新建页签或区域
  • 筛选项位置:与截图中现有筛选的并列关系一致
  • 若实现与截图不符:修正实现,不改截图规格

反模式警示

横向切片(要避免)

❌ 错误方式:
  RED:   test1, test2, test3, test4, test5   ← 批量写测试
  GREEN: impl1, impl2, impl3, impl4, impl5   ← 批量写实现

正确方式(垂直切片):
  test1→impl1  →  test2→impl2  →  test3→impl3  → ...

批量写的测试测的是想象中的行为,而不是实际实现的行为。每个测试应该是对前一轮实现的响应。

输出格式

## 自测结果

### ✅ 通过项
- <通过的检查项>

### ⚠️ 需注意
- <需要关注但不是阻塞的问题>

### ❌ 阻塞项
- <必须修复才能继续的问题>

注意事项

  • 如果有阻塞项,回到步骤 5 修复后再继续
  • 重点检查计划.md 中的验收标准是否全部满足
  • 涉及 UI 时,位置/文案以 PRD 截图为准;计划.md 若与截图冲突或漏写,回原图核对并按图修正
  • 测试质量检查重点看公共接口,不深入内部实现
  • 自测不需要跑性能测试(除非计划.md 中明确要求)
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 117 lines · 26 tokens per session scan A 496b043ba38d

Subscribe to this mod's changes

self-test is a skill published in the GitHub repository Today-Hbw/claude-code-dev-workflow (22 stars, last pushed 21d ago), licensed MIT. It adds 26 tokens to every session and 1,170 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

metrics-instrumentation

Specification for instrumenting an opik-backend workflow with operational OpenTelemetry metrics — per-stage throughput/latency/error counters and native histograms, dimensioned per-customer (workspace). Use when a pipeline (scoring, ingestion, experiments, jobs) needs per-stage visibility. Covers metric emission only…

comet-ml/opik · 93 tokens

happiness-skill

当用户问「怎么才能更幸福/为什么得到了还不满足/怎么减少焦虑」时调用。 核心理念: 幸福是缺憾感清空的默认状态, 是可训练的技能; 欲望是与自己的契约(得到前不快乐), 同时只留一个重大欲望; 活在当下。 不适用于: 临床抑郁等需要专业治疗的场景(本书方法不能替代医疗)。 Triggers: 幸福/不快乐/欲望/焦虑/知足/活在当下/happiness/desire/anxiety.

kangarooking/cangjie-skill · 136 tokens

short-drama-storyboard

把剧本和视觉事实转成有镜头职责、空间连续性和可冻结起点的 剧集/ /分镜.md。 每镜使用二级标题 ## SHOT-...,同镜下用 ### 冻结关键帧提示词 写起始帧正文。.

zenstory-ai/drama-skills · 102 tokens

seedance-prompt

This skill should be used when the user asks to write, improve, translate, compress, or debug a Seedance 2.0 video prompt; mentions T2V, I2V, V2V, R2V, camera direction, prompt quality, or provides reference assets for a production-ready prompt.

Emily2040/seedance-2.0 · 68 tokens

deep-review

Parallel competency-based code review. Launches independent Agent reviewers per competency (security, performance, architecture, database, concurrency, error-handling, frontend, testing), each with a focused checklist and isolated context. Synthesizes findings into unified report with FIX/DEFER/ACCEPT triage. Use…

AnastasiyaW/codex-claude-code-config · 166 tokens

frontend-design

Создание высококачественных, визуально выдающихся фронтенд-интерфейсов. Используй ВСЕГДА когда пользователь просит создать веб-страницу, компонент, лендинг, дашборд, UI-кит, форму, карточки, навигацию, анимации, или любой другой веб-интерфейс. Скилл покрывает: HTML/CSS/JS компоненты, React/Vue/Svelte, Tailwind CSS…

AnastasiyaW/codex-claude-code-config · 264 tokens