async-learning-teacher
Transform saved links, papers, articles, posts, videos, and reference collections into approachable AI teaching artifacts for…
Inspect an unfamiliar repository, turn a focused Markdown behavior scenario into a deterministic test in the repository's native test stack, run it, and preserve traceability between intent and code. Use when asked to add scenario tests, compile acceptance criteria or
Claude Code
$ npx -y skills add tamdogood/builder-essential-skills --skill build-scenario-tests --agent claude-code
Codex
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a codex -y
Cursor
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a cursor -y
Gemini CLI
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a gemini-cli -y
GitHub Copilot
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a github-copilot -y
OpenCode
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a opencode -y
Windsurf
$ npx skills add tamdogood/builder-essential-skills --skill build-scenario-tests -a windsurf -y
name: build-scenario-tests description: Inspect an unfamiliar repository, turn a focused Markdown behavior scenario into a deterministic test in the repository's native test stack, run it, and preserve traceability between intent and code. Use when asked to add scenario tests, compile acceptance criteria or Given/When/Then Markdown into executable tests, reproduce a user-visible regression, or convert a narrow workflow specification into stable web, API, CLI, desktop, or mobile interaction coverage. Do not use for broad exploratory journeys or agent-judged smoke tests.
Compile one small behavior contract into deterministic, repository-native test code. Understand the host project before choosing a harness, command, fixture, selector, or assertion.
when no suitable harness exists and the user accepts the tradeoff.
external caller can observe.
specification directory. Record the mapping in both artifacts.
Read the nearest `AGENTS.md` or equivalent instructions, product README, contribution guide, manifests, test configuration, and the smallest relevant product documentation. Use repository search to find the implementation entry point, neighboring tests, fixtures, stable selectors, and validation commands. Trace the relevant action from its public entry point through the state boundary to the observable result. Do not read the entire tree without a reason.
Before editing, be able to state:
product surface: behavior source: relevant architecture and data flow: runtime or start command: existing test runner: nearest tests to imitate: fixture and state-isolation strategy: narrow validation command: full validation command: known trust or destructive boundaries:
If a material field is unknown, search again. If the repository does not answer it, expose the gap and ask only for the missing product decision. Do not invent commands, selectors, credentials, or expected behavior.
Read [references/scenario-format.md](references/scenario-format.md). If the user provided prose, rewrite it into that contract without changing its intent.
Reject or split a scenario when it:
authorization;
Route a broad or agent-judged journey to a smoke-test workflow instead.
Create a compact mapping before writing code:
| Scenario element | Repository implementation | | --- | --- | | Preconditions | fixture, factory, seed, fake, or setup API | | User action | public UI, CLI, HTTP, SDK, or native interaction | | Oracle | visible state, output, response, durable state, or emitted event | | Cleanup | transaction rollback, fixture teardown, or isolated temp state |
Choose the narrowest existing harness that reaches the behavior:
Do not force a browser test onto behavior that a stable public API test can prove more directly.
Write the test in surrounding style. Preserve this traceability:
transactions;
Do not copy the bundled demonstration code blindly. It contains fictional fixtures to show the mapping, not reusable project infrastructure.
Run the new test alone. Confirm it fails for the intended reason without the behavior or regression fix when that check is safe and practical. Then run the nearest relevant suite and the repository's required lint, type, build, and test commands.
Inspect failures semantically. Fix the test only when the test is wrong. Do not change product behavior unless the user asked for the implementation or fix.
Check for:
Report:
1. what repository evidence informed the test design; 2. the scenario path and compiled test path; 3. the behavior and boundaries covered; 4. commands run and results; 5. anything intentionally left to integration or smoke coverage.
with an illustrative [Playwright compilation](examples/web-workspace-invite.spec.ts).
Transform saved links, papers, articles, posts, videos, and reference collections into approachable AI teaching artifacts for…
Apply a disciplined engineering workflow to any code change. Use whenever implementing a feature, fixing a bug, or refactoring —…
Create truthful, human-centered marketing campaigns for an app or product, including positioning, channel copy, original artwork,…
Create or update a complete repository skill from a user's idea, including the workflow instructions, references, scripts or…
Provider-neutral deep-research orchestration for brainstorming, technology choices, comparisons, and state-of-the-art surveys.…
Use when the user asks to run or continue an autonomous build: turn a goal into an approved plan, dispatch implementation and…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.