Live heartbeat
Awaiting first readβ¦
Today's standup
No standup yet for today.
Cron schedule
standup
0 8 * * * PT
gw-backstop
*/5 * * * * PT
curator
0 2 * * * PT
heartbeat
*/1 * * * * PT
Single-Brain Architecture
Architecture: 1 shared
second-brain CouchDB database.
All profiles (geoffrey-ai, lyle, sarah, frollo,
roselyn, leowolf, customer_<id> when shipped) share one DB.
Per-profile isolation enforced via profile_id field at every read/write.
Helper:
profileGuard() β wraps every CouchDB read/write; rejects any
doc whose profile_id does not match the active session profile.
Decision: CEO 2026-08-15 β one brain, no second brains.
Jobs
Job 1
π«‘ Daily Standup
08:00 PT. Lyle drafts the standup from brain state; Geoffrey publishes the canonical standup_ doc.
Job 2
π°οΈ gw-monitor Backstop
Every 5 min. Geoffrey stands in for the disabled Telegram-polling gw-monitor, derives state from CouchDB.
Job 3
π§Ή Nightly Curator
02:00 PT. Distills daily memory into MEMORY.md; archives raw logs; trims junk.
Job 4
ποΈ Customer Onboarding
When a new customer arrives, Geoffrey spins them up β profile + persona + heartbeat + welcome message + audit ticket. Default persona: Fresh Prince (Joseph Marcell Geoffrey Butler). Customer can override display name, persona flavor, and signature emoji. Refuses list non-overridable.
Sample onboarding CLI
node agents/geoffrey-ai/bin/onboard-customer.js \ --customer-id=acme-realty \ --display-name="Acme Realty Geoffrey" \ --contact-channel=<telegram_chat_id>
Recent customers sample
| Profile ID | Display Name | Persona | Status | Onboarded |
|---|---|---|---|---|
customer_acme_realty |
Acme Realty Geoffrey | fresh_prince | ready | 2026-08-15 |
SAMPLE / PLACEHOLDER β not a real customer. Real customers appear here after onboarding completes.
Persona files (read-only)
~/workspace/geoffrey-ai/ βββ IDENTITY.md (who I am β Geoffrey Butler lineage) βββ SOUL.md (how I talk β "Will do, sir.") βββ USER.md (who I serve) βββ HEARTBEAT.md (what I check) βββ MEMORY.md (distilled long-term) βββ TOOLS.md (where things live) βββ agent/ β βββ geoffrey-ai-task.md (loaded by sessions_spawn) βββ jobs/ β βββ gw-monitor-backstop.md (Job 2 β gw-monitor backstop) β βββ curator-nightly.md (Job 3 β nightly curator) β βββ customer-onboarding.md (Job 4 β spin up new customers) βββ agents/geoffrey-ai/bin/ β βββ onboard-customer.js (Job 4 β onboarding CLI) βββ public/ β βββ geoffrey-ai-status.html (this page) βββ install-cron.sh (idempotent cron registration)
Last standup Β· live section above Β·
rendered daily at 08:00 PT by cron
a9c62a66-8929-4c2f-8a0d-505597b641ac.