The open-source AI platform that sweats the details. Three smart modes, real memory,
living artifacts, and locked chats — yours to run, yours to shape.
PocketBot · Self-hosting · Architecture · Configuration
Open to run, open to shape. Use PocketBot live at pocketbot, or clone it and shape it your way — your keys, your deployment, your rules. The whole stack ships under the MIT license — web app and backend today; the mobile app is under active development and coming soon.
- Three chat modes — Auto, Fast, and Heavy — with the model choice handled for you. No provider names, no thinking dials, nothing to tune.
- Living artifacts: documents, charts, and full interactive pages that stay editable in a side panel and can be shared by link.
- Long-term memory that carries preferences and projects across chats.
- Locked chats, encrypted on your device with a password the server never sees, answered only by zero-retention models.
- Incognito mode, message queueing, voice input, image generation, file attachments, folders, sharing, and a lot of care around motion and polish.
- Light and dark mode, accent colors, and an installable mobile web app.
| Layer | What it uses |
|---|---|
| Web app | Next.js 16, React, Tailwind CSS, Motion |
| Backend | Convex: database, functions, streaming, crons |
| Auth | Clerk |
| Models | AI SDK on Hyper |
| Tooling | pnpm workspaces, TypeScript |
Everything beyond Convex, Clerk, and Hyper is optional and switches on with its own keys: billing (Autumn), memory (Supermemory), analytics (PostHog, Axiom), tracing (Braintrust), email (Resend), and the support agent (Median). Leave them out and PocketBot hides the features they power. See docs/configuration.md.
You'll need pnpm, a free Convex account, a Clerk application, and a Hyper API key.
git clone https://github.com/pocketbot/pocketbot.git
cd pocketbot
pnpm install1. Push the backend. The first run creates your Convex project:
cd packages/backend
pnpm exec convex dev2. Give it its secrets. In a second terminal, while the first one keeps watching:
pnpm exec convex env set CLERK_JWT_ISSUER_DOMAIN https://your-instance.clerk.accounts.dev
pnpm exec convex env set HYPER_API_KEY sk-hyper-...3. Point the web app at Convex and Clerk.
cd ../../apps/v2
cp .env.example .env.local # then fill in the four values4. Run it, from the repository root:
cd ../..
pnpm devOpen localhost:3000 and say hi. The self-hosting guide covers each step in detail, including the Clerk JWT template Convex needs and how to deploy to production.
apps/
v2/ The web app (Next.js). This is the one in production.
mobile/ Native app (Expo) — under active development, coming soon.
packages/
backend/ Convex backend: schema, functions, and the AI pipeline
docs/ Guides for self-hosting, configuration, and architecture
brand/ Logo, colors, banners, and app icons
- Self-hosting: run PocketBot locally and in production
- Configuration: every environment variable and what it switches on
- Architecture: how a message travels from the composer to the model and back
