Open Standard · agentskills.io · Adopted by 20+ Platforms

Agent Skills

Give any AI agent specialized knowledge, workflows, and domain expertise — packaged into portable, version-controlled skills that load intelligently and cost almost nothing at startup.

Origin: Agent Skills were created by Anthropic in October 2025 as part of Claude’s agentic capabilities. On December 18, 2025, Anthropic published the format as an open standard at agentskills.io. It has since been adopted by Claude, Cursor, GitHub Copilot, Gemini CLI, OpenAI Codex, and 20+ other platforms.

Problem: AI agents are remarkably capable at general tasks — but real work is rarely general. Your agent knows how to write SQL, but not that your users table uses soft deletes and requires WHERE deleted_at IS NULL. It knows how to call an API, but not that your internal auth service calls the user ID uid while the billing API calls it accountId. Every session you re-explain this context — or forget, and the agent makes the same mistake it made last week.

Solution: Agent Skills — a folder of instructions that an agent discovers, loads when relevant, and follows automatically. Write context once. Reuse it forever. Version-control it alongside your codebase.


The Progressive Disclosure System

The core architectural innovation of Agent Skills is Progressive Disclosure. Instead of overloading the agent’s context window with every instruction up front, the system loads information in three cascading tiers — keeping startup cost tiny while allowing skills to be arbitrarily detailed.

┌──────────────────────────────────────────────────────────────────┐
│ Tier 1: DISCOVERY (Startup)                                      │
│ ~100 tokens per skill • Always in memory                         │
│ -> Reads name + description keywords from YAML frontmatter       │
└────────────────────────────────┬─────────────────────────────────┘
                                 │ (Task matches keyword/intent)
                                 ▼
┌──────────────────────────────────────────────────────────────────┐
│ Tier 2: ACTIVATION (Context-Driven)                              │
│ <5,000 tokens • Loaded on demand                                 │
│ -> Reads SKILL.md body: instructions, validation loops, checklists│
└────────────────────────────────┬─────────────────────────────────┘
                                 │ (Agent invokes tool/runs script)
                                 ▼
┌──────────────────────────────────────────────────────────────────┐
│ Tier 3: EXECUTION (On-Demand)                                    │
│ Variable tokens • Executed via tools                             │
│ -> Runs scripts/, parses assets/, reads references/             │
└──────────────────────────────────────────────────────────────────┘

In practice: Install 50 skills and pay only ~5,000 tokens at startup. Heavy reference docs and scripts never touch the context unless explicitly called.


Skill Directory Structure

skill-name/
├── SKILL.md          <- Required: the only file you must have
├── scripts/          <- Optional: executable code the agent can run
├── references/       <- Optional: detailed docs loaded on demand
└── assets/           <- Optional: templates, schemas, lookup tables

Every skill begins with SKILL.md. The YAML frontmatter block at the top is the discovery metadata the agent reads at startup. The directory name must match the name field exactly.

SKILL.md Frontmatter Fields

FieldRequiredLimitWhat It Does
nameYes64 charsIdentifies the skill; must match directory name
descriptionYes1,024 charsControls when the skill activates; include keywords
licenseNoLicense name or path to LICENSE file
compatibilityNo500 charsEnvironment requirements, supported platforms
metadataNoArbitrary key-value pairs for custom metadata
allowed-toolsNoPre-approved tools the skill may use (experimental)

Writing Descriptions That Trigger Reliably

The description field is the agent’s only signal for when to activate your skill. A weak description causes unreliable triggering. Include: what the skill does, when to use it, and keywords that match real user requests.

# Bad — too vague, agent won't know when to activate
description: "Helps with the database."

# Good — specific and keyword-rich
description: >
  Provides conventions and query patterns for the team's PostgreSQL database.
  Use when writing SQL queries, debugging database errors, building migrations,
  or working with any table in the schema. Includes soft-delete awareness,
  field naming rules, and common gotchas.

Writing Instructions That Work

Match prescriptiveness to fragility

For anything destructive, irreversible, or consistency-critical: use explicit sequential steps. Give the agent freedom for low-stakes formatting decisions.

LOW FRAGILITY — give the agent freedom
When formatting output, prefer concise prose over bullet lists.

HIGH FRAGILITY — be explicit and sequential
When running a migration:
1. Run `alembic upgrade head --sql` and review the SQL output
2. Confirm the SQL with the user before proceeding
3. Create a backup: `pg_dump $DATABASE_URL > backup.sql`
4. Run `alembic upgrade head`
5. Verify with `alembic current`
Never skip steps 1-3.

Defaults beat menus

Agents perform better with one clear default than a list of equally valid options.

Bad: You can use pypdf, pdfplumber, PyMuPDF, pdfminer, or Camelot for extraction.

Good: Use pdfplumber for all text extraction. For scanned documents
(no text layer), switch to pdf2image + pytesseract OCR instead.

