Skip to content

Releases: DietrichGebert/ponytail

v4.8.3: lazy in subagents too

24 Jun 02:38
025da37

Choose a tag to compare

New

  • The ponytail ruleset now injects into subagents via a SubagentStart hook (#254) — spawned subagents stay lazy, not just the main thread.

Docs

  • Korean README — README.ko.md (#283)
  • OpenCode npm install + npm badge across the English and Spanish READMEs; dropped the obsolete command-symlink note (#285)

Full changelog: v4.8.2...v4.8.3

v4.8.2: now on npm

24 Jun 02:27
17e2773

Choose a tag to compare

Ponytail is now installable from npm as @dietrichgebert/ponytail, published from CI via npm trusted publishing (OIDC, with provenance) — no tokens.

OpenCode

{ "plugin": ["@dietrichgebert/ponytail"] }

Also in this release

  • pi-extension status bar indicator for the active ponytail mode (#275, #279)
  • Swival install instructions (#264)
  • PowerShell-safe shared hooks (#265)
  • uninstall cleanup for state left outside plugin files (#228)
  • benchmark + test fixes (#274, #268)

Full changelog: v4.8.1...v4.8.2

v4.8.1: consistent versioning

23 Jun 16:29
763e04d

Choose a tag to compare

Patch release. Metadata only, no changes to the ruleset or behavior.

v4.8.0 shipped with the version manifests still reading 4.7.0 (and the package.json files at 0.1.0), so plugins reported 4.7.0 as the latest version even after updating. This release aligns every version-bearing file to 4.8.1 so the version reports correctly across Claude, Codex, Copilot, and Gemini.

Fixes

  • Align all four plugin manifests and both package.json files to 4.8.1 (#260, #262)
  • Add a CI guard (scripts/check-versions.js) that fails when version files disagree, or when a release tag does not match the manifest version, so this cannot recur

Updating

Update the ponytail plugin in your host (re-run your marketplace or plugin update, or reinstall). It will then report 4.8.1.

v4.8.0: comprehension first, now with an MCP server

23 Jun 00:52
dedc97c

Choose a tag to compare

He read the whole thing first, then wrote less.

This release sharpens the core ruleset (comprehension before laziness, reuse before rewriting), ships an MCP server for the rules, adds a measured-impact scoreboard, and lands a security bump. Two more agents join the family.

✨ Features

  • ponytail-mcp: an MCP server that serves the ruleset to any MCP-capable agent (#91)
  • /ponytail-gain: measured-impact scoreboard — less code, less cost, more speed from the benchmark medians (#108)
  • Antigravity support via .agents/rules/ponytail.md (#119)
  • CodeWhale support — native AGENTS.md reader, zero setup (#124)
  • argument-hint on the ponytail skill (#85)

🔒 Security

🛠 Fixes

  • Comprehension-first guard + reuse rung — climb the ladder only after understanding the problem; reuse what already lives in the repo before rewriting it (#245, #217)
  • Don't embed shell-unsafe install paths in the statusline setup nudge (#224)
  • Portable Python command in robustness-audit.js (Windows) (#209)
  • Don't write output on SessionStart for Copilot (#168)
  • Register skills dir via config hook so OpenCode discovers ponytail skills (#138)
  • Avoid Gemini loading Claude hook events (#139)
  • Statusline reads the flag from CLAUDE_CONFIG_DIR, not just ~/.claude (#154)
  • Guard final writeHookOutput against stdout EPIPE in ponytail-activate (#149)
  • Strip UTF-8 BOM before parsing settings.json in ponytail-activate (#148)
  • Resolve test failure on Node.js < 20.11.0 (#157)
  • Only deactivate on a standalone "stop ponytail" / "normal mode" (#162)
  • Pin all four safety carve-outs in the rule-drift canary (#114)

📊 Benchmarks

  • Agentic LOC + safety benchmark against a fair agentic baseline (#126, #158)
  • Completeness judge so LOC wins can't hide under-delivery (#171)
  • critic-email task reproducing the critique's own example (#173)

📚 Docs & examples

  • Spanish (LATAM) README translation (#110)
  • 6 new over-engineering survivors + platform-native guide (#109)
  • Agentic benchmark chart and corrected cost claim (42–75%, 30-rep) in the README (#160, #129)

Full changelog: v4.7.0...v4.8.0

v4.7.0: lazy in OpenClaw now

16 Jun 11:56
adad50d

Choose a tag to compare

OpenClaw is the fastest-growing open-source agent out there, an always-on assistant that reads your messages and runs your workflows. The lazy senior dev now lives inside it.

clawhub install ponytail and he's there: an OpenClaw skill that kicks in on coding tasks and tells the agent to write less. The review, audit, debt, and help skills come along too. He does not care how big the house is. He still deletes more than he adds.

The skill is generated straight from ponytail's single source, so the OpenClaw copy cannot drift from every other platform. One ruleset, now on one more agent.

Tested the boring way: installed OpenClaw, loaded the skill, watched it come up ready and visible to the model. Then he went back to not talking.

v4.6.0: help, reluctantly

15 Jun 14:39
ce153bc

Choose a tag to compare

He has never explained a command in his life. You typed /ponytail-help and got
nothing, because the file was never actually there, only the promise of it in the
docs. The most senior-dev bug there is: works in the standup, missing from the repo.

Now it ships. /ponytail-help is wired up alongside the other commands on every
skill-capable host (Claude Code, Codex, OpenCode, Gemini CLI, pi): one command that
lists the rest. A new parity test makes sure no future command can be advertised
without the files to back it. He hates writing documentation. He hates broken
promises more.

We benchmarked him on a tiny local model and shipped the flop.

A contributor added an Ollama runner so you can test ponytail on local models. We
ran it on llama3.2 (3B) and the lines-of-code win turned out to be noise: one run
lands 17% under baseline, the next 50% over, the median shrugs. The skill is tuned
for models that actually follow instructions. A 3B model nods along and writes the
boilerplate anyway.

We published that instead of burying it. A benchmark you only show when it flatters
you is an ad. The frontier numbers (80-94% less code on Haiku, Sonnet, Opus) still
hold, and now there's an honest note on where they stop. Full reproduction in
benchmarks/results/.

Swept up on the way out: a counter that scored unfenced code as zero, and a Unicode
character that crashed the runner on Windows after the work was already done.

He'd call it a quiet release. Then he'd stop talking.

v4.5.0: lazy in Copilot

15 Jun 09:50
60a75f8

Choose a tag to compare

This release is mostly other people, and that's the point. GitHub Copilot CLI is now a full plugin host, contributed by @maxfelker (a Microsoft engineer) who built it with Copilot, tested it live, then reviewed his own PR in ponytail ultra (the headline finding was "delete a test"). CI, an npm test script, and a python3 fix came from @christophermayfield. Plus a fix for the hooks erroring when node isn't on PATH (Nix/nvm setups). The tool that does less got more thorough by getting more hands.

  • GitHub Copilot CLI plugin: copilot plugin marketplace add DietrichGebert/ponytail then copilot plugin install ponytail@ponytail.
  • CI on every push and PR, plus npm test.
  • Correctness checks work on macOS/CI now (python3 probe).
  • Hooks degrade gracefully when node isn't on PATH.

What's Changed

New Contributors

Full Changelog: v4.4.0...v4.5.0

v4.4.0: field-tested, still lazy

15 Jun 01:06
1c420ad

Choose a tag to compare

The headline of this release isn't a feature, it's a field test. A user ran ponytail across a from-scratch rewrite of a real system: nine phases, protocol plus desktop app plus simulator plus Raspberry Pi daemon plus ESP32 firmware. The verdict was "net win, kept it on the whole build," and across all nine phases "it never once trimmed a failsafe, validation, or auth check." It also flagged where the laziness needed a tighter leash. v4.4.0 is the result.

  • Sharper rules from that feedback: hardware is never the spec ideal (leave the calibration knob), the one-runnable-check rule is now a headline ("lazy code without its check is unfinished"), and explanation you explicitly asked for isn't debt.
  • /ponytail-debt: harvests the ponytail: shortcuts you've deferred into a ledger, so "later" doesn't quietly become "never."
  • A behavior-gate eval so those rules can't silently regress.
  • A dark-background logo (community-contributed) and a cleaner README.

What's Changed

Full Changelog: v4.3.0...v4.4.0

v4.3.0: more agents, still lazy

14 Jun 22:04
b545f15

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v4.2.0...v4.3.0

v4.2.0: lazy in OpenCode now

13 Jun 01:28

Choose a tag to compare

Added

  • OpenCode support: a plugin that injects the ponytail ruleset every turn and adds /ponytail + /ponytail-review, with README install steps. (#16)

Fixed

  • Mode filter no longer strips rule bullets containing a colon. (#14)
  • Hooks use CLAUDE_PLUGIN_ROOT, fixing activation that failed with Cannot find module. (#12)