diff --git a/.github/workflows/install-smoke.yml b/.github/workflows/install-smoke.yml index 1349378..19aa79a 100644 --- a/.github/workflows/install-smoke.yml +++ b/.github/workflows/install-smoke.yml @@ -1,5 +1,5 @@ # Real install smoke: installs the CLI through the PRODUCTION installer at -# polylane.com/install, pinned to a given release, in a throwaway HOME. +# polylane.com/setup, pinned to a given release, in a throwaway HOME. # # Why this exists: the GitHub release's asset list is a contract with the # installer. Shipping checksums.txt in v0.2.20 broke every curl install for @@ -55,7 +55,7 @@ jobs: node-version: 20.x - name: Fetch the production installer - run: curl -fsSL --retry 3 --connect-timeout 10 -m 60 https://polylane.com/install -o /tmp/install.sh + run: curl -fsSL --retry 3 --connect-timeout 10 -m 60 https://polylane.com/setup -o /tmp/install.sh # Fresh HOME, no PATH or shell-config mutation, no telemetry, agent # wiring skipped. A piped run is EXPECTED to exit non-zero at the diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f94b0b8..8df2624 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -111,7 +111,7 @@ jobs: release-artifacts/checksums.txt # Real install of the just-published release through the production - # installer (polylane.com/install), API-digest and checksums.txt legs both. + # installer (polylane.com/setup), API-digest and checksums.txt legs both. # Catches a release that breaks the installer contract within minutes of # publishing instead of at polylanedotcom's daily install-bytes cron — the # class of failure that took installs down for 15 minutes on v0.2.20 (RCA: diff --git a/AGENTS.md b/AGENTS.md index d75ada2..f288408 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -27,7 +27,7 @@ also carries the LGTM verdict contract the auto-approve workflow depends on. - JSON when piped, text in TTY; `--output` always overrides. - Every error ends with the exact command that fixes it. - The full API surface lives under `polylane api call ` as an escape hatch — wrap an op only when it earns a first-class command. -- **The install script is a thin shim over this CLI.** `curl polylane.com/install | sh` (polylanedotcom `src/assets/install.sh`) only bootstraps: download, PATH, sign-in prompts, then `polylane setup`. Everything that knows about coding agents — detection, config paths, ids — lives in `src/agents/registry.ts` and is exposed for the installer to *call* (`polylane setup --list-detected --ids skills-sh` hands skills.sh its agent list; the polylane→skills.sh id table is `SKILLS_SH_IDS` here), never re-implemented in shell — not even an id map. When installer work needs new agent knowledge, add the flag or command here first. +- **The install script is a thin shim over this CLI.** `curl polylane.com/setup | sh` (polylanedotcom `src/assets/setup.sh`) only bootstraps: download, PATH, sign-in prompts, then `polylane setup`. Everything that knows about coding agents — detection, config paths, ids — lives in `src/agents/registry.ts` and is exposed for the installer to *call* (`polylane setup --list-detected --ids skills-sh` hands skills.sh its agent list; the polylane→skills.sh id table is `SKILLS_SH_IDS` here), never re-implemented in shell — not even an id map. When installer work needs new agent knowledge, add the flag or command here first. ## Commands (build, lint, test) diff --git a/README.md b/README.md index af8c448..20cbb61 100644 --- a/README.md +++ b/README.md @@ -35,10 +35,10 @@ Pick whichever channel fits your system. All install the same Node-based bundle ```bash # macOS / Linux — curl -curl -fsSL https://polylane.com/install.sh | bash +curl -fsSL https://polylane.com/setup.sh | bash # Windows — PowerShell -irm https://polylane.com/install.ps1 | iex +irm https://polylane.com/setup.ps1 | iex # Homebrew (tap: coreplanelabs/tap) brew install coreplanelabs/tap/polylane @@ -55,8 +55,8 @@ bun add -g @coreplane/polylane Version-pin the curl / PowerShell installers with: ```bash -POLYLANE_VERSION=v0.1.0 curl -fsSL https://polylane.com/install.sh | bash -$env:POLYLANE_VERSION='v0.1.0'; irm https://polylane.com/install.ps1 | iex +POLYLANE_VERSION=v0.1.0 curl -fsSL https://polylane.com/setup.sh | bash +$env:POLYLANE_VERSION='v0.1.0'; irm https://polylane.com/setup.ps1 | iex ``` The CLI checks for updates after successful commands, at most once per day, diff --git a/install/install.ps1 b/install/install.ps1 index 3c9cc8a..b0a7fb3 100644 --- a/install/install.ps1 +++ b/install/install.ps1 @@ -1,13 +1,13 @@ # polylane CLI installer for Windows (PowerShell 5.1+ / 7+). # -# irm https://polylane.com/install.ps1 | iex +# irm https://polylane.com/setup.ps1 | iex # # Installs the bundled CLI to $env:USERPROFILE\.polylane\bin\ and (if needed) # adds it to your user PATH. Node 20+ must be installed. # Override the version or install prefix with env vars: # -# $env:POLYLANE_VERSION='v0.1.0'; irm https://polylane.com/install.ps1 | iex -# $env:POLYLANE_PREFIX='C:\tools'; irm https://polylane.com/install.ps1 | iex +# $env:POLYLANE_VERSION='v0.1.0'; irm https://polylane.com/setup.ps1 | iex +# $env:POLYLANE_PREFIX='C:\tools'; irm https://polylane.com/setup.ps1 | iex $ErrorActionPreference = 'Stop' diff --git a/install/install.sh b/install/install.sh index 1009303..7c4d417 100644 --- a/install/install.sh +++ b/install/install.sh @@ -2,20 +2,20 @@ # polylane CLI installer shim for macOS / Linux. # # The authoritative installer is maintained on the website and served at -# https://polylane.com/install — this file only delegates to it so old links +# https://polylane.com/setup — this file only delegates to it so old links # and raw fetches of this path keep working. # # Env vars (POLYLANE_VERSION, POLYLANE_PREFIX, POLYLANE_REF, # POLYLANE_SKIP_SETUP) and flags (--no-setup) pass straight through: # -# POLYLANE_VERSION=v0.2.1 curl -fsSL https://polylane.com/install | bash +# POLYLANE_VERSION=v0.2.1 curl -fsSL https://polylane.com/setup | bash set -eu command -v curl >/dev/null 2>&1 || { printf 'error: curl is required\n' >&2; exit 1; } command -v bash >/dev/null 2>&1 || { printf 'error: bash is required\n' >&2; exit 1; } -script="$(curl -fsSL https://polylane.com/install)" \ - || { printf 'error: failed to fetch https://polylane.com/install\n' >&2; exit 1; } +script="$(curl -fsSL https://polylane.com/setup)" \ + || { printf 'error: failed to fetch https://polylane.com/setup\n' >&2; exit 1; } printf '%s\n' "$script" | bash -s -- "$@" diff --git a/skill/SKILL.md b/skill/SKILL.md index f504562..6e8b2c9 100644 --- a/skill/SKILL.md +++ b/skill/SKILL.md @@ -17,7 +17,7 @@ description: Use `polylane` to investigate production issues, explore cloud infr ```bash # Install (pick one — see README for the full list) npm install -g @coreplane/polylane -# curl -fsSL https://polylane.com/install.sh | bash +# curl -fsSL https://polylane.com/setup.sh | bash # brew install coreplanelabs/tap/polylane # Pick ONE auth path (OAuth is the default; use an API key only where a browser sign-in is impossible):