alfred-pi
There are many agent harnesses but this one is yours
alfred-pi is the default local harness for Alfred.report. Your machine. Your Cloudflare alfred-ai-gateway for Workers AI neuron metering. Wake word Alfred.report! Slug sessions resume with alfred report <slug>.
Unix / macOS / Linux
curl -fsSL https://alfred.report/install.sh | sh
Windows (PowerShell)
powershell -c "irm https://alfred.report/install.ps1 | iex"
npm
npm install -g --ignore-scripts @openroyleal/alfred-pi
pnpm
pnpm add -g --ignore-scripts @openroyleal/alfred-pi
bun
bun add -g --ignore-scripts @openroyleal/alfred-pi
Why alfred-pi?
A minimal local harness wired to your kingdom. Voice-first. Session trees keyed by human-readable kebab slugs — never mb- prefixes, never dashed UUIDs in the UI.
- Harness Local default for Alfred.report
- Gateway Your CF alfred-ai-gateway
- Metering Workers AI neurons via gateway
- Wake word Alfred.report!
- Sessions
alfred report <slug> - Login /login — sign in | sign up
CLI — locked UX
Commands as shipped. No aliases in docs.
install alfred reportFirst-time install (installer scripts run this)alfred reportWake word on first launch — starts a new sessionalfred report updateUpdate the harnessupdate alfred reportSame update, alternate word orderalfred report <slug>Resume a slug session (kebab-case only)/loginAlfred.report! — sign in or sign up with your Cloudflare account
TODO: Wire alfred-mem to auto-rename sessions to meaty kebab slugs from context. Stub today — humans still pick slugs; UUIDs stay internal.
LLM ladder (locked)
All inference routes through alfred-ai-gateway. No direct vendor bypasses.
- 1 Workers AI free neurons across accounts first
- 2 MIMO 2.5 Pro — easy work
- 3 MIMO 2.5 + Workers AI — vision
- 4 Cursor Grok 4.6 — super smarts
Full ladder: llms.txt and repo docs/ALFRED-PI.md.
Session slugs
Humans see kebab slugs only: evidence-pack, board-brief, go-max-al. No mb- prefixes. No dashed UUIDs in the terminal or UI. Internal ids stay internal.
Voice
Local STT/TTS through your gateway. Deep voice path is stubbed — wake audio ships from /iphone until local voice lands.
TODO: Local voice loop (mic → gateway → speaker). Gateway binding and neuron metering are real; on-device voice is next.