# Changelog

## 0.1.18 (2026-09-30)

- Docs: README now documents the `quietStartup`/`hideStatus` config keys, the `PONYTAIL_QUIET_STARTUP`/`PONYTAIL_HIDE_STATUS`/`PONYTAIL_SUBAGENT_SCOPE` env vars, and the `/ponytail-review|audit|gain|debt|help` forwarder commands.

## 0.1.17 (2026-09-28)

### Changed

- Perf: `getPonytailInstructions` caches the SKILL.md read at module level
  (one read per process instead of every `before_agent_start`/turn);
  a failed read is retried next turn so a SKILL.md that appears mid-session
  (install/update) is picked up.
- Perf: `readConfig` in `ponytail-config.js` is memoized per
  path+mtime+size (one `stat` per call, re-parse only on change);
  `writeDefaultMode` invalidates the cache. Test XDG swaps (new path) read
  fresh.

## 0.1.16 (2026-09-27)

> Republished after the CI version-table guard fix (matrix had aborted before this job ran).

### Changed

- `ponytail-help` and `ponytail-gain` are one-shot display cards and now carry
  `disable-model-invocation: true`, dropping them from the system-prompt skills
  section (~0.25k tokens per fresh session). Invoke via `/skill:ponytail-help`
  / `/skill:ponytail-gain`; the main `ponytail` skill now lists all sibling
  skill paths so they stay discoverable.

## 0.1.15 (2026-09-24)

### Fixed

- `/ponytail review` now parses: the set-mode path uses `normalizePersistedMode` (accepts `review`), while `set-default` still rejects it via `normalizeMode` (review is session-only, #377). Completion vocabulary and the command description now include `review`.
- `before_agent_start` double-inject guard uses `startsWith` semantics (leading marker, or a marker leading an inherited `## Task Contract` block) instead of a blanket `includes` — an incidental mid-text mention of the marker in the base prompt no longer suppresses injection, mirroring the `tool_call` subagent side.

### Changed

- README and ponytail-help document `review` in the intensity tables and the `/ponytail <mode>` command row.
- `/ponytail review` is session-only end to end: the command sets the live
  session mode, but review never rides the persisted session-entry channel (a
  reload can't resurrect it) — matching the `default review` rejection.

## 0.1.14 (2026-09-12)

### Fixed

- ponytail-help Update section now documents the Pi flow (reinstall via `pi install npm:@bacnh85/pi-ponytail`) instead of stale Claude Code /plugin marketplace and Codex instructions; dropped the stale Codex/Claude Code host note from the Skills section.
- ponytail skill: removed a stray hardware paragraph (PCA9685/clock drift) leaked from an unrelated project — it was injected into every system prompt.
- Fixed "What change" → "What changes" in both intensity tables (ponytail, ponytail-help).
- extensions: removed an unreachable fallthrough notify at the end of the `/ponytail` handler (all `parsePonytailCommand` result types already return).

## 0.1.13 (2026-09-04)

### Added

- Subagent injection (upstream #254/#522 equivalent): a `tool_call` hook prepends a compact ponytail block to the `subagent` tool's `instructions`, so built-in-only subagents (which don't load extensions) inherit the ladder. Applies to all subagent roles except `off` and `review` modes; plans/reviews/reports explicitly requested by the task are delivered in full. `PONYTAIL_SUBAGENT_SCOPE=off` disables. Safety: injection is skipped when it would push instructions past pi-subagent's 16KB cap (caller's contract is never truncated), and `before_agent_start` skips when the marker is already present (extension-loaded children self-inject — no double copy).

### Changed

- Bare `/ponytail` now reports the active level and persisted default (upstream #99) instead of silently resetting the mode. Use `/ponytail <mode>` to change level; README and help skill updated to match.
- Upstream sync reviewed through v4.9.0: all skills and pi-relevant extension fixes already present; post-v4.9.0 upstream is host-adapter work (Grok/Copilot/marketplace), N/A for Pi.

## 0.1.12 (2026-08-29)

### Added

- `/ponytail` argument completion offers runtime modes plus `status|default`.

## 0.1.11 (2026-08-14)

### Fixes

- `/ponytail-review`, `/ponytail-audit`, `/ponytail-debt`, `/ponytail-gain`, `/ponytail-help` now pass `{ expandPromptTemplates: true }` to `pi.sendUserMessage()` so the `/skill:` payload actually expands. Since pi 0.84.1, extension-originated `sendUserMessage()` skipped skill/command expansion; pi 0.84.2 added the opt-in flag that restores it.

## 0.1.10 (2026-08-05)

### Improvements

- Patch version bump for release sync and package documentation update.

All notable changes to `pi-ponytail` will be documented in this file.

## 0.1.9 (2026-07-30)

### Improvements

- Patch version bump for release sync and package documentation update.

## 0.1.6 (2026-07-20)

### Features

- Added `hideStatus`, `quietStartup`, and review mode support.
- Enhanced `/skill:ponytail-review` over-engineering diff review workflow.

## 0.1.4 (2026-07-10)

### Features

- Initial release of `@bacnh85/pi-ponytail` (fork of ponytail v4.8.4 adapted for Pi).