The Gotchas Section — your most valuable asset

Captures environment-specific facts that defy reasonable assumptions — things you’d only know from having made the mistake.

## Gotchas

- `created_at` is stored in UTC but displayed in the user's local timezone
  by the frontend. Never compare `created_at` to a local time without converting.
- The `orders` table has a partial index on `(user_id, status)` where
  `status != 'draft'`. Queries that include draft orders will do a full scan.
- `SELECT *` is banned in production queries per the style guide. Always name columns.

Validation loops

Instruct the agent to verify its own work:

After generating the migration file:
1. Run `alembic check` and confirm no errors
2. If errors exist, fix them before proceeding
3. Repeat until `alembic check` passes cleanly

Enterprise Use Case: GDPR Compliance Auditing

Goal: Prevent developers from accidentally committing unmasked Personally Identifiable Information (PII) to database schemas or logs.

The compliance-auditor skill scans database scripts, identifies sensitive data columns (emails, SSNs), checks if they are marked for encryption, and suggests auto-remediation.

compliance-auditor/
├── SKILL.md
├── references/
│   └── pii-definitions.md
└── scripts/
    └── validate-pii.py

1. Skill Instruction Page (compliance-auditor/SKILL.md)

---
name: compliance-auditor
description: >
  Audits code, database schemas, and configuration scripts for GDPR and HIPAA compliance.
  Use when writing database migrations, analyzing schemas, verifying PII protection,
  or auditing user telemetry code for privacy violations.
compatibility: Python 3.8+
---

# GDPR Compliance Auditor

This skill ensures schema alterations and application code adhere to the enterprise
PII protection policy.

## Operating Checklist

- [ ] Scan Target: Execute `scripts/validate-pii.py` against modified source files or SQL migrations.
- [ ] Map Violations: Cross-reference with categories in [PII Definitions](/references/pii-definitions.md).
- [ ] Remediate: Suggest modifications using encryption, hashing, or column-masking from the policy.

## Validation Loop

Before completing any database-related task, verify that no columns matching PII patterns
are created without a corresponding `ENCRYPTED_WITH` attribute in the schema metadata.

## Gotchas

- Do not output raw unmasked PII in responses, even in error messages.
- The staging database has a 30-second query timeout — long analytics queries will be silently killed.
- Always run the validator against the full migration file, not just the changed lines.

2. Reference Documentation (/references/pii-definitions.md)

---
type: Compliance Reference
title: PII Classification & Remediation Standards
---

# PII Classifications

## Category 1: Direct Identifiers (High Risk)
* Email Address: Any string matching the RFC 5322 pattern.
* Social Security Number (SSN): Sensitive numeric identity numbers.
* Phone Number: International or national telephone contacts.

## Category 2: Indirect Identifiers (Medium Risk)
* IP Address: IPv4 or IPv6 endpoints.
* Postal Code: Standard geographical zip codes.

# Required Masking Patterns

* Emails: Replace local part with SHA-256 hash or mask like `u***r@domain.com`.
* SSNs: Redact to last 4 digits (`XXX-XX-1234`) or replace with cryptographic hash.
* Database Columns: Category 1 identifiers must use Column-Level Encryption (CLE).

3. Execution Script (/scripts/validate-pii.py)

import sys, re, json, os

PII_PATTERNS = {
    "Email": r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}',
    "SSN": r'\b\d{3}-\d{2}-\d{4}\b',
    "Phone": r'\b(?:\+?\d{1,3})?(?:\d{3}[-.s]?\d{3}[-.s]?\d{4})\b'
}

def scan_file(file_path):
    violations = []
    with open(file_path, 'r', encoding='utf-8') as f:
        lines = f.readlines()
    for idx, line in enumerate(lines):
        if line.strip().startswith(('#', '//', '--')):
            continue
        for pii_type, pattern in PII_PATTERNS.items():
            if re.findall(pattern, line):
                violations.append({
                    "file": file_path, "line": idx + 1,
                    "type": pii_type, "context": line.strip()
                })
    return violations

if __name__ == "__main__":
    target = sys.argv[1] if len(sys.argv) > 1 else "."
    all_violations = []
    if os.path.isfile(target):
        all_violations.extend(scan_file(target))
    elif os.path.isdir(target):
        for root, _, files in os.walk(target):
            for file in files:
                if file.endswith(('.py', '.sql', '.js', '.json')):
                    all_violations.extend(scan_file(os.path.join(root, file)))
    print(json.dumps({"violations": all_violations}, indent=2))

Operational Architecture

┌──────────────┐    "Audit migrations/"     ┌─────────────────────┐
│  Developer   │ ─────────────────────────> │     AI Agent        │
│              │                            │ (Skills Active)     │
└──────────────┘                            └──────────┬──────────┘
                                                       │
                                            1. compliance-auditor skill activates
                                                       │
                                                       ▼
