@darknoon/dave
v0.0.1-alpha.7
Published
Chat UI for Claude Code. Stores files in a configurable data directory.
Readme
Dave
Chat UI for Claude Code. Stores files in a configurable data directory.
Install
Requires Bun 1.0 or later. To install or update Bun:
curl -fsSL https://bun.sh/install | bashRun it with bunx (always uses the latest version):
bunx @darknoon/dave@latestDave uses the current directory for data and opens in the browser automatically.
Options:
bunx @darknoon/dave@latest --data-dir /path/to/data # custom data directory (default: cwd)
bunx @darknoon/dave@latest --port 3002 # custom port (default: random)
bunx @darknoon/dave@latest --no-open # don't open browser automaticallyAuth: If you're already signed into Claude Code, Dave just works. To sign in:
claude loginOr set an API key directly:
export ANTHROPIC_API_KEY=sk-ant-...
export CLAUDE_CODE_OAUTH_TOKEN=sk-ant-oat01-Global install (optional):
If you prefer a shorter command, you can install globally — but you'll need to manually update:
bun install -g @darknoon/dave # install
bun install -g @darknoon/dave@latest # updateStack
- React 19 + TypeScript + Vite + Tailwind v4
- Bun runtime
Philosophy
- Everything is a file
- Standalone chats w/ ai are just json files
- Main way of using & customizing the system is files
- Obviously, skills are just files/folders
- Widgets get their data from files
Dev
bun devData types
Markdown file Chat (talks to an agent like claude code that can modify files) Micro-app (just an html file in an iframe, but gets an api that can read/write/subscribe to files to the shared fs) Skill (just regular md files, follows normal convention) Metadata (a small sqlite db that just tracks recent items, and any indexing necessary) Widget (a small react file that takes data coming from a md file and renders it)
Screens
Main screen
Items edited that day (ai chats + documents) Shows most recent items, or anything needing attention
Chat screen
Traditional LLM chat, talks to Claude with agents sdk Important features
- Shows thinking
- When modifying a file, file can be opened from chat
chats are just json files stored in …/chats
Markdown editor
Simple mobile-friendly markdown editor Important features
- Supports obsidian-style links
Skills
Shows a slightly nicer UI for skills, just recognizing that its a skill file vs regular markdown nothing much.
You can get to them if you go to settings stored in …/.claude/skills like usual
Settings
"Backup" button. Not much here yet.
Auth
We use a claude auth token mostly (use claude setup-token to use your subscription)
