0xkobold 0.7.2 → 0.8.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 (252) hide show
  1. package/HEARTBEAT.md +239 -0
  2. package/IDENTITY.md +12 -0
  3. package/README.md +138 -4
  4. package/SOUL.md +21 -0
  5. package/dist/package.json +10 -5
  6. package/dist/src/agent/bootstrap-loader.js +295 -66
  7. package/dist/src/agent/bootstrap-loader.js.map +1 -1
  8. package/dist/src/agent/context-pruning.js +10 -5
  9. package/dist/src/agent/context-pruning.js.map +1 -1
  10. package/dist/src/agent/embedded-runner.js +29 -15
  11. package/dist/src/agent/embedded-runner.js.map +1 -1
  12. package/dist/src/agent/index.js +5 -2
  13. package/dist/src/agent/index.js.map +1 -1
  14. package/dist/src/agent/system-prompt.js +167 -20
  15. package/dist/src/agent/system-prompt.js.map +1 -1
  16. package/dist/src/agent/tools/spawn-agent.js +72 -5
  17. package/dist/src/agent/tools/spawn-agent.js.map +1 -1
  18. package/dist/src/channels/slack/webhook.js +2 -2
  19. package/dist/src/channels/slack/webhook.js.map +1 -1
  20. package/dist/src/channels/telegram/bot.js +4 -4
  21. package/dist/src/channels/telegram/bot.js.map +1 -1
  22. package/dist/src/channels/whatsapp/integration.js +4 -4
  23. package/dist/src/channels/whatsapp/integration.js.map +1 -1
  24. package/dist/src/cli/commands/gateway.js +9 -10
  25. package/dist/src/cli/commands/gateway.js.map +1 -1
  26. package/dist/src/cli/commands/init.js +90 -0
  27. package/dist/src/cli/commands/init.js.map +1 -1
  28. package/dist/src/cli/commands/setup.js +53 -0
  29. package/dist/src/cli/commands/setup.js.map +1 -1
  30. package/dist/src/cli/index.js +0 -0
  31. package/dist/src/config/unified-config.js +5 -0
  32. package/dist/src/config/unified-config.js.map +1 -1
  33. package/dist/src/cron/index.js +2 -0
  34. package/dist/src/cron/index.js.map +1 -1
  35. package/dist/src/cron/nl-parser.js +522 -0
  36. package/dist/src/cron/nl-parser.js.map +1 -0
  37. package/dist/src/cron/runner.js +6 -31
  38. package/dist/src/cron/runner.js.map +1 -1
  39. package/dist/src/event-bus/index.js.map +1 -1
  40. package/dist/src/extensions/core/agent-orchestrator-extension.js +200 -148
  41. package/dist/src/extensions/core/agent-orchestrator-extension.js.map +1 -1
  42. package/dist/src/extensions/core/diagnostics-extension.js +93 -56
  43. package/dist/src/extensions/core/diagnostics-extension.js.map +1 -1
  44. package/dist/src/extensions/core/draconic-safety-extension.js +256 -3
  45. package/dist/src/extensions/core/draconic-safety-extension.js.map +1 -1
  46. package/dist/src/extensions/core/heartbeat-extension.js +416 -150
  47. package/dist/src/extensions/core/heartbeat-extension.js.map +1 -1
  48. package/dist/src/extensions/core/{generative-agents-extension.js → learning-extension.js} +90 -128
  49. package/dist/src/extensions/core/learning-extension.js.map +1 -0
  50. package/dist/src/extensions/core/perennial-memory-extension.js +884 -87
  51. package/dist/src/extensions/core/perennial-memory-extension.js.map +1 -1
  52. package/dist/src/extensions/core/routed-ollama-extension.js +345 -0
  53. package/dist/src/extensions/core/routed-ollama-extension.js.map +1 -0
  54. package/dist/src/extensions/core/task-manager-extension.js +25 -2
  55. package/dist/src/extensions/core/task-manager-extension.js.map +1 -1
  56. package/dist/src/extensions/core/websearch-enhanced-extension.js +81 -23
  57. package/dist/src/extensions/core/websearch-enhanced-extension.js.map +1 -1
  58. package/dist/src/extensions/core/workspace-footer-extension.js +40 -63
  59. package/dist/src/extensions/core/workspace-footer-extension.js.map +1 -1
  60. package/dist/src/extensions/loader.js +5 -1
  61. package/dist/src/extensions/loader.js.map +1 -1
  62. package/dist/src/gateway/gateway-server.js +74 -3
  63. package/dist/src/gateway/gateway-server.js.map +1 -1
  64. package/dist/src/gateway/index.js +2 -2
  65. package/dist/src/gateway/index.js.map +1 -1
  66. package/dist/src/gateway/methods/agent.js +1 -1
  67. package/dist/src/gateway/methods/agent.js.map +1 -1
  68. package/dist/src/gateway/methods/index.js +4 -0
  69. package/dist/src/gateway/methods/index.js.map +1 -1
  70. package/dist/src/gateway/methods/node.js +261 -0
  71. package/dist/src/gateway/methods/node.js.map +1 -0
  72. package/dist/src/gateway/queue-modes.js +356 -0
  73. package/dist/src/gateway/queue-modes.js.map +1 -0
  74. package/dist/src/index.js +47 -6
  75. package/dist/src/index.js.map +1 -1
  76. package/dist/src/llm/community-analytics.js +569 -0
  77. package/dist/src/llm/community-analytics.js.map +1 -0
  78. package/dist/src/llm/index.js +28 -4
  79. package/dist/src/llm/index.js.map +1 -1
  80. package/dist/src/llm/model-discovery.js +335 -0
  81. package/dist/src/llm/model-discovery.js.map +1 -0
  82. package/dist/src/llm/model-popularity.js +566 -0
  83. package/dist/src/llm/model-popularity.js.map +1 -0
  84. package/dist/src/llm/model-scoring-db.js +553 -0
  85. package/dist/src/llm/model-scoring-db.js.map +1 -0
  86. package/dist/src/llm/multi-provider.js +258 -0
  87. package/dist/src/llm/multi-provider.js.map +1 -0
  88. package/dist/src/llm/ollama.js +133 -187
  89. package/dist/src/llm/ollama.js.map +1 -1
  90. package/dist/src/llm/router-commands.js +773 -0
  91. package/dist/src/llm/router-commands.js.map +1 -0
  92. package/dist/src/llm/router-core.js +600 -0
  93. package/dist/src/llm/router-core.js.map +1 -0
  94. package/dist/src/memory/checkpoint-manager.js +278 -0
  95. package/dist/src/memory/checkpoint-manager.js.map +1 -0
  96. package/dist/src/memory/conflict-detector.js +279 -0
  97. package/dist/src/memory/conflict-detector.js.map +1 -0
  98. package/dist/src/memory/context-graph.js +360 -0
  99. package/dist/src/memory/context-graph.js.map +1 -0
  100. package/dist/src/memory/dialectic/benchmark-cli.js +200 -0
  101. package/dist/src/memory/dialectic/benchmark-cli.js.map +1 -0
  102. package/dist/src/memory/dialectic/debug-reasoning.js +37 -0
  103. package/dist/src/memory/dialectic/debug-reasoning.js.map +1 -0
  104. package/dist/src/memory/dialectic/index.js +135 -0
  105. package/dist/src/memory/dialectic/index.js.map +1 -0
  106. package/dist/src/memory/dialectic/nudges.js +380 -0
  107. package/dist/src/memory/dialectic/nudges.js.map +1 -0
  108. package/dist/src/memory/dialectic/reasoning-engine.js +607 -0
  109. package/dist/src/memory/dialectic/reasoning-engine.js.map +1 -0
  110. package/dist/src/memory/dialectic/reasoning.js +390 -0
  111. package/dist/src/memory/dialectic/reasoning.js.map +1 -0
  112. package/dist/src/memory/dialectic/skill-creation.js +481 -0
  113. package/dist/src/memory/dialectic/skill-creation.js.map +1 -0
  114. package/dist/src/memory/dialectic/store.js +663 -0
  115. package/dist/src/memory/dialectic/store.js.map +1 -0
  116. package/dist/src/memory/dialectic/types.js +11 -0
  117. package/dist/src/memory/dialectic/types.js.map +1 -0
  118. package/dist/src/memory/index.js +24 -2
  119. package/dist/src/memory/index.js.map +1 -1
  120. package/dist/src/memory/memory-decay.js +350 -0
  121. package/dist/src/memory/memory-decay.js.map +1 -0
  122. package/dist/src/memory/memory-integration.js +5 -5
  123. package/dist/src/memory/memory-integration.js.map +1 -1
  124. package/dist/src/memory/migrate-memory-stream.js +97 -0
  125. package/dist/src/memory/migrate-memory-stream.js.map +1 -0
  126. package/dist/src/memory/session-memory-bridge.js +49 -5
  127. package/dist/src/memory/session-memory-bridge.js.map +1 -1
  128. package/dist/src/memory/session-store.js +123 -0
  129. package/dist/src/memory/session-store.js.map +1 -1
  130. package/dist/src/memory/smart-write-rules.js +164 -0
  131. package/dist/src/memory/smart-write-rules.js.map +1 -0
  132. package/dist/src/memory/tiered-memory.js +436 -0
  133. package/dist/src/memory/tiered-memory.js.map +1 -0
  134. package/dist/src/memory/types.js +6 -0
  135. package/dist/src/memory/types.js.map +1 -0
  136. package/dist/src/memory/verify-migration.js +99 -0
  137. package/dist/src/memory/verify-migration.js.map +1 -0
  138. package/dist/src/pi-config.js +11 -9
  139. package/dist/src/pi-config.js.map +1 -1
  140. package/dist/src/skills/conditional-skills.js +464 -0
  141. package/dist/src/skills/conditional-skills.js.map +1 -0
  142. package/dist/src/skills/index.js +5 -0
  143. package/dist/src/skills/index.js.map +1 -1
  144. package/dist/src/skills/loader.js +56 -0
  145. package/dist/src/skills/loader.js.map +1 -1
  146. package/dist/src/skills/skill-manage.js +417 -0
  147. package/dist/src/skills/skill-manage.js.map +1 -0
  148. package/dist/src/tui/commands/orchestration-commands.js +62 -0
  149. package/dist/src/tui/commands/orchestration-commands.js.map +1 -1
  150. package/package.json +10 -5
  151. package/skills/model-router-test.ts +65 -0
  152. package/dist/src/extensions/core/auto-security-scan-extension.js +0 -41
  153. package/dist/src/extensions/core/auto-security-scan-extension.js.map +0 -1
  154. package/dist/src/extensions/core/cloudflare-browser-extension.js +0 -389
  155. package/dist/src/extensions/core/cloudflare-browser-extension.js.map +0 -1
  156. package/dist/src/extensions/core/compaction-safeguard.js +0 -223
  157. package/dist/src/extensions/core/compaction-safeguard.js.map +0 -1
  158. package/dist/src/extensions/core/generative-agents-extension.js.map +0 -1
  159. package/dist/src/extensions/core/obsidian-bridge-extension.js +0 -488
  160. package/dist/src/extensions/core/obsidian-bridge-extension.js.map +0 -1
  161. package/dist/src/llm/router.js +0 -145
  162. package/dist/src/llm/router.js.map +0 -1
  163. package/skills/kobold-scan-skill/node_modules/.package-lock.json +0 -172
  164. package/skills/kobold-scan-skill/node_modules/ansi-styles/index.d.ts +0 -345
  165. package/skills/kobold-scan-skill/node_modules/ansi-styles/index.js +0 -163
  166. package/skills/kobold-scan-skill/node_modules/ansi-styles/license +0 -9
  167. package/skills/kobold-scan-skill/node_modules/ansi-styles/package.json +0 -56
  168. package/skills/kobold-scan-skill/node_modules/ansi-styles/readme.md +0 -152
  169. package/skills/kobold-scan-skill/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  170. package/skills/kobold-scan-skill/node_modules/balanced-match/LICENSE.md +0 -21
  171. package/skills/kobold-scan-skill/node_modules/balanced-match/README.md +0 -97
  172. package/skills/kobold-scan-skill/node_modules/balanced-match/index.js +0 -62
  173. package/skills/kobold-scan-skill/node_modules/balanced-match/package.json +0 -48
  174. package/skills/kobold-scan-skill/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  175. package/skills/kobold-scan-skill/node_modules/brace-expansion/LICENSE +0 -21
  176. package/skills/kobold-scan-skill/node_modules/brace-expansion/README.md +0 -135
  177. package/skills/kobold-scan-skill/node_modules/brace-expansion/index.js +0 -203
  178. package/skills/kobold-scan-skill/node_modules/brace-expansion/package.json +0 -49
  179. package/skills/kobold-scan-skill/node_modules/chalk/index.d.ts +0 -415
  180. package/skills/kobold-scan-skill/node_modules/chalk/license +0 -9
  181. package/skills/kobold-scan-skill/node_modules/chalk/package.json +0 -68
  182. package/skills/kobold-scan-skill/node_modules/chalk/readme.md +0 -341
  183. package/skills/kobold-scan-skill/node_modules/chalk/source/index.js +0 -229
  184. package/skills/kobold-scan-skill/node_modules/chalk/source/templates.js +0 -134
  185. package/skills/kobold-scan-skill/node_modules/chalk/source/util.js +0 -39
  186. package/skills/kobold-scan-skill/node_modules/color-convert/CHANGELOG.md +0 -54
  187. package/skills/kobold-scan-skill/node_modules/color-convert/LICENSE +0 -21
  188. package/skills/kobold-scan-skill/node_modules/color-convert/README.md +0 -68
  189. package/skills/kobold-scan-skill/node_modules/color-convert/conversions.js +0 -839
  190. package/skills/kobold-scan-skill/node_modules/color-convert/index.js +0 -81
  191. package/skills/kobold-scan-skill/node_modules/color-convert/package.json +0 -48
  192. package/skills/kobold-scan-skill/node_modules/color-convert/route.js +0 -97
  193. package/skills/kobold-scan-skill/node_modules/color-name/LICENSE +0 -8
  194. package/skills/kobold-scan-skill/node_modules/color-name/README.md +0 -11
  195. package/skills/kobold-scan-skill/node_modules/color-name/index.js +0 -152
  196. package/skills/kobold-scan-skill/node_modules/color-name/package.json +0 -28
  197. package/skills/kobold-scan-skill/node_modules/commander/LICENSE +0 -22
  198. package/skills/kobold-scan-skill/node_modules/commander/Readme.md +0 -1129
  199. package/skills/kobold-scan-skill/node_modules/commander/esm.mjs +0 -16
  200. package/skills/kobold-scan-skill/node_modules/commander/index.js +0 -27
  201. package/skills/kobold-scan-skill/node_modules/commander/lib/argument.js +0 -147
  202. package/skills/kobold-scan-skill/node_modules/commander/lib/command.js +0 -2179
  203. package/skills/kobold-scan-skill/node_modules/commander/lib/error.js +0 -45
  204. package/skills/kobold-scan-skill/node_modules/commander/lib/help.js +0 -461
  205. package/skills/kobold-scan-skill/node_modules/commander/lib/option.js +0 -326
  206. package/skills/kobold-scan-skill/node_modules/commander/lib/suggestSimilar.js +0 -100
  207. package/skills/kobold-scan-skill/node_modules/commander/package-support.json +0 -16
  208. package/skills/kobold-scan-skill/node_modules/commander/package.json +0 -80
  209. package/skills/kobold-scan-skill/node_modules/commander/typings/index.d.ts +0 -891
  210. package/skills/kobold-scan-skill/node_modules/fs.realpath/LICENSE +0 -43
  211. package/skills/kobold-scan-skill/node_modules/fs.realpath/README.md +0 -33
  212. package/skills/kobold-scan-skill/node_modules/fs.realpath/index.js +0 -66
  213. package/skills/kobold-scan-skill/node_modules/fs.realpath/old.js +0 -303
  214. package/skills/kobold-scan-skill/node_modules/fs.realpath/package.json +0 -26
  215. package/skills/kobold-scan-skill/node_modules/glob/LICENSE +0 -15
  216. package/skills/kobold-scan-skill/node_modules/glob/README.md +0 -399
  217. package/skills/kobold-scan-skill/node_modules/glob/common.js +0 -244
  218. package/skills/kobold-scan-skill/node_modules/glob/glob.js +0 -790
  219. package/skills/kobold-scan-skill/node_modules/glob/package.json +0 -55
  220. package/skills/kobold-scan-skill/node_modules/glob/sync.js +0 -486
  221. package/skills/kobold-scan-skill/node_modules/has-flag/index.d.ts +0 -39
  222. package/skills/kobold-scan-skill/node_modules/has-flag/index.js +0 -8
  223. package/skills/kobold-scan-skill/node_modules/has-flag/license +0 -9
  224. package/skills/kobold-scan-skill/node_modules/has-flag/package.json +0 -46
  225. package/skills/kobold-scan-skill/node_modules/has-flag/readme.md +0 -89
  226. package/skills/kobold-scan-skill/node_modules/inflight/LICENSE +0 -15
  227. package/skills/kobold-scan-skill/node_modules/inflight/README.md +0 -37
  228. package/skills/kobold-scan-skill/node_modules/inflight/inflight.js +0 -54
  229. package/skills/kobold-scan-skill/node_modules/inflight/package.json +0 -29
  230. package/skills/kobold-scan-skill/node_modules/inherits/LICENSE +0 -16
  231. package/skills/kobold-scan-skill/node_modules/inherits/README.md +0 -42
  232. package/skills/kobold-scan-skill/node_modules/inherits/inherits.js +0 -9
  233. package/skills/kobold-scan-skill/node_modules/inherits/inherits_browser.js +0 -27
  234. package/skills/kobold-scan-skill/node_modules/inherits/package.json +0 -29
  235. package/skills/kobold-scan-skill/node_modules/minimatch/LICENSE +0 -15
  236. package/skills/kobold-scan-skill/node_modules/minimatch/README.md +0 -259
  237. package/skills/kobold-scan-skill/node_modules/minimatch/lib/path.js +0 -4
  238. package/skills/kobold-scan-skill/node_modules/minimatch/minimatch.js +0 -944
  239. package/skills/kobold-scan-skill/node_modules/minimatch/package.json +0 -35
  240. package/skills/kobold-scan-skill/node_modules/once/LICENSE +0 -15
  241. package/skills/kobold-scan-skill/node_modules/once/README.md +0 -79
  242. package/skills/kobold-scan-skill/node_modules/once/once.js +0 -42
  243. package/skills/kobold-scan-skill/node_modules/once/package.json +0 -33
  244. package/skills/kobold-scan-skill/node_modules/supports-color/browser.js +0 -5
  245. package/skills/kobold-scan-skill/node_modules/supports-color/index.js +0 -135
  246. package/skills/kobold-scan-skill/node_modules/supports-color/license +0 -9
  247. package/skills/kobold-scan-skill/node_modules/supports-color/package.json +0 -53
  248. package/skills/kobold-scan-skill/node_modules/supports-color/readme.md +0 -76
  249. package/skills/kobold-scan-skill/node_modules/wrappy/LICENSE +0 -15
  250. package/skills/kobold-scan-skill/node_modules/wrappy/README.md +0 -36
  251. package/skills/kobold-scan-skill/node_modules/wrappy/package.json +0 -29
  252. package/skills/kobold-scan-skill/node_modules/wrappy/wrappy.js +0 -33
