reeboot 1.0.0 → 1.3.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 (112) hide show
  1. package/README.md +218 -7
  2. package/dist/channels/signal.d.ts +13 -0
  3. package/dist/channels/signal.d.ts.map +1 -1
  4. package/dist/channels/signal.js +54 -0
  5. package/dist/channels/signal.js.map +1 -1
  6. package/dist/channels/whatsapp.d.ts +14 -0
  7. package/dist/channels/whatsapp.d.ts.map +1 -1
  8. package/dist/channels/whatsapp.js +51 -0
  9. package/dist/channels/whatsapp.js.map +1 -1
  10. package/dist/config.d.ts +112 -0
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +18 -0
  13. package/dist/config.js.map +1 -1
  14. package/dist/db/schema.d.ts +96 -0
  15. package/dist/db/schema.d.ts.map +1 -1
  16. package/dist/db/schema.js +69 -0
  17. package/dist/db/schema.js.map +1 -1
  18. package/dist/extensions/loader.d.ts.map +1 -1
  19. package/dist/extensions/loader.js +16 -0
  20. package/dist/extensions/loader.js.map +1 -1
  21. package/dist/index.d.ts +30 -1
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +132 -7
  24. package/dist/index.js.map +1 -1
  25. package/dist/orchestrator.d.ts +7 -0
  26. package/dist/orchestrator.d.ts.map +1 -1
  27. package/dist/orchestrator.js +30 -0
  28. package/dist/orchestrator.js.map +1 -1
  29. package/dist/scheduler/heartbeat.d.ts +27 -0
  30. package/dist/scheduler/heartbeat.d.ts.map +1 -0
  31. package/dist/scheduler/heartbeat.js +74 -0
  32. package/dist/scheduler/heartbeat.js.map +1 -0
  33. package/dist/scheduler/parse.d.ts +42 -0
  34. package/dist/scheduler/parse.d.ts.map +1 -0
  35. package/dist/scheduler/parse.js +119 -0
  36. package/dist/scheduler/parse.js.map +1 -0
  37. package/dist/scheduler-registry.d.ts +7 -3
  38. package/dist/scheduler-registry.d.ts.map +1 -1
  39. package/dist/scheduler-registry.js +3 -0
  40. package/dist/scheduler-registry.js.map +1 -1
  41. package/dist/scheduler.d.ts +71 -15
  42. package/dist/scheduler.d.ts.map +1 -1
  43. package/dist/scheduler.js +304 -64
  44. package/dist/scheduler.js.map +1 -1
  45. package/dist/server.d.ts.map +1 -1
  46. package/dist/server.js +18 -4
  47. package/dist/server.js.map +1 -1
  48. package/dist/setup-wizard.d.ts +5 -0
  49. package/dist/setup-wizard.d.ts.map +1 -1
  50. package/dist/setup-wizard.js +23 -69
  51. package/dist/setup-wizard.js.map +1 -1
  52. package/dist/skills-cli.d.ts +22 -0
  53. package/dist/skills-cli.d.ts.map +1 -0
  54. package/dist/skills-cli.js +56 -0
  55. package/dist/skills-cli.js.map +1 -0
  56. package/dist/utils/atomic-config.d.ts +7 -0
  57. package/dist/utils/atomic-config.d.ts.map +1 -0
  58. package/dist/utils/atomic-config.js +10 -0
  59. package/dist/utils/atomic-config.js.map +1 -0
  60. package/dist/utils/docker.d.ts +10 -0
  61. package/dist/utils/docker.d.ts.map +1 -0
  62. package/dist/utils/docker.js +27 -0
  63. package/dist/utils/docker.js.map +1 -0
  64. package/dist/wizard/index.d.ts +21 -0
  65. package/dist/wizard/index.d.ts.map +1 -0
  66. package/dist/wizard/index.js +101 -0
  67. package/dist/wizard/index.js.map +1 -0
  68. package/dist/wizard/prompter.d.ts +48 -0
  69. package/dist/wizard/prompter.d.ts.map +1 -0
  70. package/dist/wizard/prompter.js +62 -0
  71. package/dist/wizard/prompter.js.map +1 -0
  72. package/dist/wizard/steps/channels.d.ts +20 -0
  73. package/dist/wizard/steps/channels.d.ts.map +1 -0
  74. package/dist/wizard/steps/channels.js +215 -0
  75. package/dist/wizard/steps/channels.js.map +1 -0
  76. package/dist/wizard/steps/launch.d.ts +20 -0
  77. package/dist/wizard/steps/launch.d.ts.map +1 -0
  78. package/dist/wizard/steps/launch.js +82 -0
  79. package/dist/wizard/steps/launch.js.map +1 -0
  80. package/dist/wizard/steps/name.d.ts +9 -0
  81. package/dist/wizard/steps/name.d.ts.map +1 -0
  82. package/dist/wizard/steps/name.js +16 -0
  83. package/dist/wizard/steps/name.js.map +1 -0
  84. package/dist/wizard/steps/provider.d.ts +22 -0
  85. package/dist/wizard/steps/provider.d.ts.map +1 -0
  86. package/dist/wizard/steps/provider.js +134 -0
  87. package/dist/wizard/steps/provider.js.map +1 -0
  88. package/dist/wizard/steps/web-search.d.ts +10 -0
  89. package/dist/wizard/steps/web-search.d.ts.map +1 -0
  90. package/dist/wizard/steps/web-search.js +84 -0
  91. package/dist/wizard/steps/web-search.js.map +1 -0
  92. package/extensions/scheduler-tool.ts +360 -8
  93. package/extensions/skill-manager.ts +421 -0
  94. package/extensions/web-search.ts +466 -0
  95. package/package.json +5 -3
  96. package/skills/docker/SKILL.md +131 -0
  97. package/skills/files/SKILL.md +94 -0
  98. package/skills/gcal/SKILL.md +69 -0
  99. package/skills/gdrive/SKILL.md +65 -0
  100. package/skills/github/SKILL.md +80 -0
  101. package/skills/gmail/SKILL.md +68 -0
  102. package/skills/hubspot/SKILL.md +77 -0
  103. package/skills/linear/SKILL.md +78 -0
  104. package/skills/notion/SKILL.md +85 -0
  105. package/skills/postgres/SKILL.md +75 -0
  106. package/skills/reeboot-tasks/SKILL.md +98 -0
  107. package/skills/send-message/SKILL.md +52 -14
  108. package/skills/slack/SKILL.md +74 -0
  109. package/skills/sqlite/SKILL.md +85 -0
  110. package/skills/web-research/SKILL.md +47 -0
  111. package/templates/models-ollama.json +16 -0
  112. package/skills/web-search/SKILL.md +0 -32
