homaruscc 0.2.0 → 0.3.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.
- package/README.md +17 -3
- package/dashboard/dist/assets/index-Xu4GUpcF.js +49 -0
- package/dashboard/dist/favicon.ico +0 -0
- package/dashboard/dist/favicon.png +0 -0
- package/dashboard/dist/index.html +15 -0
- package/dist/agent-registry.d.ts +9 -12
- package/dist/agent-registry.d.ts.map +1 -1
- package/dist/agent-registry.js +44 -113
- package/dist/agent-registry.js.map +1 -1
- package/dist/dashboard-server.d.ts.map +1 -1
- package/dist/dashboard-server.js +293 -3
- package/dist/dashboard-server.js.map +1 -1
- package/dist/homaruscc.d.ts.map +1 -1
- package/dist/homaruscc.js +1 -2
- package/dist/homaruscc.js.map +1 -1
- package/dist/telegram-adapter.d.ts +3 -0
- package/dist/telegram-adapter.d.ts.map +1 -1
- package/dist/telegram-adapter.js +90 -3
- package/dist/telegram-adapter.js.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -154,6 +154,7 @@ Restart Claude Code. HomarUScc's tools will appear automatically. The proxy auto
|
|
|
154
154
|
|------|-------------|
|
|
155
155
|
| `telegram_send` | Send a message to a Telegram chat |
|
|
156
156
|
| `telegram_read` | Read recent incoming messages |
|
|
157
|
+
| `telegram_typing` | Send a typing indicator |
|
|
157
158
|
| `memory_search` | Hybrid vector + full-text search over stored content |
|
|
158
159
|
| `memory_store` | Store and index content for later retrieval |
|
|
159
160
|
| `timer_schedule` | Schedule cron, interval, or one-shot timers |
|
|
@@ -190,6 +191,19 @@ When enabled, the dashboard runs on `http://localhost:3120` with:
|
|
|
190
191
|
- System status panel
|
|
191
192
|
- Memory search browser
|
|
192
193
|
|
|
194
|
+
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
|
+
|
|
196
|
+
### Apps Platform (planned)
|
|
197
|
+
|
|
198
|
+
The dashboard supports a pluggable apps system. The agent can build mini web apps on request (budget trackers, reading lists, dashboards) that live inside the dashboard UI:
|
|
199
|
+
|
|
200
|
+
- Apps live at `~/.homaruscc/apps/{slug}/` with a manifest, React component, and JSON data store
|
|
201
|
+
- Each app declares hooks (`read`, `write`, `describe`) exposed via a single `app_invoke` MCP tool
|
|
202
|
+
- The agent can query and update app state through hooks — "what's on my reading list?" triggers `app_invoke(slug=reading-list, hook=describe)`
|
|
203
|
+
- Apps are created by the agent via filesystem tools and auto-discovered on manifest scan
|
|
204
|
+
|
|
205
|
+
See `specs/apps-platform.md` and `design/crc-App*.md` for the full design.
|
|
206
|
+
|
|
193
207
|
### Dashboard Development
|
|
194
208
|
|
|
195
209
|
```bash
|
|
@@ -269,7 +283,7 @@ For tasks that would consume significant context (research, multi-file processin
|
|
|
269
283
|
|
|
270
284
|
Max concurrent agents is configurable via `agents.maxConcurrent` in config (default 3). The agent registry tracks running/completed/failed agents and includes them in post-compaction context so background work isn't lost across compaction boundaries.
|
|
271
285
|
|
|
272
|
-
**Completion detection:**
|
|
286
|
+
**Completion detection:** Agents signal completion by calling `POST /api/agents/:id/complete` with a result summary. This emits an `agent_completed` event that wakes the main event loop. A 30-minute timeout fallback catches agents that fail to call back. No polling needed — results arrive as events.
|
|
273
287
|
|
|
274
288
|
## Architecture
|
|
275
289
|
|
|
@@ -286,13 +300,13 @@ Key source files:
|
|
|
286
300
|
| `src/mcp-tools.ts` | MCP tool definitions |
|
|
287
301
|
| `src/mcp-resources.ts` | MCP resource definitions |
|
|
288
302
|
| `src/config.ts` | Config loader with env var resolution and hot-reload |
|
|
289
|
-
| `src/telegram-adapter.ts` | Telegram long-polling adapter |
|
|
303
|
+
| `src/telegram-adapter.ts` | Telegram long-polling adapter (text, photos, documents) |
|
|
290
304
|
| `src/dashboard-server.ts` | Express + WebSocket dashboard server |
|
|
291
305
|
| `src/dashboard-adapter.ts` | Dashboard channel adapter |
|
|
292
306
|
| `src/memory-index.ts` | SQLite + sqlite-vec hybrid search with dream-aware scoring |
|
|
293
307
|
| `src/compaction-manager.ts` | Auto-flush memory before context compaction |
|
|
294
308
|
| `src/session-checkpoint.ts` | Save/restore task context across compaction |
|
|
295
|
-
| `src/agent-registry.ts` | Track background agents with
|
|
309
|
+
| `src/agent-registry.ts` | Track background agents with callback completion and timeout fallback |
|
|
296
310
|
| `src/transcript-logger.ts` | Session transcript capture and indexing |
|
|
297
311
|
| `src/identity-manager.ts` | Identity loader (soul.md, user.md, state.md) |
|
|
298
312
|
| `src/timer-service.ts` | Cron, interval, and one-shot timers |
|