openryoko 0.9.4-ryoko.2
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/dist/bin/jimmy.d.ts +3 -0
- package/dist/bin/jimmy.d.ts.map +1 -0
- package/dist/bin/jimmy.js +149 -0
- package/dist/bin/jimmy.js.map +1 -0
- package/dist/package.json +54 -0
- package/dist/src/cli/__tests__/migrate.test.d.ts +2 -0
- package/dist/src/cli/__tests__/migrate.test.d.ts.map +1 -0
- package/dist/src/cli/__tests__/migrate.test.js +79 -0
- package/dist/src/cli/__tests__/migrate.test.js.map +1 -0
- package/dist/src/cli/chrome-allow.d.ts +5 -0
- package/dist/src/cli/chrome-allow.d.ts.map +1 -0
- package/dist/src/cli/chrome-allow.js +250 -0
- package/dist/src/cli/chrome-allow.js.map +1 -0
- package/dist/src/cli/create.d.ts +2 -0
- package/dist/src/cli/create.d.ts.map +1 -0
- package/dist/src/cli/create.js +72 -0
- package/dist/src/cli/create.js.map +1 -0
- package/dist/src/cli/instances.d.ts +14 -0
- package/dist/src/cli/instances.d.ts.map +1 -0
- package/dist/src/cli/instances.js +43 -0
- package/dist/src/cli/instances.js.map +1 -0
- package/dist/src/cli/list.d.ts +2 -0
- package/dist/src/cli/list.d.ts.map +1 -0
- package/dist/src/cli/list.js +38 -0
- package/dist/src/cli/list.js.map +1 -0
- package/dist/src/cli/migrate.d.ts +5 -0
- package/dist/src/cli/migrate.d.ts.map +1 -0
- package/dist/src/cli/migrate.js +222 -0
- package/dist/src/cli/migrate.js.map +1 -0
- package/dist/src/cli/nuke.d.ts +2 -0
- package/dist/src/cli/nuke.d.ts.map +1 -0
- package/dist/src/cli/nuke.js +91 -0
- package/dist/src/cli/nuke.js.map +1 -0
- package/dist/src/cli/remove.d.ts +4 -0
- package/dist/src/cli/remove.d.ts.map +1 -0
- package/dist/src/cli/remove.js +47 -0
- package/dist/src/cli/remove.js.map +1 -0
- package/dist/src/cli/setup.d.ts +4 -0
- package/dist/src/cli/setup.d.ts.map +1 -0
- package/dist/src/cli/setup.js +491 -0
- package/dist/src/cli/setup.js.map +1 -0
- package/dist/src/cli/skills.d.ts +28 -0
- package/dist/src/cli/skills.d.ts.map +1 -0
- package/dist/src/cli/skills.js +284 -0
- package/dist/src/cli/skills.js.map +1 -0
- package/dist/src/cli/start.d.ts +5 -0
- package/dist/src/cli/start.d.ts.map +1 -0
- package/dist/src/cli/start.js +34 -0
- package/dist/src/cli/start.js.map +1 -0
- package/dist/src/cli/status.d.ts +2 -0
- package/dist/src/cli/status.d.ts.map +1 -0
- package/dist/src/cli/status.js +69 -0
- package/dist/src/cli/status.js.map +1 -0
- package/dist/src/cli/stop.d.ts +2 -0
- package/dist/src/cli/stop.d.ts.map +1 -0
- package/dist/src/cli/stop.js +11 -0
- package/dist/src/cli/stop.js.map +1 -0
- package/dist/src/connectors/cron/index.d.ts +21 -0
- package/dist/src/connectors/cron/index.d.ts.map +1 -0
- package/dist/src/connectors/cron/index.js +75 -0
- package/dist/src/connectors/cron/index.js.map +1 -0
- package/dist/src/connectors/discord/format.d.ts +3 -0
- package/dist/src/connectors/discord/format.d.ts.map +1 -0
- package/dist/src/connectors/discord/format.js +33 -0
- package/dist/src/connectors/discord/format.js.map +1 -0
- package/dist/src/connectors/discord/index.d.ts +47 -0
- package/dist/src/connectors/discord/index.d.ts.map +1 -0
- package/dist/src/connectors/discord/index.js +308 -0
- package/dist/src/connectors/discord/index.js.map +1 -0
- package/dist/src/connectors/discord/remote.d.ts +33 -0
- package/dist/src/connectors/discord/remote.d.ts.map +1 -0
- package/dist/src/connectors/discord/remote.js +89 -0
- package/dist/src/connectors/discord/remote.js.map +1 -0
- package/dist/src/connectors/discord/threads.d.ts +5 -0
- package/dist/src/connectors/discord/threads.d.ts.map +1 -0
- package/dist/src/connectors/discord/threads.js +22 -0
- package/dist/src/connectors/discord/threads.js.map +1 -0
- package/dist/src/connectors/slack/__tests__/active-threads.test.d.ts +2 -0
- package/dist/src/connectors/slack/__tests__/active-threads.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/__tests__/active-threads.test.js +57 -0
- package/dist/src/connectors/slack/__tests__/active-threads.test.js.map +1 -0
- package/dist/src/connectors/slack/__tests__/format.test.d.ts +2 -0
- package/dist/src/connectors/slack/__tests__/format.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/__tests__/format.test.js +115 -0
- package/dist/src/connectors/slack/__tests__/format.test.js.map +1 -0
- package/dist/src/connectors/slack/__tests__/speaker.test.d.ts +2 -0
- package/dist/src/connectors/slack/__tests__/speaker.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/__tests__/speaker.test.js +59 -0
- package/dist/src/connectors/slack/__tests__/speaker.test.js.map +1 -0
- package/dist/src/connectors/slack/__tests__/triage-prompt.test.d.ts +2 -0
- package/dist/src/connectors/slack/__tests__/triage-prompt.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/__tests__/triage-prompt.test.js +102 -0
- package/dist/src/connectors/slack/__tests__/triage-prompt.test.js.map +1 -0
- package/dist/src/connectors/slack/__tests__/triage.test.d.ts +2 -0
- package/dist/src/connectors/slack/__tests__/triage.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/__tests__/triage.test.js +88 -0
- package/dist/src/connectors/slack/__tests__/triage.test.js.map +1 -0
- package/dist/src/connectors/slack/active-threads.d.ts +39 -0
- package/dist/src/connectors/slack/active-threads.d.ts.map +1 -0
- package/dist/src/connectors/slack/active-threads.js +71 -0
- package/dist/src/connectors/slack/active-threads.js.map +1 -0
- package/dist/src/connectors/slack/format.d.ts +17 -0
- package/dist/src/connectors/slack/format.d.ts.map +1 -0
- package/dist/src/connectors/slack/format.js +85 -0
- package/dist/src/connectors/slack/format.js.map +1 -0
- package/dist/src/connectors/slack/index.d.ts +51 -0
- package/dist/src/connectors/slack/index.d.ts.map +1 -0
- package/dist/src/connectors/slack/index.js +562 -0
- package/dist/src/connectors/slack/index.js.map +1 -0
- package/dist/src/connectors/slack/speaker.d.ts +39 -0
- package/dist/src/connectors/slack/speaker.d.ts.map +1 -0
- package/dist/src/connectors/slack/speaker.js +30 -0
- package/dist/src/connectors/slack/speaker.js.map +1 -0
- package/dist/src/connectors/slack/threads.d.ts +12 -0
- package/dist/src/connectors/slack/threads.d.ts.map +1 -0
- package/dist/src/connectors/slack/threads.js +41 -0
- package/dist/src/connectors/slack/threads.js.map +1 -0
- package/dist/src/connectors/slack/threads.test.d.ts +2 -0
- package/dist/src/connectors/slack/threads.test.d.ts.map +1 -0
- package/dist/src/connectors/slack/threads.test.js +79 -0
- package/dist/src/connectors/slack/threads.test.js.map +1 -0
- package/dist/src/connectors/slack/triage-prompt.d.ts +50 -0
- package/dist/src/connectors/slack/triage-prompt.d.ts.map +1 -0
- package/dist/src/connectors/slack/triage-prompt.js +127 -0
- package/dist/src/connectors/slack/triage-prompt.js.map +1 -0
- package/dist/src/connectors/slack/triage.d.ts +41 -0
- package/dist/src/connectors/slack/triage.d.ts.map +1 -0
- package/dist/src/connectors/slack/triage.js +120 -0
- package/dist/src/connectors/slack/triage.js.map +1 -0
- package/dist/src/connectors/telegram/__tests__/connector.test.d.ts +2 -0
- package/dist/src/connectors/telegram/__tests__/connector.test.d.ts.map +1 -0
- package/dist/src/connectors/telegram/__tests__/connector.test.js +257 -0
- package/dist/src/connectors/telegram/__tests__/connector.test.js.map +1 -0
- package/dist/src/connectors/telegram/__tests__/format.test.d.ts +2 -0
- package/dist/src/connectors/telegram/__tests__/format.test.d.ts.map +1 -0
- package/dist/src/connectors/telegram/__tests__/format.test.js +79 -0
- package/dist/src/connectors/telegram/__tests__/format.test.js.map +1 -0
- package/dist/src/connectors/telegram/__tests__/threads.test.d.ts +2 -0
- package/dist/src/connectors/telegram/__tests__/threads.test.d.ts.map +1 -0
- package/dist/src/connectors/telegram/__tests__/threads.test.js +51 -0
- package/dist/src/connectors/telegram/__tests__/threads.test.js.map +1 -0
- package/dist/src/connectors/telegram/format.d.ts +12 -0
- package/dist/src/connectors/telegram/format.d.ts.map +1 -0
- package/dist/src/connectors/telegram/format.js +61 -0
- package/dist/src/connectors/telegram/format.js.map +1 -0
- package/dist/src/connectors/telegram/index.d.ts +28 -0
- package/dist/src/connectors/telegram/index.d.ts.map +1 -0
- package/dist/src/connectors/telegram/index.js +213 -0
- package/dist/src/connectors/telegram/index.js.map +1 -0
- package/dist/src/connectors/telegram/threads.d.ts +29 -0
- package/dist/src/connectors/telegram/threads.d.ts.map +1 -0
- package/dist/src/connectors/telegram/threads.js +26 -0
- package/dist/src/connectors/telegram/threads.js.map +1 -0
- package/dist/src/connectors/whatsapp/__tests__/format.test.d.ts +2 -0
- package/dist/src/connectors/whatsapp/__tests__/format.test.d.ts.map +1 -0
- package/dist/src/connectors/whatsapp/__tests__/format.test.js +70 -0
- package/dist/src/connectors/whatsapp/__tests__/format.test.js.map +1 -0
- package/dist/src/connectors/whatsapp/format.d.ts +12 -0
- package/dist/src/connectors/whatsapp/format.d.ts.map +1 -0
- package/dist/src/connectors/whatsapp/format.js +53 -0
- package/dist/src/connectors/whatsapp/format.js.map +1 -0
- package/dist/src/connectors/whatsapp/index.d.ts +42 -0
- package/dist/src/connectors/whatsapp/index.d.ts.map +1 -0
- package/dist/src/connectors/whatsapp/index.js +279 -0
- package/dist/src/connectors/whatsapp/index.js.map +1 -0
- package/dist/src/cron/jobs.d.ts +5 -0
- package/dist/src/cron/jobs.d.ts.map +1 -0
- package/dist/src/cron/jobs.js +23 -0
- package/dist/src/cron/jobs.js.map +1 -0
- package/dist/src/cron/runner.d.ts +4 -0
- package/dist/src/cron/runner.d.ts.map +1 -0
- package/dist/src/cron/runner.js +88 -0
- package/dist/src/cron/runner.js.map +1 -0
- package/dist/src/cron/scheduler.d.ts +8 -0
- package/dist/src/cron/scheduler.d.ts.map +1 -0
- package/dist/src/cron/scheduler.js +64 -0
- package/dist/src/cron/scheduler.js.map +1 -0
- package/dist/src/engines/__tests__/gemini.test.d.ts +2 -0
- package/dist/src/engines/__tests__/gemini.test.d.ts.map +1 -0
- package/dist/src/engines/__tests__/gemini.test.js +404 -0
- package/dist/src/engines/__tests__/gemini.test.js.map +1 -0
- package/dist/src/engines/claude.d.ts +20 -0
- package/dist/src/engines/claude.d.ts.map +1 -0
- package/dist/src/engines/claude.js +520 -0
- package/dist/src/engines/claude.js.map +1 -0
- package/dist/src/engines/codex.d.ts +15 -0
- package/dist/src/engines/codex.d.ts.map +1 -0
- package/dist/src/engines/codex.js +351 -0
- package/dist/src/engines/codex.js.map +1 -0
- package/dist/src/engines/gemini.d.ts +32 -0
- package/dist/src/engines/gemini.d.ts.map +1 -0
- package/dist/src/engines/gemini.js +328 -0
- package/dist/src/engines/gemini.js.map +1 -0
- package/dist/src/engines/mock.d.ts +16 -0
- package/dist/src/engines/mock.d.ts.map +1 -0
- package/dist/src/engines/mock.js +47 -0
- package/dist/src/engines/mock.js.map +1 -0
- package/dist/src/gateway/__tests__/api-last-n.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/api-last-n.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/api-last-n.test.js +32 -0
- package/dist/src/gateway/__tests__/api-last-n.test.js.map +1 -0
- package/dist/src/gateway/__tests__/costs.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/costs.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/costs.test.js +32 -0
- package/dist/src/gateway/__tests__/costs.test.js.map +1 -0
- package/dist/src/gateway/__tests__/org-hierarchy.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/org-hierarchy.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/org-hierarchy.test.js +161 -0
- package/dist/src/gateway/__tests__/org-hierarchy.test.js.map +1 -0
- package/dist/src/gateway/__tests__/org-update.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/org-update.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/org-update.test.js +99 -0
- package/dist/src/gateway/__tests__/org-update.test.js.map +1 -0
- package/dist/src/gateway/__tests__/org.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/org.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/org.test.js +77 -0
- package/dist/src/gateway/__tests__/org.test.js.map +1 -0
- package/dist/src/gateway/__tests__/services.test.d.ts +2 -0
- package/dist/src/gateway/__tests__/services.test.d.ts.map +1 -0
- package/dist/src/gateway/__tests__/services.test.js +153 -0
- package/dist/src/gateway/__tests__/services.test.js.map +1 -0
- package/dist/src/gateway/api.d.ts +19 -0
- package/dist/src/gateway/api.d.ts.map +1 -0
- package/dist/src/gateway/api.js +2261 -0
- package/dist/src/gateway/api.js.map +1 -0
- package/dist/src/gateway/budgets.d.ts +16 -0
- package/dist/src/gateway/budgets.d.ts.map +1 -0
- package/dist/src/gateway/budgets.js +39 -0
- package/dist/src/gateway/budgets.js.map +1 -0
- package/dist/src/gateway/costs.d.ts +19 -0
- package/dist/src/gateway/costs.d.ts.map +1 -0
- package/dist/src/gateway/costs.js +39 -0
- package/dist/src/gateway/costs.js.map +1 -0
- package/dist/src/gateway/daemon-entry.d.ts +2 -0
- package/dist/src/gateway/daemon-entry.d.ts.map +1 -0
- package/dist/src/gateway/daemon-entry.js +12 -0
- package/dist/src/gateway/daemon-entry.js.map +1 -0
- package/dist/src/gateway/files.d.ts +6 -0
- package/dist/src/gateway/files.d.ts.map +1 -0
- package/dist/src/gateway/files.js +442 -0
- package/dist/src/gateway/files.js.map +1 -0
- package/dist/src/gateway/goals.d.ts +11 -0
- package/dist/src/gateway/goals.d.ts.map +1 -0
- package/dist/src/gateway/goals.js +72 -0
- package/dist/src/gateway/goals.js.map +1 -0
- package/dist/src/gateway/lifecycle.d.ts +10 -0
- package/dist/src/gateway/lifecycle.d.ts.map +1 -0
- package/dist/src/gateway/lifecycle.js +152 -0
- package/dist/src/gateway/lifecycle.js.map +1 -0
- package/dist/src/gateway/org-hierarchy.d.ts +5 -0
- package/dist/src/gateway/org-hierarchy.d.ts.map +1 -0
- package/dist/src/gateway/org-hierarchy.js +174 -0
- package/dist/src/gateway/org-hierarchy.js.map +1 -0
- package/dist/src/gateway/org.d.ts +17 -0
- package/dist/src/gateway/org.d.ts.map +1 -0
- package/dist/src/gateway/org.js +136 -0
- package/dist/src/gateway/org.js.map +1 -0
- package/dist/src/gateway/server.d.ts +4 -0
- package/dist/src/gateway/server.d.ts.map +1 -0
- package/dist/src/gateway/server.js +764 -0
- package/dist/src/gateway/server.js.map +1 -0
- package/dist/src/gateway/services.d.ts +28 -0
- package/dist/src/gateway/services.d.ts.map +1 -0
- package/dist/src/gateway/services.js +112 -0
- package/dist/src/gateway/services.js.map +1 -0
- package/dist/src/gateway/watcher.d.ts +14 -0
- package/dist/src/gateway/watcher.d.ts.map +1 -0
- package/dist/src/gateway/watcher.js +111 -0
- package/dist/src/gateway/watcher.js.map +1 -0
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +4 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/mcp/gateway-server.d.ts +13 -0
- package/dist/src/mcp/gateway-server.d.ts.map +1 -0
- package/dist/src/mcp/gateway-server.js +376 -0
- package/dist/src/mcp/gateway-server.js.map +1 -0
- package/dist/src/mcp/resolver.d.ts +19 -0
- package/dist/src/mcp/resolver.d.ts.map +1 -0
- package/dist/src/mcp/resolver.js +159 -0
- package/dist/src/mcp/resolver.js.map +1 -0
- package/dist/src/sessions/__tests__/callbacks.test.d.ts +2 -0
- package/dist/src/sessions/__tests__/callbacks.test.d.ts.map +1 -0
- package/dist/src/sessions/__tests__/callbacks.test.js +154 -0
- package/dist/src/sessions/__tests__/callbacks.test.js.map +1 -0
- package/dist/src/sessions/callbacks.d.ts +31 -0
- package/dist/src/sessions/callbacks.d.ts.map +1 -0
- package/dist/src/sessions/callbacks.js +112 -0
- package/dist/src/sessions/callbacks.js.map +1 -0
- package/dist/src/sessions/context.d.ts +36 -0
- package/dist/src/sessions/context.d.ts.map +1 -0
- package/dist/src/sessions/context.js +741 -0
- package/dist/src/sessions/context.js.map +1 -0
- package/dist/src/sessions/fork.d.ts +30 -0
- package/dist/src/sessions/fork.d.ts.map +1 -0
- package/dist/src/sessions/fork.js +178 -0
- package/dist/src/sessions/fork.js.map +1 -0
- package/dist/src/sessions/manager.d.ts +27 -0
- package/dist/src/sessions/manager.d.ts.map +1 -0
- package/dist/src/sessions/manager.js +751 -0
- package/dist/src/sessions/manager.js.map +1 -0
- package/dist/src/sessions/queue.d.ts +36 -0
- package/dist/src/sessions/queue.d.ts.map +1 -0
- package/dist/src/sessions/queue.js +101 -0
- package/dist/src/sessions/queue.js.map +1 -0
- package/dist/src/sessions/queue.test.d.ts +2 -0
- package/dist/src/sessions/queue.test.d.ts.map +1 -0
- package/dist/src/sessions/queue.test.js +28 -0
- package/dist/src/sessions/queue.test.js.map +1 -0
- package/dist/src/sessions/registry.d.ts +116 -0
- package/dist/src/sessions/registry.d.ts.map +1 -0
- package/dist/src/sessions/registry.js +480 -0
- package/dist/src/sessions/registry.js.map +1 -0
- package/dist/src/sessions/registry.test.d.ts +2 -0
- package/dist/src/sessions/registry.test.d.ts.map +1 -0
- package/dist/src/sessions/registry.test.js +41 -0
- package/dist/src/sessions/registry.test.js.map +1 -0
- package/dist/src/shared/__tests__/rateLimit.test.d.ts +2 -0
- package/dist/src/shared/__tests__/rateLimit.test.d.ts.map +1 -0
- package/dist/src/shared/__tests__/rateLimit.test.js +108 -0
- package/dist/src/shared/__tests__/rateLimit.test.js.map +1 -0
- package/dist/src/shared/__tests__/usageAwareness.test.d.ts +2 -0
- package/dist/src/shared/__tests__/usageAwareness.test.d.ts.map +1 -0
- package/dist/src/shared/__tests__/usageAwareness.test.js +58 -0
- package/dist/src/shared/__tests__/usageAwareness.test.js.map +1 -0
- package/dist/src/shared/config.d.ts +3 -0
- package/dist/src/shared/config.d.ts.map +1 -0
- package/dist/src/shared/config.js +11 -0
- package/dist/src/shared/config.js.map +1 -0
- package/dist/src/shared/effort.d.ts +17 -0
- package/dist/src/shared/effort.d.ts.map +1 -0
- package/dist/src/shared/effort.js +44 -0
- package/dist/src/shared/effort.js.map +1 -0
- package/dist/src/shared/logger.d.ts +12 -0
- package/dist/src/shared/logger.d.ts.map +1 -0
- package/dist/src/shared/logger.js +35 -0
- package/dist/src/shared/logger.js.map +1 -0
- package/dist/src/shared/paths.d.ts +31 -0
- package/dist/src/shared/paths.d.ts.map +1 -0
- package/dist/src/shared/paths.js +92 -0
- package/dist/src/shared/paths.js.map +1 -0
- package/dist/src/shared/rateLimit.d.ts +20 -0
- package/dist/src/shared/rateLimit.d.ts.map +1 -0
- package/dist/src/shared/rateLimit.js +61 -0
- package/dist/src/shared/rateLimit.js.map +1 -0
- package/dist/src/shared/types.d.ts +448 -0
- package/dist/src/shared/types.d.ts.map +1 -0
- package/dist/src/shared/types.js +4 -0
- package/dist/src/shared/types.js.map +1 -0
- package/dist/src/shared/usageAwareness.d.ts +10 -0
- package/dist/src/shared/usageAwareness.d.ts.map +1 -0
- package/dist/src/shared/usageAwareness.js +69 -0
- package/dist/src/shared/usageAwareness.js.map +1 -0
- package/dist/src/shared/version.d.ts +15 -0
- package/dist/src/shared/version.d.ts.map +1 -0
- package/dist/src/shared/version.js +56 -0
- package/dist/src/shared/version.js.map +1 -0
- package/dist/src/stt/stt.d.ts +24 -0
- package/dist/src/stt/stt.d.ts.map +1 -0
- package/dist/src/stt/stt.js +203 -0
- package/dist/src/stt/stt.js.map +1 -0
- package/dist/web/404.html +1 -0
- package/dist/web/__next.__PAGE__.txt +9 -0
- package/dist/web/__next._full.txt +19 -0
- package/dist/web/__next._head.txt +6 -0
- package/dist/web/__next._index.txt +6 -0
- package/dist/web/__next._tree.txt +2 -0
- package/dist/web/_next/static/chunks/00yn.jp4tr9l6.js +62 -0
- package/dist/web/_next/static/chunks/0398g9fy2i2l..js +5 -0
- package/dist/web/_next/static/chunks/03~yq9q893hmn.js +1 -0
- package/dist/web/_next/static/chunks/07t-qdutaizlf.js +5 -0
- package/dist/web/_next/static/chunks/0_pxvi.u4tzw1.js +5 -0
- package/dist/web/_next/static/chunks/0dtbl8648b3u9.js +7 -0
- package/dist/web/_next/static/chunks/0e3pdjkorr5zl.js +2 -0
- package/dist/web/_next/static/chunks/0ewpxy-mzj3j3.js +1 -0
- package/dist/web/_next/static/chunks/0ihbb7~gq42g~.js +5 -0
- package/dist/web/_next/static/chunks/0j4uz-g9x1_~s.js +1 -0
- package/dist/web/_next/static/chunks/0mlo32yrc7ziu.css +1 -0
- package/dist/web/_next/static/chunks/0ru56x83x4rkk.js +1 -0
- package/dist/web/_next/static/chunks/0svvev77pb2gu.js +1 -0
- package/dist/web/_next/static/chunks/0tf9kpygstdls.js +1 -0
- package/dist/web/_next/static/chunks/0wzpea61sn2-k.js +5 -0
- package/dist/web/_next/static/chunks/0y3dnnq~kxyz_.js +1 -0
- package/dist/web/_next/static/chunks/0y~qqhmf2o7pt.js +1 -0
- package/dist/web/_next/static/chunks/0~6m1p5hnsx2f.js +1 -0
- package/dist/web/_next/static/chunks/10-liamt-ipcu.js +1 -0
- package/dist/web/_next/static/chunks/10l08hq.acixl.js +5 -0
- package/dist/web/_next/static/chunks/11rbefjn.e-3-.js +1 -0
- package/dist/web/_next/static/chunks/11rodb4s1x4of.js +1 -0
- package/dist/web/_next/static/chunks/12_uxtnrqhoo1.js +1 -0
- package/dist/web/_next/static/chunks/12h4dws.tz7yb.js +5 -0
- package/dist/web/_next/static/chunks/13juizw904g.e.js +1 -0
- package/dist/web/_next/static/chunks/14ge_q22f0n.f.js +1 -0
- package/dist/web/_next/static/chunks/16b0jvgccyt2i.js +5 -0
- package/dist/web/_next/static/chunks/17-u9c_weg12-.js +31 -0
- package/dist/web/_next/static/chunks/turbopack-0dt987bw_1nyf.js +1 -0
- package/dist/web/_next/static/media/apple-icon.0.wpl4.d-5bkf.jpg +0 -0
- package/dist/web/_next/static/media/icon.0.wpl4.d-5bkf.jpg +0 -0
- package/dist/web/_next/static/uwjABwQIFELOHhVlstvOe/_buildManifest.js +11 -0
- package/dist/web/_next/static/uwjABwQIFELOHhVlstvOe/_clientMiddlewareManifest.js +1 -0
- package/dist/web/_next/static/uwjABwQIFELOHhVlstvOe/_ssgManifest.js +1 -0
- package/dist/web/_not-found/__next._full.txt +17 -0
- package/dist/web/_not-found/__next._head.txt +6 -0
- package/dist/web/_not-found/__next._index.txt +6 -0
- package/dist/web/_not-found/__next._not-found.__PAGE__.txt +5 -0
- package/dist/web/_not-found/__next._not-found.txt +5 -0
- package/dist/web/_not-found/__next._tree.txt +2 -0
- package/dist/web/_not-found.html +1 -0
- package/dist/web/_not-found.txt +17 -0
- package/dist/web/apple-icon.jpg +0 -0
- package/dist/web/chat/__next._full.txt +21 -0
- package/dist/web/chat/__next._head.txt +6 -0
- package/dist/web/chat/__next._index.txt +6 -0
- package/dist/web/chat/__next._tree.txt +2 -0
- package/dist/web/chat/__next.chat.__PAGE__.txt +9 -0
- package/dist/web/chat/__next.chat.txt +5 -0
- package/dist/web/chat.html +1 -0
- package/dist/web/chat.txt +21 -0
- package/dist/web/cron/__next._full.txt +21 -0
- package/dist/web/cron/__next._head.txt +6 -0
- package/dist/web/cron/__next._index.txt +6 -0
- package/dist/web/cron/__next._tree.txt +2 -0
- package/dist/web/cron/__next.cron.__PAGE__.txt +9 -0
- package/dist/web/cron/__next.cron.txt +5 -0
- package/dist/web/cron.html +1 -0
- package/dist/web/cron.txt +21 -0
- package/dist/web/icon.jpg +0 -0
- package/dist/web/index.html +1 -0
- package/dist/web/index.txt +19 -0
- package/dist/web/kanban/__next._full.txt +21 -0
- package/dist/web/kanban/__next._head.txt +6 -0
- package/dist/web/kanban/__next._index.txt +6 -0
- package/dist/web/kanban/__next._tree.txt +2 -0
- package/dist/web/kanban/__next.kanban.__PAGE__.txt +9 -0
- package/dist/web/kanban/__next.kanban.txt +5 -0
- package/dist/web/kanban.html +1 -0
- package/dist/web/kanban.txt +21 -0
- package/dist/web/logs/__next._full.txt +21 -0
- package/dist/web/logs/__next._head.txt +6 -0
- package/dist/web/logs/__next._index.txt +6 -0
- package/dist/web/logs/__next._tree.txt +2 -0
- package/dist/web/logs/__next.logs.__PAGE__.txt +9 -0
- package/dist/web/logs/__next.logs.txt +5 -0
- package/dist/web/logs.html +7 -0
- package/dist/web/logs.txt +21 -0
- package/dist/web/org/__next._full.txt +21 -0
- package/dist/web/org/__next._head.txt +6 -0
- package/dist/web/org/__next._index.txt +6 -0
- package/dist/web/org/__next._tree.txt +2 -0
- package/dist/web/org/__next.org.__PAGE__.txt +9 -0
- package/dist/web/org/__next.org.txt +5 -0
- package/dist/web/org.html +1 -0
- package/dist/web/org.txt +21 -0
- package/dist/web/sessions/__next._full.txt +18 -0
- package/dist/web/sessions/__next._head.txt +6 -0
- package/dist/web/sessions/__next._index.txt +6 -0
- package/dist/web/sessions/__next._tree.txt +2 -0
- package/dist/web/sessions/__next.sessions.__PAGE__.txt +6 -0
- package/dist/web/sessions/__next.sessions.txt +5 -0
- package/dist/web/sessions.html +1 -0
- package/dist/web/sessions.txt +18 -0
- package/dist/web/settings/__next._full.txt +21 -0
- package/dist/web/settings/__next._head.txt +6 -0
- package/dist/web/settings/__next._index.txt +6 -0
- package/dist/web/settings/__next._tree.txt +2 -0
- package/dist/web/settings/__next.settings.__PAGE__.txt +9 -0
- package/dist/web/settings/__next.settings.txt +5 -0
- package/dist/web/settings.html +1 -0
- package/dist/web/settings.txt +21 -0
- package/dist/web/skills/__next._full.txt +21 -0
- package/dist/web/skills/__next._head.txt +6 -0
- package/dist/web/skills/__next._index.txt +6 -0
- package/dist/web/skills/__next._tree.txt +2 -0
- package/dist/web/skills/__next.skills.__PAGE__.txt +9 -0
- package/dist/web/skills/__next.skills.txt +5 -0
- package/dist/web/skills.html +1 -0
- package/dist/web/skills.txt +21 -0
- package/package.json +54 -0
- package/template/AGENTS.md +285 -0
- package/template/CLAUDE.md +285 -0
- package/template/config.default.yaml +71 -0
- package/template/docs/architecture.md +74 -0
- package/template/docs/connectors.md +72 -0
- package/template/docs/cron.md +137 -0
- package/template/docs/mcp.md +108 -0
- package/template/docs/org.md +105 -0
- package/template/docs/overview.md +39 -0
- package/template/docs/self-modification.md +65 -0
- package/template/docs/skills.md +58 -0
- package/template/knowledge/.gitkeep +0 -0
- package/template/migrations/.gitkeep +0 -0
- package/template/migrations/0.1.0/MIGRATION.md +25 -0
- package/template/migrations/0.2.0/MIGRATION.md +41 -0
- package/template/migrations/0.2.0/files/config.default.yaml +30 -0
- package/template/migrations/0.3.0/MIGRATION.md +57 -0
- package/template/migrations/0.3.0/files/config.default.yaml +62 -0
- package/template/migrations/0.3.0/files/docs/mcp.md +108 -0
- package/template/migrations/0.7.3/MIGRATION.md +63 -0
- package/template/migrations/0.7.3/files/AGENTS.md +188 -0
- package/template/migrations/0.7.3/files/CLAUDE.md +127 -0
- package/template/migrations/0.7.5/MIGRATION.md +78 -0
- package/template/migrations/0.8.0/MIGRATION.md +73 -0
- package/template/migrations/0.9.0/MIGRATION.md +82 -0
- package/template/skills/cron-manager/SKILL.md +127 -0
- package/template/skills/find-and-install/SKILL.md +92 -0
- package/template/skills/management/SKILL.md +226 -0
- package/template/skills/migrate/SKILL.md +154 -0
- package/template/skills/new/SKILL.md +19 -0
- package/template/skills/onboarding/SKILL.md +106 -0
- package/template/skills/self-heal/SKILL.md +114 -0
- package/template/skills/skill-creator/SKILL.md +112 -0
- package/template/skills/status/SKILL.md +19 -0
- package/template/skills/sync/SKILL.md +67 -0
- package/template/skills.json +3 -0
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
import makeWASocketImport, { Browsers, DisconnectReason, fetchLatestWaWebVersion, useMultiFileAuthState, downloadMediaMessage, } from "@whiskeysockets/baileys";
|
|
2
|
+
// Handle ESM/CJS interop — Baileys may export as .default in some environments
|
|
3
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
4
|
+
const makeWASocket = (makeWASocketImport.default ?? makeWASocketImport);
|
|
5
|
+
import { logger } from "../../shared/logger.js";
|
|
6
|
+
import { JINN_HOME } from "../../shared/paths.js";
|
|
7
|
+
import { formatResponse } from "./format.js";
|
|
8
|
+
import path from "node:path";
|
|
9
|
+
import fs from "node:fs";
|
|
10
|
+
// Minimal ILogger implementation that routes Baileys noise to silence
|
|
11
|
+
const silentLogger = {
|
|
12
|
+
level: "silent",
|
|
13
|
+
child: () => silentLogger,
|
|
14
|
+
trace: () => { },
|
|
15
|
+
debug: () => { },
|
|
16
|
+
info: () => { },
|
|
17
|
+
warn: () => { },
|
|
18
|
+
error: () => { },
|
|
19
|
+
};
|
|
20
|
+
export class WhatsAppConnector {
|
|
21
|
+
name = "whatsapp";
|
|
22
|
+
sock = null;
|
|
23
|
+
config;
|
|
24
|
+
handler = null;
|
|
25
|
+
bootTimeMs = Date.now();
|
|
26
|
+
allowedJids;
|
|
27
|
+
connectionStatus = "starting";
|
|
28
|
+
lastError = null;
|
|
29
|
+
authDir;
|
|
30
|
+
latestQr = null;
|
|
31
|
+
reconnectAttempts = 0;
|
|
32
|
+
reconnectTimer = null;
|
|
33
|
+
typingIntervals = new Map();
|
|
34
|
+
capabilities = {
|
|
35
|
+
threading: false,
|
|
36
|
+
messageEdits: false,
|
|
37
|
+
reactions: false,
|
|
38
|
+
attachments: true,
|
|
39
|
+
};
|
|
40
|
+
constructor(config) {
|
|
41
|
+
this.config = config;
|
|
42
|
+
this.authDir = config.authDir ?? path.join(JINN_HOME, ".whatsapp-auth");
|
|
43
|
+
this.allowedJids = new Set(config.allowFrom ?? []);
|
|
44
|
+
fs.mkdirSync(this.authDir, { recursive: true });
|
|
45
|
+
}
|
|
46
|
+
onMessage(handler) {
|
|
47
|
+
this.handler = handler;
|
|
48
|
+
}
|
|
49
|
+
async start() {
|
|
50
|
+
await this.connect();
|
|
51
|
+
}
|
|
52
|
+
scheduleReconnect() {
|
|
53
|
+
if (this.connectionStatus === "stopped")
|
|
54
|
+
return;
|
|
55
|
+
// Exponential backoff: 5s, 10s, 20s, 40s, 60s max
|
|
56
|
+
const delay = Math.min(5000 * Math.pow(2, this.reconnectAttempts), 60000);
|
|
57
|
+
this.reconnectAttempts++;
|
|
58
|
+
logger.info(`WhatsApp reconnecting in ${delay / 1000}s (attempt ${this.reconnectAttempts})`);
|
|
59
|
+
this.reconnectTimer = setTimeout(() => this.connect(), delay);
|
|
60
|
+
}
|
|
61
|
+
async connect() {
|
|
62
|
+
const { state, saveCreds } = await useMultiFileAuthState(this.authDir);
|
|
63
|
+
// Fetch latest WA Web version to avoid 405 rejections from outdated version
|
|
64
|
+
const { version } = await fetchLatestWaWebVersion().catch(() => ({ version: undefined }));
|
|
65
|
+
this.sock = makeWASocket({
|
|
66
|
+
auth: state,
|
|
67
|
+
printQRInTerminal: false,
|
|
68
|
+
logger: silentLogger,
|
|
69
|
+
browser: Browsers.macOS("Chrome"),
|
|
70
|
+
...(version ? { version } : {}),
|
|
71
|
+
});
|
|
72
|
+
this.sock.ev.on("creds.update", saveCreds);
|
|
73
|
+
this.sock.ev.on("connection.update", ({ connection, lastDisconnect, qr }) => {
|
|
74
|
+
if (qr) {
|
|
75
|
+
this.latestQr = qr;
|
|
76
|
+
this.connectionStatus = "qr_pending";
|
|
77
|
+
logger.info("WhatsApp QR code generated — scan with your WhatsApp app to connect");
|
|
78
|
+
}
|
|
79
|
+
if (connection === "open") {
|
|
80
|
+
this.latestQr = null;
|
|
81
|
+
this.connectionStatus = "running";
|
|
82
|
+
this.lastError = null;
|
|
83
|
+
this.reconnectAttempts = 0;
|
|
84
|
+
logger.info("WhatsApp connector connected");
|
|
85
|
+
}
|
|
86
|
+
if (connection === "close") {
|
|
87
|
+
const statusCode = lastDisconnect?.error?.output?.statusCode;
|
|
88
|
+
const isLoggedOut = statusCode === DisconnectReason.loggedOut;
|
|
89
|
+
logger.info(`WhatsApp connection closed (${statusCode}), reconnecting: ${!isLoggedOut}`);
|
|
90
|
+
if (!isLoggedOut && this.connectionStatus !== "stopped") {
|
|
91
|
+
this.scheduleReconnect();
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
this.connectionStatus = "stopped";
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
this.sock.ev.on("messages.upsert", async ({ messages, type }) => {
|
|
99
|
+
if (type !== "notify")
|
|
100
|
+
return;
|
|
101
|
+
for (const message of messages) {
|
|
102
|
+
try {
|
|
103
|
+
await this.handleMessage(message);
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
logger.error(`WhatsApp message handler error: ${err instanceof Error ? err.message : err}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
async stop() {
|
|
112
|
+
this.connectionStatus = "stopped";
|
|
113
|
+
if (this.reconnectTimer) {
|
|
114
|
+
clearTimeout(this.reconnectTimer);
|
|
115
|
+
this.reconnectTimer = null;
|
|
116
|
+
}
|
|
117
|
+
await this.sock?.end(undefined);
|
|
118
|
+
logger.info("WhatsApp connector stopped");
|
|
119
|
+
}
|
|
120
|
+
getCapabilities() {
|
|
121
|
+
return this.capabilities;
|
|
122
|
+
}
|
|
123
|
+
getQrCode() {
|
|
124
|
+
return this.latestQr;
|
|
125
|
+
}
|
|
126
|
+
getHealth() {
|
|
127
|
+
let status = "stopped";
|
|
128
|
+
if (this.connectionStatus === "running")
|
|
129
|
+
status = "running";
|
|
130
|
+
else if (this.connectionStatus === "qr_pending")
|
|
131
|
+
status = "qr_pending";
|
|
132
|
+
return {
|
|
133
|
+
status,
|
|
134
|
+
detail: this.connectionStatus === "qr_pending"
|
|
135
|
+
? "Scan QR code in settings to connect"
|
|
136
|
+
: (this.lastError ?? undefined),
|
|
137
|
+
capabilities: this.capabilities,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
reconstructTarget(replyContext) {
|
|
141
|
+
const ctx = (replyContext ?? {});
|
|
142
|
+
return {
|
|
143
|
+
channel: (typeof ctx.channel === "string" ? ctx.channel : "") ?? "",
|
|
144
|
+
thread: undefined,
|
|
145
|
+
messageTs: typeof ctx.messageTs === "string" ? ctx.messageTs : undefined,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
async sendMessage(target, text) {
|
|
149
|
+
return this.replyMessage(target, text);
|
|
150
|
+
}
|
|
151
|
+
async replyMessage(target, text) {
|
|
152
|
+
if (!this.sock || this.connectionStatus !== "running")
|
|
153
|
+
return;
|
|
154
|
+
try {
|
|
155
|
+
const chunks = formatResponse(text);
|
|
156
|
+
for (const chunk of chunks) {
|
|
157
|
+
await this.sock.sendMessage(target.channel, { text: chunk });
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
logger.error(`WhatsApp replyMessage error: ${err instanceof Error ? err.message : err}`);
|
|
162
|
+
}
|
|
163
|
+
return undefined;
|
|
164
|
+
}
|
|
165
|
+
async editMessage(_target, _text) {
|
|
166
|
+
// WhatsApp doesn't support editing via Baileys reliably — no-op
|
|
167
|
+
}
|
|
168
|
+
async addReaction(_target, _emoji) {
|
|
169
|
+
// No-op: reactions are supported in WA but complex to map from Slack emoji names
|
|
170
|
+
}
|
|
171
|
+
async removeReaction(_target, _emoji) {
|
|
172
|
+
// No-op
|
|
173
|
+
}
|
|
174
|
+
async setTypingStatus(channelId, _threadTs, status) {
|
|
175
|
+
if (!this.sock || this.connectionStatus !== "running")
|
|
176
|
+
return;
|
|
177
|
+
const existing = this.typingIntervals.get(channelId);
|
|
178
|
+
if (existing) {
|
|
179
|
+
clearInterval(existing);
|
|
180
|
+
this.typingIntervals.delete(channelId);
|
|
181
|
+
}
|
|
182
|
+
if (status) {
|
|
183
|
+
// Show "typing..." and refresh every 20s (WhatsApp composing expires ~25s)
|
|
184
|
+
await this.sock.sendPresenceUpdate("composing", channelId).catch(() => { });
|
|
185
|
+
const interval = setInterval(() => {
|
|
186
|
+
this.sock?.sendPresenceUpdate("composing", channelId).catch(() => { });
|
|
187
|
+
}, 20_000);
|
|
188
|
+
this.typingIntervals.set(channelId, interval);
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
await this.sock.sendPresenceUpdate("paused", channelId).catch(() => { });
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
async handleMessage(message) {
|
|
195
|
+
const jid = message.key.remoteJid;
|
|
196
|
+
const ownJid = this.sock?.user?.id ?? "";
|
|
197
|
+
const ownJidBare = ownJid.split(":")[0] + "@s.whatsapp.net";
|
|
198
|
+
// WhatsApp now uses LID (Linked ID) format — extract from sock.user.lid
|
|
199
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
200
|
+
const ownLid = this.sock?.user?.lid ?? "";
|
|
201
|
+
const ownLidBare = ownLid ? ownLid.split(":")[0] + "@lid" : "";
|
|
202
|
+
if (!jid)
|
|
203
|
+
return;
|
|
204
|
+
if (jid.endsWith("@g.us"))
|
|
205
|
+
return;
|
|
206
|
+
if (jid.endsWith("@newsletter"))
|
|
207
|
+
return;
|
|
208
|
+
if (jid.endsWith("@broadcast"))
|
|
209
|
+
return;
|
|
210
|
+
// Allow "note to self" — matches own phone JID or own LID
|
|
211
|
+
const isSelfChat = message.key.fromMe && (jid === ownJidBare || jid === ownJid ||
|
|
212
|
+
jid === ownLidBare || jid === ownLid);
|
|
213
|
+
if (message.key.fromMe && !isSelfChat)
|
|
214
|
+
return;
|
|
215
|
+
const msgTimestampMs = Number(message.messageTimestamp ?? 0) * 1000;
|
|
216
|
+
if (this.config.ignoreOldMessagesOnBoot !== false &&
|
|
217
|
+
msgTimestampMs < this.bootTimeMs)
|
|
218
|
+
return;
|
|
219
|
+
// If no allowFrom configured, only self-chat is allowed.
|
|
220
|
+
// If allowFrom is set, also allow those specific JIDs.
|
|
221
|
+
if (!isSelfChat && (this.allowedJids.size === 0 || !this.allowedJids.has(jid)))
|
|
222
|
+
return;
|
|
223
|
+
if (!this.handler)
|
|
224
|
+
return;
|
|
225
|
+
const text = message.message?.conversation ||
|
|
226
|
+
message.message?.extendedTextMessage?.text ||
|
|
227
|
+
message.message?.imageMessage?.caption ||
|
|
228
|
+
message.message?.documentMessage?.caption ||
|
|
229
|
+
"";
|
|
230
|
+
if (!text.trim())
|
|
231
|
+
return;
|
|
232
|
+
logger.info(`WhatsApp message received from ${jid}`);
|
|
233
|
+
// Download media attachment if present
|
|
234
|
+
const attachments = [];
|
|
235
|
+
const hasMedia = message.message?.imageMessage || message.message?.documentMessage || message.message?.audioMessage;
|
|
236
|
+
if (hasMedia && this.sock) {
|
|
237
|
+
try {
|
|
238
|
+
const buffer = await downloadMediaMessage(message, "buffer", {}, {
|
|
239
|
+
logger: silentLogger,
|
|
240
|
+
reuploadRequest: this.sock.updateMediaMessage,
|
|
241
|
+
});
|
|
242
|
+
const ext = message.message?.imageMessage ? "jpg"
|
|
243
|
+
: message.message?.audioMessage ? "ogg"
|
|
244
|
+
: "bin";
|
|
245
|
+
const filename = `wa-attachment-${message.key.id}.${ext}`;
|
|
246
|
+
const tmpDir = path.join(JINN_HOME, "tmp");
|
|
247
|
+
const localPath = path.join(tmpDir, filename);
|
|
248
|
+
fs.mkdirSync(tmpDir, { recursive: true });
|
|
249
|
+
fs.writeFileSync(localPath, buffer);
|
|
250
|
+
const mimeType = ext === "jpg" ? "image/jpeg"
|
|
251
|
+
: ext === "ogg" ? "audio/ogg"
|
|
252
|
+
: "application/octet-stream";
|
|
253
|
+
attachments.push({ name: filename, localPath, mimeType, url: localPath });
|
|
254
|
+
}
|
|
255
|
+
catch {
|
|
256
|
+
// Non-fatal: continue without attachment
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
const sessionKey = `whatsapp:${jid}`;
|
|
260
|
+
const replyContext = { channel: jid, thread: null, messageTs: message.key.id ?? null };
|
|
261
|
+
const incomingMessage = {
|
|
262
|
+
connector: "whatsapp",
|
|
263
|
+
source: "whatsapp",
|
|
264
|
+
sessionKey,
|
|
265
|
+
channel: jid,
|
|
266
|
+
thread: undefined,
|
|
267
|
+
user: jid.replace("@s.whatsapp.net", ""),
|
|
268
|
+
userId: jid,
|
|
269
|
+
text,
|
|
270
|
+
attachments,
|
|
271
|
+
replyContext,
|
|
272
|
+
messageId: message.key.id ?? undefined,
|
|
273
|
+
transportMeta: { jid },
|
|
274
|
+
raw: message,
|
|
275
|
+
};
|
|
276
|
+
this.handler(incomingMessage);
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connectors/whatsapp/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../../src/cron/jobs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGlD,wBAAgB,QAAQ,IAAI,OAAO,EAAE,CAOpC;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAI9C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAI/D"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { CRON_JOBS, CRON_RUNS } from "../shared/paths.js";
|
|
4
|
+
export function loadJobs() {
|
|
5
|
+
try {
|
|
6
|
+
const raw = fs.readFileSync(CRON_JOBS, "utf-8");
|
|
7
|
+
return JSON.parse(raw);
|
|
8
|
+
}
|
|
9
|
+
catch {
|
|
10
|
+
return [];
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export function saveJobs(jobs) {
|
|
14
|
+
const dir = path.dirname(CRON_JOBS);
|
|
15
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
16
|
+
fs.writeFileSync(CRON_JOBS, JSON.stringify(jobs, null, 2) + "\n", "utf-8");
|
|
17
|
+
}
|
|
18
|
+
export function appendRunLog(jobId, entry) {
|
|
19
|
+
fs.mkdirSync(CRON_RUNS, { recursive: true });
|
|
20
|
+
const logPath = path.join(CRON_RUNS, `${jobId}.jsonl`);
|
|
21
|
+
fs.appendFileSync(logPath, JSON.stringify(entry) + "\n", "utf-8");
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=jobs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../../src/cron/jobs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,UAAU,QAAQ;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAc,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAe;IACtC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAa,EAAE,KAAa;IACvD,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC;IACvD,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { CronJob, Connector, JinnConfig } from "../shared/types.js";
|
|
2
|
+
import type { SessionManager } from "../sessions/manager.js";
|
|
3
|
+
export declare function runCronJob(job: CronJob, sessionManager: SessionManager, config: JinnConfig, connectors: Map<string, Connector>): Promise<void>;
|
|
4
|
+
//# sourceMappingURL=runner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../src/cron/runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D,wBAAsB,UAAU,CAC9B,GAAG,EAAE,OAAO,EACZ,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC,CAgGf"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { logger } from "../shared/logger.js";
|
|
2
|
+
import { appendRunLog } from "./jobs.js";
|
|
3
|
+
import { scanOrg, findEmployee } from "../gateway/org.js";
|
|
4
|
+
import { CronConnector } from "../connectors/cron/index.js";
|
|
5
|
+
export async function runCronJob(job, sessionManager, config, connectors) {
|
|
6
|
+
const startTime = Date.now();
|
|
7
|
+
logger.info(`Cron job "${job.name}" (${job.id}) starting`);
|
|
8
|
+
const delivery = job.delivery || config.cron?.defaultDelivery;
|
|
9
|
+
const cooSlug = config.portal?.portalName?.toLowerCase() || "jinn";
|
|
10
|
+
if (delivery && job.employee && job.employee !== cooSlug) {
|
|
11
|
+
logger.debug(`Cron job "${job.name}" targets employee "${job.employee}" directly (skipping COO delegation).`);
|
|
12
|
+
}
|
|
13
|
+
let employee;
|
|
14
|
+
if (job.employee) {
|
|
15
|
+
const orgRegistry = scanOrg();
|
|
16
|
+
employee = findEmployee(job.employee, orgRegistry);
|
|
17
|
+
}
|
|
18
|
+
const connector = new CronConnector(connectors, delivery);
|
|
19
|
+
const startedAt = new Date().toISOString();
|
|
20
|
+
const sessionKey = `cron:${job.id}:${Date.now()}`;
|
|
21
|
+
try {
|
|
22
|
+
const routeResult = await sessionManager.route({
|
|
23
|
+
connector: connector.name,
|
|
24
|
+
source: "cron",
|
|
25
|
+
sessionKey,
|
|
26
|
+
replyContext: {
|
|
27
|
+
channel: delivery?.channel || job.id,
|
|
28
|
+
messageTs: null,
|
|
29
|
+
cronJobId: job.id,
|
|
30
|
+
cronJobName: job.name,
|
|
31
|
+
deliveryConnector: delivery?.connector ?? null,
|
|
32
|
+
},
|
|
33
|
+
messageId: undefined,
|
|
34
|
+
channel: delivery?.channel || job.id,
|
|
35
|
+
thread: undefined,
|
|
36
|
+
user: "system",
|
|
37
|
+
userId: "system",
|
|
38
|
+
text: job.prompt,
|
|
39
|
+
attachments: [],
|
|
40
|
+
raw: { jobId: job.id, trigger: "cron" },
|
|
41
|
+
transportMeta: {
|
|
42
|
+
cronJobId: job.id,
|
|
43
|
+
cronJobName: job.name,
|
|
44
|
+
deliveryConnector: delivery?.connector ?? null,
|
|
45
|
+
deliveryChannel: delivery?.channel ?? null,
|
|
46
|
+
},
|
|
47
|
+
}, connector, {
|
|
48
|
+
employee,
|
|
49
|
+
engine: job.engine || employee?.engine || config.engines.default,
|
|
50
|
+
model: job.model || employee?.model || config.engines[(job.engine || config.engines.default)]?.model,
|
|
51
|
+
title: job.name,
|
|
52
|
+
});
|
|
53
|
+
appendRunLog(job.id, {
|
|
54
|
+
timestamp: startedAt,
|
|
55
|
+
sessionKey,
|
|
56
|
+
sessionId: routeResult?.sessionId ?? null,
|
|
57
|
+
status: "success",
|
|
58
|
+
durationMs: Date.now() - startTime,
|
|
59
|
+
error: null,
|
|
60
|
+
resultPreview: null,
|
|
61
|
+
});
|
|
62
|
+
logger.info(`Cron job "${job.name}" completed in ${Date.now() - startTime}ms`);
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
66
|
+
appendRunLog(job.id, {
|
|
67
|
+
timestamp: startedAt,
|
|
68
|
+
sessionKey,
|
|
69
|
+
status: "error",
|
|
70
|
+
durationMs: Date.now() - startTime,
|
|
71
|
+
error: message,
|
|
72
|
+
resultPreview: null,
|
|
73
|
+
});
|
|
74
|
+
logger.error(`Cron job "${job.name}" failed: ${message}`);
|
|
75
|
+
// Send alert if configured
|
|
76
|
+
const alertConnector = config.cron?.alertConnector;
|
|
77
|
+
const alertChannel = config.cron?.alertChannel;
|
|
78
|
+
if (alertConnector && alertChannel) {
|
|
79
|
+
const alertTarget = connectors.get(alertConnector);
|
|
80
|
+
if (alertTarget) {
|
|
81
|
+
await alertTarget.sendMessage({ channel: alertChannel }, `⚠️ Cron job "${job.name}" failed:\n${message.slice(0, 500)}`).catch((alertErr) => {
|
|
82
|
+
logger.error(`Failed to send cron alert: ${alertErr instanceof Error ? alertErr.message : alertErr}`);
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/cron/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CronJob, JinnConfig, Connector } from "../shared/types.js";
|
|
2
|
+
import type { SessionManager } from "../sessions/manager.js";
|
|
3
|
+
export declare function startScheduler(jobs: CronJob[], sessionManager: SessionManager, config: JinnConfig, connectors: Map<string, Connector>): void;
|
|
4
|
+
export declare function reloadScheduler(jobs: CronJob[]): void;
|
|
5
|
+
export declare function stopScheduler(): void;
|
|
6
|
+
export declare function triggerCronJob(idOrName: string): Promise<CronJob | undefined>;
|
|
7
|
+
export declare function setCronJobEnabled(idOrName: string, enabled: boolean): CronJob | undefined;
|
|
8
|
+
//# sourceMappingURL=scheduler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/cron/scheduler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,SAAS,EACV,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAQ7D,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,EAAE,EACf,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,UAAU,EAClB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GACjC,IAAI,CAKN;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAGrD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAKpC;AAuBD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAKnF;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAQzF"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import cron from "node-cron";
|
|
2
|
+
import { runCronJob } from "./runner.js";
|
|
3
|
+
import { logger } from "../shared/logger.js";
|
|
4
|
+
import { loadJobs, saveJobs } from "./jobs.js";
|
|
5
|
+
let tasks = [];
|
|
6
|
+
let currentSessionManager;
|
|
7
|
+
let currentConfig;
|
|
8
|
+
let currentConnectors;
|
|
9
|
+
export function startScheduler(jobs, sessionManager, config, connectors) {
|
|
10
|
+
currentSessionManager = sessionManager;
|
|
11
|
+
currentConfig = config;
|
|
12
|
+
currentConnectors = connectors;
|
|
13
|
+
scheduleJobs(jobs);
|
|
14
|
+
}
|
|
15
|
+
export function reloadScheduler(jobs) {
|
|
16
|
+
stopScheduler();
|
|
17
|
+
scheduleJobs(jobs);
|
|
18
|
+
}
|
|
19
|
+
export function stopScheduler() {
|
|
20
|
+
for (const task of tasks) {
|
|
21
|
+
task.stop();
|
|
22
|
+
}
|
|
23
|
+
tasks = [];
|
|
24
|
+
}
|
|
25
|
+
function scheduleJobs(jobs) {
|
|
26
|
+
for (const job of jobs) {
|
|
27
|
+
if (!job.enabled)
|
|
28
|
+
continue;
|
|
29
|
+
if (!cron.validate(job.schedule)) {
|
|
30
|
+
logger.warn(`Invalid cron schedule for job "${job.name}": ${job.schedule}`);
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
const task = cron.schedule(job.schedule, () => {
|
|
34
|
+
runCronJob(job, currentSessionManager, currentConfig, currentConnectors);
|
|
35
|
+
}, { timezone: job.timezone });
|
|
36
|
+
tasks.push(task);
|
|
37
|
+
logger.info(`Scheduled cron job "${job.name}" (${job.schedule})`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export async function triggerCronJob(idOrName) {
|
|
41
|
+
const job = findJob(idOrName);
|
|
42
|
+
if (!job)
|
|
43
|
+
return undefined;
|
|
44
|
+
await runCronJob(job, currentSessionManager, currentConfig, currentConnectors);
|
|
45
|
+
return job;
|
|
46
|
+
}
|
|
47
|
+
export function setCronJobEnabled(idOrName, enabled) {
|
|
48
|
+
const jobs = loadJobs();
|
|
49
|
+
const index = jobs.findIndex((job) => matchesJob(job, idOrName));
|
|
50
|
+
if (index === -1)
|
|
51
|
+
return undefined;
|
|
52
|
+
jobs[index] = { ...jobs[index], enabled };
|
|
53
|
+
saveJobs(jobs);
|
|
54
|
+
reloadScheduler(jobs);
|
|
55
|
+
return jobs[index];
|
|
56
|
+
}
|
|
57
|
+
function findJob(idOrName) {
|
|
58
|
+
return loadJobs().find((job) => matchesJob(job, idOrName));
|
|
59
|
+
}
|
|
60
|
+
function matchesJob(job, idOrName) {
|
|
61
|
+
const needle = idOrName.trim().toLowerCase();
|
|
62
|
+
return job.id.toLowerCase() === needle || job.name.toLowerCase() === needle;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=scheduler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/cron/scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.test.d.ts","sourceRoot":"","sources":["../../../../src/engines/__tests__/gemini.test.ts"],"names":[],"mappings":""}
|