Tenants
List, create, and inspect tenants — see the kind (human / coding / hybrid / server) and the storage backend (SQLite vs Postgres) at a glance.
The web admin for your self-hosted Alfred Memory server.
Create tenants, issue and rotate API keys, and copy-paste
connection snippets for every supported harness — all
from a single static page that talks to your server over
/console/api/*.
The console is a static SPA. The only thing it needs is the
URL of your Alfred Memory server. Set it as a
build-time env var and re-deploy memory/.
# build the console with a real API base
cd packages/console-web
ALFRED_API_BASE="https://alfred.example.com" npm run build
# output is dist/index.html — copy to your Pages tree:
mkdir -p /memory/app
cp dist/index.html /memory/app/index.html
ALFRED_MEMORY_ALLOWED_ORIGINS=https://goi17.github.io,
or the browser will block the API calls.
Paste your alk_... key in the top-right input
and press Unlock. Your key is stored only in
this browser's localStorage — it never
leaves your machine.
Preview runs in an isolated iframe. For daily use, open the console in its own tab.
Everything that used to need a terminal, in a single page.
List, create, and inspect tenants — see the kind (human / coding / hybrid / server) and the storage backend (SQLite vs Postgres) at a glance.
Issue a new key, rotate an old one, label it for the device that owns it, and revoke it the moment you suspect a leak. Show and hide revoked keys per tenant.
For every tenant, copy the exact curl,
Codex/OpenAPI JSON, Claude MCP config, or Gemini extension
blob to connect a service in one paste.
No terminal? Create a free tenant from the browser and start storing memories in 10 seconds. Optional email enables key recovery.
Lost every key? The console can bootstrap a new admin tenant or recover a key via the email you registered — against your server, not ours.
No server, no DB, no telemetry. The console is a single HTML file. Host it on Pages, Vercel, Netlify, or any static host. Your keys never reach a third party.