Releases: Gentleman-Programming/gentle-ai
v1.33.2
Patch release: six bug fixes across Windows install/detection, SDD, OpenCode, and self-update.
🐛 Bug Fixes
Windows
- The install script now updates the version correctly.
install.ps1persists the install dir to the userPATH, sets UTF-8 console encoding (no more garbled icons likeÔ£ù), and the verify step no longer re-runs the upgrade flow. (#201 → #711) - Engram & GGA no longer show "not installed" after a fresh install. Detection now falls back to known install locations when the running process
PATHis stale, and invokes the GGA PowerShell shim correctly viapowershell -File. (#177 → #712)
SDD
- No more duplicate sub-agents. The orchestrator now deduplicates sub-agent launches across all agent variants, preventing "file modified since last read" conflicts and wasted tokens. (#194 → #710)
sdd-onboardis now assignable on every agent. It was missing from most per-agent model-assignment lists — you can now pick a model for it in OpenCode, Claude, Kimi, and the rest. (#699 → #716)
OpenCode
- Agent
variant(effort) is preserved during background delegation. Delegated subagents keep their configured variant instead of silently dropping it. (#606 → #717)
Self-update
- Cleaner TUI startup. Auto-upgrade no longer fires on TUI entry, so its output can't surface unexpectedly on exit when re-exec fails — the TUI's own Upgrade tools check still covers updates. (#696 → #706)
🙏 Thanks
Reports and contributions from @aleka (#696, PR #706), @danielgap (PR #704, basis for #716), @Lokeraar (#699), @MzaGuille (#606), @jcabrerahi (#194), @Codenburg (#201), and @JuanMPinera (#177).
📦 Install / Upgrade
Upgrade from the TUI (Upgrade tools) or re-run the install script. Prebuilt binaries for macOS, Linux, and Windows (amd64 / arm64) are attached below — verify against checksums.txt.
Full changelog: v1.33.1...v1.33.2
v1.33.1
v1.33.0
What's new in v1.33.0
10 PRs landed since v1.32.0, focused on multi-model SDD workflows, security hardening, and operator visibility. Contributions from @danielgap (4 PRs!) plus maintainer work.
Multi-model SDD (the headline)
-
Judgment-Day with configurable per-phase models. The JD agents (
jd-judge-a,jd-judge-b,jd-fix-agent) now have their own model assignment slot in the TUI, separate from the rest of the SDD pipeline. You can wire JD to cheaper/faster models when running dual review, while keeping the main phases on Opus. Three PRs landed the chain end-to-end: foundation (#475), agent prompt files for Claude+Kiro (#476), TUI picker integration (#477). Thanks @danielgap. -
Sync now reports which files changed.
gentle-ai syncpreviously printed only an aggregate file count. The output now lists each file with its action (created / updated / deleted), so users can audit what actually moved before trusting the run. (#498 — thanks @danielgap)
New CLI commands & flags
-
gentle-ai doctor— a read-only ecosystem diagnostics subcommand. Checks tool binaries (PATH resolution + shadow detection for engram/gga/claude/opencode/gentle-ai),state.jsonvalidity, Engram MCP reachability, and disk space. Output ispass/warn/failper check, with remedy suggestions on failure. (#690) -
OpenCode custom providers in the model picker. The TUI Configure Models screen previously only showed providers from the cached opencode catalog. Now it merges custom providers declared in your
opencode.json— on key collision, your custom entry wins (user-managed beats catalog). (#693)
Security hardening
-
Default deny for sensitive paths in permissions. New installs ship with a default deny list covering
~/.ssh/*,~/.credentials/*,~/Library/Keychains/*,**/*.pem,**/*.key,**/.env*,**/secrets/*,~/.aws/credentials,~/.config/gh/hosts.yml,**/*.p12,**/*.pfx. Applied to Claude Code and OpenCode (the two adapters with a permissions overlay). User-managed deny rules are preserved. (#689) -
CI workflows pinned to immutable commit SHAs. All
.github/workflows/*.ymlreferences to floating action tags (@v4,@v5,@v6,@v7) are now pinned to specific SHAs with the version as a comment. Dependabot/Renovate can keep them updated; the SHA pin closes the supply-chain hole. (#692)
Install & upgrade
- Auto-detect order now matches the docs.
effectiveMethodused to pickbrew → binaryand never auto-selectedgo-install, even whengowas available and the tool had aGoImportPathdeclared. The detection now followsbrew → go-install → binaryas documented. (#691)
Docs
- Comprehensive docs sync. Caught up
README.md,PRD.md,docs/quickstart.md,docs/usage.md,docs/components.md,docs/agents.md,docs/non-interactive.md,docs/platforms.md,docs/rollback.md, anddocs/antigravity-sdd-workaround.mdwith all the v1.31.0 + v1.32.0 changes (preset label renames, persona/preset decouple,--scope=workspace,GENTLE_AI_CONFIRM_UPDATE, doctor command, sensitive-paths deny, Trae IDE agent, Antigravity scope clarification, etc.). (#697)
Contributors
Big thanks to @danielgap for the JD chain (3 PRs across days) and the sync-show-files feature.
Install
brew upgrade gentle-aior gentle-ai upgrade if you installed via the script path. If you hit anything weird, try the new gentle-ai doctor to surface tool/state/MCP issues at a glance.
v1.32.0
What's new in v1.32.0
A productivity-focused release: every fix this cycle was driven by a real reporter (or by the persona/preset overhaul that landed in v1.31.0). 13 PRs from 8 contributors plus the maintainer.
TUI & UX
-
Claude model picker now shows your active preset. Opening Configure Claude models used to always start at
Balancedregardless of what you had saved — now the picker reads~/.gentle-ai/state.jsonand pre-selects the matching preset (or Custom if your assignments don't match any built-in). Adds aCurrent: <preset>hint under the title. (#681 → #675) -
TUI agent selection respects
state.jsonagain. Both the Select AI Agents screen and the pre-upgrade backup were reading the filesystem for "which agents are installed", which silently re-marked every IDE config dir on disk — and, worse, ballooned snapshot backups to ~25 GiB by including dirs the user had explicitly unselected.state.InstalledAgentsis now the canonical source. (#684 → #114 + #354)
Install & upgrade
-
install.shupgrades now pin to the release tag. The script-based upgrade path used to fetchscripts/install.shfrommain, so any commit between releases could land in a user's upgrade run before any version gate. The path now resolves to the exact target version (v1.32.0/scripts/install.sh) and fails closed when the tagged script is unreachable. (#683 → #247) -
Windows installs no longer roll back on directory fsync. Windows/NTFS rejects fsync on a directory handle (
ERROR_ACCESS_DENIED) even as Administrator. The installer used to treat that as failure and roll back successfully-written files. The tolerance was added in code on day one; this release documents the contract so contributors don't re-introduce a strict check. (#685 → #294)
Skills & SDD
-
comment-writerskill no longer overrides--persona neutral. The skill used to hard-code a "use Rioplatense voseo" rule and ship all examples in voseo, which contradicted the neutral persona's own contract. The skill is now language-neutral and defers regional tone to the active persona. (#680 → #674) -
Skill registry parses Windows line endings. SKILL.md files written with CRLF (the Git for Windows default with
core.autocrlf=true) used to silently fail frontmatter parsing —namefell back to the directory name anddescriptionrendered as—. The parser now normalizes CRLF/CR → LF before YAML. (#679 → #678) -
Engram protocol block stops accumulating in your config files.
gentle-ai syncused to append a fresh<!-- gentle-ai:engram-protocol -->block on every run if the existing block had an orphan or missing closing marker — over timeCLAUDE.mdandAGENTS.mdcould grow with dozens of duplicates. The block matcher now strips orphans before deciding to replace vs. append. (#687 → #301)
Agents
-
Trae IDE is now a first-class agent. Detection via
~/.trae, system prompt touser_rules/gentle-ai.md, MCP tomcp.json, skills toskills/. (#532 → #136 — thanks @Nathanael-Huaman) -
AgentBuilder hardens generated skill prompt boundaries. Stops generated skills from leaking context that should stay scoped to the skill itself. (#577 → #576)
-
First slice of Engram data-directory work landed. Cross-platform disk-space utilities — foundation for moving Engram data safely. More slices coming. (#638 → #346 — thanks @tonyblu331)
-
Codex now writes
AGENTS.md(uppercase) instead of the lowercase variant, matching the Codex CLI's read path on case-sensitive filesystems. (#686 → #299) -
OpenCode Desktop reports the correct workspace. Slash commands used to capture the Electron process directory instead of the opened project — agents received the wrong workspace and could write artifacts under the OpenCode install dir. (#574 → #74 — thanks @LucianoDPerez)
-
Stale Context7 MCP fields no longer ship. OpenCode's strict schema rejected some legacy field shapes the installer was still writing. (#369 → #57 — thanks @LCubero)
Contributors
Thanks to: @LucianoDPerez, @LCubero, @tonyblu331, @Nathanael-Huaman, and everyone who filed actionable bug reports.
Install
brew upgrade gentle-aior gentle-ai upgrade if you installed via the script path.
v1.31.0
Changelog
- e0f3599 feat(selfupdate): add GENTLE_AI_CONFIRM_UPDATE for interactive update approval (#663)
- 8372231 fix(agents/antigravity): resolve CLI and Desktop config paths dynamically (#661)
- 5108fb0 fix(agents/pi): use positional pnpm dlx argument to avoid --package misparse (#660)
- c10e022 fix(assets/claude): add missing sdd-init and sdd-onboard agent definitions (#664)
- 0afc284 fix(components/engram): verify SHA256 checksum before installing direct binary (#662)
- ff79307 fix(components/gga): write Windows config to %APPDATA% to match GGA's read path (#669)
- 96fded7 fix(e2e): switch minimal preset tests from --persona neutral to --persona custom (#673)
- d006dca fix(install): add --scope flag to install into workspace instead of global ~/.claude (#666)
- 9a8df49 fix(install): merge --agent install into existing state.json instead of overwriting (#667)
- 4f4c646 fix(sdd): add executor override to subagent SKILL.md files to stop delegation loop (#665)
- 7c5165f fix(sdd): require text response after persistence in sub-agents to avoid lost output (#668)
- 66b690b fix(tui): decouple persona from preset and rename preset labels (#671)
v1.30.10
v1.30.9
v1.30.8
v1.30.7
v1.30.7 ships unified Google Antigravity support: the installer now keeps the public antigravity option while using the new Antigravity-compatible config, skills, MCP, plugin, and dynamic subagent behavior.
Highlights
- Unified Antigravity surface —
antigravityis the single public installer option; the separateantigravity-clioption was removed. - Antigravity-compatible config layout — settings, skills, MCP config, and plugin hooks are installed under
~/.gemini/antigravity-cli/while global prompt/persona content stays in~/.gemini/GEMINI.md. - Engram MCP in Antigravity — the Antigravity plugin now includes its own
mcp_config.json, hook reminders, and defaultengram mcpinvocation so Antigravity receives Engram's standard MCP toolset. - Dynamic subagents with MCP tools — the Antigravity SDD orchestrator defines runtime phase subagents with MCP tools enabled.
Contribution highlights
- Added unified Antigravity adapter coverage for config paths, settings, skills, MCP config, and catalog/factory resolution.
- Added regression coverage ensuring
antigravity-cliis not exposed as a separate CLI/TUI/catalog agent option. - Added Engram MCP/plugin tests for Antigravity's plugin-root
mcp_config.json, hooks, and default MCP invocation. - Updated SDD/OpenSpec artifacts and golden files for the unified Antigravity behavior.
Contributors
- @Cobies — initial Antigravity support work and PR #590.
- @Alan-TheGentleman — follow-up fixes, review, merge, and release.
Fixes included
feat(antigravity): add unified Antigravity support through the existingantigravityagent option. (#590)docs(sync): document managed agent sync scope.
Verification
- PR #590 CI passed: unit tests and E2E tests on Ubuntu, Fedora, and Arch.
- Local verification passed:
go test ./...andgit diff --check.
Changelog
v1.30.6
v1.30.6 is a patch release focused on cleaning up the rough edges found after the OpenCode SDD preflight work: localized prompts now stay in the user's language, Engram update checks target the correct release channel, and the Pi-only installer path has symmetric back navigation.
Highlights
- OpenCode SDD preflight localization — Spanish sessions now get a fully Spanish preflight prompt instead of a Spanish intro followed by English option labels like
Pace,Artifacts, andReview. - Engram update channel filtering — gentle-ai now checks Engram's binary release channel instead of being confused by Pi/package-channel tags.
- Pi-only installer back navigation — selecting only
Piand going back from the dependency plan now returns to agent selection, not unrelated Gentle AI configuration screens.
Contribution highlights
- Added regression coverage for OpenCode preflight prompt localization and preserved-prompt migration.
- Added update-check tests for Engram release filtering, pagination, and GitHub Link header parsing.
- Added broad TUI install navigation round-trip coverage across Pi-only, OpenCode, SDD single/multi, model picker, plugin picker, custom preset, skills, and review paths.
Pi companion notes
- This release improves the Pi-only install flow from the gentle-ai side: Pi users no longer get routed into persona, SDD/TDD, or multi-agent configuration screens when navigating back from the generated dependency plan.
- No Pi package changes are required for this fix; upgrading gentle-ai is enough.
Fixes included
fix(opencode): localize SDD preflight prompts and harden preserved OpenCode orchestrator prompt migration. (#593)fix(update): filter Engram updates to the binary release channel so Pi/package tags do not appear as binary upgrades. (#594)fix(tui): restore Pi-only back navigation and add install-flow round-trip regression coverage. (#595)