Skip to content

Commit 9a8e525

Browse files
committed
chore(release): prepare 0.29.0
1 parent 31a1342 commit 9a8e525

9 files changed

Lines changed: 42 additions & 36 deletions

File tree

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ GitHub Releases page; `0.8.0` is the new starting line.
1515

1616
## Unreleased
1717

18+
## 0.29.0 (2026-06-01)
19+
1820
- **Reloads pick up MCP and model changes cleanly.** `/reload` now re-reads MCP server configuration added after startup, cleans up stale MCP/model-refresh resources during same-process reloads, and `/model` starts a fresh session when switching models so old context does not carry across providers.
1921
- **Thinking effort controls and safer auto-mode decisions.** Thinking effort is now a first-class setting across the CLI, ACP, web config, and supported providers; Shift+Tab cycles available efforts in the shell, and auto-mode can deliberate with advisor feedback before sensitive or destructive approval flows.
2022
- **Shell sessions get cleaner recaps and rendering.** The interactive shell can show turn recaps, includes hook stdout/stderr in the transcript, improves prompt/file-mention and tool-output spacing, and uses branded browser-login result pages.

README.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -50,15 +50,15 @@ It speaks the [**Agent Client Protocol (ACP)**](https://github.com/agentclientpr
5050
5151
---
5252

53-
## 🆕 What's New in 0.28.0
53+
## 🆕 What's New in 0.29.0
5454

5555
- **Redesigned startup welcome banner.** A cleaner footer-chip layout — the "What's new / Update available" chip now sits on the panel's bottom border, the headline/strapline/help lines align beside the robot logo, and the info grid drops its vertical separator.
5656
- **Terminal-aware rendering for minimal and CI terminals.** The shell UI adapts to your terminal — ASCII glyph fallbacks for `TERM=dumb` and legacy Windows code pages, a reduced-motion mode (`PYTHINKER_REDUCED_MOTION`), and `NO_COLOR`/`CLICOLOR` support — so output stays readable in CI logs, SSH panes, and bare terminals.
5757
- **Windows updates avoid encoded PowerShell.** Native updates launch the signed Inno installer directly with Restart Manager flags instead of a `powershell.exe -EncodedCommand` helper, reducing antivirus false positives, and bootstrap installs show visible `/SILENT` progress.
5858
- **More distribution channels.** Releases now include best-effort Docker/GHCR, Scoop, Nix, and manual WinGet plumbing, with channel-native update guidance where the install format supports it.
5959
- **Repository moved to the Pythoughts-labs GitHub org.** All GitHub URLs, install scripts, CI configuration, and the default `/feedback` repository now point to `github.com/Pythoughts-labs/pythinker-code`; configs that still reference the previous owner are auto-migrated.
6060

61-
Upgrade with `pythinker update`, `pip install --upgrade pythinker-code==0.28.0`, or use the native installer for your platform from the [Releases page](https://github.com/Pythoughts-labs/pythinker-code/releases/latest).
61+
Upgrade with `pythinker update`, `pip install --upgrade pythinker-code==0.29.0`, or use the native installer for your platform from the [Releases page](https://github.com/Pythoughts-labs/pythinker-code/releases/latest).
6262

6363

6464
---
@@ -148,7 +148,7 @@ matches your OS — no Python, Node, or `uv` prerequisite.
148148

149149
| Platform | Recommended install | Artifact source |
150150
|---|---|---|
151-
| **🪟 Windows** | `irm https://pythinker.com/install.ps1 \| iex` | `PythinkerSetup-0.28.0.exe` from [Releases](https://github.com/Pythoughts-labs/pythinker-code/releases/latest) |
151+
| **🪟 Windows** | `irm https://pythinker.com/install.ps1 \| iex` | `PythinkerSetup-0.29.0.exe` from [Releases](https://github.com/Pythoughts-labs/pythinker-code/releases/latest) |
152152
| **<img src="https://img.shields.io/badge/-macOS-000000?style=flat-square&logo=apple&logoColor=white" alt="macOS"> / <img src="https://img.shields.io/badge/-Linux-FCC624?style=flat-square&logo=linux&logoColor=black" alt="Linux">** | `curl -fsSL https://pythinker.com/install.sh \| bash` | native tarball from [Releases](https://github.com/Pythoughts-labs/pythinker-code/releases/latest) |
153153
| **<img src="https://img.shields.io/badge/-macOS-000000?style=flat-square&logo=apple&logoColor=white" alt="macOS"> — Homebrew** | `brew install Pythoughts-labs/pythinker/pythinker-code` | auto-published Homebrew tap |
154154
| **🐳 Docker** | `docker run --rm -it ghcr.io/pythoughts-labs/pythinker-code` | GHCR multi-arch image |
@@ -176,7 +176,7 @@ pythinker # start the interactive TUI
176176

177177
### 🪟 Windows — native installer
178178

179-
`PythinkerSetup-0.28.0.exe` is a signed* Inno Setup wizard. Installs per-user
179+
`PythinkerSetup-0.29.0.exe` is a signed* Inno Setup wizard. Installs per-user
180180
into `%LOCALAPPDATA%\Programs\Pythinker`, registers `pythinker` on your user
181181
PATH (`HKCU\Environment`), broadcasts `WM_SETTINGCHANGE` so new shells see
182182
the change. **No UAC prompt.**
@@ -187,13 +187,13 @@ irm https://pythinker.com/install.ps1 | iex
187187
188188
# Or manually download the installer + checksum from the Releases page,
189189
# verify with Get-FileHash, then run:
190-
.\PythinkerSetup-0.28.0.exe
190+
.\PythinkerSetup-0.29.0.exe
191191
192192
# Open a fresh PowerShell
193193
pythinker --version
194194
```
195195

196-
**Per-machine install** (IT-managed boxes): `.\PythinkerSetup-0.28.0.exe /ALLUSERS`
196+
**Per-machine install** (IT-managed boxes): `.\PythinkerSetup-0.29.0.exe /ALLUSERS`
197197
installs to `%ProgramFiles%\Pythinker` and writes PATH to HKLM (requires admin).
198198

199199
**Upgrade:** `pythinker update` from inside the running app — it downloads
@@ -244,26 +244,26 @@ attached to every GitHub Release.
244244

245245
```sh
246246
# Debian / Ubuntu (x86_64)
247-
sudo dpkg -i pythinker-code_0.28.0_amd64.deb
247+
sudo dpkg -i pythinker-code_0.29.0_amd64.deb
248248
sudo apt-get install -f # only if dpkg reports missing deps
249249

250250
# Debian / Ubuntu (ARM64)
251-
sudo dpkg -i pythinker-code_0.28.0_arm64.deb
251+
sudo dpkg -i pythinker-code_0.29.0_arm64.deb
252252

253253
# Fedora / RHEL / openSUSE (x86_64)
254-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.x86_64.rpm
255-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.x86_64.rpm.sha256
256-
sha256sum -c pythinker-code-0.28.0.x86_64.rpm.sha256
254+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.x86_64.rpm
255+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.x86_64.rpm.sha256
256+
sha256sum -c pythinker-code-0.29.0.x86_64.rpm.sha256
257257
# Fedora / RHEL:
258-
sudo dnf install ./pythinker-code-0.28.0.x86_64.rpm
258+
sudo dnf install ./pythinker-code-0.29.0.x86_64.rpm
259259
# openSUSE:
260-
sudo zypper install ./pythinker-code-0.28.0.x86_64.rpm
260+
sudo zypper install ./pythinker-code-0.29.0.x86_64.rpm
261261

262262
# Fedora / RHEL (aarch64)
263-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.aarch64.rpm
264-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.aarch64.rpm.sha256
265-
sha256sum -c pythinker-code-0.28.0.aarch64.rpm.sha256
266-
sudo dnf install ./pythinker-code-0.28.0.aarch64.rpm
263+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.aarch64.rpm
264+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.aarch64.rpm.sha256
265+
sha256sum -c pythinker-code-0.29.0.aarch64.rpm.sha256
266+
sudo dnf install ./pythinker-code-0.29.0.aarch64.rpm
267267
```
268268

269269
Both packages drop a small `/usr/bin/pythinker` launcher that execs the real
@@ -272,8 +272,8 @@ binary under `/usr/lib/pythinker/`, so your `$PATH` stays tidy.
272272
**Verify before install:**
273273

274274
```sh
275-
sha256sum -c pythinker-code_0.28.0_amd64.deb.sha256 # Debian/Ubuntu
276-
sha256sum -c pythinker-code-0.28.0.x86_64.rpm.sha256 # Fedora/RHEL
275+
sha256sum -c pythinker-code_0.29.0_amd64.deb.sha256 # Debian/Ubuntu
276+
sha256sum -c pythinker-code-0.29.0.x86_64.rpm.sha256 # Fedora/RHEL
277277
```
278278

279279
**Upgrade:** download the new `.deb`/`.rpm` from Releases and `dpkg -i` /

docs/en/guides/getting-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ On Windows, run the PowerShell bootstrap. It downloads the native installer, ver
4444
irm https://pythinker.com/install.ps1 | iex
4545
```
4646

47-
You can also download `PythinkerSetup-0.28.0.exe` manually from the [latest release](https://github.com/Pythoughts-labs/pythinker-code/releases/latest).
47+
You can also download `PythinkerSetup-0.29.0.exe` manually from the [latest release](https://github.com/Pythoughts-labs/pythinker-code/releases/latest).
4848

4949
Verify the installation:
5050

docs/en/release-notes/breaking-changes.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ This page documents breaking changes in Pythinker Code releases and provides mig
44

55
## Unreleased
66

7+
## 0.29.0 (2026-06-01)
8+
79
## 0.28.0 (2026-05-31)
810

911
**`.pythinker/AGENTS.md` is no longer loaded as project instructions.** Pythinker now merges only `AGENTS.md`/`agents.md` files from the project root down to the working directory. If you kept instructions solely in `.pythinker/AGENTS.md`, move them to a root or directory-level `AGENTS.md` or they will no longer apply. No action is needed if you did not use `.pythinker/AGENTS.md`.

docs/en/release-notes/changelog.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ GitHub Releases page; `0.8.0` is the new starting line.
1717

1818
## Unreleased
1919

20+
## 0.29.0 (2026-06-01)
21+
2022
## 0.28.0 (2026-05-31)
2123

2224
### What changed in this release

packages/linux-installer/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@ End-user install from the current GitHub Release:
88

99
```sh
1010
# Debian / Ubuntu
11-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code_0.28.0_amd64.deb
12-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code_0.28.0_amd64.deb.sha256
13-
sha256sum -c pythinker-code_0.28.0_amd64.deb.sha256
14-
sudo dpkg -i pythinker-code_0.28.0_amd64.deb
11+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code_0.29.0_amd64.deb
12+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code_0.29.0_amd64.deb.sha256
13+
sha256sum -c pythinker-code_0.29.0_amd64.deb.sha256
14+
sudo dpkg -i pythinker-code_0.29.0_amd64.deb
1515
sudo apt-get install -f # only needed if dependencies fail to resolve
1616

1717
# Fedora / RHEL / openSUSE
18-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.x86_64.rpm
19-
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.28.0/pythinker-code-0.28.0.x86_64.rpm.sha256
20-
sha256sum -c pythinker-code-0.28.0.x86_64.rpm.sha256
21-
sudo dnf install ./pythinker-code-0.28.0.x86_64.rpm
18+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.x86_64.rpm
19+
curl -LO https://github.com/Pythoughts-labs/pythinker-code/releases/download/v0.29.0/pythinker-code-0.29.0.x86_64.rpm.sha256
20+
sha256sum -c pythinker-code-0.29.0.x86_64.rpm.sha256
21+
sudo dnf install ./pythinker-code-0.29.0.x86_64.rpm
2222
# or, on openSUSE:
23-
sudo zypper install ./pythinker-code-0.28.0.x86_64.rpm
23+
sudo zypper install ./pythinker-code-0.29.0.x86_64.rpm
2424
```
2525

2626
The package drops a single executable at `/usr/bin/pythinker` and a license
@@ -41,8 +41,8 @@ bash packages/linux-installer/build.sh 0.28.0
4141

4242
Outputs to `dist/`:
4343

44-
- `pythinker-code_0.28.0_amd64.deb`
45-
- `pythinker-code-0.28.0.x86_64.rpm`
44+
- `pythinker-code_0.29.0_amd64.deb`
45+
- `pythinker-code-0.29.0.x86_64.rpm`
4646

4747
The portable tarball used by `scripts/install-native.sh` is published by
4848
the existing `release-pythinker-cli.yml` workflow under the cargo-dist

packages/pythinker-core/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "pythinker-core"
3-
version = "1.1.1"
3+
version = "1.2.0"
44
description = "Pythinker core LLM, message, provider, and tool abstractions."
55
readme = "README.md"
66
requires-python = ">=3.12"

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "pythinker-code"
3-
version = "0.28.0"
3+
version = "0.29.0"
44
description = "Pythinker Code is your next CLI agent."
55
readme = "README.md"
66
requires-python = ">=3.12"
@@ -26,7 +26,7 @@ dependencies = [
2626
"aiofiles>=24.0,<26.0",
2727
"aiohttp==3.13.5",
2828
"typer==0.21.1",
29-
"pythinker-core[contrib]==1.1.1",
29+
"pythinker-core[contrib]==1.2.0",
3030
# notify-py (via batrachian-toad) caps loguru at <=0.6.0 on 3.14+.
3131
"loguru>=0.6.0,<0.7",
3232
"prompt-toolkit==3.0.52",

uv.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)