A Slack-inspired, local-first web app for managing Claude AI conversations.
Klatch gives you a persistent, channel-based interface for working with Claude — like having a private Slack workspace where every channel is a different Claude persona with its own system prompt, model, and conversation history.
The existing ways to interact with Claude are good but fragmented:
Klatch fills the gap: a single local interface where you control the models, the prompts, the conversation structure, and the data. Everything stays on your machine in a SQLite database. The only external dependency is the Anthropic API itself.
Klatch is being built incrementally, one working step at a time (Gall’s Law). Here’s what works right now:
The full roadmap is in the repo, but the key milestones are:
The long-term vision is a unified control plane for all your Claude interactions — a place where you can import context from any source, define persistent roles, and manage ongoing conversations across projects.
git clone git@github.com:Design-in-Product/klatch.git
cd klatch
echo 'ANTHROPIC_API_KEY=your-key-here' > .env
npm install
npm run dev
Open http://localhost:5173. The server runs on :3001, the client on :5173.
| Layer | Choice |
|---|---|
| Frontend | Vite + React 19 |
| Backend | Hono (TypeScript) |
| Database | SQLite via better-sqlite3 |
| Streaming | Server-Sent Events (SSE) |
| Styling | Tailwind CSS v4 |
| AI | Anthropic SDK |
Monorepo via npm workspaces: packages/shared, packages/server, packages/client.
Klatch is a collaborative project between a human product designer (mediajunkie) and Claude (Anthropic’s AI). The human drives product direction, architecture decisions, and design values. Claude writes the code, proposes technical approaches, and flags trade-offs.
Every feature follows Gall’s Law: start with the smallest thing that works, test it, then extend. No speculative abstractions, no premature optimization. The architecture log records every decision and why.
MIT