We appreciate feedback and contribution to this repo! Before you get started, please see Auth0's general contribution guidelines.
- Create a new directory under
plugins/auth0/skills/ - Add a
SKILL.mdfile following the Agent Skills specification - Optionally add additional reference files
- Update the README.md to list your skill in the appropriate table
- Submit a pull request
Per the Agent Skills specification, only SKILL.md may live in the skill root. All other content must go in one of these subdirectories:
plugins/auth0/skills/my-skill/
├── SKILL.md # Required: Main skill file (the ONLY file allowed in root)
├── references/ # Optional: Additional documentation (kebab-case .md files)
│ ├── setup.md
│ ├── integration.md
│ └── api.md
├── scripts/ # Optional: Executable helper code
│ └── helper.js
├── assets/ # Optional: Static resources (templates, images, data files)
└── tests/ # Optional: Validation artifacts (test transcripts, fixtures)
Markdown files in subdirectories must be kebab-case (e.g. route-protection.md). Framework integration skills conventionally split their reference docs into setup.md, integration.md, and api.md — follow that naming so skills stay consistent.
Your SKILL.md must include:
-
YAML Frontmatter with the following fields.
name,description,license,metadata.author, and the fullmetadata.openclawblock (withemojiandhomepage) are required and enforced by the linter — a skill missing any of them will fail validation:--- name: my-skill description: Brief description of what this skill does and when to use it. license: Apache-2.0 metadata: author: Auth0 <support@auth0.com> # required, must be "Name <email>" format version: '1.0.0' # recommended; most skills pin this openclaw: # required block emoji: "\U0001F510" homepage: https://github.com/auth0/agent-skills requires: # optional: declare external dependencies bins: - auth0 # declare `auth0` if the skill runs CLI commands os: # optional: darwin, linux, windows - darwin - linux install: # optional: how to install required bins - id: brew kind: brew package: auth0/auth0-cli/auth0 bins: [auth0] label: 'Install Auth0 CLI (brew)' ---
Notes:
licensemust beApache-2.0unless a specific package requires otherwise (matches the repositoryLICENSE).metadata.authormust followName <email>; separate multiple authors with commas, not semicolons.- The
requires,os, andinstallfields undermetadata.openclaware ClawHub metadata used when installing the skill vianpx clawhub install. If your skill's workflow invokesauth0CLI commands, declarerequires.bins: [auth0](and the matchinginstallblock) so ClawHub can prompt the user to install the CLI. Apply this consistently.
-
Clear Instructions: Step-by-step guidance for the AI agent
-
Code Examples: Working code samples for each SDK where applicable
-
Error Handling: Common errors and how to handle them
- Use TypeScript for examples where applicable
- Include comments explaining complex logic
- Follow Auth0's coding conventions
- Test code examples before submitting
- Fork the repository
- Make your changes
- Ensure all code examples are correct
- Update version in metadata if significant changes
- Submit a pull request with clear description of changes
This repository uses skillsaw to enforce frontmatter and structure conventions. The same check runs in CI (.github/workflows/skillsaw.yml) and must pass before a PR can merge, so run it locally first:
# Validate the whole repository in strict mode (matches CI)
uvx skillsaw --strictRules are configured in .skillsaw.yaml, with repository-specific custom rules in .skillsaw/rules.py.
Test your skills work correctly with AI assistants:
- Install the plugin/skill locally:
# Install entire plugin npx skills add ./plugins/auth0 # Or copy to Claude skills directory cp -r ./plugins/auth0/skills/my-skill ~/.claude/skills/
- Ask an AI assistant to use the skill
- Verify the generated code is correct
- Ensure your changes follow the contribution guidelines
- Update documentation as needed
- Add your changes to CHANGELOG.md (if applicable)
- Request review from maintainers
- Address any feedback
Please follow Auth0's Code of Conduct.
If you have questions about contributing, please open an issue with the "question" label.