homaruscc 0.3.0 → 0.4.0

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 (45) hide show
  1. package/README.md +14 -7
  2. package/dashboard/dist/assets/index-CIzoeO8A.js +52 -0
  3. package/dashboard/dist/index.html +1 -1
  4. package/dist/claude-code-registrar.d.ts +10 -0
  5. package/dist/claude-code-registrar.d.ts.map +1 -0
  6. package/dist/claude-code-registrar.js +71 -0
  7. package/dist/claude-code-registrar.js.map +1 -0
  8. package/dist/cli.d.ts +3 -0
  9. package/dist/cli.d.ts.map +1 -0
  10. package/dist/cli.js +28 -0
  11. package/dist/cli.js.map +1 -0
  12. package/dist/compaction-manager.d.ts +24 -0
  13. package/dist/compaction-manager.d.ts.map +1 -1
  14. package/dist/compaction-manager.js +88 -7
  15. package/dist/compaction-manager.js.map +1 -1
  16. package/dist/dashboard-server.d.ts.map +1 -1
  17. package/dist/dashboard-server.js +58 -4
  18. package/dist/dashboard-server.js.map +1 -1
  19. package/dist/mcp-tools.d.ts.map +1 -1
  20. package/dist/mcp-tools.js +28 -0
  21. package/dist/mcp-tools.js.map +1 -1
  22. package/dist/memory-index.js +1 -1
  23. package/dist/memory-index.js.map +1 -1
  24. package/dist/scaffolder.d.ts +16 -0
  25. package/dist/scaffolder.d.ts.map +1 -0
  26. package/dist/scaffolder.js +154 -0
  27. package/dist/scaffolder.js.map +1 -0
  28. package/dist/session-checkpoint.d.ts +3 -0
  29. package/dist/session-checkpoint.d.ts.map +1 -1
  30. package/dist/session-checkpoint.js +24 -0
  31. package/dist/session-checkpoint.js.map +1 -1
  32. package/dist/telegram-adapter.d.ts +3 -0
  33. package/dist/telegram-adapter.d.ts.map +1 -1
  34. package/dist/telegram-adapter.js +61 -0
  35. package/dist/telegram-adapter.js.map +1 -1
  36. package/dist/transcript-logger.d.ts +10 -0
  37. package/dist/transcript-logger.d.ts.map +1 -1
  38. package/dist/transcript-logger.js +4 -0
  39. package/dist/transcript-logger.js.map +1 -1
  40. package/dist/wizard.d.ts +24 -0
  41. package/dist/wizard.d.ts.map +1 -0
  42. package/dist/wizard.js +146 -0
  43. package/dist/wizard.js.map +1 -0
  44. package/package.json +4 -1
  45. package/dashboard/dist/assets/index-Xu4GUpcF.js +0 -49
package/README.md CHANGED
@@ -155,6 +155,7 @@ Restart Claude Code. HomarUScc's tools will appear automatically. The proxy auto
155
155
  | `telegram_send` | Send a message to a Telegram chat |
156
156
  | `telegram_read` | Read recent incoming messages |
157
157
  | `telegram_typing` | Send a typing indicator |
158
+ | `telegram_react` | React to a message with an emoji |
158
159
  | `memory_search` | Hybrid vector + full-text search over stored content |
159
160
  | `memory_store` | Store and index content for later retrieval |
160
161
  | `timer_schedule` | Schedule cron, interval, or one-shot timers |
@@ -190,6 +191,8 @@ When enabled, the dashboard runs on `http://localhost:3120` with:
190
191
  - Real-time event log via WebSocket
191
192
  - System status panel
192
193
  - Memory search browser
194
+ - CRM (People) — markdown-based contact manager with search, tags, connections, and linked document viewer
195
+ - Kanban — task board synced with the agent's task system
193
196
 
194
197
  The dashboard is responsive — on mobile devices the sidebar collapses into a hamburger menu. Accessible remotely over Tailscale at `http://<your-tailscale-ip>:3120`.
195
198
 
