- client/ now has its own package.json (independent Vite project)
- Tailwind + PostCSS config inlined into vite.config.ts
- dev:client uses `cd client && npm run dev` (CWD = Vite root)
- Root package.json only has server deps
- Fix tsconfig deprecation (remove baseUrl)
- Add `npm run setup` for one-command install
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add Anthropic SDK with DeepSeek-compatible API config
- Streaming tool-use loop in WebSocket chat handler
- GitHub-style markdown rendering with markdown-it
- Tool status indicators and thinking states in chat UI
- Fix Tailwind content path and CSS border utility
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>