Skip to content

KlaatCode V2.4.3

Choose a tag to compare

@aakashrajput aakashrajput released this 08 Aug 13:47
· 7 commits to main since this release

Klaat Code v2.4.3

Klaat Code now updates itself. Run klaatcode and it checks for a newer release before anything else, asks once, and gets out of your way.


⬆️ Update on launch

Update available: v2.4.2 → v2.4.3
Update now? [Y/n]

Yes → upgrades through whichever channel installed it (npm, Homebrew, install script, PowerShell installer), then relaunches with your original arguments so you land where you were going.
No → it won't ask again for that release.

The check is cached 4 hours and fail-silent: no network, a slow endpoint, or a bad response never delays a launch.

Upgrades are verified, not assumed. A zero exit code isn't proof. The CLI asks the installed binary what version it reports, and catches the case where a second copy on your PATH — Homebrew shadowing npm, or a leftover klaatcode-ai 1.x binary from the retired package — is still winning.

If the upgrade fails, it repairs itself. Failed command, or the version didn't move? It runs a clean uninstall + reinstall for your channel, including removing the retired klaatcode-ai package. Permission and missing-tool failures skip the repair and print the real fix instead, because a reinstall would hit the same wall. If nothing works you get the exact manual command — you are never left without a working CLI.

Minimum supported version. klaatai.com/api/latest now publishes a version floor. Below it the update is required rather than optional, and the server can refuse very old builds with upgrade instructions in the response — the only way to reach installs too old to have this update gate. Off unless a release says otherwise.

Command / flag Effect
klaatcode upgrade Upgrade now
klaatcode upgrade --check Report what's available, change nothing
klaatcode --no-update-check Skip the check for this run
KLAATAI_NO_UPDATE=1 Skip it permanently
KLAATAI_SKIP_VERSION_GATE=1 Run a build below the floor anyway

CI and non-interactive shells are never prompted — one line on stderr, then they carry on.


🔎 Install identity headers

Every request now reports four things, so we can see how many installs are live and which builds are still out there:

Header Example Why
X-KlaatAI-Client-Version 2.4.3 Version adoption; enforcing the minimum supported build
X-KlaatAI-Platform darwin-arm64 Which platforms need builds and testing
X-KlaatAI-Install-Channel npm Which install channel to fix when upgrades break
X-KlaatAI-Install-Id random UUID Counting installs — one heavy user is not a thousand installs

The install id is a random UUID generated once and stored in ~/.klaatai/install-id. It is never derived from your machine — no hostname, MAC address, or hardware hash — and it identifies an install, not a person. Nothing about your project is included: no file paths, repo names, source code, or prompts.

Opt out and no install id is sent at all, so no per-install record exists:

export KLAATAI_TELEMETRY=0   # or DO_NOT_TRACK=1
{ "telemetry": "off" }

Version and platform still travel when you opt out — the server needs them to refuse unsupported builds and route around version-specific bugs. Full table in the README.


📦 Install / upgrade

npm install -g klaatcode@latest
brew upgrade KlaatAI/klaatcode/klaatcode
curl -fsSL https://klaatai.com/api/install | bash
irm https://klaatai.com/api/install-windows | iex

Still on klaatcode-ai 1.x? That package is retired and its binary can shadow the current one. Install v2.4.3, then run klaatcode upgrade — it detects the shadow and cleans it up.


Full changelog: https://github.com/KlaatAI/klaatcode/blob/main/CHANGELOG.md
Compare: v2.4.2...v2.4.3