@@ -0,0 +1,522 @@
1
+ /**
2
+ * Natural Language Cron Parser - v0.1.0
3
+ *
4
+ * Parse natural language schedules like:
5
+ * - "daily report at 8am"
6
+ * - "weekly backup on sunday midnight"
7
+ * - "remind me in 30 minutes"
8
+ * - "every hour"
9
+ * - "at 5pm tomorrow"
10
+ *
11
+ * Based on Hermes natural language scheduling
12
+ */
13
+ /**
14
+ * Named time zones for common offsets
15
+ */
16
+ const TIMEZONE_OFFSETS = {
17
+ utc: 0,
18
+ gmt: 0,
19
+ est: -5,
20
+ edt: -4,
21
+ cst: -6,
22
+ cdt: -5,
23
+ mst: -7,
24
+ mdt: -6,
25
+ pst: -8,
26
+ pdt: -7,
27
+ };
28
+ /**
29
+ * Day names to day of week (0 = Sunday)
30
+ */
31
+ const DAY_NAMES = {
32
+ sunday: 0, sun: 0,
33
+ monday: 1, mon: 1,
34
+ tuesday: 2, tue: 2, tues: 2,
35
+ wednesday: 3, wed: 3,
36
+ thursday: 4, thu: 4, thurs: 4,
37
+ friday: 5, fri: 5,
38
+ saturday: 6, sat: 6,
39
+ };
40
+ /**
41
+ * Month names to month (1-12)
42
+ */
43
+ const MONTH_NAMES = {
44
+ january: 1, jan: 1,
45
+ february: 2, feb: 2,
46
+ march: 3, mar: 3,
47
+ april: 4, apr: 4,
48
+ may: 5,
49
+ june: 6, jun: 6,
50
+ july: 7, jul: 7,
51
+ august: 8, aug: 8,
52
+ september: 9, sep: 9, sept: 9,
53
+ october: 10, oct: 10,
54
+ november: 11, nov: 11,
55
+ december: 12, dec: 12,
56
+ };
57
+ /**
58
+ * Unit names to milliseconds
59
+ */
60
+ const UNIT_MS = {
61
+ millisecond: 1,
62
+ milliseconds: 1,
63
+ ms: 1,
64
+ second: 1000,
65
+ seconds: 1000,
66
+ sec: 1000,
67
+ minute: 60 * 1000,
68
+ minutes: 60 * 1000,
69
+ min: 60 * 1000,
70
+ hour: 60 * 60 * 1000,
71
+ hours: 60 * 60 * 1000,
72
+ hr: 60 * 60 * 1000,
73
+ day: 24 * 60 * 60 * 1000,
74
+ days: 24 * 60 * 60 * 1000,
75
+ d: 24 * 60 * 60 * 1000,
76
+ week: 7 * 24 * 60 * 60 * 1000,
77
+ weeks: 7 * 24 * 60 * 60 * 1000,
78
+ wk: 7 * 24 * 60 * 60 * 1000,
79
+ month: 30 * 24 * 60 * 60 * 1000,
80
+ months: 30 * 24 * 60 * 60 * 1000,
81
+ year: 365 * 24 * 60 * 60 * 1000,
82
+ years: 365 * 24 * 60 * 60 * 1000,
83
+ yr: 365 * 24 * 60 * 60 * 1000,
84
+ };
85
+ /**
86
+ * Patterns for natural language parsing
87
+ */
88
+ const PATTERNS = {
89
+ // "daily at 8am", "every day at 8:30am"
90
+ daily: /(?:daily|every\s+day)\s+(?:at\s+)?(\d{1,2})(?::(\d{2}))?\s*(am|pm)?/i,
91
+ // "hourly", "every hour"
92
+ hourly: /(?:hourly|every\s+hour)\b/i,
93
+ // "weekly on sunday", "every week on monday at 9am"
94
+ weekly: /(?:weekly|every\s+week)\s+(?:on\s+)?(\w+)(?:\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?)?/i,
95
+ // "monthly on the 15th", "every month on the 1st at noon"
96
+ monthly: /(?:monthly|every\s+month)\s+(?:on\s+(?:the\s+)?(\d{1,2})(?:st|nd|rd|th)?)\s*(?:at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?)?/i,
97
+ // "in 5 minutes", "in 2 hours", "in 3 days"
98
+ inDuration: /in\s+(\d+)\s+(milliseconds?|seconds?|minutes?|hours?|days?|weeks?|months?|years?)\b/i,
99
+ // "at 5pm", "at 3:30pm"
100
+ atTime: /at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?\b/i,
101
+ // "tomorrow at 9am"
102
+ tomorrow: /tomorrow(?:\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?)?/i,
103
+ // "next monday", "next friday at 5pm"
104
+ nextDay: /next\s+(\w+)(?:\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?)?/i,
105
+ // "every 30 minutes", "every 2 hours"
106
+ everyInterval: /every\s+(\d+)\s+(minutes?|hours?|days?|weeks?)\b/i,
107
+ // "noon", "midnight"
108
+ namedTime: /\b(noon|midnight)\b/i,
109
+ // Cron expression (validate)
110
+ cron: /^(\*|[\d,\/-]+)\s+(\*|[\d,\/-]+)\s+(\*|[\d,\/-]+)\s+(\*|[\d,\/-]+)\s+(\*|[\d,\/-]+)$/,
111
+ };
112
+ /**
113
+ * Parse natural language schedule
114
+ */
115
+ export function parseNaturalSchedule(text) {
116
+ const input = text.trim().toLowerCase();
117
+ // First, check if it's already a cron expression
118
+ if (PATTERNS.cron.test(text.trim())) {
119
+ return {
120
+ cronExpression: text.trim(),
121
+ description: `Cron: ${text.trim()}`,
122
+ original: text,
123
+ recurring: true,
124
+ };
125
+ }
126
+ // Try each pattern
127
+ let result = null;
128
+ // Daily
129
+ result = tryDaily(input, text);
130
+ if (result)
131
+ return result;
132
+ // Hourly
133
+ result = tryHourly(input, text);
134
+ if (result)
135
+ return result;
136
+ // Weekly
137
+ result = tryWeekly(input, text);
138
+ if (result)
139
+ return result;
140
+ // Monthly
141
+ result = tryMonthly(input, text);
142
+ if (result)
143
+ return result;
144
+ // "In X duration"
145
+ result = tryInDuration(input, text);
146
+ if (result)
147
+ return result;
148
+ // "Tomorrow"
149
+ result = tryTomorrow(input, text);
150
+ if (result)
151
+ return result;
152
+ // "Next <day>"
153
+ result = tryNextDay(input, text);
154
+ if (result)
155
+ return result;
156
+ // "Every X minutes/hours"
157
+ result = tryEveryInterval(input, text);
158
+ if (result)
159
+ return result;
160
+ // "At <time>" (one-shot today/tomorrow)
161
+ result = tryAtTime(input, text);
162
+ if (result)
163
+ return result;
164
+ // Named times (noon, midnight)
165
+ result = tryNamedTime(input, text);
166
+ if (result)
167
+ return result;
168
+ // Default: couldn't parse
169
+ return {
170
+ description: `Could not parse: ${text}`,
171
+ original: text,
172
+ recurring: false,
173
+ };
174
+ }
175
+ /**
176
+ * Try to parse "daily at X"
177
+ */
178
+ function tryDaily(input, original) {
179
+ const match = input.match(PATTERNS.daily);
180
+ if (!match)
181
+ return null;
182
+ const hour = parseInt(match[1], 10);
183
+ const minute = match[2] ? parseInt(match[2], 10) : 0;
184
+ const ampm = match[3]?.toLowerCase();
185
+ const { hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm);
186
+ // Cron: minute hour * * *
187
+ const cronExpression = `${minute24} ${hour24} * * *`;
188
+ return {
189
+ cronExpression,
190
+ description: `Daily at ${formatTime(hour24, minute24)}`,
191
+ original,
192
+ recurring: true,
193
+ };
194
+ }
195
+ /**
196
+ * Try to parse "hourly"
197
+ */
198
+ function tryHourly(input, original) {
199
+ if (!PATTERNS.hourly.test(input))
200
+ return null;
201
+ // Cron: 0 * * * *
202
+ return {
203
+ cronExpression: "0 * * * *",
204
+ description: "Every hour",
205
+ original,
206
+ recurring: true,
207
+ };
208
+ }
209
+ /**
210
+ * Try to parse "weekly on <day>"
211
+ */
212
+ function tryWeekly(input, original) {
213
+ const match = input.match(PATTERNS.weekly);
214
+ if (!match)
215
+ return null;
216
+ const dayName = match[1].toLowerCase();
217
+ const dayOfWeek = DAY_NAMES[dayName];
218
+ if (dayOfWeek === undefined)
219
+ return null;
220
+ let hour = 0, minute = 0;
221
+ let hour24 = 0, minute24 = 0;
222
+ if (match[2]) {
223
+ hour = parseInt(match[2], 10);
224
+ minute = match[3] ? parseInt(match[3], 10) : 0;
225
+ const ampm = match[4]?.toLowerCase();
226
+ ({ hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm));
227
+ }
228
+ else {
229
+ hour24 = 0;
230
+ minute24 = 0;
231
+ }
232
+ // Cron: minute hour * * dayOfWeek
233
+ const cronExpression = `${minute24} ${hour24} * * ${dayOfWeek}`;
234
+ const dayNameCap = dayName.charAt(0).toUpperCase() + dayName.slice(1);
235
+ return {
236
+ cronExpression,
237
+ description: `Weekly on ${dayNameCap}${match[2] ? ` at ${formatTime(hour24, minute24)}` : ""}`,
238
+ original,
239
+ recurring: true,
240
+ };
241
+ }
242
+ /**
243
+ * Try to parse "monthly on the X"
244
+ */
245
+ function tryMonthly(input, original) {
246
+ const match = input.match(PATTERNS.monthly);
247
+ if (!match)
248
+ return null;
249
+ const dayOfMonth = parseInt(match[1], 10);
250
+ if (dayOfMonth < 1 || dayOfMonth > 31)
251
+ return null;
252
+ let hour24 = 0, minute24 = 0;
253
+ if (match[2]) {
254
+ const hour = parseInt(match[2], 10);
255
+ const minute = match[3] ? parseInt(match[3], 10) : 0;
256
+ const ampm = match[4]?.toLowerCase();
257
+ ({ hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm));
258
+ }
259
+ // Cron: minute hour day * *
260
+ const cronExpression = `${minute24} ${hour24} ${dayOfMonth} * *`;
261
+ return {
262
+ cronExpression,
263
+ description: `Monthly on day ${dayOfMonth}${match[2] ? ` at ${formatTime(hour24, minute24)}` : ""}`,
264
+ original,
265
+ recurring: true,
266
+ };
267
+ }
268
+ /**
269
+ * Try to parse "in X duration"
270
+ */
271
+ function tryInDuration(input, original) {
272
+ const match = input.match(PATTERNS.inDuration);
273
+ if (!match)
274
+ return null;
275
+ const count = parseInt(match[1], 10);
276
+ const unit = match[2].toLowerCase();
277
+ const ms = UNIT_MS[unit];
278
+ if (!ms)
279
+ return null;
280
+ const durationMs = count * ms;
281
+ return {
282
+ atDuration: durationMs,
283
+ description: `In ${count} ${match[2]}`,
284
+ original,
285
+ recurring: false,
286
+ };
287
+ }
288
+ /**
289
+ * Try to parse "tomorrow"
290
+ */
291
+ function tryTomorrow(input, original) {
292
+ const match = input.match(PATTERNS.tomorrow);
293
+ if (!match)
294
+ return null;
295
+ // Calculate tomorrow at midnight
296
+ const tomorrow = new Date();
297
+ tomorrow.setDate(tomorrow.getDate() + 1);
298
+ tomorrow.setHours(0, 0, 0, 0);
299
+ if (match[1]) {
300
+ // "tomorrow at X"
301
+ const hour = parseInt(match[1], 10);
302
+ const minute = match[2] ? parseInt(match[2], 10) : 0;
303
+ const ampm = match[3]?.toLowerCase();
304
+ const { hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm);
305
+ tomorrow.setHours(hour24, minute24, 0, 0);
306
+ }
307
+ return {
308
+ at: tomorrow.getTime(),
309
+ description: match[1]
310
+ ? `Tomorrow at ${formatTime(tomorrow.getHours(), tomorrow.getMinutes())}`
311
+ : "Tomorrow",
312
+ original,
313
+ recurring: false,
314
+ };
315
+ }
316
+ /**
317
+ * Try to parse "next <day>"
318
+ */
319
+ function tryNextDay(input, original) {
320
+ const match = input.match(PATTERNS.nextDay);
321
+ if (!match)
322
+ return null;
323
+ const dayName = match[1].toLowerCase();
324
+ const dayOfWeek = DAY_NAMES[dayName];
325
+ if (dayOfWeek === undefined)
326
+ return null;
327
+ // Calculate next occurrence
328
+ const now = new Date();
329
+ const currentDay = now.getDay();
330
+ let daysUntil = dayOfWeek - currentDay;
331
+ if (daysUntil <= 0)
332
+ daysUntil += 7;
333
+ const nextDate = new Date(now);
334
+ nextDate.setDate(now.getDate() + daysUntil);
335
+ let hour24 = 0, minute24 = 0;
336
+ if (match[2]) {
337
+ const hour = parseInt(match[2], 10);
338
+ const minute = match[3] ? parseInt(match[3], 10) : 0;
339
+ const ampm = match[4]?.toLowerCase();
340
+ ({ hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm));
341
+ nextDate.setHours(hour24, minute24, 0, 0);
342
+ }
343
+ else {
344
+ nextDate.setHours(0, 0, 0, 0);
345
+ }
346
+ const dayNameCap = dayName.charAt(0).toUpperCase() + dayName.slice(1);
347
+ return {
348
+ at: nextDate.getTime(),
349
+ description: `Next ${dayNameCap}${match[2] ? ` at ${formatTime(hour24, minute24)}` : ""}`,
350
+ original,
351
+ recurring: false,
352
+ };
353
+ }
354
+ /**
355
+ * Try to parse "every X minutes/hours"
356
+ */
357
+ function tryEveryInterval(input, original) {
358
+ const match = input.match(PATTERNS.everyInterval);
359
+ if (!match)
360
+ return null;
361
+ const count = parseInt(match[1], 10);
362
+ const unit = match[2].toLowerCase();
363
+ if (unit.startsWith("min")) {
364
+ // Cron: */N * * * *
365
+ return {
366
+ cronExpression: `*/${count} * * * *`,
367
+ description: `Every ${count} minute${count > 1 ? "s" : ""}`,
368
+ original,
369
+ recurring: true,
370
+ };
371
+ }
372
+ if (unit.startsWith("hour")) {
373
+ // Cron: 0 */N * * *
374
+ return {
375
+ cronExpression: `0 */${count} * * *`,
376
+ description: `Every ${count} hour${count > 1 ? "s" : ""}`,
377
+ original,
378
+ recurring: true,
379
+ };
380
+ }
381
+ if (unit.startsWith("day")) {
382
+ // Cron: 0 0 */N * *
383
+ return {
384
+ cronExpression: `0 0 */${count} * *`,
385
+ description: `Every ${count} day${count > 1 ? "s" : ""}`,
386
+ original,
387
+ recurring: true,
388
+ };
389
+ }
390
+ if (unit.startsWith("week")) {
391
+ // Every N weeks = every N*7 days
392
+ return {
393
+ cronExpression: `0 0 */${count * 7} * *`,
394
+ description: `Every ${count} week${count > 1 ? "s" : ""}`,
395
+ original,
396
+ recurring: true,
397
+ };
398
+ }
399
+ return null;
400
+ }
401
+ /**
402
+ * Try to parse "at <time>"
403
+ */
404
+ function tryAtTime(input, original) {
405
+ const match = input.match(PATTERNS.atTime);
406
+ if (!match)
407
+ return null;
408
+ const hour = parseInt(match[1], 10);
409
+ const minute = match[2] ? parseInt(match[2], 10) : 0;
410
+ const ampm = match[3]?.toLowerCase();
411
+ const { hour: hour24, minute: minute24 } = normalizeTime(hour, minute, ampm);
412
+ // Calculate today/tomorrow
413
+ const now = new Date();
414
+ const target = new Date(now);
415
+ target.setHours(hour24, minute24, 0, 0);
416
+ // If time has passed, assume tomorrow
417
+ if (target.getTime() <= now.getTime()) {
418
+ target.setDate(target.getDate() + 1);
419
+ }
420
+ return {
421
+ at: target.getTime(),
422
+ description: `At ${formatTime(hour24, minute24)}`,
423
+ original,
424
+ recurring: false,
425
+ };
426
+ }
427
+ /**
428
+ * Try to parse named times (noon, midnight)
429
+ */
430
+ function tryNamedTime(input, original) {
431
+ const match = input.match(PATTERNS.namedTime);
432
+ if (!match)
433
+ return null;
434
+ const named = match[1].toLowerCase();
435
+ const now = new Date();
436
+ const target = new Date(now);
437
+ if (named === "noon") {
438
+ target.setHours(12, 0, 0, 0);
439
+ if (target.getTime() <= now.getTime()) {
440
+ target.setDate(target.getDate() + 1);
441
+ }
442
+ return {
443
+ at: target.getTime(),
444
+ description: "At noon",
445
+ original,
446
+ recurring: false,
447
+ };
448
+ }
449
+ if (named === "midnight") {
450
+ target.setHours(0, 0, 0, 0);
451
+ target.setDate(target.getDate() + 1);
452
+ return {
453
+ at: target.getTime(),
454
+ description: "At midnight",
455
+ original,
456
+ recurring: false,
457
+ };
458
+ }
459
+ return null;
460
+ }
461
+ /**
462
+ * Normalize time to 24-hour format
463
+ */
464
+ function normalizeTime(hour, minute, ampm) {
465
+ let hour24 = hour;
466
+ if (ampm === "pm" && hour !== 12) {
467
+ hour24 = hour + 12;
468
+ }
469
+ else if (ampm === "am" && hour === 12) {
470
+ hour24 = 0;
471
+ }
472
+ return { hour: hour24, minute };
473
+ }
474
+ /**
475
+ * Format time for display
476
+ */
477
+ function formatTime(hour, minute) {
478
+ const ampm = hour >= 12 ? "pm" : "am";
479
+ const hour12 = hour === 0 ? 12 : hour > 12 ? hour - 12 : hour;
480
+ return `${hour12}:${minute.toString().padStart(2, "0")}${ampm}`;
481
+ }
482
+ /**
483
+ * Create a cron job from natural language
484
+ */
485
+ export function createCronFromNL(text, options = {}) {
486
+ const parsed = parseNaturalSchedule(text);
487
+ if (!parsed.cronExpression && !parsed.at && !parsed.atDuration) {
488
+ return null;
489
+ }
490
+ const job = {
491
+ name: options.name || `Job at ${new Date().toISOString()}`,
492
+ message: options.message || text,
493
+ session: options.session || "isolated",
494
+ timezone: options.timezone || Intl.DateTimeFormat().resolvedOptions().timeZone,
495
+ };
496
+ if (parsed.cronExpression) {
497
+ job.cronExpression = parsed.cronExpression;
498
+ job.nextRunAt = getNextRun(parsed.cronExpression, job.timezone);
499
+ }
500
+ else if (parsed.at) {
501
+ job.at = parsed.at;
502
+ job.nextRunAt = parsed.at;
503
+ }
504
+ else if (parsed.atDuration) {
505
+ job.atDuration = parsed.atDuration;
506
+ job.nextRunAt = Date.now() + parsed.atDuration;
507
+ }
508
+ return job;
509
+ }
510
+ /**
511
+ * Get next run time from cron expression
512
+ */
513
+ function getNextRun(cronExpression, timezone) {
514
+ const parts = cronExpression.split(/\s+/);
515
+ if (parts.length !== 5)
516
+ return Date.now();
517
+ // Simplified: calculate next run (would use proper cron parser in production)
518
+ // For now, just return current time + 1 minute
519
+ return Date.now() + 60 * 1000;
520
+ }
521
+ export default parseNaturalSchedule;
522
+ //# sourceMappingURL=nl-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nl-parser.js","sourceRoot":"","sources":["../../../src/cron/nl-parser.ts"],"names":[],"mappings":"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"}
@@ -3,36 +3,12 @@
3
3
  *
