OpenSource-Hub

ponytail

その他

DietrichGebert/ponytail

AIプログラミングアシスタントが怠惰なベテランエンジニアのように必要最小限のコードだけを書くようにするスキルプラグイン。

概要

Ponytail は Claude Code、Codex などの AI プログラミングアシスタント向けのスキルプラグインであり、YAGNI の原則を貫いています。既存のコード、標準ライブラリ、プラットフォームネイティブな機能の再利用を優先し、確実に動作する最小限のコードのみを記述します。組み込みの意思決定ラダーがエージェントを最もシンプルなソリューションの選択へと導きつつ、検証、セキュリティ、エラーハンドリング、アクセシビリティを決して犠牲にしません。ベンチマークでは、コード量が平均約 54% 削減、コストが約 20% 削減、速度が約 27% 向上し、セキュリティは 100% を維持しています。

README プレビュー

\n  \n    \n    \n  \n\n\nPonytail\n\n\n  He says nothing. He writes one line. It works.\n\n\n\n  \n  \n  \n  \n  \n\n\n\n  \n  \n\n\n\n  ~54% less code (up to 94%) · ~20% cheaper · ~27% faster · 100% safe\n  Measured on real Claude Code sessions editing a real open-source repo (FastAPI + React), against the same agent with no skill. ~54% is the mean across 12 feature tasks (Haiku 4.5, n=4); it reaches 94% where an agent over-builds (a date picker) and is near zero where the code is already minimal. ponytail keeps every safety guard while a bare "write one-liners" prompt drops one. (The earlier single-shot benchmark reported 80-94% as a flat figure; against a fair agentic baseline that is the per-task ceiling, not the average.) Full writeup · reproduce it.\n\n\n\n  Español · 한국어\n\n\n---\n\n\n  \n\n\nYou know him. Long ponytail. Oval glasses. Has been at the company longer than the version control. You show him fifty lines; he looks at them, says nothing, and replaces them with one.\n\nPonytail puts him inside your AI agent.\n\n## Before / after\n\nYou ask for a date picker. Your agent installs flatpickr, writes a wrapper component, adds a stylesheet, and starts a discussion about timezones.\n\nWith ponytail:\n\n```html\n\n\n```\n\nMore survivors in [examples/](examples/).\n\n## Numbers\n\nThe honest measurement is a real agent doing real work: a headless Claude Code session editing [tiangolo's full-stack-fastapi-template](https://github.com/fastapi/full-stack-fastapi-template) (a real FastAPI + React repo), scored on the `git diff` it leaves behind. Twelve feature tickets, the same agent with and without the skill, n=4, Haiku 4.5.\n\n\n  \n\n\n| vs no-skill baseline | LOC | tokens | cost | time | safe |\n|---|--:|--:|--:|--:|--:|\n| **ponytail** | **-54%** | **-22%** | **-20%** | **-27%** | **100%** |\n| caveman (terse-prose control) | -20% | +7% | +3% | +2% | 100% |\n| "YAGNI + one-liners" prompt | -33% | -14% | -21% | -30% | 95%

FAQ (4)

トラブル対応
Windows で Claude Code の 'UserPromptSubmit hook timed out after 5s — output discarded' エラーを修正するにはどうすればよいですか?

これはスクリプトが遅いことが原因ではなく、Windowsでのコールドスタートのオーバーヘッド(初回のPowerShell/nodeの起動、ウイルス対策ソフトによるスキャン)が原因です。フック自体は約0.15〜0.2秒で実行されます。修正方法:ponytailプラグインをPR #1165を含むリリースに更新してください。このリリースではフックのタイムアウトが引き上げられ(例:15秒)、低速なPowerShellのcommandWindowsラッパーではなく、node -e "require(...)"によってフックが直接実行されます。4.8.4での一時的な回避策:hooks/claude-codex-hooks.json(プラグインキャッシュとmarketplaceコピーの両方)を編集し、UserPromptSubmit(必要に応じてSessionStart/SubagentStartも)の"timeout": 5を"timeout": 15に変更してください。注意:ローカルの編集はプラグインの更新のたびに上書きされるため、プラグインを更新することが恒久的な修正方法です。

参照 Issue #1158
トラブル対応
Codex VS Code 拡張機能のコンポーザーで深刻な入力遅延を修正する方法

このラグは、サイズが大きすぎるプラグインの composerIcon(例: Ponytail 5.3.2 の 554 KB の logo.png)が原因で発生しています。Codex はこれを約 739 KB の Base64 として pluginMention.attrs.iconSmall にシリアライズし、すべてのプロンプト履歴エントリに重複して書き込むため、永続化された状態が 13 MB を超えて膨張し、状態のシリアライズ/IPC の際にメインスレッドが停止します。修正方法: 1) 大きな composer アイコンを小さなアセットに置き換える PR #1164 を含むリリースへ Ponytail プラグインを更新してください。2) 即時の回避策として、永続化された Codex の状態をクリアします: VS Code を閉じ、プロファイルの state.vscdb を開いて openai.chatgpt エントリを削除してください(または新規の VS Code プロファイルを使用してください)。入力はすぐにスムーズになりますが、巨大なアイコンが履歴に再び書き込まれるとラグが再発します。3) プラグイン作者は、.codex-plugin/plugin.json 内の composerIcon が大きな PNG ではなく、ごく小さなファイル(例: assets/logo-greenpt.svg のような約 6 KB の SVG、または最適化された小さな PNG)を指すようにしてください。

参照 Issue #1159
ハウツー
oh-my-pi (omp) でこのプラグインをインストールして使用する方法

oh-my-pi プラグインとして、2つの方法でインストールできます: 1) ターミナルで omp https://github.com/DietrichGebert/ponytail を実行します — ponytail は自動的にプラグインとして保存されます。2) プラグインマーケットプレイスのコマンドを使用します: omp plugin marketplace add DietrichGebert/ponytail、次に omp plugin install ponytail@ponytail を実行し、omp plugin list で確認します。

参照 Issue #591
トラブル対応
WindowsのClaude CodeでSessionStartコンテキストにPonytailのコードベースマップが表示されないのはなぜですか?

Ponytail 5.2.0–5.3.2の既知のバグ: オプションのcodebase-map生成が、1,000 msの固定タイムアウト付きの子プロセスに移動されました。Windowsでは、他のSessionStartフック(例: superpowers、OpenWolf、claude-mem)による起動時の競合や、大規模なリポジトリ(約2,000の追跡対象ファイル)によって子プロセスが1秒の制限を超過してしまうため、必須ルールは引き続き読み込まれる一方で、マップは警告なく省略されます。修正方法: このタイムアウト問題を解決するPR #1166を含むPonytailリリース(5.3.2以降の最初のリリース)にアップグレードしてください。それまでの回避策: (1) タイムアウトなしでプロセス内でマップを生成するPonytail 5.1.0にダウングレードする。(2) 同時実行されるSessionStartフックの数を減らしてCPUの競合を抑える。(3) リポジトリ内の追跡対象/非追跡ファイルの数を減らす(例: 大量のJSON/データファイルをgitignoreに追加する)ことで、マップ生成が1秒以内に完了するようにする。

参照 Issue #1157