Skip to content

v2.5.0 — The Release Where Pi Becomes a Gentle Tool

Choose a tag to compare

@Alan-TheGentleman Alan-TheGentleman released this 08 Sep 07:52
· 380 commits to main since this release
d4792fa

gentle-pi v2.5.0 is the biggest gentle-pi release so far: Pi gets a visual layer, its own subagents, its own todo list, and the RDD-aware delegation that the underlying Gentle AI runtime makes possible.

Provenance

  • Previous stable: v2.4.0525812fb
  • Release target: v2.5.0d4792fafaf8f2530ef24692080cd93bd45c77d29
  • CI workflow: run 34201112297
  • Verification: package verification (verify) and Windows review (review-repository-windows) jobs both succeeded; pnpm test on the release commit ran 1635 tests, 1625 passing, zero failures, ten expected skips; the provider contract mirror check (bundle 1.2.0) and the packed runtime harness passed; package verification passed with 167 required files and 68 exact byte-identical contract artifacts for the v2.7.0 runtime; published to npm with provenance by the "Publish to npm" workflow from the annotated v2.5.0 tag.
  • Pinned Gentle AI: v2.7.0, provider contract 1.2.0

What's new

Gentle Shell: Pi looks and feels like a Gentle tool

One status line replaces Pi's three-line footer: project and branch, model and effort, a context gauge that turns amber at 80% and red at 95%, session cost (marked sub when you run on a subscription), MCP status, and the session name. The prompt sits in a rounded frame with a petal that spins while the agent works and turns amber when messages are queued. Every call into gentle-ai renders as a card with a colored rail: amber while it runs, green when it finished, red when it failed. Working-tree changes show below the editor as they happen, and /gentle:changes (alt+g) opens them as a diff overlay you can jump from straight into $EDITOR and back. /gentle:usage shows how much of your Codex or Claude subscription window you have used.

Included work: #602.

Gentle Agents: subagents that live inside Pi

Delegating work no longer needs a third-party package. Each subagent runs as its own isolated Pi child, streams what it is doing into a card above the editor (task, model, tokens, cost, time), and everything is kept on disk: history, child sessions, and a markdown transcript per task. /gentle:agents (alt+a) opens the overlay: tasks on the left, the selected agent's whole thread on the right, with every tool output and every thinking block in full, scrollable with the keys or the mouse. You can stop one agent or all of them, follow the tail, or open the session in your editor from the footer buttons. The card and the overlay follow the active session: after /new the old tasks leave, on /resume they come back.

Included work: #609, #648, #657, #660, #684, and #689.

Gentle Todo

The third-party todo extension is replaced by a package-owned one drawn in the same card language: finished lists drop on reload, long lists fold.

Included work: #604.

Delegation that knows when to double-check

The orchestrator now reads the receipt-driven development switch before delegating. When it is on and the native review closes, the worker that wrote the code runs the verification and the review is the independent check, so you stop paying for a second verifier on every change. When it is off, or you said "not this time" to the review prompt, the new gentle_review assess operation asks gentle-ai v2.7.0 how risky the change is, and only risky changes get a separate verifier.

Included work: #664, #665, #667, and #669.

Say yes to reviews once per session

A session-scoped execution permission lets you grant the review once and let every candidate in that session proceed, instead of answering the same prompt each time; the coordination is hardened so two sessions cannot step on each other.

Included work: #643, #647, and #625.

Telemetry, the honest kind

Once per Pi process, the first primary-session turn asks the pinned gentle-ai binary to send its anonymous usage statistics, and /gentle:telemetry status|enable|disable relays the binary's answer. Nothing is sent from Pi itself, nothing about your repository or your machine is included, and DO_NOT_TRACK, GENTLE_AI_TELEMETRY=0, and CI=true stop it before the child is even started.

Included work: #678.

Breaking changes

  • Gentle Agents requires Pi 0.85.1 or newer.
  • Remove npm:pi-subagents-j0k3r and npm:rpiv-todo from your Pi packages: gentle-pi ships Gentle Agents and Gentle Todo now, and while the old packages are still installed the new tools stay unregistered and a startup warning says so.

Upgrade now

pi install npm:gentle-pi@2.5.0

Restart Pi after installation, then run:

gentle-ai sync

Run gentle-ai sync after the binary moves to v2.7.0 so the managed assets, including the risk-aware delegation guidance, match the runtime. Released gentle-pi builds up to 2.4.0 pin gentle-ai v2.6.0; they keep working, but the assess operation and the RDD-aware delegation need v2.7.0 — upgrade both together.

What was fixed

Package-local Gentle AI pin bumped to v2.7.0

INSTALLER_VERSION, the four signed-archive digests verified against the release's Minisign-signed checksums.txt (trusted comment repo=Gentleman-Programming/gentle-ai;tag=v2.7.0) and their extracted-binary digests, the Windows Go SumDB module checksum for v2.7.0 (4e4470b3), and a 2.7.0 capability row that repeats 2.6.0 because the binary advertises the same capabilities/v2.5 surface.

Included work: #704.

Windows

Executable candidate modes are accepted on Windows (thanks @dnlrsls), the CodeGraph shim is resolved and launched without a shell and with quoted PATH entries normalized (thanks @Shammael-genios), and consent keeps Windows working-directory paths.

Included work: #676, #553, and #658.

Review relay

Status decoding accepts collect and execute root actions, the frozen manifest digest, status/v6 and later for untracked selection, and capture-result inputs without a changed-path manifest; the managed-assets continuation is honored on stop transitions and failure envelopes; a retried START rebinds its candidate view and a lineage's finalize view is replaced without leaking it; the committed selector is retained for status; the relay handshake is declared in the session environment; packed abandon authorization matches the native eight-line binding (thanks @danielgap); Git-compatible null config paths and current authority inventory entries decode correctly.

Included work: #612, #616, #618, #621, #629, #637, #639, #672, #628, #613, #505, #652, #651, and #650.

Agents

Profile-specific runtime storage is respected and agent completion waits for settlement and owned-process cleanup (thanks @decode2); the finished row of the card clears on an idle terminal; the card caps its rows to the terminal height.

Included work: #634, #635, #623, and #679.

Shell

Cards render within narrow terminal widths, and extension statuses stay in the bar palette with the location compacted before anything is dropped.

Included work: #640.

Numbers

81 non-merge commits, 40 merged pull requests, and 5 unique GitHub PR authors since v2.4.0.

Install

pi install npm:gentle-pi@2.5.0

Package: https://www.npmjs.com/package/gentle-pi

Full changelog: v2.4.0...v2.5.0