Two steps to your first match.
Install the Claude Code plugin and run terminalhire init — that's it. init signs you in with GitHub via device flow for richer matches, or stay fully local. No website account needed to start.
Install the plugin (inside Claude Code)
One copy-paste. Run this in your terminal — it installs the CLI, adds the Claude Code plugin, and starts terminalhire init (your one-time consent + optional GitHub sign-in via device flow). No website account needed.
curl -fsSL terminalhire.com/install.sh | bash▸ prefer to run it by hand? three commands inside Claude Code
/plugin marketplace add staqsIO/terminalhire-plugin/plugin install terminalhire@staqsterminalhire initPrefer a standalone CLI (no Claude Code)? npm install -g terminalhire — then run terminalhire init.
terminalhire jobsWeb account — dashboard + open-to-work passive discovery
The matching-relevant GitHub auth already happens inside terminalhire init (CLI device flow). This web sign-in is separate — it unlocks the web dashboard and opt-in recruiter passive discovery. You do not need to do both to get matches. Scope: read:user · public repos only · never private repos.
Privacy tiers
Tier 1 (GitHub-verified) is recommended because it solves the cold-start problem. Tier 0 is always available — no account, no data shared unless you explicitly approve a lead.
Tier 0
Local · No account
- ✓Run terminalhire jobs — downloads the public index anonymously, no fingerprint sent
- ✓Matching runs against your local encrypted profile — it never leaves your machine
- ✓Apply-direct: opens employer URL, no data shared, no payload
- ✓For partner-agency roles: explicit "Share with [partner agency name]? yes/no" prompt
- ✓Profile encrypted at rest (~/.terminalhire/profile)
- ✓Employer-repo sessions excluded by default (corp email / git remote detection)
- ✓Ambient spinner: top local matches shown in the Claude Code spinner while you work — profile never leaves your machine, zero egress
- ✓Disable spinner only: terminalhire spinner --off (reversible)
- ✓statusLine nudge after terminalhire jobs — at most once per session
- —Cross-device profile sync
- —Recruiter passive discovery
- —Pre-populated skill tags (you build the profile manually)
Tier 1
GitHub-verified Profile · Opt-in
- ✓Everything in Tier 0
- ✓Sign in with GitHub → instant skill tags from public repos (scope: read:user only)
- ✓Seniority inference from account age, repo count, followers
- ✓Cross-device profile sync (explicit opt-in; still encrypted in transit)
- ✓Open-to-work passive discovery by registered recruiters
- ✓Verified GitHub identity strengthens lead anti-fraud signals
- ✓Revoke anytime — server profile deleted, recruiter copies via DPA
What gets installed
terminalhireCLI binary — run "terminalhire jobs" to download the index and match against a profile that never leaves your device
~/.terminalhire/profileEncrypted local profile (AES-256-GCM). Never uploaded in Tier 0.
~/.terminalhire/config.jsonLocal config: tier, nudge toggle, employer-repo exclusion preference
~/.terminalhire/consent.ndjsonLocal-only consent log of every lead action you approved or declined