package/README.md CHANGED
@@ -7,16 +7,22 @@
7
7
  ## Quick Start
8
8
 
9
9
  ```bash
10
- # Install and launch the setup wizard
11
- npx reeboot
12
-
13
- # Or install globally
14
10
  npm install -g reeboot
15
- reeboot setup
16
- reeboot start
11
+ reeboot
17
12
  ```
18
13
 
19
- The wizard will ask for your LLM provider, API key, model, and which channels to enable. After that, `reeboot start` runs the agent — open the WebChat URL it prints, or scan the WhatsApp QR code.
14
+ That's it. On first run, `reeboot` detects that no config exists and launches the guided setup wizard automatically. The wizard walks you through:
15
+
16
+ 1. **AI Provider** — choose from 8 providers (Anthropic, OpenAI, Google, Groq, Mistral, xAI, OpenRouter, Ollama)
17
+ 2. **Agent Name** — give your agent a name (default: Reeboot)
18
+ 3. **Channels** — optionally link WhatsApp or Signal inline (QR code shown in terminal)
19
+ 4. **Web Search** — choose DuckDuckGo (default), Brave, Tavily, Serper, Exa, SearXNG, or None
20
+
21
+ After setup, the wizard offers to start your agent immediately. On subsequent runs, `reeboot` detects the existing config and starts the agent directly — no flags needed.
22
+
23
+ To re-run setup: `reeboot setup` (asks before overwriting your existing config).
24
+
25
+ Open the WebChat URL printed on startup, or send a message to your linked WhatsApp/Signal number.
20
26
 
21
27
  ---
22
28
 
@@ -189,6 +195,91 @@ reeboot uninstall reeboot-github-tools
189
195
  }
