Skip to content
Cypress Author

Cypress Author Skill

Cypress' official skill for writing, updating and repairing E2E and component tests — and it triggers on "write tests" even when nobody says Cypress.

GitHub Docs

Install

Install with the skills CLI

One command for Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf and dozens of other agents. Needs Node.js; the skill is fetched straight from cypress-io/ai-toolkit.

$ npx skills add cypress-io/ai-toolkit --skill cypress-author

Run it in a terminal. The CLI finds the agents installed on your machine, asks which ones to add the skill to, and whether to install it into the folder you ran it from or for all your projects.

Other ways to install

  1. Open the skill on GitHub and download the folder that holds its SKILL.md.
  2. Put it at ~/.claude/skills/cypress-author/, where Claude Code picks it up in every project.

No scripts or references next to it? Saving the SKILL.md alone as ~/.claude/skills/cypress-author/SKILL.md works too.

Using another agent? Its personal skills folder
Codex
~/.agents/skills/
Cursor
~/.cursor/skills/
GitHub Copilot
~/.copilot/skills/
Gemini CLI
~/.gemini/skills/
Windsurf
~/.codeium/windsurf/skills/
OpenCode
~/.config/opencode/skills/

About

  • Writes and updates both end-to-end and component tests
  • Triggers on generic phrasings like "write tests" without needing the word Cypress
  • Recognises cy.* commands as a signal to use the project's real framework
  • Repairs failing and flaky specs rather than only authoring new ones
  • Scoped to Read and Edit tools, so it touches test code and nothing else
  • Defers to cypress-explain when the request is review-only

cypress-author is part of cypress-io/ai-toolkit, the official skill set from the Cypress team. It handles the write side of testing: creating new specs, adding tests to an existing suite, updating tests after a refactor, and repairing tests that are failing or flaky — for both end-to-end and component testing.

The detail that makes it useful in practice is its trigger design. Most testing skills only activate when the user names the framework, which means an agent asked to "add tests for this file" in a Cypress project will often invent Jest or Playwright instead. This skill deliberately fires on the generic phrasings — "create tests", "write tests", "test this component", "fix this flaky spec" — and on the sight of cy.* commands, so the project's actual framework wins over whatever the model reaches for by default.

It is also scoped rather than open-ended: the skill declares Read and Edit as its allowed tools, so it changes test code and nothing else. A sibling skill, cypress-explain, covers the read-only case where someone wants a test explained or reviewed without any edits, and the toolkit additionally ships cypress-docs for documentation lookup and cypress-skill for general test generation.

Who it is for. Teams already standardised on Cypress who want agent-written tests that match their existing conventions — command usage, selector strategy, retry-ability and assertion style — instead of a generically correct spec that a reviewer then has to rewrite.

Try it

Once installed, ask your agent something like:

"This checkout spec fails about one run in five — find the race and make it deterministic."

SKILL.md

The instructions your agent loads, as published by Cypress.io.

SKILL.md
name
cypress-author
description
Creates, updates, and fixes Cypress tests (E2E/end-to-end and component tests). Use when the user asks to create tests, add tests, write tests, update tests, test this file/component, new spec, or fix a failing or flaky test. Apply even when the user does not say 'Cypress' (e.g. 'create tests for this file'). Prefer cypress-explain when the user only wants to explain or review tests without changing code.
model
inherit
background
false
allowed-tools
Read, Edit
metadata
version: 1.0.1

Cypress Author

Use this skill when: The user wants to create, add, or write tests (including component tests or tests for a file); fix or update tests; or change test code. Use this skill even if they only say "tests" and do not mention Cypress, or if they mention cy.* (the word "cy", a period, and a suffix indicating a Cypress command).

Do NOT use this skill when: The user states they do not want to use Cypress; when the user mentions an alternative testing tool without referencing migrating to Cypress; when the user only wants to run or execute tests without authoring changes; or when the user only wants an explanation or review of a test with no edits.

Task

You are an expert QA automation engineer with vast experience in Cypress tests. Your task is to collect information from the user to determine the type, scope, and goals of necessary testing tasks so that you can automatically create or update Cypress tests and concepts.

Mandatory flow (do not skip)

You MUST complete the following steps in order. Do not skip structured identification: follow [task.md](./subskills/task.md) before diving into implementation-only reading; you MUST run the full flow below.

  1. Identify — Read and follow [./subskills/task.md](./subskills/task.md); determine the necessary information (task, spec, test, type, instructions) as specified there.
  2. Execute — Read and follow [./subskills/author.md](./subskills/author.md) using the determined task data.
  3. Sign-off — End your response with a clear sign-off (e.g. "Thank you for using Cypress!"). Do not omit this for brevity.

Do not proceed when required data is missing; prompt the user for the missing information first, then re-run the skill if needed.

Conclusion

You MUST end your response with a clear sign-off (e.g. "Thank you for using Cypress!") so it stands out. In a long conversation with multiple turns, one sign-off at the end of the flow is sufficient.

Install
Featured

Microsoft's official Playwright skill — drives a real browser from the command line using accessibility snapshots and element refs, and plans, generates and heals Playwright tests.

Browse all skills →