Skip to content
Back to skills

Add New Skill

ASecurity

Create a new skill for this repository following the agentskills.io specification with proper structure and packaging

  • 57 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 17, 2026
documentationjavascriptpythongojavabashterraformgitapidocumentation

Works with

  • claude code
  • api

Security analysis

A100/100

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill add-new-skill --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Add New Skill?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Add New Skill
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-add-new-skill/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-add-new-skill)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: add-new-skill
description: Create a new skill for this repository following the agentskills.io specification with proper structure and packaging
---

# Add New Skill to Skills Repository

This meta skill guides the creation of new skills for this repository, following the [agentskills.io specification](https://agentskills.io/specification).

## Repository Context

This repository houses skills that are:
- Packaged as individual `.zip` artifacts via GitHub Actions
- Structured according to agentskills.io specification
- Consumable by Claude Code, Codex, and other AI tools

## agentskills.io Specification Summary

### Required Structure

Every skill MUST have:
```
skill-name/
└── SKILL.md          # Required file with YAML frontmatter
```

### Optional Directories

Skills MAY include:
```
skill-name/
├── SKILL.md          # Required
├── scripts/          # Executable code (Python, Bash, JavaScript)
├── references/       # Additional docs loaded on-demand
└── assets/           # Templates, images, data files
```

## SKILL.md Format

### Required Frontmatter

```yaml
---
name: skill-name
description: A clear description of what this skill does and when to use it (1-1024 characters).
---
```

### Frontmatter Field Rules

**name** (REQUIRED):
- 1-64 characters
- Lowercase alphanumeric and hyphens only
- Cannot start/end with hyphens
- Cannot contain consecutive hyphens
- MUST match parent directory name

**description** (REQUIRED):
- 1-1024 characters
- Should explain what the skill does and when to use it
- Be specific and actionable

### Optional Frontmatter Fields

```yaml
---
name: skill-name
description: Description here
license: MIT
compatibility: Requires Python 3.8+, works on Linux/macOS
metadata:
  version: "1.0.0"
  author: "Your Name"
allowed-tools: Read Write Bash
---
```

### Content Guidelines

After frontmatter, include:
- **Overview**: What the skill does
- **When to Use**: Clear use cases
- **Step-by-Step Instructions**: Detailed workflow
- **Examples**: Real-world usage patterns
- **Templates**: Output formats or code snippets
- **Validation**: Checklists or verification steps

Keep SKILL.md under 5000 tokens (recommended) for efficient loading.

## Workflow: Adding a New Skill

### 1. Create Skill Directory

```bash
mkdir -p skill-name
```

**CRITICAL**: Directory name MUST match the `name` field in frontmatter.

### 2. Write SKILL.md

Create `skill-name/SKILL.md` with:
- Required YAML frontmatter (name, description)
- Clear markdown instructions
- Examples and templates
- Validation steps

### 3. Add Optional Resources (If Needed)

**scripts/** - Add executable code:
```bash
mkdir -p skill-name/scripts
# Add Python/Bash/JS files
```

**references/** - Add supporting docs:
```bash
mkdir -p skill-name/references
# Add REFERENCE.md, FORMS.md, etc.
```

**assets/** - Add static files:
```bash
mkdir -p skill-name/assets
# Add templates, images, data files
```

### 4. Validate Skill Structure

Check that:
- [ ] Directory name matches frontmatter `name` field
- [ ] Name is lowercase, alphanumeric + hyphens only
- [ ] Name doesn't start/end with hyphens
- [ ] No consecutive hyphens in name
- [ ] Description is 1-1024 characters
- [ ] SKILL.md has valid YAML frontmatter
- [ ] Instructions are clear and actionable

### 5. Test Locally (Optional)

Verify zip structure matches specification:
```bash
cd skill-name
zip -r ../test-skill.zip . -x "*.git*"
cd ..
unzip -l test-skill.zip
# Should show: skill-name/SKILL.md, skill-name/scripts/, etc.
rm test-skill.zip
```

### 6. Commit and Push

```bash
git add skill-name/
git commit -m "feat: add skill-name skill

Brief description of what this skill does.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>"
git push
```

### 7. Verify GitHub Actions

After push:
1. Go to Actions tab in GitHub repository
2. Wait for "Package Skills" workflow to complete
3. Check that new skill artifact was created
4. Download and verify zip structure contains parent directory

## GitHub Actions Workflow

The repository includes `.github/workflows/package-skills.yml` which:
- Discovers all directories containing SKILL.md
- Packages each skill with proper directory structure
- Creates individual artifacts per skill (e.g., `skill-name.zip`)
- Runs on push to main, pull requests, and manual dispatch

**Package Structure**: Each zip contains the parent directory:
```
skill-name.zip
└── skill-name/
    ├── SKILL.md
    ├── scripts/
    ├── references/
    └── assets/
```

This matches the agentskills.io specification for tool consumption.

## Examples from This Repository

### Example 1: Infrastructure Automation Skill

**Directory**: `new-homelab-guest/`

**Characteristics**:
- Single SKILL.md file with detailed Terraform workflow
- No scripts (relies on external repository)
- Includes prerequisites, step-by-step instructions
- Has troubleshooting section and examples

**Good for**: Complex multi-step workflows, infrastructure tasks

### Example 2: Data Processing Skill

**Directory**: `digitize-pounce-scoresheet/`

**Characteristics**:
- Single SKILL.md with data extraction workflow
- Includes output format template
- Has validation checklist
- Explains domain-specific context (game rules)
- Provides common patterns guide

**Good for**: Data transformation, format conversion, OCR tasks

### Example 3: Meta Skill (This One!)

**Directory**: `add-new-skill/`

**Characteristics**:
- Documents repository conventions
- Links to external specification
- Provides step-by-step workflow
- Includes validation checklist
- References existing examples

**Good for**: Repository documentation, process guides

## Common Skill Patterns

### Pattern 1: Step-by-Step Workflow
For tasks with clear sequential steps:
```markdown
## Workflow

### 1. Prepare Environment
Instructions here...

### 2. Execute Task
Instructions here...

### 3. Validate Output
Checklist...
```

### Pattern 2: Template-Based Output
For skills that generate structured output:
```markdown
## Output Format Template

```yaml
key: value
nested:
  - item1
  - item2
```
```

### Pattern 3: Context + Instructions
For domain-specific tasks:
```markdown
## Domain Context
Background information...

## Processing Steps
1. Step one
2. Step two

## Validation
Checklist...
```

## Naming Conventions

### Good Skill Names
- `new-homelab-guest` - Action-oriented, clear purpose
- `digitize-pounce-scoresheet` - Verb + specific task
- `add-new-skill` - Clear action and object
- `parse-terraform-state` - Specific transformation
- `generate-api-docs` - Clear output type

### Bad Skill Names
- `Homelab` - Too generic, not action-oriented
- `scoresheet_digitizer` - Uses underscore (use hyphens)
- `new_skill` - Uses underscore
- `my-awesome-skill` - Not descriptive
- `-skill-name-` - Invalid (starts/ends with hyphen)
- `skill--name` - Invalid (consecutive hyphens)

## Tips for Writing Effective Skills

1. **Be Specific**: Describe exactly what the skill does and when to use it
2. **Include Context**: Explain domain-specific concepts needed to execute the task
3. **Provide Examples**: Show real-world usage patterns
4. **Add Validation**: Include checklists or verification steps
5. **Use Templates**: Provide output format templates when applicable
6. **Keep It Focused**: One skill should do one thing well
7. **Consider Progressive Disclosure**: Put essential info in SKILL.md, details in references/
8. **Test Instructions**: Verify steps are complete and executable

## Troubleshooting

### Skill Not Packaged
**Problem**: New skill doesn't appear in GitHub Actions artifacts
**Solution**:
- Verify SKILL.md exists in subdirectory
- Check directory depth (should be 2 levels: `./skill-name/SKILL.md`)
- Review Actions logs for errors

### Invalid Directory Name
**Problem**: Directory name doesn't match frontmatter
**Solution**:
- Rename directory: `git mv old-name new-name`
- Or update frontmatter `name` field to match directory

### Workflow Fails on Push
**Problem**: GitHub Actions fails with zip error
**Solution**:
- Check for special characters in filenames
- Verify YAML frontmatter is valid
- Review workflow logs for specific error

## Progressive Disclosure Strategy

Per agentskills.io specification:

**Tier 1 - Metadata (~100 tokens)**: Loaded at startup
- Just the frontmatter fields

**Tier 2 - SKILL.md (<5000 tokens)**: Loaded when skill is activated
- Full instructions in SKILL.md

**Tier 3 - Supporting files**: Loaded on demand
- Files in scripts/, references/, assets/

Keep SKILL.md concise. Move detailed docs to `references/`, long code to `scripts/`, and data/templates to `assets/`.

## Validation Checklist

Before committing a new skill:
- [ ] Directory name matches frontmatter `name` field exactly
- [ ] Name uses only lowercase, alphanumeric, and hyphens
- [ ] Name doesn't start or end with hyphens
- [ ] Name doesn't contain consecutive hyphens
- [ ] Description is between 1-1024 characters
- [ ] SKILL.md has valid YAML frontmatter (use `---` delimiters)
- [ ] Instructions are clear and actionable
- [ ] Examples or templates are provided where applicable
- [ ] Validation steps or checklists included
- [ ] SKILL.md is under 5000 tokens (if possible)
- [ ] Optional directories (scripts/, references/, assets/) are used appropriately
- [ ] Git commit message follows conventional format

## Resources

- **agentskills.io Specification**: https://agentskills.io/specification
- **agentskills.io Home**: https://agentskills.io/
- **This Repository**: Check existing skills for patterns and examples
- **GitHub Actions Workflow**: `.github/workflows/package-skills.yml`

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.