┌──────────────┐   JSON violation report    ┌─────────────────────┐
│              │ <───────────────────────── │  scripts/           │
│  Agent reads │                            │  validate-pii.py    │
│   results    │                            └──────────┬──────────┘
└──────────────┘                                       │
                                            2. Cross-reference pii-definitions.md
                                                       │
                                                       ▼
┌──────────────┐                            ┌─────────────────────┐
│ Pull Request │ <───────────────────────── │   Remediation       │
│ Code Fixed!  │    Suggest clean code      │   Standard applied  │
└──────────────┘                            └─────────────────────┘

Installing Skills

PlatformInstallation
Claude.aiUpload via support.claude.com
Claude Code/plugin install document-skills@anthropic-agent-skills
CursorPlace in .cursor/skills/<skill-name>/SKILL.md
Gemini CLInpx antigravity-awesome-skills --gemini
OpenAI Codexnpx antigravity-awesome-skills --codex
GitHub CopilotVia VS Code settings (see Copilot docs)

Official repository: github.com/anthropics/skills — 149k stars — includes Document Skills, example skills, and the specification.

Community library: Antigravity Awesome Skills — 40.1k stars — 1,525+ community skills. Install with npx antigravity-awesome-skills.

Official partner repos: Notion, Vercel, Supabase, Microsoft, Hugging Face, LambdaTest, Laravel.


Security Checklist Before Installing

Skills can include executable scripts that alter agent behavior. Treat installation like adding a third-party library.

  • Read all files — not just SKILL.md. Check scripts/ and references/ too.
  • Audit script dependencies — Look for unusual network calls or writes outside expected paths.
  • Watch for exfiltration patterns — Instructions like “send the file contents to…” are red flags.
  • Check for prompt injection — Instructions that try to override system behavior or claim special permissions.
  • Verify the source — Official partners are listed at agentskills.io/clients. Community repos should have meaningful stars, recent activity, and readable commit history.

Quick Reference

Skill creation checklist:

□ Directory name matches `name` in frontmatter
□ `name` uses only lowercase letters, numbers, hyphens
□ `description` includes: what it does + when to trigger + keywords
□ SKILL.md body stays under 500 lines / 5,000 tokens
□ Heavy reference material is in references/ with explicit load triggers
□ Bundled scripts are tested, accept CLI args, return JSON
□ All gotchas are documented before the agent can make the mistake
□ Instructions give defaults, not menus of equally-valid options
□ `skills-ref validate ./skill-name` passes with no errors

Key resources:

ResourceURL
Specificationhttps://agentskills.io/specification
Best practiceshttps://agentskills.io/skill-creation/best-practices
Anthropic official skillshttps://github.com/anthropics/skills
Community libraryhttps://github.com/sickn33/antigravity-awesome-skills
Community Discordhttps://discord.gg/MKPE9g8aUy
Claude.ai using skillshttps://support.claude.com/en/articles/12512180-using-skills-in-claude
Skills API quickstarthttps://docs.claude.com/en/api/skills-guide

Core Components

The building blocks of the Agent Skills format — from directory structure to the ecosystem

📁

Skill Structure

A folder with SKILL.md (required), plus optional scripts/, references/, and assets/ directories. The directory name must exactly match the name field in frontmatter.

🔄

Progressive Disclosure

Three-level loading system: Discovery (~100 tokens at startup), Activation (<5,000 tokens on-demand), Execution (on-demand). Install 50 skills for only ~5,000 tokens startup cost.

📝

SKILL.md

The heart of every skill. YAML frontmatter contains name and description (the semantic trigger). Body contains instructions, gotchas, checklists, and validation loops. Keep under 5,000 tokens.

Scripts Directory

Executable code for deterministic operations. The agent runs tested code instead of regenerating it each session. Scripts accept CLI args, emit structured JSON, never consume context until called.

📚

References Directory

Deep documentation loaded on-demand. Each file focuses on one topic. Tell the agent exactly when to load each file in SKILL.md. Heavy reference docs never touch context unless called.

🌐

Ecosystem

Open standard at agentskills.io (Dec 2025) adopted by Claude, Cursor, GitHub Copilot, Gemini CLI, and 20+ platforms. 1,525+ community skills via Antigravity library. Official repos from Notion, Vercel, Supabase, Microsoft.

Key Benefits

Why Agent Skills eliminate context repetition and enable deterministic agentic workflows

♻️

Eliminate Context Repetition

Stop re-explaining your team's conventions every session. Write the context once, version-control it alongside your codebase, and reuse it forever across sessions and team members.

Tiny Startup Cost

Progressive disclosure means 50 skills cost only ~5,000 tokens at startup (50 × ~100 tokens for discovery data). Heavy content — scripts, references — never touch context unless explicitly called.

