claudeck 1.3.1 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/README.md +13 -9
  2. package/db/sqlite.js +1697 -0
  3. package/db.js +3 -1645
  4. package/package.json +2 -1
  5. package/plugins/claude-editor/manifest.json +10 -0
  6. package/plugins/linear/manifest.json +10 -0
  7. package/plugins/repos/manifest.json +10 -0
  8. package/public/css/ui/messages.css +25 -0
  9. package/public/css/ui/right-panel.css +207 -0
  10. package/public/css/ui/settings.css +75 -0
  11. package/public/index.html +7 -0
  12. package/public/js/components/settings-modal.js +65 -0
  13. package/public/js/core/api.js +23 -6
  14. package/public/js/core/events.js +11 -0
  15. package/public/js/core/plugin-loader.js +96 -11
  16. package/public/js/core/store.js +11 -0
  17. package/public/js/core/ws.js +12 -0
  18. package/public/js/features/chat.js +4 -0
  19. package/public/js/features/sessions.js +102 -10
  20. package/public/js/main.js +1 -0
  21. package/public/js/panels/assistant-bot.js +16 -0
  22. package/public/js/panels/dev-docs.js +2 -2
  23. package/public/js/panels/memory.js +1 -0
  24. package/public/js/ui/context-gauge.js +10 -1
  25. package/public/js/ui/header-dropdowns.js +30 -0
  26. package/public/js/ui/input-meta.js +13 -6
  27. package/public/js/ui/max-turns.js +6 -3
  28. package/public/js/ui/messages.js +42 -0
  29. package/public/js/ui/model-selector.js +1 -0
  30. package/public/js/ui/parallel.js +2 -4
  31. package/public/js/ui/permissions.js +1 -0
  32. package/public/js/ui/tab-sdk.js +395 -176
  33. package/public/style.css +1 -0
  34. package/server/agent-loop.js +26 -26
  35. package/server/memory-extractor.js +4 -4
  36. package/server/memory-injector.js +11 -11
  37. package/server/memory-optimizer.js +19 -15
  38. package/server/notification-logger.js +5 -5
  39. package/server/orchestrator.js +15 -15
  40. package/server/push-sender.js +2 -2
  41. package/server/routes/agents.js +2 -2
  42. package/server/routes/marketplace.js +316 -0
  43. package/server/routes/memory.js +20 -20
  44. package/server/routes/messages.js +41 -10
  45. package/server/routes/notifications.js +20 -20
  46. package/server/routes/sessions.js +17 -17
  47. package/server/routes/stats.js +37 -37
  48. package/server/routes/worktrees.js +9 -9
  49. package/server/summarizer.js +3 -3
  50. package/server/ws-handler.js +163 -58
  51. package/server.js +20 -2
  52. package/plugins/event-stream/client.css +0 -207
  53. package/plugins/event-stream/client.js +0 -271
  54. package/plugins/sudoku/client.css +0 -196
  55. package/plugins/sudoku/client.js +0 -329
  56. package/plugins/tasks/client.css +0 -414
  57. package/plugins/tasks/client.js +0 -394
  58. package/plugins/tasks/server.js +0 -116
  59. package/plugins/tic-tac-toe/client.css +0 -167
  60. package/plugins/tic-tac-toe/client.js +0 -241
package/README.md CHANGED
@@ -64,7 +64,9 @@ User data lives in `~/.claudeck/` (config, database, plugins) — safe for NPX u
64
64
  ### Chat & Sessions
65
65
 
66
66
  - Real-time WebSocket streaming with session persistence
67
+ - **Multi-client sync** — multiple browsers/devices viewing the same session see streamed responses in real time
67
68
  - **Parallel mode** — 2x2 grid of 4 independent conversations
69
+ - **Message pagination** — lazy-loads older messages on scroll-up (cursor-based, 30 per page)
68
70
  - Background sessions that keep running when you switch away
69
71
  - Session search, pinning, auto-generated titles
70
72
  - **Session branching** — fork any conversation at an assistant message to explore alternatives
@@ -174,6 +176,7 @@ browser ──── WebSocket ──── server.js ──── Claude Code S
174
176
  server/utils/git-worktree.js
175
177
  server/auth.js
176
178
  server/memory-optimizer.js └── .env (VAPID keys, auth token)
179
+ db.js → db/sqlite.js (adapter pattern)
177
180
  plugins/
