mcpField
S
skill-tdd

skill-tdd

github.com/nyldnテスト・品質4.3k57 回インストール今日更新
リポジトリ

skill-tdd について

Codex CLI 向けのTDDスキルで、レッド・グリーン・リファクタリングのサイクルをコード変更に適用します。本番動作を変える前に、想定どおり失敗するテストを確認し、完了時に必要な証拠も定めています。

主な機能

  1. 01実装前に想定どおり失敗するテストを要求
  2. 02対象テストと影響を受けるスイートを実行
  3. 03失敗が続く場合に方針を切り替え
  4. 04テスト統合の根拠を記録

活用シーン

  1. 01対象テストで動作変更を検証
  2. 02影響を受けるスイートでコード変更を確認
  3. 03テスト統合案のレビュー

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nyldn/claude-octopus --skill skill-tdd

インストール後、Claude Code で/skill-tddを入力して読み込まれたか確認します。

同梱ファイルagents/openai.yaml

詳細

ホスト:Codex CLI — このスキルはClaude Code向けに設計され、Codex用に適応されています。 相互参照コマンドでは、/octo:* スラッシュコマンドではなく、Codexにインストールされたスキル名を使用します。 現在のCodexシェルとサブエージェントツールを使用してください。現在のセッションで利用可能になっていないプロバイダー、モデル、ホストのサブエージェントが利用可能だと断言しないでください。 ホストツールに相当するものについては、skills/blocks/codex-host-adapter.md を参照してください。

テスト駆動開発

レビューを実施するかどうか判断するため、インストール済みプラグインの skills/blocks/engineering-method-selection.md を読んでください。 自然言語での依頼と --peer-review は、同じポリシーに従います。 ホスト限定の依頼を尊重してください。リスクがあるというだけでは、有料利用は許可されません。

現在のホストで、レッド、グリーン、リファクタリングのサイクルを実行してください。通常のTDDでは、追加のプロバイダー呼び出しはゼロです。ユーザーが --peer-review を指定した場合、独立したレビューを明示的に依頼した場合、または既存のリスクポリシーで求められる場合に限り、外部レビュアーを1名使用してください。明示的なディベート、評議会、複数モデルのコマンドには、それぞれ独自の実行条件が適用されます。

観測され、想定どおり失敗するテストを先に実行しない限り、本番の動作を変更してはなりません。

ルール

想定した理由で失敗する対象を絞ったテストがない限り、本番の動作を変更しないでください。依頼された変更の範囲外にある既存の実装はそのまま維持します。

  1. 観測可能な動作と、それを証明する最小のパブリック境界を特定します。
  2. 対象を絞ったテストを1つ作成します。パブリック境界で失敗モードを切り分けられない場合に限り、内部の不変条件を直接テストします。
  3. テストを実行し、想定した失敗、コマンド、終了ステータスを記録します。
  4. テストに合格する最小限の変更を実装します。
  5. 対象を絞ったテストを実行し、その後、影響を受けるテストスイートを実行します。
  6. テストが成功し続けている場合に限り、リファクタリングします。

実装前にテストが合格した場合、それはレッドの証拠にはなりません。フィクスチャや構文の問題が原因でエラーになった場合は、動作の欠落を原因として失敗するまでテストを修正してください。

テストの統合

似たアサーションを重複した保証とみなしてはなりません。OS、セキュリティ、キャンセル、統合の境界は個別に維持してください。削除するテストごとに、old_test、behavior、replacement、mutant、red_observed、baseline_ms、candidate_ms、reason を記録してください。残すテストは、意図した呼び出し元の境界で、指定されたミュータントを検出できなければなりません。

ウォームアップを1回行った後、独立した実行を5回測定し、すべてのサンプルと中央値を報告してください。遅延が20%と100 msの両方を超える場合に限り、低速化を検討してください。

完了には、観測されたレッドとグリーンの証拠、影響を受けるテストスイートの結果、テストを削除した場合は統合台帳が必要です。レビュアーがいない場合は、レビュー済みのふりをせず、レビュー未完了として報告してください。

戦略の切り替え

実装を2回試みても同じテストがレッドのままなら、いったん止まり、テスト境界、フィクスチャ、想定される動作を再確認してください。戦略切り替えのフックは、同じパッチに別の工夫を加えるのではなく、根本的に異なる仮説を試すための合図です。

MITライセンスのもと、コミット 3cca18b368ae95cdbdebbff572ccafa662551015 の mattpocock/skills に含まれる DEEPENING を適応しています。THIRD_PARTY_NOTICES.md を参照してください。

コメント