Where Are the Core Rulesets and Modular Skills Located in the Ponytail Repository?

The Ponytail repository stores core rulesets in hidden .agents/rules/, .qoder/rules/, .windsurf/rules/, and .clinerules/ directories, while modular skills live in skills/ (public) and .openclaw/skills/ (OpenClaw-specific), all as plain-text markdown files.

The Ponytail repository by DietrichGebert organizes its AI agent configuration through a dual-layer system: core rulesets that define behavioral intensity levels (lite, full, ultra) and modular skills that expose specific capabilities to downstream agents. Understanding where these files live is essential for customizing behavior, syncing across agent frameworks, or contributing new skills.


Core Rulesets: Hidden Directories for Agent Configuration

Ponytail distributes its master ruleset across multiple hidden directories to support different agent platforms without forcing users to reconfigure their tooling.

Primary Ruleset Locations

Platform Directory Example File
Generic agents .agents/rules/ ponytail.md
Qoder .qoder/rules/ ponytail.md
Windsurf .windsurf/rules/ ponytail.md
Cline .clinerules/ ponytail.md

Each ponytail.md file contains the same foundational ruleset, including the "PONYTAIL MODE ACTIVE" activation prompt and tiered intensity instructions. The duplication ensures ruleset consistency—agents automatically discover configurations in their native directory conventions.

Loading a Core Ruleset Programmatically

import { readFileSync } from 'fs';
import { resolve } from 'path';

const repoRoot = resolve(__dirname, '..');

// Load the master Ponytail ruleset
const rulesetPath = `${repoRoot}/.agents/rules/ponytail.md`;
const ruleset = readFileSync(rulesetPath, 'utf-8');

// Filter by intensity level at runtime
const intensity = 'ultra'; // 'lite' | 'full' | 'ultra'
const modeBlock = ruleset.match(
  new RegExp(`## ${intensity.toUpperCase()} MODE[\\s\\S]*?(?=## |$)`, 'i')

);

The .agents/rules/ponytail.md file serves as the canonical source. Other locations are kept in sync to prevent "ruleset drift" across platforms.


Modular Skills: Public and Framework-Specific Directories

Ponytail's modular skills extend core behavior with task-specific capabilities. These are organized in two parallel structures.

Public Skills Directory (skills/)

The public skills/ directory contains versioned skill modules that any agent framework can import:

OpenClaw-Specific Skills (.openclaw/skills/)

The OpenClaw plugin maintains its own mirror at .openclaw/skills/ponytail/SKILL.md to ensure compatibility with its skill-loading protocol. This duplication allows OpenClaw to resolve skills via its internal path resolution without exposing hidden implementation details to other agents.

Importing a Modular Skill (OpenClaw)

import { readFileSync } from 'fs';
import { resolve } from 'path';

// OpenClaw expects SKILL.md files with specific frontmatter
const skillPath = resolve(
  __dirname,
  '../.openclaw/skills/ponytail/SKILL.md'
);

const skillDefinition = readFileSync(skillPath, 'utf-8');

// Parse capability declarations (custom markdown syntax)
const capabilities = skillDefinition
  .match(/^### Capability:.*$/gm)

  ?.map(line => line.replace('### Capability: ', '').trim());

console.log('Available capabilities:', capabilities);

Why This Directory Structure Matters

The split between hidden ruleset directories and public skills directories serves specific architectural purposes in the Ponytail repository:

  1. Agent discovery — Tools like Cline, Windsurf, and Qoder scan their conventional hidden directories automatically
  2. Framework isolation — OpenClaw's .openclaw/ prefix prevents namespace collisions with other plugins
  3. Skill versioning — Public skills/ modules can be semantically versioned independently of core rules
  4. Contribution pathways — New skills land in skills/; platform-specific ruleset tweaks stay in hidden directories

When modifying Ponytail behavior, always update .agents/rules/ponytail.md first, then propagate changes to platform-specific mirrors. For new capabilities, create a SKILL.md in skills/ponytail-{capability}/ following the established frontmatter schema.


Summary

  • Core rulesets live in .agents/rules/, .qoder/rules/, .windsurf/rules/, and .clinerules/ — all containing ponytail.md with intensity-tiered behavioral rules
  • Modular skills reside in skills/ (public, framework-agnostic) and .openclaw/skills/ (OpenClaw-specific), each with a SKILL.md defining discrete capabilities
  • The .agents/rules/ponytail.md file is the canonical ruleset source; other locations are synchronized copies
  • Skill variants include review, help, gain, debt, and audit specializations for targeted agent tasks

Frequently Asked Questions

How do I add a custom skill to Ponytail?

Create a new directory under skills/ with the naming pattern skills/ponytail-{capability}/, then add a SKILL.md file containing capability declarations in the established markdown format. Test locally by pointing your agent's skill path resolver to the new directory.

Why are rulesets duplicated across multiple hidden directories?

Each directory corresponds to a specific agent platform's configuration discovery convention. Cline scans .clinerules/, Windsurf uses .windsurf/rules/, and Qoder looks in .qoder/rules/. The duplication ensures Ponytail activates automatically without manual path configuration.

Can I use Ponytail skills without the full ruleset?

Yes. The modular skills/ directory is designed for selective import. Load only the SKILL.md files your agent needs—review, audit, or help—without injecting the complete behavioral ruleset. This is common for lightweight integrations where you want specific capabilities without "PONYTAIL MODE" activation.

What's the difference between .agents/rules/ and .openclaw/skills/?

.agents/rules/ponytail.md contains the behavioral ruleset that defines how Ponytail responds (tone, intensity, output format). .openclaw/skills/ponytail/SKILL.md contains the capability definition that tells OpenClaw what tasks Ponytail can execute. One configures personality; the other registers available actions.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →