Deploy Pretense to your team
Self-serve rollout. Bash + PowerShell one-liners that pull the binary, provision a license key from env vars, install to PATH, and verify end to end. Zero IT involvement. 3 minutes per engineer.
Before you start
You need two things:
- An organization license key — Generate one from your org dashboard. It looks like
ptns_live_xxxxxxxxxxxx. Every developer on your team uses this same key. - Shell access for each developer. macOS/Linux get bash. Windows gets PowerShell. The scripts run in user mode — no
sudo, no admin.
macOS and Linux — bash one-liner
Paste this into any engineer's terminal. Replace ptns_live_YOUR_KEYwith your org's license key:
export PRETENSE_LICENSE_KEY="ptns_live_YOUR_KEY" curl -fsSL https://pretense.ai/install.sh | sh
What this does, in order:
- Detects OS + architecture (macOS ARM, macOS Intel, Linux x64, Linux ARM64, WSL)
- Downloads the latest pre-built binary from GitHub releases to
~/.pretense/bin/pretense - Adds
~/.pretense/binto$PATH - Persists the license key to
~/.pretense/config.json(mode 600) - Runs
pretense --versionto confirm the binary works, then verifies the license key against the API
Windows — PowerShell one-liner
For Windows engineers (PowerShell 5.1+ or PowerShell Core 7+). Same flow, user-mode installer, no admin required:
$env:PRETENSE_LICENSE_KEY = "ptns_live_YOUR_KEY" irm https://pretense.ai/install.ps1 | iex
If your company has restricted execution policy, use the explicit bypass:
powershell -ExecutionPolicy Bypass -Command "$env:PRETENSE_LICENSE_KEY='ptns_live_YOUR_KEY'; irm https://pretense.ai/install.ps1 | iex"
What good looks like
A successful install ends with this on the terminal:
ok Binary saved to /Users/jane/.pretense/bin/pretense
ok Added ~/.pretense/bin to PATH
ok License key saved to /Users/jane/.pretense/config.json (mode 600)
ok Binary runs: pretense 0.6.0
ok License key verified — /api/cli/log returned 200
Installation complete!
Get started:
pretense init Scan your codebase and create .pretense/ config
pretense start Launch the mutation proxy on localhost:9339The five green ok lines are the signal. If any go missing or red, see the Troubleshooting section below.
CI/CD integration
For pipelines that mutate code in CI (GitHub Actions, CircleCI, GitLab, Jenkins), set PRETENSE_LICENSE_KEY as a secret and run the install script in a setup step.
jobs:
scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Pretense
env:
PRETENSE_LICENSE_KEY: ${{ secrets.PRETENSE_LICENSE_KEY }}
run: curl -fsSL https://pretense.ai/install.sh | sh
- name: Scan for secrets
run: ~/.pretense/bin/pretense scan .
- name: Fail if any critical secrets detected
run: ~/.pretense/bin/pretense scan . --fail-on criticalRollout checklist
Recommended sequence for a team of 10+ engineers:
- Day 0 — Create your org license key via /dashboard/org/new. Store it in your team's password manager (1Password, Vault, Doppler).
- Day 1 — Pilot with 2-3 senior engineers. Have them run the install script + complete one real mutation pass in their primary repo. Collect any friction.
- Day 2-3 — Paste the one-liner into your #engineering Slack with the license key inlined from 1Password. Pin the message.
- Day 4-7 — Drop PRETENSE_LICENSE_KEY into your CI secrets and wire up
pretense scan .as a required check on pull requests. - Day 14 — Review the org dashboard at /dashboard/org/[slug] — mutations per developer, LLM provider breakdown, secrets blocked. This is your Pretense ROI proof to leadership.
Troubleshooting
"401 Unauthorized" from /api/cli/log
Double-check the license key — it must start with ptns_live_ or ptns_test_. If you copied it from the dashboard, make sure you grabbed the full string. Regenerate the key from /dashboard/org/[slug]/api-keys if in doubt.
"command not found: pretense" after install
Your shell profile needs to reload. Open a new terminal OR run: source ~/.zshrc (or ~/.bashrc). On Windows, open a new PowerShell window so the User PATH refreshes.
npm fallback triggered instead of binary install
The pre-built binary for your platform is not released yet. Node 18+ via npm works the same way — slightly slower first run but no functional difference.
Engineers hit "402 Payment Required" on first scan
Your org has exceeded its free 7-day quota. Either upgrade to Pro at /pricing or buy a one-off credit pack at /credit-packs. Quotas reset automatically every 7 days from signup.
Restricted Windows machines block the PowerShell script
Use the ExecutionPolicy Bypass one-liner from Section 03. If your org has AppLocker or Constrained Language Mode, ask your IT team to whitelist pretense.ai/install.ps1 or mirror it internally.