Typescript Testing
ComposioHQ/composio
Select and run TypeScript SDK verification for packages, examples, type checks, linting, builds, Vitest suites, Effect v4 CLI tests, and runtime E2E tests.
Agent skill
by intent-driven-dev in intent-driven-dev/intent-driven-template
A skill your agent uses when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an…
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoring --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .claude/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .claude/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoringType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoring --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .agents/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .agents/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoring --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .cursor/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .cursor/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/intent-driven-dev/intent-driven-template.git --path .agents/skills/acceptance-test-authoring--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoring --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .gemini/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .gemini/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoringInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .github/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .github/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install intent-driven-dev/intent-driven-template acceptance-test-authoring --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/intent-driven-dev/intent-driven-template.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/acceptance-test-authoring .opencode/skills/acceptance-test-authoring && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "acceptance-test-authoring" agent skill from https://github.com/intent-driven-dev/intent-driven-template/tree/main/.agents/skills/acceptance-test-authoring into .opencode/skills/acceptance-test-authoring/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "acceptance-test-authoring", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
acceptance-test-authoringA skill your agent uses when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an…
Acceptance Test Authoring is an agent skill from intent-driven-dev/intent-driven-template. Use when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an acceptance stack, or implementing OpenSpec tasks that involve acceptance tests.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 16 other files, including reference files (for example `references/COMPOSITION.md`, `references/EXTRACTION.md` and `references/gherkin-lintrc.json`).
It sits in Testing & QA, covering End-to-end testing and Linting and formatting. It works with JavaScript and Python. The repository describes itself as: OpenSpec and OpenCode template for intent-driven development with specs, ADRs, C4 diagrams, Gherkin, TDD, Multi-Model Adversarial Spec Authoring, Glossary for Domain Terms, and… The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 73f54d5. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python and JavaScript), which the agent can run.
Shell commands in SKILL.md call:
nodenpxpythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Acceptance Test Authoring loads about 2k tokens when it runs, and up to ~15k if it reads all its reference files. Until then it costs about 71 tokens; SKILL.md has 912 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from intent-driven-dev/intent-driven-template at commit 73f54d5, republished under its MIT licence (© intent-driven-dev). 912 words, ~1,980 tokens.
.claude/skills/acceptance-test-authoring/SKILL.md (or your agent's skills folder). This skill also uses 13 other files; get the full folder from GitHub.When spec-as-source is active, the acceptance suite executes the Gherkin specs that live under openspec/ against the running application. Specs are Markdown files named spec.md: Markdown headings carry the capability, requirement, and scenario structure, while column-0 gherkin fences contain only Given/When/Then steps. The runner extracts them into real .feature files on every run, synthesizing Feature:/Rule:/Scenario: from the headings.
This format is opt-in. Loading this skill without spec-as-source does not override the configured OpenSpec schema templates.
Everything in this file is stack-agnostic. Tool-specific filenames, dependencies, commands, and examples live in the stack packs.
The project's acceptance stack is declared as stack: in openspec/config.yaml:
schema: intent-driven
stack: javascript # javascript | pythonResolve it in this order:
stack: in openspec/config.yaml.acceptance-tests/ already exists, infer it from contents: cucumber.cjs means javascript, behave.ini means python; offer to record it.When spec-as-source is active, adding stack: is a specs-zone edit under openspec/; follow that skill's mandatory BDD zone rules before editing it.
| Stack | Pack | Runner |
|---|---|---|
javascript | references/javascript/SETUP.md | cucumber-js |
python | references/python/SETUP.md | behave 1.2.7+ |
Each pack has a Files to copy table naming every destination filename and why it is load-bearing. Copy those files verbatim; they are the canonical runner.
Three files sit at the references/ root because they are shared by both stacks:
| File | Role |
|---|---|
| EXTRACTION.md | Normative contract for spec.md to .feature extraction |
| COMPOSITION.md | Normative contract for which scenarios run |
| gherkin-lintrc.json | Shared lint configuration copied to acceptance-tests/.gherkin-lintrc |
The Markdown contracts are the definitions; the JavaScript and Python files are bindings. Change the relevant contract first, then both implementations.
When spec-as-source is active, draft specs from that skill's references/spec.md, which overrides the default schema template. A spec is openspec/specs/<capability>/spec.md (source of truth) or openspec/changes/<id>/specs/<capability>/spec.md (delta). Structure comes from Markdown headings; fences hold steps only.
# <capability> is the single H1 title and becomes Feature:.## ADDED|MODIFIED|REMOVED|RENAMED Requirements is a delta section. The extractor emits one # @openspec: <OP> marker for the section.### Requirement: <name> becomes Rule:. Its SHALL/MUST description remains plain prose.#### Scenario: <name> or #### Scenario Outline: <name> becomes the corresponding Gherkin scenario. Each scenario must have a following gherkin fence before the next heading.```gherkin at column 0 and close with at least as many backticks at column 0.Examples: tables, and docstrings. Gherkin structure keywords inside a fence are a hard error.Extraction writes each spec.md to acceptance-tests/.extracted/<same-relative-path>/spec.feature, preserving exactly one output line per input line. .extracted/ is gitignored, wiped and rebuilt on every run, and never edited by hand.
references/EXTRACTION.md is the normative definition of the complete mapping, fence mechanics, edge cases, and hard errors. Read it before modifying or porting an extractor.
acceptance-tests/ is an independent test project at the repo root. Its hooks boot the application before the suite and shut it down after, so the suite must run with a single command.MODIFIED or REMOVED by active deltas must not reach the runner and must not be reported as skipped.openspec/changes/archive/ must never execute.openspec/specs/ as-is.acceptance-tests/reports/.openspec/ tree changes.references/COMPOSITION.md is the normative definition. The important coupling with extraction is that a delta operation marker comes from a section heading and applies to every Rule: until the next marker, not only the first rule.
The JavaScript binding excludes superseded scenarios through cucumber-js line-targeted discovery. The Python binding blanks superseded rule blocks in generated .extracted/ files because behave line selection would report them as skipped. Neither binding edits source specs.
references/EXTRACTION.md and references/COMPOSITION.md are the contracts between stacks. A change to one implementation must be mirrored in the other and reflected in the relevant contract first. The strongest check is a cross-stack dry run on the same openspec/ tree: the same scenario count and names.
Spec linting is shared across stacks: gherkin-lint over the extracted output with the pinned .gherkin-lintrc.
.extracted as a directory argument..gherkin-lintrc.spec.md files.Before an acceptance-tests/ project exists, run the extractor from this skill:
node .agents/skills/acceptance-test-authoring/references/javascript/extract-gherkin.cjs openspec acceptance-tests/.extracted \
&& npx gherkin-lint --config .agents/skills/acceptance-test-authoring/references/gherkin-lintrc.json acceptance-tests/.extractedThe Python extractor is a drop-in substitute:
python .agents/skills/acceptance-test-authoring/references/python/extract_gherkin.py openspec acceptance-tests/.extractedStep definitions must read as intent; all UI knowledge lives in page objects.
acceptance-tests/, one per screen or flow.open(), submit_signup(...), error_message(), and confirmation_link().Implement one pending step definition at a time: run the suite so the step fails for the right reason, implement until it passes, then commit. The effective suite's red scenarios at propose time are the change's work list. Finish only when every scenario passes with zero pending or undefined steps and the HTML report is generated.
© intent-driven-dev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 13 other files (references) in .agents/skills/acceptance-test-authoring of intent-driven-dev/intent-driven-template.
Open the folder on GitHubat commit 73f54d5
Acceptance Test Authoring next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Acceptance Test Authoring this skillintent-driven-dev/intent-driven-template | 159 | — | ~2k | Automated safety check: Pass | MIT | |
| Typescript TestingComposioHQ/composio | 30k | — | ~222 | Automated safety check: Pass | MIT | |
| Error Explanation GeneratorArabelaTso/Skills-4-SE | 253 | — | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| Playwrightsecondsky/claude-skills | 227 | — | ~3.7k | Automated safety check: Notes | MIT | |
| Cb Code QualityBlkLeg/CircuitBreaker | 201 | — | ~1.9k | Automated safety check: Pass | MIT | |
| Git HooksProrise-cool/Claude-Code-Multi-Agent | 305 | — | ~3.6k | Automated safety check: Notes | None |
ComposioHQ/composio
Select and run TypeScript SDK verification for packages, examples, type checks, linting, builds, Vitest suites, Effect v4 CLI tests, and runtime E2E tests.
ArabelaTso/Skills-4-SE
Explains test failures and provides actionable debugging guidance.
secondsky/claude-skills
Browser automation and E2E testing with Playwright. An agent skill from secondsky/claude-skills.
BlkLeg/CircuitBreaker
Circuit Breaker code conventions and the quality gates that actually block a push — ruff, mypy, eslint, the pytest coverage ratchet, and the make verify tiers.
Prorise-cool/Claude-Code-Multi-Agent
Central authority on git hook implementations, modern best practices, and tooling for .NET/C, JavaScript/TypeScript, Python, and polyglot repositories.
rstudio/rstudio
Converts RStudio Python Selenium electron tests into TypeScript Playwright tests, checking each against a live RStudio before counting it as migrated.
intent-driven-dev/intent-driven-template
A skill your agent uses when rules or instructions mention "adversarial-authoring", "adversarial authoring", "must use adversarial-authoring skill", "model council", "cross-model review", or…
intent-driven-dev/intent-driven-template
A skill your agent uses when documenting, drafting, reviewing, or updating architectural decisions, ADRs, decision logs, tradeoffs, rationale, consequences, alternatives, or architecture decision…
intent-driven-dev/intent-driven-template
A skill your agent uses when drafting, reviewing, or improving Gherkin, Cucumber scenarios, BDD acceptance criteria, feature examples, Scenario Outlines, Backgrounds, Rules, Doc Strings, Data…
intent-driven-dev/intent-driven-template
A skill your agent uses when authoring or reviewing specs, requirements, design docs, ADRs, tasks, glossary entries, domain terms, technical terms, or wording consistency across artifacts
intent-driven-dev/intent-driven-template
A skill your agent uses when multiple active OpenSpec changes should be applied concurrently in isolated worktrees with delegated verification and no merge.
intent-driven-dev/intent-driven-template
A skill your agent uses when a user or project explicitly adopts OpenSpec spec-as-source, fenced Gherkin specifications as executable acceptance tests, or acceptance-test-first OpenSpec tasks.
Works with
Categories
A skill your agent uses when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an…. Acceptance Test Authoring is an agent skill from intent-driven-dev/intent-driven-template. Use when creating or modifying acceptance tests, configuring cucumber-js or behave runners, writing or refactoring step definitions, linting executable Gherkin specs, choosing an acceptance stack, or implementing OpenSpec tasks that involve acceptance tests.
Acceptance Test Authoring fits situations like: modifying acceptance tests; configuring cucumber-js; refactoring step definitions; linting executable Gherkin specs.
Run `npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a claude-code`. Or copy the skill folder (.agents/skills/acceptance-test-authoring in intent-driven-dev/intent-driven-template) into .claude/skills/acceptance-test-authoring in your project. Claude Code loads it when a task matches its description.
Run `npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a codex`. Or copy the skill folder (.agents/skills/acceptance-test-authoring in intent-driven-dev/intent-driven-template) into .agents/skills/acceptance-test-authoring in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add intent-driven-dev/intent-driven-template --skill acceptance-test-authoring -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/acceptance-test-authoring, .gemini/skills/acceptance-test-authoring, .github/skills/acceptance-test-authoring and .opencode/skills/acceptance-test-authoring in your project.
Going by SKILL.md and its folder, Acceptance Test Authoring needs Python and JavaScript for the scripts in its folder and the command-line tools its instructions call (node, npx and python). Our summary lists: Python 3; Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Acceptance Test Authoring is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 7.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 13k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Acceptance Test Authoring: Typescript Testing (ComposioHQ/composio, 30k stars), Error Explanation Generator (ArabelaTso/Skills-4-SE, 253 stars), Playwright (secondsky/claude-skills, 227 stars) and Cb Code Quality (BlkLeg/CircuitBreaker, 201 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
intent-driven-dev (a GitHub organization) maintains it in intent-driven-dev/intent-driven-template, which has 159 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 4, 2026.
Source: intent-driven-dev/intent-driven-template on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.