# What Are the Modular Skills Provided by Ponytail? A Complete Guide

> Discover the six modular skills of Ponytail: ponytail, review, audit, debt, gain, and help. Learn how each skill is defined and triggered via slash commands in this complete guide.

- Repository: [DietrichGebert/ponytail](https://github.com/DietrichGebert/ponytail)
- Tags: complete-guide
- Published: 2026-08-27

---

**Ponytail provides six modular skills—`ponytail`, `ponytail-review`, `ponytail-audit`, `ponytail-debt`, `ponytail-gain`, and `ponytail-help`—each defined in self-contained [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) files under the `skills/` directory and triggered via slash commands.**

Ponytail is an open-source lazy-developer assistant that enforces minimalism through a modular skill architecture. Each **modular skill** is a self-contained prompt definition stored in its own subdirectory, allowing the runtime to discover and load capabilities without code changes. This design separates behavior definitions from execution logic, making the system extensible by simply adding new folders to the repository.

## Overview of Ponytail's Modular Skill System

The **modular skills provided by Ponytail** follow a strict file-based convention. Every skill resides in `skills/<name>/SKILL.md` and includes YAML front-matter (`name`, `description`, `argument-hint`, `license`) followed by the prompt template. The core plugin located at [`hooks/ponytail-instructions.js`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/ponytail-instructions.js) walks the `skills/` directory at runtime, automatically registering any valid [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) as a slash command.

This architecture ensures that skills remain **documentation-first**: the [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) serves as both the user-facing documentation and the runtime prompt source. Build scripts such as [`scripts/build-openclaw-skills.js`](https://github.com/DietrichGebert/ponytail/blob/main/scripts/build-openclaw-skills.js) and [`scripts/publish-openclaw-skills.js`](https://github.com/DietrichGebert/ponytail/blob/main/scripts/publish-openclaw-skills.js) copy these files verbatim into the OpenClaw plugin bundle, guaranteeing zero drift between documentation and execution.

## The Six Core Modular Skills

Ponytail ships with six built-in skills, each targeting a specific phase of the development lifecycle.

### The Core ponytail Skill

The foundational skill lives in [`skills/ponytail/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail/SKILL.md) and implements the lazy-developer mode. Triggered via `/ponytail` (or variants like `/ponytail lite`, `/ponytail full`, and `/ponytail ultra`), this skill enforces a strict "ladder" of priorities: **YAGNI** → stdlib → native → one-line → minimal.

The intensity levels control how aggressively the assistant challenges over-engineering:

- **lite**: Gentle suggestions for simplification
- **full**: Strict enforcement of minimal solutions
- **ultra**: Maximum bias against any abstraction

### Code Review with ponytail-review

Located at [`skills/ponytail-review/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-review/SKILL.md), this skill performs targeted diff analysis. When invoked with `/ponytail-review`, it scans the provided diff and lists every instance of over-engineering—including dead code, unnecessary dependencies, and YAGNI violations—in a compact one-line format per finding.

### Repository Audits with ponytail-audit

The [`skills/ponytail-audit/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-audit/SKILL.md) skill scales the review concept to the entire codebase. Using `/ponytail-audit`, it conducts a repo-wide search for the same anti-patterns as `ponytail-review`, ranking findings by impact to prioritize refactoring efforts.

### Technical Debt Tracking with ponytail-debt

Defined in [`skills/ponytail-debt/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-debt/SKILL.md), this skill harvests every `ponytail:` comment left in the source code. These comments represent shortcuts, deferrals, or acknowledged compromises. The skill aggregates them into a ledger, ensuring technical debt remains visible and trackable rather than silently rotting in the codebase.

### Impact Metrics with ponytail-gain

The [`skills/ponytail-gain/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-gain/SKILL.md) skill provides quantitative justification for minimalism. Triggered by `/ponytail-gain`, it displays a scoreboard of measured impact based on benchmark medians, including lines of code saved, cost reduction, and speed improvements achieved through Ponytail's lazy-development approach.

### Help and Documentation with ponytail-help

Finally, [`skills/ponytail-help/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-help/SKILL.md) serves as the system's documentation layer. The `/ponytail-help` command displays a quick-reference card listing all available modes, intensity levels, and skill triggers, making the modular skills discoverable without leaving the chat interface.

## How the Skill System Works

The modularity relies on three architectural components that separate definition from execution.

**Discovery via Filesystem**

The runtime loader in [`hooks/ponytail-instructions.js`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/ponytail-instructions.js) recursively walks the `skills/` directory, identifying any folder containing a [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) file. It parses the YAML front-matter to register the command name and description, then loads the markdown body as the prompt template.

**Single Source of Truth**

Each [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) functions as the authoritative definition. The [`scripts/build-openclaw-skills.js`](https://github.com/DietrichGebert/ponytail/blob/main/scripts/build-openclaw-skills.js) script copies these files directly into the plugin bundle without transformation, while [`scripts/publish-openclaw-skills.js`](https://github.com/DietrichGebert/ponytail/blob/main/scripts/publish-openclaw-skills.js) handles distribution. This ensures that editing [`skills/ponytail-audit/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-audit/SKILL.md) immediately updates both documentation and runtime behavior.

**Uniform Interface**

All skills share an identical front-matter schema:

```yaml
---
name: skill-name
description: Human-readable purpose
argument-hint: Usage instructions
license: MIT
---

```

This uniformity allows [`hooks/ponytail-instructions.js`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/ponytail-instructions.js) to treat heterogeneous capabilities—ranging from diff analysis to debt tracking—as interchangeable modules.

## Adding Custom Modular Skills

Extending Ponytail requires no code changes. To create a custom skill, create a new directory under `skills/` with a valid [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md):

```bash
mkdir -p skills/ponytail-custom
cat > skills/ponytail-custom/SKILL.md <<'EOF'
---
name: ponytail-custom
description: Validates variable naming conventions against Ponytail minimalism standards
argument-hint: "<filepath>"
license: MIT
---
Review the provided file for verbose variable names. Suggest shorter alternatives that maintain clarity while reducing character count. Prefer single-letter variables only in loop contexts.
EOF

```

After reloading the plugin, the skill automatically registers as `/ponytail-custom` and appears in `/ponytail-help` output.

## Summary

- Ponytail provides **six built-in modular skills** covering core assistance, code review, auditing, debt tracking, metrics, and documentation.
- Each skill is a **self-contained [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md)** file under `skills/<name>/`, using standardized YAML front-matter.
- **Automatic discovery** occurs through [`hooks/ponytail-instructions.js`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/ponytail-instructions.js), which walks the filesystem at runtime.
- **Zero-drift deployment** is ensured by build scripts ([`scripts/build-openclaw-skills.js`](https://github.com/DietrichGebert/ponytail/blob/main/scripts/build-openclaw-skills.js)) that copy skill definitions verbatim into the runtime bundle.
- **Custom skills** require only a new folder and markdown file, immediately available as slash commands without recompilation.

## Frequently Asked Questions

### How do I invoke a specific modular skill in Ponytail?

Use the slash command corresponding to the skill name defined in the [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) front-matter. For example, type `/ponytail-review` to trigger the review skill, `/ponytail-audit` for repository-wide analysis, or `/ponytail-debt` to view the technical debt ledger. The `/ponytail-help` command lists all available triggers.

### What is the difference between ponytail-review and ponytail-audit?

**`ponytail-review`** ([`skills/ponytail-review/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-review/SKILL.md)) analyzes a specific diff or code block for over-engineering, providing immediate feedback on changes. **`ponytail-audit`** ([`skills/ponytail-audit/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-audit/SKILL.md)) performs a comprehensive scan of the entire repository, ranking violations by impact to guide large-scale refactoring priorities.

### Can I create my own modular skills for Ponytail?

Yes. Create a new directory under `skills/` containing a [`SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/SKILL.md) file with valid YAML front-matter (`name`, `description`, `argument-hint`, `license`). The [`hooks/ponytail-instructions.js`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/ponytail-instructions.js) loader automatically discovers and registers new skills on the next plugin reload, making them available as slash commands without modifying any JavaScript code.

### Where are the skill definitions stored in the Ponytail repository?

Skill definitions reside in `skills/<skill-name>/SKILL.md` paths. Core skills include [`skills/ponytail/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail/SKILL.md) (main assistant), [`skills/ponytail-review/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-review/SKILL.md) (diff analysis), [`skills/ponytail-audit/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-audit/SKILL.md) (repo auditing), [`skills/ponytail-debt/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-debt/SKILL.md) (debt tracking), [`skills/ponytail-gain/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-gain/SKILL.md) (impact metrics), and [`skills/ponytail-help/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-help/SKILL.md) (documentation).