4
4
  * Executes cron jobs in isolated or main sessions.
5
5
  * Isolated = fresh context, Main = shares conversation history
6
+ *
7
+ * Uses MultiProviderRouter for automatic provider routing.
6
8
  */
7
- import { OllamaProvider, AnthropicProvider } from "../llm/index.js";
9
+ import { chat } from "../llm/index.js";
8
10
  import { sendNotification } from "./notifications.js";
9
11
  import { eventBus } from "../event-bus/index.js";
10
- // Provider cache
11
- const providers = new Map();
12
- /**
13
- * Get or create provider for a model
14
- */
15
- function getProvider(model) {
16
- // Extract provider prefix (e.g., "ollama/", "claude/", "openai/")
17
- const [providerName] = model.split('/');
18
- if (providers.has(providerName)) {
19
- return providers.get(providerName);
20
- }
21
- let provider;
22
- switch (providerName) {
23
- case 'ollama':
24
- provider = new OllamaProvider();
25
- break;
26
- case 'claude':
27
- provider = new AnthropicProvider();
28
- break;
29
- default:
30
- // Default to Ollama for unknown providers
31
- provider = new OllamaProvider();
32
- }
33
- providers.set(providerName, provider);
34
- return provider;
35
- }
36
12
  /**
37
13
  * Run a job based on its session type
38
14
  */