190
196
  ```
191
197
 
198
+ ---
199
+
200
+ ## Web Search
201
+
202
+ Reeboot includes a built-in web search extension that registers two agent tools:
203
+
204
+ - **`fetch_url`** — Always available. Fetches any URL and returns clean readable text (Readability extraction with HTML-strip fallback).
205
+ - **`web_search`** — Available when `search.provider` is not `"none"`. Searches the web via the configured backend and returns an array of `{ title, url, snippet }` results.
206
+
207
+ ### Providers
208
+
209
+ | Provider | Free Tier | Config |
210
+ |----------|-----------|--------|
211
+ | `duckduckgo` | ✅ Zero config, HTML scraping | No API key needed |
212
+ | `brave` | ✅ 2,000 queries/month free | `BRAVE_API_KEY` or `config.search.apiKey` |
213
+ | `tavily` | ✅ 1,000 queries/month free | `TAVILY_API_KEY` or `config.search.apiKey` |
214
+ | `serper` | ✅ 2,500 queries free | `SERPER_API_KEY` or `config.search.apiKey` |
215
+ | `exa` | ✅ 1,000 queries/month free | `EXA_API_KEY` or `config.search.apiKey` |
216
+ | `searxng` | ✅ Self-hosted (Docker) | `searxngBaseUrl` in config |
217
+ | `none` | — | Disables `web_search`; `fetch_url` still available |
218
+
219
+ ### Configuration
220
+
221
+ Add a `search` block to `~/.reeboot/config.json`:
222
+
223
+ ```json
224
+ {
225
+ "search": {
226
+ "provider": "duckduckgo"
227
+ }
228
+ }
229
+ ```
230
+
231
+ For API-key providers:
232
+
233
+ ```json
234
+ {
235
+ "search": {
236
+ "provider": "brave",
237
+ "apiKey": "your-brave-api-key"
238
+ }
239
+ }
240
+ ```
241
+
242
+ Or set the env var instead of storing the key in config:
243
+
244
+ ```bash
245
+ export BRAVE_API_KEY=your-key # for brave
246
+ export TAVILY_API_KEY=your-key # for tavily
247
+ export SERPER_API_KEY=your-key # for serper
248
+ export EXA_API_KEY=your-key # for exa
249
+ ```
250
+
251
+ ### SearXNG (Self-Hosted)
252
+
253
+ ```json
254
+ {
255
+ "search": {
256
+ "provider": "searxng",
257
+ "searxngBaseUrl": "http://localhost:8080"
258
+ }
259
+ }
260
+ ```
261
+
262
+ Start SearXNG with Docker:
263
+
264
+ ```bash
265
+ docker run -d -p 8080:8080 searxng/searxng
266
+ ```
267
+
268
+ If SearXNG is unreachable at agent startup, reeboot automatically falls back to DuckDuckGo for the session.
269
+
270
+ ### Disabling Web Search
271
+
272
+ ```json
273
+ {
274
+ "search": {
275
+ "provider": "none"
276
+ }
277
+ }
278
+ ```
279
+
280
+ `fetch_url` remains available even when `provider = "none"`.
281
+
282
+
192
283
  ---
193
284
 
194
285
  ## WhatsApp Setup
@@ -251,6 +342,59 @@ Then: `reeboot start`
251
342
 
252
343
  ---
253
344
 
345
+ ## Bundled Skills
346
+
347
+ Reeboot ships 15 skills inside the package — no extra install needed. The agent can load them on demand via `load_skill("name")` or you can make them permanently available via config.
348
+
349
+ | Skill | What it does | Requires |
350
+ |---|---|---|
351
+ | `github` | Issues, PRs, releases, Actions, code search | `gh` CLI + `gh auth login` |
352
+ | `gmail` | Search, read, send, draft, labels, attachments | `gmcli` npm CLI + GCP OAuth |
353
+ | `gcal` | List, create, update, delete calendar events | `gccli` npm CLI + GCP OAuth |
354
+ | `gdrive` | List, read, upload, search Drive files | `gdcli` npm CLI + GCP OAuth |
355
+ | `notion` | Pages, databases, blocks, search | `NOTION_API_KEY` env var |
356
+ | `slack` | Send messages, list channels, thread replies | `SLACK_BOT_TOKEN` env var |
357
+ | `linear` | Issues, projects, teams, cycles | `LINEAR_API_KEY` env var |
358
+ | `hubspot` | Contacts, deals, companies, pipelines | `HUBSPOT_ACCESS_TOKEN` env var |
359
+ | `postgres` | Query, inspect schema, run statements | `psql` CLI + `DATABASE_URL` |
360
+ | `sqlite` | Query, inspect tables, run statements | `sqlite3` CLI + `DATABASE_PATH` |
361
+ | `docker` | Containers, images, compose stacks | `docker` CLI |
362
+ | `files` | Read, write, search local filesystem | bash (built-in) |
363
+ | `reeboot-tasks` | Schedule, list, pause, cancel own tasks | scheduler extension (built-in) |
364
+ | `web-research` | Structured multi-query web research | web-search extension |
365
+ | `send-message` | Send a message to the originating channel | reeboot channels (built-in) |
366
+
367
+ ### Skill configuration
368
+
369
+ ```yaml
370
+ # ~/.reeboot/config.yaml
371
+ skills:
372
+ permanent: [github, gmail] # always in context
373
+ ephemeral_ttl_minutes: 60 # default lifetime for on-demand loads
374
+ ```
375
+
376
+ ### Managing skills
377
+
378
+ ```bash
379
+ reeboot skills list # browse all 15 bundled skills
380
+ reeboot skills update # pull extended catalog (coming soon)
381
+ ```
382
+
383
+ The agent can also manage its own skills:
384
+
385
+ ```
386
+ User: load the notion skill for 30 minutes
387
+ Agent: → calls load_skill("notion", 30)
388
+
389
+ User: what integrations do you have available?
390
+ Agent: → calls list_available_skills()
391
+
392
+ User: unload notion, I'm done
393
+ Agent: → calls unload_skill("notion")
394
+ ```
395
+
396
+ ---
397
+
254
398
  ## CLI Reference
255
399
 
256
400
  ```
