Publishing Guide

How to Publish a Skill

Share your QA expertise with 27+ AI agents. Create a SKILL.md, validate it, and publish to the directory.

1

Create a SKILL.md file

Every QA skill is a single SKILL.md file with YAML frontmatter and markdown instructions. Create a GitHub repository with your skill.

---
name: My Playwright Skill
description: Custom Playwright patterns for my team
version: 1.0.0
author: your-username
license: MIT
tags: [playwright, e2e, testing]
testingTypes: [e2e, visual]
frameworks: [playwright]
languages: [typescript, javascript]
domains: [web]
agents: [claude-code, cursor, github-copilot]
---

# My Playwright Skill

## Instructions

When writing Playwright tests, follow these patterns:

- Always use Page Object Model
- Use `getByRole` and `getByTestId` locators
- Write fixtures for test setup
...
2

Validate your skill

Use the QA Skills validator to check your SKILL.md against the schema. This ensures your frontmatter is correct and all required fields are present.

npx @qaskills/skill-validator validate ./SKILL.md

# Output:
# ✓ Frontmatter is valid
# ✓ Name: My Playwright Skill
# ✓ Version: 1.0.0 (semver ✓)
# ✓ Testing types: e2e, visual
# ✓ Frameworks: playwright
# ✓ Agents: 3 supported
# ✓ Content length: 2,400 tokens
# ✓ All checks passed!
3

Publish to QASkills.sh

Use the CLI to publish your skill to the directory. You'll need to sign in with your QASkills.sh account first.

# Sign in (opens browser)
npx @qaskills/cli login

# Publish from your skill repository
npx @qaskills/cli publish ./SKILL.md

# Output:
# ✓ Authenticated as your-username
# ✓ Validating SKILL.md...
# ✓ Publishing "My Playwright Skill" v1.0.0
# ✓ Published! View at qaskills.sh/skills/your-username/my-playwright-skill
4

Track & improve

Monitor your skill's performance in the dashboard. See install counts, quality scores, and community feedback. Update your skill by publishing new versions.

# Update your skill
npx @qaskills/cli publish ./SKILL.md

# Output:
# ✓ Updated "My Playwright Skill" to v1.1.0
# ✓ 234 total installs | Quality score: 88/100

SKILL.md Frontmatter Reference

FieldRequiredDescription
name
Required
Display name of your skill
description
Required
Short description (under 200 chars)
version
Required
Semantic version (e.g. 1.0.0)
author
Required
Your QASkills.sh username
license
Required
License identifier (e.g. MIT, Apache-2.0)
tagsOptionalKeyword tags for discovery
testingTypes
Required
e2e, unit, api, performance, security, etc.
frameworks
Required
playwright, cypress, jest, pytest, etc.
languages
Required
typescript, javascript, python, java, etc.
domainsOptionalweb, mobile, api, etc.
agentsOptionalSupported agents (auto-detected if omitted)
minTokensOptionalMinimum token count for the skill content
maxTokensOptionalMaximum token count for the skill content

Tips for a High Quality Score

Be specific and opinionated

Don't just restate documentation. Share real-world patterns, naming conventions, and project structure decisions.

Include code examples

AI agents learn best from concrete examples. Show complete test files, not just snippets.

Cover edge cases

Address common mistakes, anti-patterns, and gotchas. This is where expert knowledge shines.

Keep it focused

One skill per concern. A Playwright E2E skill shouldn't also cover API testing — make separate skills instead.