---
title: "Skills"
sidebarTitle: "Skills"
description: "Composable instruction files that teach any AI client how to use TestDriver"
icon: "puzzle-piece"
---

## Overview

**Skills** are small, focused instruction files — one per TestDriver capability — that teach your AI client exactly how to use each part of the TestDriver SDK and MCP tools. They follow the [Anthropic `SKILL.md` format](https://code.claude.com/docs/en/skills): a folder per skill, each containing a `SKILL.md` with YAML frontmatter and a markdown body.

There are **106 skills**, generated directly from the TestDriver documentation, covering every action and concept: `find`, `click`, `type`, `assert`, `check`, `scroll`, `press-keys`, `provision`, caching, secrets, CI/CD, and more.

```text
.claude/skills/
├── testdriver-click/
│   └── SKILL.md
├── testdriver-find/
│   └── SKILL.md
├── testdriver-assert/
│   └── SKILL.md
└── … (103 more)
```

Each `SKILL.md` looks like:

```markdown
---
name: testdriver:click
description: Click at specific coordinates or on elements
---

## Element Click

When called on an Element object, clicks on the located element.
…
```

## Why skills

The [agent](/v7/ai/agent) is general; skills are specific. When the agent needs to perform an action — say, locate an element — it pulls in the `testdriver:find` skill, which contains the exact syntax, options, return shape, and gotchas for that one method. This keeps the agent accurate without bloating its base prompt, and lets clients load only the skills relevant to the current step.

## Installation

Skills are installed by `testdriverai init` along with the [agent](/v7/ai/agent) and [MCP server](/v7/ai/mcp):

```bash
npx testdriverai init
```

They're written to the skills directory each client expects:

| Client | Skills location |
| --- | --- |
| Claude Code | `.claude/skills/<name>/SKILL.md` |
| Zed | `.agents/skills/<name>/SKILL.md` |
| Codex | referenced from `AGENTS.md` |
| VS Code · Cursor · Windsurf | folded into the agent rules/instructions |

Clients without a native skills concept (Cursor, VS Code, Windsurf) still get the agent definition, which references the same guidance inline.

## Authoring & regenerating

Skills are **generated, not hand-edited** — each is built from a `.mdx` page in the docs. Do not edit `SKILL.md` files directly (they carry a `DO NOT EDIT` marker). To change a skill, edit the corresponding documentation page and regenerate:

```bash
node docs/_scripts/generate-skills.js
```

## Related

- [Agent](/v7/ai/agent) — composes skills into working tests
- [MCP Server](/v7/ai/mcp) — the tools the skills describe how to use
