mirror of
https://github.com/Twigpine/zero.git
synced 2026-11-11 05:01:36 -10:00
* feat(npm): ship the native binary as platform optionalDependencies Replace the postinstall downloader with Codex-style platform packages: suffixed versions of @gitlawb/zero (X.Y.Z-<platform>-<arch>) carrying the binary, sandbox helpers, and the vendored agent-browser/tuistory tree, referenced from the wrapper via npm: aliases in optionalDependencies. The published wrapper has no lifecycle scripts and no dependencies, so npm/Bun/pnpm installs are silent: no EBADENGINE from agent-browser's node>=24 engines pin, no allow-scripts warnings, no network outside the npm registry. The old downloader remains as a checksum-verified first-run fallback for --omit=optional installs and unsupported platforms. scripts/npm/build-platform-packages.mjs assembles the payloads from the release archives at publish time: it materializes npm's symlink .bin shims into regular sh shims (npm pack silently drops symlinks) and prunes agent-browser's other-platform binaries (~65 MB per package). The publish job uploads platform versions first under --tag platform, asserts the latest dist-tag survived (platform versions are semver prereleases of the wrapper version), then publishes the wrapper. See docs/NPM_PACKAGING.md for the architecture and publishing rules. * fix(npm): address PR review — LICENSE in payloads, dist-tag lookup guard, accurate fallback and platform docs - Ship the repo LICENSE in both the wrapper and platform payloads (npm only includes a license file physically present in the packed directory). - Guard the platform-publish dist-tag lookup with || true so a transient npm view failure (or a bootstrap publish with no latest tag) cannot abort the job between the platform and wrapper publishes. - Gate the wrapper's fallback downloader on the release matrix so platforms with no asset (windows-arm64 and unknown combos) skip the spawn instead of attempting it every run; keep deliberate retry-on-failure for supported platforms and say so honestly in the notice and docs. - Correct Windows support wording everywhere: x64 only, ARM runs under emulation (README, README_ZH, INSTALL.md incl. the release-target list).
41 lines
753 B
JSON
41 lines
753 B
JSON
{
|
|
"name": "@gitlawb/zero",
|
|
"version": "0.3.0",
|
|
"description": "Zero — a fast, multi-provider terminal coding agent.",
|
|
"type": "module",
|
|
"module": "bin/zero.js",
|
|
"bin": {
|
|
"zero": "bin/zero.js"
|
|
},
|
|
"files": [
|
|
"bin/zero.js",
|
|
"scripts/postinstall.mjs"
|
|
],
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"dependencies": {
|
|
"agent-browser": "^0.30.1",
|
|
"tuistory": "^0.10.0"
|
|
},
|
|
"os": [
|
|
"linux",
|
|
"darwin",
|
|
"win32",
|
|
"android"
|
|
],
|
|
"cpu": [
|
|
"x64",
|
|
"arm64"
|
|
],
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/Gitlawb/zero.git"
|
|
},
|
|
"homepage": "https://github.com/Gitlawb/zero#readme",
|
|
"bugs": {
|
|
"url": "https://github.com/Gitlawb/zero/issues"
|
|
},
|
|
"license": "MIT"
|
|
}
|