GityAI v2.1 — Install via npm
GityAI can now be installed with a single npm command — no more manually downloading a binary and wiring up your PATH. This release adds an npm distribution package alongside the existing manual binary, plus internal fixes that make the CLI more robust wherever it runs from.
✨ Highlights
📦 Install with npm
npm install -g @abmsourav/gityaiThe package resolves your platform and downloads the matching prebuilt binary from GitHub Releases automatically, then runs it transparently — prompts, spinner, and Ctrl-C all behave exactly like the native binary. Works globally or per-project (npx gityai). The manual binary download is still available if you prefer it.
- No system tools required — the binary is unzipped in pure JS (
adm-zip), so install works even in minimal containers and CI withoutunzip/tar. - Resilient install — the binary is prefetched on install, with an automatic fallback to download on first run if the prefetch is skipped or fails.
🗂️ Config now lives in ~/.gityai/
Your API keys and selected model are stored in a stable per-user directory (~/.gityai/), so they persist correctly no matter where the CLI is installed or run from — and are shared across global and per-project installs.
🚀 What's changed
New npm package (@abmsourav/gityai)
- Platform/arch detection → downloads the matching release asset from GitHub.
- Pure-JS unzip (
adm-zip) — no dependency on OS-levelunzip/tar. - Atomic install (staged write + rename) so an interrupted download never leaves a partial binary.
- Launcher spawns the binary with inherited stdio and forwards
SIGINT/SIGTERM. postinstallprefetch that never fails the install; lazy first-run fallback.
CLI internals
- New shared
verifyArgshelper centralizes command/flag matching; command modules updated to use it. - Fixed help/version flag detection.
- Read-only commands (
version,help,-h,-v) no longer open the database.
Config / storage
- SQLite database relocated from next-to-the-binary to
~/.gityai/gityai_db.sqlite3(created on first run) — required now that the binary can run from an npm package location.
Docs & config
- README: dual install paths (npm + manual binary), runtime architecture notes (Deno CLI + Node.js installer), and local config location.
.gitignore: ignores the downloaded binary cache,node_modules, and archive files.
⬆️ Upgrading from 2.0
The CLI behaves the same — just a new way to install it. If you used the manual binary before, you can switch to npm install -g @abmsourav/gityai, or keep downloading binaries from the releases page.
Note: config now lives in ~/.gityai/. If you had a previous setup, run gityai setup once to re-add your provider key.
📦 Install
npm:
npm install -g @abmsourav/gityaiManual: download the binary for your platform (Linux, macOS, Windows) from the Assets below, unzip it, and add it to your PATH or alias it.