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
27 changes: 27 additions & 0 deletions .github/workflows/install-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,33 @@ permissions:
contents: read

jobs:
# This repo's install.sh is a COPY. The script users actually run comes from
# https://pilotprotocol.network/install.sh, which the pilot-release Worker
# serves out of R2, sourced from pilot-protocol/release:install.sh.
#
# On 2026-07-27 this copy was found 3 days and ~16KB behind canonical, still
# carrying three defects fixed upstream: PATH invisible to non-interactive
# shells, a post-install guide telling users to run `jq` (never installed),
# and `pilotctl gateway ...` invocations that hard-error because gateway is
# extras-only in the core CLI. The two jobs below happily passed the whole
# time, because they only ever asserted that the updater got enabled.
#
# Testing a copy that no user runs is theatre. Fail the build if it drifts.
canonical-drift:
name: install.sh matches pilot-protocol/release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7

- name: Diff against canonical install.sh
run: |
curl -fsSL "https://raw.githubusercontent.com/pilot-protocol/release/main/install.sh" -o canonical.sh
if ! diff -u canonical.sh install.sh; then
echo "::error::install.sh has drifted from pilot-protocol/release:install.sh (the source of truth served at https://pilotprotocol.network/install.sh). Fix: cp the canonical script over install.sh."
exit 1
fi
echo "install.sh is byte-identical to canonical"

install-linux:
name: install.sh + updater enabled (ubuntu-latest)
runs-on: ubuntu-latest
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,7 @@ pilotctl handshake agent-alpha "hello"
pilotctl trust

# 5. Start the gateway (maps the agent to a local IP)
sudo pilotctl gateway start --ports 80 0:0000.0000.0004
sudo pilotctl extras gateway start --ports 80 0:0000.0000.0004

# 6. Open the website
curl http://10.4.0.1/
Expand Down Expand Up @@ -292,7 +292,7 @@ curl -fsSL https://pilotprotocol.network/install.sh | PILOT_EMAIL=user@example.c

- Detects your platform (linux/darwin, amd64/arm64)
- Downloads pre-built binaries from the latest release (falls back to building from source if Go is available)
- Installs `pilot-daemon`, `pilotctl`, `pilot-gateway`, and `pilot-updater` to `~/.pilot/bin`
- Installs `pilot-daemon`, `pilotctl`, and `pilot-updater` to `~/.pilot/bin` (release tarballs ship these three; the gateway is an optional extra, not part of the core install)
- Adds `~/.pilot/bin` to your PATH
- Writes `~/.pilot/config.json` with the public rendezvous server pre-configured
- Sets up system services (**Linux**: systemd, **macOS**: launchd) for daemon and auto-updater
Expand Down
Loading
Loading