# Supported Agent Hosts for Ponytail: The Complete Compatibility Guide

> Discover supported agent hosts for Ponytail. Connect with 21+ AI platforms like Claude Code, GitHub Copilot, Cursor, and Zed using lightweight adapters. Enhance your workflow today.

- Repository: [DietrichGebert/ponytail](https://github.com/DietrichGebert/ponytail)
- Tags: compatibility-guide
- Published: 2026-09-13

---

**Ponytail supports 21+ AI agent platforms—including Claude Code, GitHub Copilot, Cursor, and Zed—through lightweight adapters that bridge its six core skills to each host's native plugin or instruction system.**

Ponytail is an **agent-portable** framework maintained in the `DietrichGebert/ponytail` repository. Unlike traditional tools that lock you into a single ecosystem, Ponytail decouples its skill logic from host-specific interfaces, allowing the same "lazy senior dev" behaviors to run across diverse AI coding assistants. The complete list of supported hosts and their adapter implementations is documented in [[`docs/agent-portability.md`](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md)](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md).

## Full-Featured Plugin Integrations

Several hosts support Ponytail through native plugin architectures that provide session activation, mode tracking, and command registration.

### Claude Code and Codex

Both **Claude Code** and **Codex** use the same underlying skill set but expose it through slightly different adapter files. For Claude Code, the integration lives in [`.claude-plugin/plugin.json`](https://github.com/DietrichGebert/ponytail/blob/main/.claude-plugin/plugin.json) alongside [`hooks/claude-codex-hooks.json`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/claude-codex-hooks.json), enabling full plugin install with session activation and status-line support. Codex uses [`.codex-plugin/plugin.json`](https://github.com/DietrichGebert/ponytail/blob/main/.codex-plugin/plugin.json) with the same hooks directory plus a dedicated `skills/` folder for lifecycle management.

### OpenCode Server Plugin

**OpenCode** requires a server-side plugin at `.opencode/plugins/ponytail.mjs`. This JavaScript module uses the `experimental.chat.system.transform` hook to inject the Ponytail ruleset on every chat turn, enabling the `/ponytail` command family without client-side installation.

### Hermes Agent

The **Hermes Agent** adapter resides in [`plugin.yaml`](https://github.com/DietrichGebert/ponytail/blob/main/plugin.yaml) and [`__init__.py`](https://github.com/DietrichGebert/ponytail/blob/main/__init__.py), functioning as a native Hermes plugin. It rewrites `/ponytail-*` skill commands into agent prompts and tracks mode switching through the host's native state management.

### Grok Build and Qoder

**Grok Build** installs via `grok plugin install` using [`.grok-plugin/marketplace.json`](https://github.com/DietrichGebert/ponytail/blob/main/.grok-plugin/marketplace.json), triggering explicit activation through the `/ponytail` command. **Qoder** offers the deepest integration with [`.qoder-plugin/plugin.json`](https://github.com/DietrichGebert/ponytail/blob/main/.qoder-plugin/plugin.json), [`hooks/qoder-hooks.json`](https://github.com/DietrichGebert/ponytail/blob/main/hooks/qoder-hooks.json), and sub-agent injection capabilities, while also supporting fallback instruction-tier usage through [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md).

### pi Extension

The **pi** host uses a dedicated `pi-extension/` directory structure that registers `/ponytail` commands and injects the ruleset each turn, packaging the six core skills as a native browser extension.

## Instruction-File Based Setups

Many agents lack plugin APIs but support repository-level instruction files. Ponytail provides compact rule sets for these **always-on** configurations.

### IDE-Specific Rule Files

- **Cursor**: Uses `.cursor/rules/ponytail.mdc` as a project rule file
- **Windsurf**: Reads [`.windsurf/rules/ponytail.md`](https://github.com/DietrichGebert/ponytail/blob/main/.windsurf/rules/ponytail.md)
- **Cline**: Configures via [`.clinerules/ponytail.md`](https://github.com/DietrichGebert/ponytail/blob/main/.clinerules/ponytail.md)
- **Kiro**: Loads steering rules from [`.kiro/steering/ponytail.md`](https://github.com/DietrichGebert/ponytail/blob/main/.kiro/steering/ponytail.md)

### GitHub Copilot Ecosystem

**GitHub Copilot** supports two tiers. The standard IDE integration reads [`.github/copilot-instructions.md`](https://github.com/DietrichGebert/ponytail/blob/main/.github/copilot-instructions.md) at the repository level. **GitHub Copilot CLI** extends this with a full plugin architecture in `.github/plugin/`, falling back to project or global [`copilot-instructions.md`](https://github.com/DietrichGebert/ponytail/blob/main/copilot-instructions.md) files when the plugin is not installed.

## Generic AGENTS.md Support

The widest compatibility tier uses [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md)—a compact always-on rule set located at the repository root. Hosts implementing this pattern include **Antigravity**, **CodeWhale**, **Swival**, **VS Code + Codex extension**, **JetBrains Junie**, **Amp (Sourcegraph)**, **Jules (Google)**, and **Zed**.

According to the source analysis, these agents search upward from the working directory for [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md), with some supporting additional fallbacks like [`CLAUDE.md`](https://github.com/DietrichGebert/ponytail/blob/main/CLAUDE.md) or global configuration files in `~/.config/`.

## Core Architecture: Skills and Adapters

All integrations share two fundamental components documented in the repository root:

- **`skills/`** directory: Houses six portable skill definitions:
  - [`skills/ponytail/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail/SKILL.md) — Core "lazy senior dev" behavior
  - [`skills/ponytail-review/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-review/SKILL.md) — Over-engineering review
  - [`skills/ponytail-audit/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-audit/SKILL.md) — Whole-repo audit
  - [`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) — Benchmark scoreboard
  - [`skills/ponytail-help/SKILL.md`](https://github.com/DietrichGebert/ponytail/blob/main/skills/ponytail-help/SKILL.md) — Quick reference

- **[`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md)**: The compact rule file used by instruction-tier hosts, providing the same behavioral constraints without plugin overhead.

## Implementation Examples

### Claude Code Plugin Configuration

Place this [`plugin.json`](https://github.com/DietrichGebert/ponytail/blob/main/plugin.json) in `.claude-plugin/` to register commands and hooks:

```json
{
  "name": "ponytail",
  "description": "Portable skill set for Claude Code",
  "commands": [
    { "name": "/ponytail", "skill": "ponytail" },
    { "name": "/ponytail-review", "skill": "ponytail-review" }
  ],
  "hooks": ["hooks/claude-codex-hooks.json"]
}

```

This configuration enables automatic skill loading and mode switching through the `/ponytail` command family.

### OpenCode Server Plugin

Create `.opencode/plugins/ponytail.mjs` to inject rules on every turn:

```javascript
export async function onChatTransform({ systemPrompt }) {
  // Append the Ponytail rule set on every turn
  const ponytailRules = await fetchRuleSet('AGENTS.md');
  return `${systemPrompt}\n${ponytailRules}`;
}

```

The `onChatTransform` function ensures the Ponytail behavioral constraints are present in every chat context without explicit user activation.

### Cursor Rule File

For hosts requiring only instruction files, copy the contents of [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) into `.cursor/rules/ponytail.mdc`:

```markdown

# Ponytail Rules

<AGENTS.md contents here>

```

Cursor automatically reads this file on every interaction, applying the Ponytail behavioral framework without additional installation steps.

## Summary

- Ponytail supports **21+ agent hosts** through a two-tier adapter system: full plugins and instruction files
- Full integrations exist for Claude Code, Codex, OpenCode, Grok Build, pi, Hermes, and Qoder using JSON, YAML, or JavaScript adapter files
- Instruction-tier support covers Cursor, Windsurf, Cline, GitHub Copilot, Zed, and others via [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) or host-specific rule files
- All adapters reference the same six core skills in the `skills/` directory and the compact [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) ruleset
- The [[`docs/agent-portability.md`](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md)](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md) file serves as the canonical reference for adapter implementations

## Frequently Asked Questions

### Does Ponytail require different skills for each agent host?

No. Ponytail is designed to be **agent-portable**—the same six core skills in the `skills/` directory work across all supported hosts. Each host uses a thin adapter (plugin JSON, YAML, or instruction file) to bridge these skills to its native interface, ensuring consistent behavior whether you are using Claude Code or a simple [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) file in Zed.

### What is the difference between plugin-tier and instruction-tier integration?

**Plugin-tier** integrations (Claude Code, OpenCode, Hermes) support session activation, mode tracking, and command registration through native APIs. **Instruction-tier** integrations (Cursor, GitHub Copilot, Zed) rely on static rule files like [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) that are injected into every context. Both tiers access the same underlying skills, but plugins offer dynamic state management while instruction files provide always-on constraints.

### How do I add Ponytail support to a host that is not officially listed?

Copy the [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) file from the repository root into your project directory. Most generic agents (including Antigravity, CodeWhale, and Amp) automatically detect this file and treat it as an instruction set. If your agent supports custom system prompts, paste the contents of [`AGENTS.md`](https://github.com/DietrichGebert/ponytail/blob/main/AGENTS.md) into the prompt configuration, or reference individual skill files from the `skills/*/` directories.

### Where are the adapter files located in the repository?

Host-specific adapters are distributed throughout the repository structure: Claude Code files reside in `.claude-plugin/`, Codex in `.codex-plugin/`, OpenCode in `.opencode/`, and so on. The master mapping of all supported hosts and their corresponding adapter paths is maintained in [[`docs/agent-portability.md`](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md)](https://github.com/DietrichGebert/ponytail/blob/main/docs/agent-portability.md).