BDD
SkillFiles & storageTakes the interface feature files and dsl.md already produced after /dsl-refine, and advances BDD/TDD implementation within a single user-specified interface feature file or its explicitly designated sections, using the red, green, and refactor entry points. It does not generate feature files; if sp
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the BDD skill
What this skill tells your AI
The instructions your AI receives, as published by waterball-software-academy/aixbdd in .agents/skills/bdd/SKILL.md and read by ahel’s review.
把 /dsl-refine 已交付的介面 feature files 與 dsl.md,轉成可執行的 step definitions、測試實作與產品碼變更:
feature file與dsl.md是本 skill 的上游單一溯源。/bdd只在使用者指定的單一介面feature file或其明確區塊內推進工作。/bdd有red、green、refactor三個入口;每次只進入其中一個入口。- 同一次 invocation 可以在指定範疇內 sequentially 推進多個 slices,但同一時刻只處理一個 slice。
- 若
/bdd是由/implement的單一 task 委派,必須服從該 task 的單一slice、單一requested step與當前 scope,不能順手吞掉後續 task。 - 若發現
feature file或dsl.md有高影響缺口,必須停止並回交/dsl-refine或使用者指定的上游流程。
SOP
Phase 1 -- 對齊上游交付、測試入口與本輪範疇
- READ 讀取使用者需求、指定的介面
feature file或其明確區塊、同模組dsl.md、該 feature 實際使用的介面根共用dsl.mdrows、相關測試程式與產品碼,確認本輪入口是red、green或refactor,以及使用者圈定的範疇;若由/implement委派,額外確認當前 task 只授權單一slice與單一requested step。 - READ 若需要確認模組化 truth 的承接方式或專案既有 symlink 策略,讀取
rules/模組化Truth按需承接與Symlink判準.md。 - READ 若需要確認本 skill 可承接的上游交付物、何時必須停止,或何種缺口應回交上游,讀取
rules/上游交付承接與回交判準.md。 - THINK 若本輪範疇、已載入 DSL、介面邊界或上游交付物仍有高影響缺口,先收斂最小必要澄清點。
- DELEGATE 若仍有會改變 slice 邊界、驗收結果或 DSL 承接方式的高影響缺口,呼叫
/clarify並停止受影響範圍;若缺口來自feature file或任一層 DSL 本身,改為回交/dsl-refine或使用者指定的上游流程,不自行補寫規格。 - READ 若需要確認 focused rerun、Given 建態入口、既有 helper / fixture / abstraction 是否可沿用,讀取
rules/專案測試入口與既有抽象盤點判準.md。 - THINK 依本次已載入資訊與規則,收斂本輪可推進的範疇、最窄測試入口與候選 slices。
Phase 2 -- 啟動指定入口與選定推進順序
- THINK 若需要判斷指定範疇內應先推進哪個 slice、何時可繼續下一個 slice、Scenario Outline 應如何維持可驗證粒度,或何時算完成當前 slice,先讀取
rules/範疇內slice選取與推進順序判準.md,再依使用者指定入口與本輪範疇選出下一個可推進的 slice。 - READ 若本輪入口是
red,讀取rules/red-失敗訊號建立判準.md。 - READ 若本輪入口是
green,讀取rules/green-最小補碼轉綠判準.md。 - READ 若本輪入口是
refactor,讀取rules/refactor-綠燈保護重構判準.md。 - THINK 依已載入規則,收斂本輪在該入口下要逐一推進的 slice 順序、停止條件與預計觸及的測試或實作落點。
Phase 3 -- 在指定範疇內推進 slices
- WRITE 依指定入口先處理當前 slice:
red先建立有效失敗訊號,green只補目前 failure 所需的最小程式,refactor只在綠燈保護下整理既有結構。 - DELEGATE 執行對應的 focused tests 或最小代表性測試集合,觀察失敗或通過訊號並持續修正當前 slice,直到達成該入口的完成條件。
- THINK 若當前 slice 完成後,本輪範疇內仍有下一個可在相同入口繼續推進的 slice,且未觸發 stop 條件,回到本 phase 的 step 1;若需要改動上游規格、跨出指定範疇或失去 focused 回饋,停止本 phase 並整理阻塞原因。
Phase 4 -- 回報結果與下一步
- WRITE 向使用者回報本輪已完成或阻塞的 slices、觸及的測試或產品碼落點、測試結果、任何需要回交上游的缺口,以及建議下一次應從
red、green或refactor哪個入口繼續。
Signals
- GitHub stars
- 81
- Forks
- 18
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
bdd-waterball-software-academy- Source
- github.com/waterball-software-academy/aixbdd