🔧

Git-Native Lifecycle

Skills live alongside your codebase in git. Get diffs, blame, PRs, and review for free. Knowledge evolves with your codebase, not in a separate wiki that quickly goes stale.

🌐

Cross-Platform Standard

Open standard published by Anthropic at agentskills.io (Dec 2025). Works with Claude, Cursor, GitHub Copilot, Gemini CLI, OpenAI Codex, and 20+ platforms using the same skill format.

🎯

Deterministic Execution

Bundle scripts for operations that need absolute precision. The agent runs tested, deterministic code instead of regenerating logic from scratch — preventing subtle variation across sessions.

Common Use Cases

From database conventions and compliance to API integration and document processing

🗄️

Database Conventions

Encode soft-delete awareness, field naming conventions, preferred libraries (psycopg3 not psycopg2), and query patterns. Gotchas like partial indexes and UTC vs local time issues.

🌐

API Integration

Document auth flows, token refresh logic, rate limits, header requirements, and endpoint-specific gotchas. Prevents the agent from re-deriving API quirks every session.

💻

Development Standards

Capture coding standards, testing procedures, pre-deployment checklists, and project-specific architectural patterns as enforceable validation loops.

📖

Operational Procedures

Maintain incident response runbooks, troubleshooting guides, and migration procedures with explicit sequential steps for high-fragility operations.

🔒

Security & Compliance

GDPR/HIPAA PII auditing, compliance checklists, and masking policies packaged with executable scanning scripts. Deterministic enforcement before code reaches production.

📄

Document Processing

PDF extraction, Word/Excel/PowerPoint workflows with bundled scripts for consistent, tested processing logic instead of regenerated code each session.

Interactive Tools

Practical tools to help you think systematically, build better AI agents, and master prompt engineering.

Future References

Explore these resources for deeper learning on AI agent development, spec-driven development, and prompt engineering tools.

Spec-Driven Development

Comprehensive guide on Spec-Driven Development practices and methodologies.

Awesome Copilot

Curated list of GitHub Copilot resources, extensions, and best practices.

Promptfoo

Tool for testing, evaluating, and improving LLM prompts and applications.

Prompts.chat

Collection of prompt engineering resources and templates.

Agent Skills

Agent skills resources and documentation for building AI agent skills.

Awesome Skills

Curated list of awesome skill repositories and collections.

Agent Skills Topic

GitHub topic for discovering agent-related skills and repositories.

AI Agent Topic

Trendshift topic for discovering AI agents.

AI Skills Topic

Trendshift topic for discovering AI skills.

Agent Governance Toolkit

Agent governance toolkit.

Pattern Sources

Our patterns are curated from industry-leading sources with proper attribution and licensing compliance.

Refactoring.Guru

Classic GoF design patterns, code smells catalog, and refactoring techniques (https://refactoring.guru).

Enterprise Integration Patterns

65 messaging patterns for integrating enterprise applications by Gregor Hohpe and Bobby Woolf (CC BY 4.0).

Microservices.io

Comprehensive patterns for microservice architectures by Chris Richardson.

Agent Catalog Patterns

Patterns for agentic systems from agentpatternscatalog.org (CC BY 4.0).

OWASP Foundation

Security patterns from OWASP Top 10 for Web Applications, LLM Applications, and Agentic Applications (CC BY-SA 4.0).

Industry Research

ML/AI patterns from Microsoft, Google, Anthropic, and academic research.

AI Agent Patterns

Spec-driven development patterns from Claude, Gemini, OpenAI, and GitHub Copilot on github/spec-kit and OpenSpec.

Data Engineering Leaders

Data platform patterns from Martin Fowler (Data Mesh), Kimball Group (Dimensional Modeling), and cloud providers.

MLOps Best Practices

Data science patterns from MLflow, Great Expectations, and MLOps practitioners.

Streaming & Analytics

Real-time patterns from Confluent/Kafka, Apache projects, and serverless analytics platforms.

Academic Papers

Rigorous ML patterns from peer-reviewed research including data leakage prevention and active learning.

5-Day AI Agents Course

Intensive Vibe Coding Course With Google by Brenda Flynn et al. (2026) on Kaggle.

The Agent Loop

Foundational Agent Definition (Perceive + Act):
Russell, S. J., & Norvig, P. (1995). Artificial Intelligence: A Modern Approach. Prentice Hall. (Current edition: 4th Ed., Pearson, 2020)

Modern Iterative LLM Agent Loop:
Yao, S., Zhao, J., Yu, D., et al. (2022). ReAct: Synergizing Reasoning and Acting in Language Models. arXiv:2210.03629.

Historical Context:
Incorporating AIMA's perceive/act model, Classical robotics' Sense-Plan-Act loop (Brooks, 1986), and ReAct's Thought→Action→Observation cycle.