Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion AGENTS.MD
Original file line number Diff line number Diff line change
Expand Up @@ -315,6 +315,5 @@ That's it. Run `zero` from the repo root and the agent has the team's full instr

- [README](README.md) — install, quickstart, command reference.
- [docs/SPECIALISTS.md](docs/SPECIALISTS.md) — full specialist manifest spec.
- [docs/PRD.md](docs/PRD.md) — product requirements, full feature surface.
- [docs/STREAM_JSON_PROTOCOL.md](docs/STREAM_JSON_PROTOCOL.md) — `zero exec` I/O contract.
- [docs/INSTALL.md](docs/INSTALL.md) — install from source or release.
3 changes: 1 addition & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,5 +33,4 @@ tagged. Until then, source builds report the version `dev`.
- The inert `/input-style` slash command (it had no backend).

### Fixed
- README/`go.mod` Go-version mismatch and other stale docs claims surfaced by the product/UX audit
(`docs/audit/2026-06-21-product-ux-audit.md`).
- README/`go.mod` Go-version mismatch and other stale public-release docs claims.
483 changes: 204 additions & 279 deletions README.md

Large diffs are not rendered by default.

111 changes: 74 additions & 37 deletions docs/INSTALL.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,36 @@
# Zero Install Scripts
# Installing Zero

> **Status: pre-release.** No GitHub release has been published yet, so the install scripts below
> (which download release assets from `Gitlawb/zero`'s Releases) will fail with a 404 until the first
> release exists. Until then, build from source: `go run ./cmd/zero` or `go build -o zero ./cmd/zero`
> (requires Go 1.25+). The instructions below describe how the scripts work once releases are published.
Zero is distributed as:

Zero release archives are published as:
- an npm package, `@gitlawb/zero`
- release archives on GitHub Releases
- source builds with Go 1.25+

- `zero-v<version>-linux-<arch>.tar.gz`
- `zero-v<version>-macos-<arch>.tar.gz`
- `zero-v<version>-windows-<arch>.zip`
The npm package and install scripts download a platform-specific release archive.
They require a published GitHub Release for the requested version.

Each archive must have a matching `.sha256` file. The install scripts download both files and verify the checksum before copying the binary.

Maintainers can verify the release directory before upload:
## npm

```bash
go run ./cmd/zero-release package
go run ./cmd/zero-release verify
npm install -g @gitlawb/zero
zero
```

`verify:release` requires every archive in `dist/release` to have a same-directory `.sha256` file whose contents are:
The package supports Linux, macOS, and Windows on x64 and arm64. It installs the
`zero` command and downloads the matching release binary during `postinstall`.

```text
<sha256> <archive-name>
```
Requirements:

## Linux And macOS
- Node.js 18+
- network access to npm and GitHub Releases

## Linux And macOS Script

Install the latest release:

```bash
curl -fsSL https://raw.githubusercontent.com/Gitlawb/zero/main/scripts/install.sh | bash
```

From a checkout:

Expand All @@ -38,18 +42,14 @@ Install a specific version:

```bash
ZERO_VERSION=0.1.0 scripts/install.sh
scripts/install.sh --version 0.1.0
```

Install to a custom directory:
Install somewhere else:

```bash
ZERO_INSTALL_DIR="$HOME/bin" scripts/install.sh
```

Install from a fork or internal repository:

```bash
scripts/install.sh --repo owner/repo
scripts/install.sh --install-dir "$HOME/bin"
```

Defaults:
Expand All @@ -58,9 +58,15 @@ Defaults:
- Version: latest GitHub release
- Install path: `~/.local/bin/zero`

Requirements: `curl` or `wget`, `tar`, and `shasum` or `sha256sum`.
Requirements: Bash, `curl` or `wget`, `tar`, and `shasum` or `sha256sum`.

## Windows PowerShell Script

## Windows
Install the latest release:

```powershell
irm https://raw.githubusercontent.com/Gitlawb/zero/main/scripts/install.ps1 | iex
```

From a checkout:

Expand All @@ -74,30 +80,61 @@ Install a specific version:
powershell -ExecutionPolicy Bypass -File scripts/install.ps1 -Version 0.1.0
```

Install to a custom directory:
Install somewhere else:

```powershell
powershell -ExecutionPolicy Bypass -File scripts/install.ps1 -InstallDir "$env:USERPROFILE\bin"
```

Install from a fork or internal repository:

```powershell
powershell -ExecutionPolicy Bypass -File scripts/install.ps1 -Repository owner/repo
```

Defaults:

- Repository: `Gitlawb/zero`
- Version: latest GitHub release
- Install path: `%LOCALAPPDATA%\zero\bin\zero.exe`

## From Source

```bash
git clone https://github.com/Gitlawb/zero.git
cd zero
go run ./cmd/zero
```

Build a local binary:

```bash
go build -o zero ./cmd/zero
```

Source builds require Go 1.25+.

## Release Archive Format

Release archives are named:

- `zero-v<version>-linux-<arch>.tar.gz`
- `zero-v<version>-macos-<arch>.tar.gz`
- `zero-v<version>-windows-<arch>.zip`

Supported targets:

- `linux-x64`
- `linux-arm64`
- `macos-x64`
- `macos-arm64`
- `windows-x64`
- `windows-arm64`

Each archive must have a matching `.sha256` file. The install scripts download
both files, verify the checksum, and then copy the binary into the install
directory.

## Updating

Check whether a newer release exists:
Check for a newer release:

```bash
zero update --check
```

For M2, updates are check-only. Re-run the installer to replace the local binary after reviewing the release.
Then reinstall with npm or rerun the install script for the version you want.
87 changes: 0 additions & 87 deletions docs/M1_HEADLESS_EXEC_PRD.md

This file was deleted.

2 changes: 1 addition & 1 deletion docs/PERFORMANCE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Zero Performance Benchmarks

The M2 performance harness tracks three release-facing signals:
The performance harness tracks three release-facing signals:

- Cold start: process startup time for `zero --version`.
- Binary first output: time from spawning the built `zero --version` command to
Expand Down
Loading
Loading