@@ -270,6 +414,9 @@ Commands:
270
414
 
271
415
  packages list List installed packages
272
416
 
417
+ skills list List all bundled skills
418
+ skills update Update extended skill catalog
419
+
273
420
  channel list List channels and their status
274
421
  channel login <ch> Authenticate a channel (whatsapp, signal)
275
422
  channel logout <ch> Disconnect a channel
@@ -359,3 +506,67 @@ MIT
359
506
  - [npm package](https://www.npmjs.com/package/reeboot)
360
507
  - [Docker Hub](https://hub.docker.com/r/reeboot/reeboot)
361
508
  - [Architecture decisions](../architecture-decisions.md)
509
+
510
+ ---
511
+
512
+ ## Proactive Agent
513
+
514
+ Reeboot supports a **proactive agent** mode where the agent can wake itself up, check for tasks, and act without being asked.
515
+
516
+ ### System Heartbeat
517
+
518
+ The system heartbeat fires at a configurable interval and dispatches a prompt to the agent with the current task snapshot. If the agent has nothing to do, it responds with `IDLE` (silently suppressed). Otherwise, the response is sent to the default channel.
519
+
520
+ Configure in `~/.reeboot/config.json`:
521
+
522
+ ```json
523
+ {
524
+ "heartbeat": {
525
+ "enabled": true,
526
+ "interval": "every 5m",
527
+ "contextId": "main"
528
+ }
529
+ }
530
+ ```
531
+
532
+ - `enabled`: Default `false`. Set to `true` to enable.
533
+ - `interval`: Human-friendly interval string (same parser as `schedule_task`). Examples: `"every 5m"`, `"every 1h"`, `"daily"`.
534
+ - `contextId`: Which context the heartbeat runs in. Default `"main"`.
535
+
536
+ ### In-Session Timer Tool
537
+
538
+ The `timer` tool lets the agent set a **non-blocking** one-shot wait. It returns immediately and fires a new agent turn after the delay:
539
+
540
+ ```
541
+ timer(seconds: 10, message: "Check build status", id: "build-check")
542
+ ```
543
+
544
+ - `seconds`: 1–3600
545
+ - `message`: Included in the wake-up message
546
+ - `id` (optional): If a timer with the same id exists, it is replaced
547
+
548
+ ### In-Session Heartbeat Tool
549
+
550
+ The `heartbeat` tool starts a periodic non-blocking wake-up:
551
+
552
+ ```
553
+ heartbeat(action: "start", interval_seconds: 60, message: "Deploy check")
554
+ heartbeat(action: "stop")
555
+ heartbeat(action: "status")
556
+ ```
557
+
558
+ - Only one heartbeat is active per session. Starting a new one replaces the previous.
559
+ - `interval_seconds`: 10–3600
560
+
561
+ ### Sleep Interceptor
562
+
563
+ The extension automatically blocks `sleep` when it is the **sole or last** command in a bash chain, redirecting the agent to use `timer` instead:
564
+
565
+ | Command | Outcome |
566
+ |---------|---------|
567
+ | `sleep 60` | ❌ Blocked — use `timer(60, msg)` |
568
+ | `npm build && sleep 60` | ❌ Blocked — sleep is last |
569
+ | `sleep 2 && npm start` | ✅ Allowed — sleep is not last |
570
+ | `npm build \|\| sleep 5` | ✅ Allowed — `\|\|` is not a split point |
571
+
572
+ Disable the interceptor: `REEBOOT_SLEEP_INTERCEPTOR=0 reeboot start`
@@ -48,4 +48,17 @@ export declare class SignalAdapter implements ChannelAdapter {
48
48
  status(): ChannelStatus;
49
49
  connectedAt(): string | null;
50
50
  }
51
+ /**
52
+ * Initiates a Signal device-linking flow for the setup wizard.
53
+ * Assumes Docker is already running and signal-cli-rest-api container is available.
54
+ * Calls onQr with the QR link URL, onSuccess on link, onTimeout after 3 minutes.
55
+ */
56
+ export declare function linkSignalDevice(opts: {
57
+ phoneNumber: string;
58
+ apiPort?: number;
59
+ onQr: (url: string) => void;
60
+ onSuccess: () => void;
61
+ onTimeout: () => void;
62
+ timeoutMs?: number;
63
+ }): Promise<void>;
51
64
  //# sourceMappingURL=signal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../src/channels/signal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAY/G,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAU/C;AAgBD,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,IAAI,CAA2B;IAGvC,OAAO,CAAC,UAAU,CAA+C;IAGjE,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,iBAAiB,CAA8C;IACvE,OAAO,CAAC,UAAU,CAAS;IAE3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,IAAI,GAAE,oBAAyB;IAM3C,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,UAAU,GAErB;IAEK,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjE,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,WAAW;IAEb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC5B,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,aAAa;YASP,KAAK;IAiBnB,OAAO,CAAC,sBAAsB;IAiCxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YAmBpD,UAAU;IAiBxB,MAAM,IAAI,aAAa;IAIvB,WAAW,IAAI,MAAM,GAAG,IAAI;CAG7B"}
1
+ {"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../src/channels/signal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAY/G,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;GAGG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAU/C;AAgBD,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,IAAI,CAA2B;IAGvC,OAAO,CAAC,UAAU,CAA+C;IAGjE,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,iBAAiB,CAA8C;IACvE,OAAO,CAAC,UAAU,CAAS;IAE3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;gBAEnB,IAAI,GAAE,oBAAyB;IAM3C,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,UAAU,GAErB;IAEK,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjE,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,WAAW;IAEb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC5B,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,aAAa;YASP,KAAK;IAiBnB,OAAO,CAAC,sBAAsB;IAiCxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;YAmBpD,UAAU;IAiBxB,MAAM,IAAI,aAAa;IAIvB,WAAW,IAAI,MAAM,GAAG,IAAI;CAG7B;AAOD;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3B,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgDhB"}
@@ -260,4 +260,58 @@ export class SignalAdapter {
260
260
  }
261
261
  // Self-register at module import time
262
262
  registerChannel('signal', () => new SignalAdapter());
263
+ // ─── linkSignalDevice (wizard) ────────────────────────────────────────────────
264
+ /**
265
+ * Initiates a Signal device-linking flow for the setup wizard.
266
+ * Assumes Docker is already running and signal-cli-rest-api container is available.
267
+ * Calls onQr with the QR link URL, onSuccess on link, onTimeout after 3 minutes.
268
+ */
269
+ export async function linkSignalDevice(opts) {
270
+ const { phoneNumber, apiPort = 8080, onQr, onSuccess, onTimeout, timeoutMs = 180_000 } = opts;
271
+ const baseUrl = `http://127.0.0.1:${apiPort}`;
272
+ let resolved = false;
273
+ const timeoutHandle = setTimeout(() => {
274
+ if (!resolved) {
275
+ resolved = true;
276
+ onTimeout();
277
+ }
278
+ }, timeoutMs);
279
+ // Get QR link URL from signal-cli-rest-api
280
+ try {
281
+ const res = await fetch(`${baseUrl}/v1/qrcodelink?device_name=reeboot`, {
282
+ method: 'GET',
283
+ });
284
+ if (res.ok) {
285
+ const url = `${baseUrl}/v1/qrcodelink?device_name=reeboot`;
286
+ if (!resolved)
287
+ onQr(url);
288
+ }
289
+ }
290
+ catch {
291
+ // Ignore — will timeout
292
+ }
293
+ // Poll for successful link
294
+ const pollInterval = setInterval(async () => {
295
+ if (resolved) {
296
+ clearInterval(pollInterval);
297
+ return;
298
+ }
299
+ try {
300
+ const encoded = encodeURIComponent(phoneNumber);
301
+ const res = await fetch(`${baseUrl}/v1/accounts`);
302
+ if (res.ok) {
303
+ const accounts = await res.json();
304
+ if (accounts.includes(phoneNumber)) {
305
+ resolved = true;
306
+ clearTimeout(timeoutHandle);
307
+ clearInterval(pollInterval);
308
+ onSuccess();
309
+ }
310
+ }
311
+ }
312
+ catch {
313
+ // Ignore poll errors
314
+ }
315
+ }, 2000);
316
+ }
263
317
  //# sourceMappingURL=signal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signal.js","sourceRoot":"","sources":["../../src/channels/signal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signal.js","sourceRoot":"","sources":["../../src/channels/signal.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,18 @@ export declare class WhatsAppAdapter implements ChannelAdapter {
22
22
  status(): ChannelStatus;
23
23
  connectedAt(): string | null;
24
24
  }
25
+ /**
26
+ * Initiates a device-linking flow for the setup wizard.
27
+ * Calls onQr with the QR string, onSuccess on connection, onTimeout if not
28
+ * connected within the 2-minute timeout.
29
+ *
30
+ * Accepts a temp auth directory to keep wizard state separate from production.
31
+ */
32
+ export declare function linkWhatsAppDevice(opts: {
33
+ authDir: string;
34
+ onQr: (qr: string) => void;
35
+ onSuccess: () => void;
36
+ onTimeout: () => void;
37
+ timeoutMs?: number;
38
+ }): Promise<void>;
25
39
  //# sourceMappingURL=whatsapp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../src/channels/whatsapp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAO/G,qBAAa,eAAgB,YAAW,cAAc;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,aAAa,CAAS;gBAElB,OAAO,CAAC,EAAE,MAAM;IAItB,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAId,QAAQ;IAgGhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlE,MAAM,IAAI,aAAa;IAIvB,WAAW,IAAI,MAAM,GAAG,IAAI;CAG7B"}
1
+ {"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../src/channels/whatsapp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAO/G,qBAAa,eAAgB,YAAW,cAAc;IACpD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,aAAa,CAAS;gBAElB,OAAO,CAAC,EAAE,MAAM;IAItB,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAId,QAAQ;IAgGhB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IASrB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlE,MAAM,IAAI,aAAa;IAIvB,WAAW,IAAI,MAAM,GAAG,IAAI;CAG7B;AAOD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC1B,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDhB"}
@@ -147,4 +147,55 @@ export class WhatsAppAdapter {
147
147
  }
148
148
  // Self-register at module import time
149
149
  registerChannel('whatsapp', () => new WhatsAppAdapter());
150
+ // ─── linkDevice (wizard) ──────────────────────────────────────────────────────
151
+ /**
152
+ * Initiates a device-linking flow for the setup wizard.
153
+ * Calls onQr with the QR string, onSuccess on connection, onTimeout if not
154
+ * connected within the 2-minute timeout.
155
+ *
156
+ * Accepts a temp auth directory to keep wizard state separate from production.
157
+ */
158
+ export async function linkWhatsAppDevice(opts) {
159
+ const { authDir, onQr, onSuccess, onTimeout, timeoutMs = 120_000 } = opts;
160
+ const { makeWASocket, useMultiFileAuthState, DisconnectReason, Browsers, fetchLatestWaWebVersion, } = await import('@whiskeysockets/baileys');
161
+ const { mkdirSync } = await import('fs');
162
+ mkdirSync(authDir, { recursive: true });
163
+ const { state, saveCreds } = await useMultiFileAuthState(authDir);
164
+ let version;
165
+ try {
166
+ const result = await fetchLatestWaWebVersion({});
167
+ version = result.version;
168
+ }
169
+ catch {
170
+ version = [2, 3000, 1027934701];
171
+ }
172
+ const sock = makeWASocket({
173
+ version,
174
+ auth: state,
175
+ browser: Browsers.ubuntu('Chrome'),
176
+ });
177
+ let resolved = false;
178
+ const timeoutHandle = setTimeout(() => {
179
+ if (!resolved) {
180
+ resolved = true;
181
+ try {
182
+ sock.end(undefined);
183
+ }
184
+ catch { /* ignore */ }
185
+ onTimeout();
186
+ }
187
+ }, timeoutMs);
188
+ sock.ev.on('creds.update', saveCreds);
189
+ sock.ev.on('connection.update', (update) => {
190
+ const { connection, qr } = update;
191
+ if (qr && !resolved) {
192
+ onQr(qr);
193
+ }
194
+ if (connection === 'open' && !resolved) {
195
+ resolved = true;
196
+ clearTimeout(timeoutHandle);
197
+ onSuccess();
198
+ }
199
+ });
200
+ }
150
201
  //# sourceMappingURL=whatsapp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../src/channels/whatsapp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../src/channels/whatsapp.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,4 +1,44 @@
1
1
  import { z } from 'zod';
2
+ declare const SkillsConfigSchema: z.ZodObject<{
3
+ permanent: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
4
+ ephemeral_ttl_minutes: z.ZodDefault<z.ZodNumber>;
5
+ catalog_path: z.ZodDefault<z.ZodString>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ permanent: string[];
8
+ ephemeral_ttl_minutes: number;
9
+ catalog_path: string;
10
+ }, {
11
+ permanent?: string[] | undefined;
12
+ ephemeral_ttl_minutes?: number | undefined;
13
+ catalog_path?: string | undefined;
14
+ }>;
15
+ export type SkillsConfig = z.infer<typeof SkillsConfigSchema>;
16
+ declare const SearchConfigSchema: z.ZodObject<{
17
+ provider: z.ZodDefault<z.ZodEnum<["none", "duckduckgo", "brave", "tavily", "serper", "exa", "searxng"]>>;
18
+ apiKey: z.ZodDefault<z.ZodString>;
19
+ searxngBaseUrl: z.ZodDefault<z.ZodString>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ provider: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng";
22
+ apiKey: string;
23
+ searxngBaseUrl: string;
24
+ }, {
25
+ provider?: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng" | undefined;
26
+ apiKey?: string | undefined;
27
+ searxngBaseUrl?: string | undefined;
28
+ }>;
29
+ declare const HeartbeatConfigSchema: z.ZodObject<{
30
+ enabled: z.ZodDefault<z.ZodBoolean>;
31
+ interval: z.ZodDefault<z.ZodString>;
32
+ contextId: z.ZodDefault<z.ZodString>;
33
+ }, "strip", z.ZodTypeAny, {
34
+ enabled: boolean;
35
+ interval: string;
36
+ contextId: string;
37
+ }, {
38
+ enabled?: boolean | undefined;
39
+ interval?: string | undefined;
40
+ contextId?: string | undefined;
41
+ }>;
2
42
  export declare const ConfigSchema: z.ZodObject<{
3
43
  agent: z.ZodDefault<z.ZodObject<{
4
44
  name: z.ZodDefault<z.ZodString>;
@@ -229,6 +269,45 @@ export declare const ConfigSchema: z.ZodObject<{
229
269
  enabled?: boolean | undefined;
230
270
  port?: number | undefined;
231
271
  }>>;
272
+ search: z.ZodDefault<z.ZodObject<{
273
+ provider: z.ZodDefault<z.ZodEnum<["none", "duckduckgo", "brave", "tavily", "serper", "exa", "searxng"]>>;
274
+ apiKey: z.ZodDefault<z.ZodString>;
275
+ searxngBaseUrl: z.ZodDefault<z.ZodString>;
276
+ }, "strip", z.ZodTypeAny, {
277
+ provider: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng";
278
+ apiKey: string;
279
+ searxngBaseUrl: string;
280
+ }, {
281
+ provider?: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng" | undefined;
282
+ apiKey?: string | undefined;
283
+ searxngBaseUrl?: string | undefined;
284
+ }>>;
285
+ heartbeat: z.ZodDefault<z.ZodObject<{
286
+ enabled: z.ZodDefault<z.ZodBoolean>;
287
+ interval: z.ZodDefault<z.ZodString>;
288
+ contextId: z.ZodDefault<z.ZodString>;
289
+ }, "strip", z.ZodTypeAny, {
290
+ enabled: boolean;
291
+ interval: string;
292
+ contextId: string;
293
+ }, {
294
+ enabled?: boolean | undefined;
295
+ interval?: string | undefined;
296
+ contextId?: string | undefined;
297
+ }>>;
298
+ skills: z.ZodDefault<z.ZodObject<{
299
+ permanent: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
300
+ ephemeral_ttl_minutes: z.ZodDefault<z.ZodNumber>;
301
+ catalog_path: z.ZodDefault<z.ZodString>;
302
+ }, "strip", z.ZodTypeAny, {
303
+ permanent: string[];
304
+ ephemeral_ttl_minutes: number;
305
+ catalog_path: string;
306
+ }, {
307
+ permanent?: string[] | undefined;
308
+ ephemeral_ttl_minutes?: number | undefined;
309
+ catalog_path?: string | undefined;
310
+ }>>;
232
311
  }, "strip", z.ZodTypeAny, {
233
312
  sandbox: {
234
313
  mode: "os" | "docker";
@@ -293,6 +372,21 @@ export declare const ConfigSchema: z.ZodObject<{
293
372
  enabled: boolean;
294
373
  port: number;
295
374
  };
375
+ search: {
376
+ provider: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng";
377
+ apiKey: string;
378
+ searxngBaseUrl: string;
379
+ };
380
+ heartbeat: {
381
+ enabled: boolean;
382
+ interval: string;
383
+ contextId: string;
384
+ };
385
+ skills: {
386
+ permanent: string[];
387
+ ephemeral_ttl_minutes: number;
388
+ catalog_path: string;
389
+ };
296
390
  }, {
297
391
  sandbox?: {
298
392
  mode?: "os" | "docker" | undefined;
@@ -357,10 +451,28 @@ export declare const ConfigSchema: z.ZodObject<{
357
451
  enabled?: boolean | undefined;
358
452
  port?: number | undefined;
359
453
  } | undefined;
454
+ search?: {
455
+ provider?: "none" | "duckduckgo" | "brave" | "tavily" | "serper" | "exa" | "searxng" | undefined;
456
+ apiKey?: string | undefined;
457
+ searxngBaseUrl?: string | undefined;
458
+ } | undefined;
459
+ heartbeat?: {
460
+ enabled?: boolean | undefined;
461
+ interval?: string | undefined;
462
+ contextId?: string | undefined;
463
+ } | undefined;
464
+ skills?: {
465
+ permanent?: string[] | undefined;
466
+ ephemeral_ttl_minutes?: number | undefined;
467
+ catalog_path?: string | undefined;
468
+ } | undefined;
360
469
  }>;
361
470
  export type Config = z.infer<typeof ConfigSchema>;
471
+ export type SearchConfig = z.infer<typeof SearchConfigSchema>;
472
+ export type HeartbeatConfig = z.infer<typeof HeartbeatConfigSchema>;
362
473
  export declare const defaultConfig: Config;
363
474
  export declare function getDefaultConfigPath(): string;
364
475
  export declare function loadConfig(configPath?: string): Config;
365
476
  export declare function saveConfig(config: Config, configPath?: string): void;
477
+ export {};
366
478
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqFxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAIlD,eAAO,MAAM,aAAa,EAAE,MAA+B,CAAC;AAI5D,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAID,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAyCtD;AAID,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAepE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgCxB,QAAA,MAAM,kBAAkB;;;;;;;;;;;;EAItB,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAuD9D,QAAA,MAAM,kBAAkB;;;;;;;;;;;;EAItB,CAAC;AAEH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;EAIzB,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAavB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAClD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,aAAa,EAAE,MAA+B,CAAC;AAI5D,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAID,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAyCtD;AAID,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAepE"}