178
181
  ```
179
182
 
@@ -182,9 +185,9 @@ browser ──── WebSocket ──── server.js ──── Claude Code S
182
185
  | Runtime | Node.js 18+ (ESM) |
183
186
  | Backend | Express 4, WebSocket (ws 8), web-push 3 |
184
187
  | AI SDK | @anthropic-ai/claude-code |
185
- | Database | SQLite via better-sqlite3 (WAL mode) |
188
+ | Database | SQLite via better-sqlite3 (WAL mode), adapter pattern for multi-DB support |
186
189
  | Frontend | Vanilla JS ES modules + Web Components (Light DOM), CSS custom properties |
187
- | Testing | Vitest + happy-dom (2,400+ unit tests, 55% coverage) + WS perf benchmarks |
190
+ | Testing | Vitest + happy-dom (2,507+ unit tests, 55% coverage) + WS perf benchmarks |
188
191
  | Rendering | highlight.js, Mermaid (diagrams) — CDN |
189
192
 
190
193
  ---
@@ -249,16 +252,15 @@ See [CONFIGURATION.md](docs/CONFIGURATION.md) for the full guide.
249
252
 
250
253
  ## Plugins
251
254
 
252
- Claudeck includes 7 built-in plugins and supports user plugins via `~/.claudeck/plugins/`:
255
+ Claudeck includes 3 built-in plugins, a community marketplace, and supports user plugins via `~/.claudeck/plugins/`:
253
256
 
254
257
  | Plugin | Description |
255
258
  |--------|-------------|
256
- | **Tasks** | Todo list with priority, archive, and brag tracking |
259
+ | **Claude Editor** | Edit CLAUDE.md project instructions in-app |
257
260
  | **Linear** | Linear issue tracking with team management |
258
261
  | **Repos** | Repository management with tree view |
259
- | **Claude Editor** | Edit CLAUDE.md project instructions in-app |
260
- | **Event Stream** | Real-time WebSocket event viewer |
261
- | **Games** | Tic-tac-toe and Sudoku |
262
+
263
+ **Community Marketplace** — browse, install, and update community plugins directly from the Plugin Marketplace tab. Plugins like Tasks, Event Stream, Sudoku, and Tic-Tac-Toe are available from the [marketplace](https://github.com/hamedafarag/claudeck-marketplace).
262
264
 
263
265
  **Create your own** — drop files in `~/.claudeck/plugins/<name>/` (persists across upgrades) with `client.js` and optionally `server.js`, `client.css`, `config.json`. No fork needed. See [CONFIGURATION.md](docs/CONFIGURATION.md#user-plugins) for details.
264
266
 
@@ -277,8 +279,10 @@ npx skills add https://github.com/hamedafarag/claudeck-skills
277
279
  | Document | Description |
278
280
  |----------|-------------|
279
281
  | [DOCUMENTATION.md](docs/DOCUMENTATION.md) | Full feature docs, API reference, database schema |
282
+ | [TAB-SDK.md](docs/TAB-SDK.md) | Plugin SDK reference — ctx API, events, state, CSS tokens, examples |
280
283
  | [CONFIGURATION.md](docs/CONFIGURATION.md) | User data directory, config files, plugin system |
281
284
  | [AGENT-ARCHITECTURE.md](docs/AGENT-ARCHITECTURE.md) | How agents, chains, DAGs, and orchestrator work |
285
+ | [PLAN-sqlite-adapter.md](docs/PLAN-sqlite-adapter.md) | Database adapter pattern, async interface, multi-DB roadmap |
282
286
  | [CROSS-PLATFORM-AUDIT.md](docs/CROSS-PLATFORM-AUDIT.md) | Windows/Linux compatibility |
283
287
  | [COMPETITIVE-ANALYSIS.md](docs/COMPETITIVE-ANALYSIS.md) | Feature comparison with similar tools |
284
288
 
@@ -287,7 +291,7 @@ npx skills add https://github.com/hamedafarag/claudeck-skills
287
291
  ## Testing
288
292
 
289
293
  ```bash
290
- npm test # Run all 2,400+ tests
294
+ npm test # Run all 2,507+ tests
291
295
  npm test -- --coverage # With coverage report
292
296
  npm run test:perf # WebSocket performance benchmarks
293
297
  ```
@@ -301,7 +305,7 @@ npm run test:perf # WebSocket performance benchmarks
301
305
  | **panels/** | 150+ | 35% |
302
306
  | **server/** | 1,350+ | 95% |
303
307
 
304
- 19 Web Components in `public/js/components/` — each is a self-contained Custom Element (Light DOM) that owns its HTML, testable with zero mocks.
308
+ 20 Web Components in `public/js/components/` — each is a self-contained Custom Element (Light DOM) that owns its HTML, testable with zero mocks.
305
309
 
306
310
  ### Performance Benchmarks
307
311