Inside a Skill
A filesystem field guide · Playwright example

A skill is a folder.
Here’s what’s inside.

A skill is a directory the agent can read: metadata describes when to use it, SKILL.md supplies the instructions, and relative links lead to supporting files. Explore the actual Playwright skill below.

01 / DISCOVER

Metadata says when

The host exposes the skill’s name and description so the agent can identify relevant instructions. Read the metadata—extracted here from the top of SKILL.md.

02 / LOAD

SKILL.md says how

When selected or explicitly invoked, the agent reads SKILL.md. Its Markdown body supplies the browser workflow, command examples and links to references.

03 / FOLLOW LINKS

Other files add detail

For a task needing more detail, the agent reads a linked file such as references/running-code.md. The directory is not loaded wholesale into context.

Directory layout

How the files fit together

Inside this marketplace’s plugin, the skill occupies skills/playwright-cli/. The plugin manifest describes the package; SKILL.md is the skill’s entrypoint.

Plugin archive · relevant files
.claude-plugin/
└── plugin.json
skills/
└── playwright-cli/
    ├── SKILL.md     ← metadata + instructions
    └── references/
        ├── running-code.md
        ├── session-management.md
        └── other reference files

One entrypoint, linked detail

The YAML header in SKILL.md contains the discovery metadata. The Markdown below it is the procedure. The separate metadata link on this site is an extract for inspection, not an additional file required by the skill.

Paths are relative to the skill

A link to references/running-code.md points to skills/playwright-cli/references/running-code.md within the plugin. Keeping that directory structure preserves the relationship between the entrypoint and its references.

Installed files become readable context

Claude Code manages the installed plugin and discovers its skills. The agent reads the relevant instructions and references as needed; the installed Playwright CLI executes the browser commands. This website mirrors the files so you can inspect the same structure.

Real files, not mock examples

Explore the Playwright skill

Browse the upstream files included in the published package, alongside their discovery and distribution metadata.

DISCOVERY METADATAOpen raw file ↗

skill-frontmatter.yaml

YAML frontmatter extracted from SKILL.md for inspection. The installed skill retains it in the entrypoint.

name: playwright-cli
description: Automate browser interactions, test web pages and work with Playwright tests.
allowed-tools: Bash(playwright-cli:*) Bash(npx:*) Bash(npm:*)

name: identity · description: discovery · allowed-tools: command permissions

skill-frontmatter.yaml is a site-only extract. In the package, frontmatter and instructions share SKILL.md.
One file, two jobs

SKILL.md anatomy

An excerpt of the upstream entrypoint: YAML frontmatter followed by Markdown instructions.

skills/playwright-cli/SKILL.md
Frontmatter · identity & configuration
---
name: playwright-cli
description: Automate browser interactions, test web pages and work with Playwright tests.
allowed-tools: Bash(playwright-cli:*) Bash(npx:*) Bash(npm:*)
---
Body · instructions & links
# Browser Automation with playwright-cli

## Quick start

```bash
# open new browser
playwright-cli open
```

…

* **Running Playwright code** [references/running-code.md](references/running-code.md)

The header describes the skill

name identifies it. description helps Claude decide when to use it. Other frontmatter fields can configure invocation and permissions. The published upstream skill includes allowed-tools, which can pre-approve matching commands in Claude Code; review it before installing.

The body teaches a procedure

The Markdown body defines the workflow through procedures, command examples and references.

References resolve relative to the skill

references/running-code.md resolves from the skill directory. The package preserves this structure.

Full entrypoint ↗
Packaging layers

Three kinds of “metadata”

A marketplace catalogs distributable plugins; each plugin can bundle skills.

Only the first belongs to the skill itself. The other two describe optional packaging and distribution.

File / regionWhat it answersInspect it
SKILL.md frontmatter
Skill identity & settings
What is this skill? When should it be used? How is it configured?Metadata extract ↗
.claude-plugin/plugin.json
Plugin manifest
What is the containing plugin called? What is its version? Our website exposes a copy under metadata/.Plugin manifest ↗
marketplace.json
Distribution catalog
Which plugins are available here? Where is the ZIP, and which checksum verifies it?Marketplace catalog ↗
Marketplace installation

Install the packaged plugin from this marketplace

Assumes Claude Code and Playwright are installed.

claude plugin marketplace add https://poe-site-8472ee7bd47fe65e17165273c7bc36ee.pages.dev/marketplace.json
claude plugin install playwright-browser@browser-workbench
claude

Invoke the packaged skill:

/playwright-browser:playwright-cli Open https://example.com, inspect the page, and save a screenshot.

Package structure checked; local Claude Code installation not tested.

Follow the relative links

Supporting references

This skill’s supporting material lives in references/; no scripts or assets are bundled.

These documents describe the upstream local environment. Features such as video recording, local profiles and test runners are not all available in Poe’s hosted environment.

Distribution

Install the package

Playwright skill and references, distributed through this marketplace.

Source: Microsoft Playwright CLI skill at commit 74354ec. Skill and reference files are unchanged from that revision. The extracted metadata, website and plugin packaging are added for this guide. Independent educational site; not affiliated with Microsoft or Anthropic. Apache-2.0 license · Package provenance