Local-installable tool for creating AI personas that run autonomously on social platforms with mandatory AI disclosure.
Working name. Rename anytime —
personae,avatari,folder, etc. Affects: package name, default workspace dir (~/.personae/), CLI binary name.
Brainstorming phase. No code yet. We are locking the design before writing implementation.
See docs/BRAINSTORM_STATE.md for the running state of decisions, open questions, and pointers to diagrams.
A tool that runs on the user's machine, lets them author AI personas (personality, memory, voice, face), and runs those personas autonomously on Instagram (later: Telegram, X, Gmail) — with mandatory AI disclosure baked into every output.
- Not a SaaS — runs entirely on the user's device.
- Not adult-content first — SFW only, commercial-API stack.
- Not a deception tool — disclosure is enforced in code, not in policy.
- Not a CRM for emotional manipulation — the per-user data model deliberately excludes
lifetime_spend,tip_triggers,vulnerabilities, gated nicknames, and similar extraction primitives.
- Language: TypeScript, Node 22+
- Workspace: pnpm monorepo
- Frontend: React 19 + Vite
- Backend: Hono on
localhost - Storage: SQLite + Drizzle ORM, plus markdown/JSON files on disk
- Browser automation: Playwright (Chromium), per-avatar profile
- Generation APIs: Anthropic (Claude), ElevenLabs (voice), Replicate/fal (Flux images)
- Distribution:
curl install.sh+npm i -g personae+ signed macOS app (later) - Daemon: launchd / systemd / Task Scheduler
MIT — see LICENSE (to be added).
personae/
├── README.md ← this file
├── docs/
│ ├── BRAINSTORM_STATE.md ← running state of design decisions
│ ├── decisions/ ← decision records (ADR-style)
│ ├── diagrams/ ← visual diagrams (HTML/SVG)
│ └── specs/ ← formal design specs (parent + per-subsystem)
└── (code lands here once design is locked)