@@ -214,14 +217,18 @@ npm run dev # Dev server on :3121, proxies API to :3120
214
217
 
215
218
  ## Runtime Directories
216
219
 
217
- HomarUScc creates runtime data that's gitignored and stays local:
220
+ HomarUScc creates runtime data that's gitignored and stays local. All user data lives under `local/` (one gitignore line):
218
221
 
219
222
  | Directory | Purpose |
220
223
  |-----------|---------|
221
- | `user/context/` | Facts the assistant learns about you |
222
- | `user/corrections/` | Corrections you've made (so it doesn't repeat mistakes) |
223
- | `user/preferences/` | Your stated preferences |
224
- | `system/` | System-level learned knowledge |
224
+ | `local/user/context/` | Facts the assistant learns about you |
225
+ | `local/user/corrections/` | Corrections you've made (so it doesn't repeat mistakes) |
226
+ | `local/user/preferences/` | Your stated preferences |
227
+ | `local/system/` | System-level learned knowledge |
228
+ | `local/crm/` | CRM contact files (markdown + YAML frontmatter, see `crm.example/`) |
229
+ | `local/dreams/` | Dream cycle output (nightly, stored at 0.5x weight) |
230
+ | `local/research/` | Research notes stored by memory system |
231
+ | `local/docs/` | Private documents (outreach drafts, session notes, etc.) |
225
232
  | `~/.homaruscc/memory/` | Vector + FTS search index (SQLite) |
226
233
  | `~/.homaruscc/identity/` | Agent identity files (soul, user, state, preferences, disagreements) |
227
234
  | `~/.homaruscc/journal/` | Daily reflection journal entries (indexed by memory system) |
@@ -248,7 +255,7 @@ The `PreCompact` hook sets a flag on the backend. The next `/api/wait` response
248
255
 
249
256
  Claude Code compresses conversation history when the context window fills up. Without mitigation, the post-compaction agent loses track of what it was doing. HomarUScc handles this with two mechanisms:
250
257
 
251
- **Session checkpoint** — Before compaction, the agent saves its current task context (topic, recent decisions, in-progress work, modified files) to `~/.homaruscc/checkpoint.json` via `POST /api/checkpoint`. After compaction, the post-compact context injection includes this checkpoint so the new instance knows exactly where things left off. The checkpoint is cleared at session end.
258
+ **Session checkpoint** — Before compaction, the agent saves its current task context (topic, recent decisions, in-progress work, modified files, session texture, highlight snippets) to `~/.homaruscc/checkpoint.json` via `POST /api/checkpoint`. After compaction, the post-compact context injection includes this checkpoint so the new instance knows exactly where things left off. The checkpoint is cleared at session end. The `texture` field captures the session's conversational dynamic (e.g., "rapid shipping, playful, terse messages") and `highlights` preserves 2-3 raw exchange snippets that exemplify the vibe — restoring not just _what_ was happening but _how_ it felt.
252
259
 
253
260
  **Delivery watermark** — The server tracks the timestamp of the last event delivered to Claude Code. After compaction, the event loop resumes from the watermark instead of replaying old events. This prevents the "bad loop" problem where a post-compaction agent re-handles messages it already responded to.
254
261
 
@@ -300,7 +307,7 @@ Key source files:
300
307
  | `src/mcp-tools.ts` | MCP tool definitions |
301
308
  | `src/mcp-resources.ts` | MCP resource definitions |
302
309
  | `src/config.ts` | Config loader with env var resolution and hot-reload |
303
- | `src/telegram-adapter.ts` | Telegram long-polling adapter (text, photos, documents) |
310
+ | `src/telegram-adapter.ts` | Telegram long-polling adapter (text, photos, documents, reactions, edits) |
304
311
  | `src/dashboard-server.ts` | Express + WebSocket dashboard server |
305
312
  | `src/dashboard-adapter.ts` | Dashboard channel adapter |
306
313
  | `src/memory-index.ts` | SQLite + sqlite-vec hybrid search with dream-aware scoring |