@@ -73,11 +49,10 @@ export async function runJobRunner(job) {
73
49
  */
74
50
  async function runIsolatedSession(job) {
75
51
  const sessionId = `cron:${job.id}`;
76
- const model = job.model || "kimi-k2.5:cloud";
52
+ const model = job.model || "ollama/kimi-k2.5:cloud";
77
53
  console.log(`[CronRunner] Isolated session: ${sessionId}, model: ${model}`);
78
54
  const startTime = Date.now();
79
55
  try {
80
- const provider = getProvider(model);
81
56
  // Build system prompt with persona context if available
82
57
  const systemPrompt = buildSystemPrompt(job);
83
58
  // Build messages
@@ -88,8 +63,8 @@ async function runIsolatedSession(job) {
88
63
  // Determine temperature and max tokens based on thinking level
89
64
  const temperature = getTemperature(job.thinkingLevel);
90
65
  const maxTokens = getMaxTokens(job.thinkingLevel);
91
- // Call LLM
92
- const response = await provider.chat({
66
+ // Call LLM via multi-provider router
67
+ const response = await chat({
93
68
  model,
94
69
  messages,
95
70
  temperature,
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/cron/runner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,iBAAiB;AACjB,MAAM,SAAS,GAA6B,IAAI,GAAG,EAAE,CAAC;AAEtD;;GAEG;AACH,SAAS,WAAW,CAAC,KAAa;IAChC,kEAAkE;IAClE,MAAM,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAExC,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,OAAO,SAAS,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;IACtC,CAAC;IAED,IAAI,QAAqB,CAAC;IAE1B,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;YAChC,MAAM;QACR,KAAK,QAAQ;YACX,QAAQ,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACnC,MAAM;QACR;YACE,0CAA0C;YAC1C,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;IACpC,CAAC;IAED,SAAS,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAY;IAC7C,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC;IAEhF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,IAAI,MAAiB,CAAC;QAEtB,IAAI,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;YAC/B,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC;QAED,kCAAkC;QAClC,MAAM,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAEpC,OAAO,MAAM,CAAC;IAEhB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,MAAM,WAAW,GAAc;YAC7B,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,CAAC;YACb,QAAQ;YACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;QAEF,0BAA0B;QAC1B,MAAM,gBAAgB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAEzC,OAAO,WAAW,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,kBAAkB,CAAC,GAAY;IAC5C,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,EAAE,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,iBAAiB,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,kCAAkC,SAAS,YAAY,KAAK,EAAE,CAAC,CAAC;IAE5E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAEpC,wDAAwD;QACxD,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAE5C,iBAAiB;QACjB,MAAM,QAAQ,GAAc;YAC1B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;YACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;SACvC,CAAC;QAEF,+DAA+D;QAC/D,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAElD,WAAW;QACX,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACnC,KAAK;YACL,QAAQ;YACR,WAAW;YACX,SAAS;YACT,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,QAAQ,CAAC,OAAO;YACxB,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC;YAClF,QAAQ;SACT,CAAC;IAEJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,MAAM,QAAQ,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAExE,OAAO,CAAC,KAAK,CAAC,wCAAwC,QAAQ,EAAE,CAAC,CAAC;QAElE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,CAAC;YACb,QAAQ;YACR,KAAK,EAAE,QAAQ;SAChB,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAAC,GAAY;IACxC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAE1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,oDAAoD;QACpD,+DAA+D;QAC/D,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACjC,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,OAAO,EAAE,GAAG,CAAC,IAAI;YACjB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;QAEH,+DAA+D;QAC/D,iEAAiE;QACjE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAE7C,iCAAiC;QACjC,OAAO;YACL,GAAG,MAAM;YACT,MAAM,EAAE,oCAAoC,MAAM,CAAC,MAAM,EAAE;SAC5D,CAAC;IAEJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,CAAC;YACb,QAAQ;YACR,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,GAAY;IACrC,MAAM,KAAK,GAAa;QACtB,uEAAuE;QACvE,EAAE;QACF,SAAS,GAAG,CAAC,IAAI,EAAE;QACnB,iBAAiB,GAAG,CAAC,OAAO,EAAE;QAC9B,UAAU,GAAG,CAAC,KAAK,IAAI,SAAS,EAAE;KACnC,CAAC;IAEF,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,mBAAmB,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,IAAI,CAAC;;;;;;CAMZ,CAAC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,GAAG,CAAC,CAAC,qBAAqB;QACnC,KAAK,MAAM;YACT,OAAO,GAAG,CAAC,CAAC,gBAAgB;QAC9B,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,GAAG,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,KAAc;IAClC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,IAAI,CAAC;QACd,KAAK,MAAM;YACT,OAAO,IAAI,CAAC;QACd,KAAK,QAAQ,CAAC;QACd;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAY;IAEZ,OAAO,CAAC,GAAG,CAAC,8BAA8B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAEzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,wCAAwC;QACxC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,EAAE;YACnC,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,GAAG,CAAC,EAAE;YACb,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC,CAAC;QAE1E,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,GAAG,CAAC,OAAO;YACnB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SACjC,CAAC;IAEJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAChC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAY;IACtC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/cron/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/event-bus/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/event-bus/index.ts"],"names":[],"mappings":"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"}