{"slug": "agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads", "title": "agnostic-ai v0.64.0: npm installs without postinstall downloads", "summary": "Agnostic-ai v0.64.0 ships its binary in six platform-specific npm packages selected by os and cpu, so `npm install agnostic-ai` no longer downloads anything at install time and works under `--ignore-scripts`, offline, and behind a proxy. The release also publishes the six platform packages before the parent that pins them, with a distribution guard checking the version and dist-tag on all seven so a partial publish fails the release, and moves the Homebrew cask update to Chemaclass/homebrew-tap, which refreshes every half hour. The `AGNOSTIC_AI_VERSION` variable stops applying to npm, where the package version is the pin, and a global copy missing its platform package is now directed to `npm install -g agnostic-ai --force --include=optional` (#942).", "body_md": "## What to do\n\n1. If you used `AGNOSTIC_AI_VERSION` with npm, pin the package instead, for example with`npm install -g agnostic-ai@0.64.0` .\n2. If npm reports a missing optional platform package, run `npm install -g agnostic-ai --force --include=optional` .\n\nNothing else needs action.\n\n## Shipped in agnostic-ai v0.64.0\n\n### Changed\n\n- `npm install agnostic-ai` no longer downloads anything: the binary ships in a platform package (`@chemaclass/agnostic-ai-darwin-arm64` and five siblings) that npm picks by`os` and`cpu` , so the install works under`--ignore-scripts` , offline, and behind a proxy.`AGNOSTIC_AI_VERSION` stops applying to npm, where the package version is the pin, so`npm install -g agnostic-ai@0.62.0` replaces it; both install scripts still honour it, and`AGNOSTIC_AI_BINARY` still points the wrapper at a binary of your own. A global copy missing its platform package is now told`npm install -g agnostic-ai --force --include=optional` , which reaches the global tree and overrides an`omit=optional` in your npm config (#942).\n- The release publishes the six platform packages before the parent that pins them, and the distribution guard checks the version and the dist-tag on all seven, so a partial publish fails the release instead of breaking installs on one platform. Every publish carries a `--tag` derived from the version (`-beta.1` to`beta` ,`-rc.2` to`rc` , anything unrecognised to`next` ), so cutting a prerelease no longer hands it npm's`latest` (#942).\n- The Homebrew cask is no longer pushed from this repository, and no longer needs a secret in it. `Chemaclass/homebrew-tap` updates its own cask every half hour with the`GITHUB_TOKEN` its workflow already has, checking all four archives resolve before it commits. The release still supports`HOMEBREW_TAP_APP_ID` /`HOMEBREW_TAP_APP_PRIVATE_KEY` and`HOMEBREW_TAP_TOKEN` , and writes a byte-identical file, so the two routes never fight (#920, #943).\n- Target audits reuse one issue index, load vendor references by target, and fit available worker slots; fix instructions load only when needed.\n\n### Added\n\n- `agnostic-ai lint` warns (LINT009) on an allowed`Bash(...)` rule with a`*` before the end of the command, such as`Bash(git * main)` , which also approves options inserted at that spot on Claude Code and every target that translates the rule. Deny and ask rules are not flagged, since widening them only blocks or prompts more.\n- Gemini emits and imports default-model settings, and Qoder emits HTTP and prompt hooks (#998, #1005).\n- This repository now dogfoods the three spec kinds it never used: an `ignore` spec keeps build output, lockfiles, and local secrets out of ten targets' exclusion files, beside a`review` spec Cursor Bugbot and Goose read and an`environment` spec for Cursor, Amp, and OpenHands (#980).\n\n### Fixed\n\n- Claude rejects disabled project MCP servers and preserves manual rejection entries when re-enabled (#997).\n- Import preserves Cline and Continue rule conditions, both Cline rule roots, and compatible Junie, Warp, and OpenCode skills (#999, #1000, #1001, #1002).\n- Factory keeps scoped skills in their project areas, and Trae rejects invalid native agent names (#1004, #1006).\n\n### Site\n\n- The targets index records Cursor's default-on compatibility hooks and required `type: stdio` field (#1007).\n- The landing says the same things in fewer words. The mission lede loses a restated line, each principle drops a repeated clause, the targets lead names the four omitted spec kinds, and the hero fan drops its accent dot.\n- The site builds on Zola 0.23.6 instead of 0.22.0: templates moved to Tera 2 components, shortcodes became components, and the three site tests that silently skipped on a mismatched local Zola now run for anyone on a current release (#970).\n- The ten spec kinds stop being a bare list. The playground's kind picker now says in one line what the selected kind is and links to the section of the spec format that defines it, the landing names the four kinds its capability matrix leaves out with a link each, and the README explains `review` ,`environment` , and`ignore` instead of only listing them (#980).\n- The landing ships its generated-file tablist inert until `landing.js` wires it, so readers without JavaScript see one real file (#977).`landing.toml` also drops the unrendered`go` and`binary` installers while keeping the hero default and entries with`recommend_for` ; a test now rejects unreachable installers (#991).\n\n## Upstream CLI and model news\n\nNo verified upstream change met the bar for this briefing.", "url": "https://wpnews.pro/news/agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads", "canonical_source": "https://agnostic-ai.org/updates/2026-09-21-v0.64.0/", "published_at": "2026-09-21 10:23:00+00:00", "updated_at": "2026-09-23 23:59:58.921306+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "ai-agents"], "entities": ["agnostic-ai", "npm", "Chemaclass/homebrew-tap", "Homebrew", "Claude Code", "Gemini", "Cursor", "Zola"], "alternates": {"html": "https://wpnews.pro/news/agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads", "markdown": "https://wpnews.pro/news/agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads.md", "text": "https://wpnews.pro/news/agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads.txt", "jsonld": "https://wpnews.pro/news/agnostic-ai-v0-64-0-npm-installs-without-postinstall-downloads.jsonld"}}