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
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat-extension.js","sourceRoot":"","sources":["../../../../src/extensions/core/heartbeat-extension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat-extension.js","sourceRoot":"","sources":["../../../../src/extensions/core/heartbeat-extension.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAGH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,UAAU,EAAkB,MAAM,wBAAwB,CAAC;AAEpE,2DAA2D;AAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,CAAC;AAEpE,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,eAAe,GAAG,cAAc,CAAC;AACvC,MAAM,aAAa,GAAG,KAAK,CAAC;AAC5B,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAqC1C,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,SAAS,gBAAgB;IACvB,OAAO;QACL,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,aAAa;QACpB,MAAM,EAAE,gKAAgK,eAAe,GAAG;QAC1L,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,MAAM;QACd,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,KAAK;QACnB,gBAAgB,EAAE,KAAK;QACvB,yBAAyB,EAAE,KAAK;QAChC,YAAY,EAAE,OAAO;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe;IACtB,OAAO;QACL,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,IAAI;QACjB,YAAY,EAAE,CAAC;QACf,QAAQ,EAAE,CAAC;QACX,UAAU,EAAE,CAAC;KACd,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,QAAgB;IACvC,MAAM,KAAK,GAAG,6CAA6C,CAAC;IAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,IAAI,CAAC,iCAAiC,QAAQ,sBAAsB,CAAC,CAAC;QAC9E,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;IAE9C,OAAO,CAAC,CAAC,KAAK,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAe;IACzC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxD,OAAO,KAAK,GAAG,EAAE,GAAG,OAAO,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAuB;IAClD,IAAI,CAAC,MAAM,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IAEvB,eAAe;IACf,IAAI,EAAU,CAAC;IACf,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC5C,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IACxD,CAAC;SAAM,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QACvC,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,mDAAmD;QACnD,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IACxD,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACjD,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,KAAK;SACd,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,WAAW,GAAG,EAAE,GAAG,UAAU,CAAC;QAErD,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAE9D,4CAA4C;QAC5C,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;YAChC,oCAAoC;YACpC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;YAC9B,uBAAuB;YACvB,OAAO,cAAc,IAAI,YAAY,IAAI,cAAc,GAAG,UAAU,CAAC;QACvE,CAAC;QAED,OAAO,cAAc,IAAI,YAAY,IAAI,cAAc,GAAG,UAAU,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;QAC9B,MAAM,cAAc,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAC9D,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClE,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAE9D,IAAI,YAAY,KAAK,UAAU;YAAE,OAAO,KAAK,CAAC;QAC9C,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;YAC9B,OAAO,cAAc,IAAI,YAAY,IAAI,cAAc,GAAG,UAAU,CAAC;QACvE,CAAC;QACD,OAAO,cAAc,IAAI,YAAY,IAAI,cAAc,GAAG,UAAU,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB;IAC7B,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,MAAM,KAAK,OAAO;YAAE,MAAM;QAC9B,OAAO,GAAG,MAAM,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;YACxD,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,aAAqB;IACpD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,OAAe;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAElC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS,CAAC,UAAU;QAC/C,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS,CAAC,mBAAmB;QAC7E,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS,CAAC,gBAAgB;QAC3D,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,SAAS,CAAC,kBAAkB;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,wBAAwB,CAC/B,OAAe,EACf,WAAmB;IAEnB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/B,yCAAyC;IACzC,MAAM,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAExD,IAAI,CAAC,eAAe,IAAI,CAAC,aAAa,EAAE,CAAC;QACvC,gCAAgC;QAChC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IACzE,CAAC;IAED,kBAAkB;IAClB,IAAI,QAAQ,GAAG,OAAO,CAAC;IACvB,IAAI,eAAe,EAAE,CAAC;QACpB,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;IACD,IAAI,aAAa,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,yBAAyB;IACzB,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;IAEpD,OAAO;QACL,KAAK,EAAE,IAAI;QACX,eAAe,EAAE,QAAQ;QACzB,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,mBAAmB;IAChC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,UAAU,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;QAE7D,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,aAAa,CAAC,OAAO;gBAClD,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK;gBAC5C,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM;gBAC/C,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW;gBAC9D,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM;gBAC/C,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,aAAa,CAAC,WAAW;gBAC9D,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,aAAa,CAAC,eAAe;gBAC1E,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,aAAa,CAAC,YAAY;gBACjE,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,IAAI,aAAa,CAAC,gBAAgB;gBAC7E,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB,IAAI,aAAa,CAAC,yBAAyB;gBACxG,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,aAAa,CAAC,YAAY;aAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,oDAAoD,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,+EAA+E;AAC/E,YAAY;AACZ,+EAA+E;AAE/E,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EAAgB;IACzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,aAAa,GAA0C,IAAI,CAAC;IAChE,IAAI,MAAM,GAAoB,gBAAgB,EAAE,CAAC;IACjD,IAAI,KAAK,GAAmB,eAAe,EAAE,CAAC;IAC9C,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,kEAAkE;IAClE,iBAAiB;IACjB,kEAAkE;IAElE,KAAK,UAAU,YAAY;QACzB,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAC;QACrC,YAAY,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,yBAAyB;IACzB,YAAY,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACvB,OAAO,CAAC,GAAG,CAAC,uCAAuC,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IAChG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,YAAY,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,0CAA0C,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;IAEH,kEAAkE;IAClE,uBAAuB;IACvB,kEAAkE;IAElE,EAAE,CAAC,YAAY,CAAC;QACd,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,iBAAiB;QACxB,WAAW,EACT,+JAA+J;QACjK,8BAA8B;QAC9B,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,0CAA0C;iBACxD;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2CAA2C;iBACzD;aACF;SACF;QACD,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG;YACxD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAA6C,CAAC;YACvE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAE9C,qBAAqB;YACrB,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,6CAA6C,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,MAAM,CAAC,WAAW,EAAE,GAAG,YAAY,eAAe,kBAAkB;yBACvJ;qBACF;oBACD,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE;iBAC5F,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,aAAa,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;gBAC7F,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;gBAC9E,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,qCAAqC,SAAS,CAAC,kBAAkB,EAAE,WAAW,eAAe,kBAAkB;yBACtH;qBACF;oBACD,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE;iBACnF,CAAC;YACJ,CAAC;YAED,6BAA6B;YAC7B,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAC9C,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAE/D,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBAC9B,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,6CAA6C,eAAe,iEAAiE;yBACpI;qBACF;oBACD,OAAO,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE;iBAC7C,CAAC;YACJ,CAAC;YAED,IAAI,kBAAkB,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACzC,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,kEAAkE,eAAe,kBAAkB;yBAC1G;qBACF;oBACD,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;iBAC7C,CAAC;YACJ,CAAC;YAED,eAAe;YACf,KAAK,CAAC,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAE/C,qCAAqC;YACrC,MAAM,aAAa,GAAG;gBACpB,uBAAuB;gBACvB,EAAE;gBACF,gBAAgB;gBAChB,EAAE;gBACF,KAAK;gBACL,mBAAmB,MAAM,CAAC,KAAK,EAAE;gBACjC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,MAAM,CAAC,WAAW,CAAC,KAAK,MAAM,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI;gBACnG,oBAAoB,MAAM,CAAC,MAAM,EAAE;gBACnC,EAAE;gBACF,uEAAuE,eAAe,8CAA8C;aACrI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAElB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;qBAC/B;iBACF;gBACD,OAAO,EAAE;oBACP,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE;wBACN,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,WAAW,EAAE,MAAM,CAAC,WAAW;qBAChC;iBACF;aACF,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;IAEH,kEAAkE;IAClE,2BAA2B;IAC3B,kEAAkE;IAElE,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE;QAC9B,WAAW,EAAE,+CAA+C;QAC5D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YAC3B,MAAM,YAAY,EAAE,CAAC;YAErB,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;gBACrD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,8CAA8C,EAAE,MAAM,CAAC,CAAC;oBACtE,OAAO;gBACT,CAAC;gBAED,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBAC9C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBAEtD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;oBACrB,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,8DAA8D,EAAE,SAAS,CAAC,CAAC;gBAC3F,CAAC;qBAAM,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,iDAAiD,EAAE,MAAM,CAAC,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,2BAA2B,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;gBACnF,CAAC;gBACD,OAAO;YACT,CAAC;YAED,cAAc;YACd,MAAM,KAAK,GAAG;gBACZ,4BAA4B;gBAC5B,YAAY,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE;gBACxC,aAAa,MAAM,CAAC,KAAK,EAAE;gBAC3B,kBAAkB,MAAM,CAAC,WAAW,EAAE;gBACtC,WAAW,MAAM,CAAC,MAAM,EAAE;gBAC1B,qBAAqB,MAAM,CAAC,eAAe,EAAE;gBAC7C,kBAAkB,MAAM,CAAC,YAAY,EAAE;aACxC,CAAC;YAEF,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,WAAW,CAAC,KAAK,MAAM,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;gBACpF,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;oBAChC,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;YAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,KAAK,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,EAAE;iBACtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;iBACnD,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;iBAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC;YAErE,QAAQ;YACR,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,KAAK,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,aAAa,IAAI,OAAO,EAAE,CAAC,CAAC;YAC5D,KAAK,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9C,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;YAE7C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,0CAA0C,EAAE,yCAAyC,CAAC,CAAC;YAEhH,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;KACF,CAAC,CAAC;IAEH,kEAAkE;IAClE,yBAAyB;IACzB,kEAAkE;IAElE,EAAE,CAAC,eAAe,CAAC,gBAAgB,EAAE;QACnC,WAAW,EAAE,2CAA2C;QACxD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC5B,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,MAAM,EAAE;iBACpB,MAAM,CAAC,QAAQ,CAAC;iBAChB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;iBAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,kCAAkC,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YAED,+DAA+D;YAC/D,IAAI,QAAgB,CAAC;YACrB,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC;gBACP,+BAA+B;gBAC/B,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CAwBlB,CAAC;YACI,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAChD,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,4BAA4B,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,kEAAkE;IAClE,6BAA6B;IAC7B,kEAAkE;IAElE,EAAE,CAAC,YAAY,CAAC;QACd,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,yGAAyG;QAC3G,8BAA8B;QAC9B,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;oBACpB,WAAW,EAAE,uCAAuC;iBACrD;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qCAAqC;iBACnD;aACF;SACF;QACD,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAgE,CAAC;YAE7F,IAAI,MAAM,KAAK,KAAK,IAAI,OAAO,EAAE,CAAC;gBAChC,qBAAqB;gBACrB,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;gBACnC,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,8BAA8B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;yBACtE;qBACF;oBACD,OAAO,EAAE,EAAE,MAAM,EAAE;iBACpB,CAAC;YACJ,CAAC;YAED,qBAAqB;YACrB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,qCAAqC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;qBAC7E;iBACF;gBACD,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;aAC3B,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;IAEH,kEAAkE;IAClE,4CAA4C;IAC5C,kEAAkE;IAElE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE;QAC5B,WAAW,EAAE,oDAAoD;QACjE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAErC,MAAM,MAAM,GAAG;gBACb,MAAM,EAAE,SAAS;gBACjB,SAAS,EAAE,GAAG;gBACd,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG;gBACjJ,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBACjC,SAAS,EAAE;oBACT,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,QAAQ,EAAE,MAAM,CAAC,KAAK;oBACtB,SAAS,EAAE,KAAK,CAAC,aAAa;oBAC9B,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,eAAe,EAAE,mBAAmB,CAAC,MAAM,CAAC;iBAC7C;gBACD,MAAM,EAAE;oBACN,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK;oBAC3D,SAAS,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK;oBAC7D,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK;iBAClD;gBACD,KAAK,EAAE;oBACL,YAAY,EAAE,KAAK,CAAC,QAAQ;oBAC5B,MAAM,EAAE,KAAK,CAAC,UAAU;oBACxB,OAAO,EAAE,KAAK,CAAC,YAAY;iBAC5B;aACF,CAAC;YAEF,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACzD,CAAC;KACF,CAAC,CAAC;IAEH,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE;QAC3B,WAAW,EAAE,mCAAmC;QAChD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC5B,qBAAqB;YACrB,MAAM,IAAI,GAAI,EAAU,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YAC5D,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;KACF,CAAC,CAAC;IAEH,kEAAkE;IAClE,2BAA2B;IAC3B,kEAAkE;IAElE,EAAE,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,YAAY,EAAE,CAAC;QAErB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE9C,8BAA8B;QAC9B,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,aAAa,CAAC,CAAC;QAC/B,CAAC;QAED,2BAA2B;QAC3B,aAAa,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;YACrC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAC1D,KAAK,CAAC,YAAY,EAAE,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,gBAAgB,EAAE,CAAC;YAC9C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAEtD,gCAAgC;YAChC,IAAI,OAAO,KAAK,IAAI,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;gBAC9D,OAAO;YACT,CAAC;YAED,qCAAqC;YACrC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;QAC/D,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,OAAO,CAAC,GAAG,CAAC,wCAAwC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QACnC,IAAI,aAAa,EAAE,CAAC;YAClB,aAAa,CAAC,aAAa,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;AACpE,CAAC"}
@@ -1,9 +1,13 @@
1
1
  /**
2
- * 🧠 Generative Agents Extension
2
+ * 📚 Learning Extension
3
3
  *
4
4
  * Implements Stanford HCI research: "Generative Agents: Interactive Simulacra of Human Behavior"
5
5
  * Adds memory stream, reflection, and planning to 0xKobold agents.
6
6
  *
7
+ * Renamed from generative-agents-extension to reflect reflection + planning focus.
8
+ *
9
+ * Phase 6 Update: Now uses session_events from session-store for memory stream.
10
+ *
7
11
  * Requires: perennial-memory-extension (provides semantic storage)
8
12
  */
9
13
  import { Type } from "@sinclair/typebox";
@@ -11,15 +15,19 @@ import { Database } from "bun:sqlite";
11
15
  import { randomUUID } from "node:crypto";
12
16
  import * as path from "node:path";
13
17
  import { homedir } from "node:os";
14
- const GENERATIVE_DIR = path.join(homedir(), ".0xkobold", "generative");
15
- const DB_PATH = path.join(GENERATIVE_DIR, "agents.db");
18
+ import { getSessionStore } from "../../memory/session-store";
19
+ // Keep original database path for reflections and plans (agent-scoped)
20
+ const LEARNING_DIR = path.join(homedir(), ".0xkobold", "generative");
21
+ const DB_PATH = path.join(LEARNING_DIR, "agents.db");
16
22
  const EMBEDDING_DIM = 768;
17
23
  // ============================================================================
18
24
  // Database
19
25
  // ============================================================================
20
- function initGenerativeDB() {
26
+ function initLearningDB() {
21
27
  const db = new Database(DB_PATH);
22
28
  db.exec("PRAGMA journal_mode = WAL;");
29
+ // Note: memory_stream table moved to session_events (Phase 6)
30
+ // This database now only stores agent state, reflections, and plans
23
31
  db.exec(`
24
32
  CREATE TABLE IF NOT EXISTS agents (
25
33
  id TEXT PRIMARY KEY,
@@ -33,21 +41,6 @@ function initGenerativeDB() {
33
41
  created_at TEXT NOT NULL
34
42
  );
35
43
 
36
- CREATE TABLE IF NOT EXISTS memory_stream (
37
- id TEXT PRIMARY KEY,
38
- timestamp TEXT NOT NULL,
39
- content TEXT NOT NULL,
40
- type TEXT NOT NULL, -- observation, thought, action, reflection
41
- importance REAL NOT NULL,
42
- agent_id TEXT NOT NULL,
43
- session_id TEXT,
44
- location TEXT,
45
- people TEXT, -- JSON array
46
- embedding BLOB, -- 768 floats
47
- metadata TEXT, -- JSON
48
- FOREIGN KEY (agent_id) REFERENCES agents(id)
49
- );
50
-
51
44
  CREATE TABLE IF NOT EXISTS reflections (
52
45
  id TEXT PRIMARY KEY,
53
46
  timestamp TEXT NOT NULL,
@@ -76,9 +69,6 @@ function initGenerativeDB() {
76
69
  FOREIGN KEY (parent_plan_id) REFERENCES plans(id)
77
70
  );
78
71
 
79
- CREATE INDEX IF NOT EXISTS idx_memory_agent ON memory_stream(agent_id);
80
- CREATE INDEX IF NOT EXISTS idx_memory_timestamp ON memory_stream(timestamp);
81
- CREATE INDEX IF NOT EXISTS idx_memory_type ON memory_stream(type);
82
72
  CREATE INDEX IF NOT EXISTS idx_reflections_agent ON reflections(agent_id);
83
73
  CREATE INDEX IF NOT EXISTS idx_plans_agent ON plans(agent_id);
84
74
  CREATE INDEX IF NOT EXISTS idx_plans_status ON plans(status);
@@ -114,14 +104,15 @@ function calculateImportance(content) {
114
104
  return Math.max(1, Math.min(10, score));
115
105
  }
116
106
  // ============================================================================
117
- // Generative Agent Implementation
107
+ // Learning Agent Implementation
118
108
  // ============================================================================
119
- class GenerativeAgent {
109
+ class LearningAgent {
120
110
  id;
121
111
  name;
122
112
  traits;
123
113
  db;
124
114
  llm;
115
+ sessionStore = getSessionStore();
125
116
  constructor(id, name, traits, db, llm) {
126
117
  this.id = id;
127
118
  this.name = name;
@@ -129,30 +120,26 @@ class GenerativeAgent {
129
120
  this.db = db;
130
121
  this.llm = llm;
131
122
  }
132
- // Add observation to memory stream
123
+ // Add observation to session events
133
124
  async observe(content, metadata) {
134
125
  const importance = calculateImportance(content);
135
- const entry = {
136
- id: randomUUID(),
137
- timestamp: new Date().toISOString(),
138
- content,
126
+ // Add to session events (Phase 6: consolidated storage)
127
+ const event = this.sessionStore.events.addEvent({
128
+ sessionId: metadata?.sessionId || `agent-${this.id}`,
139
129
  type: "observation",
130
+ content,
140
131
  importance,
141
132
  agentId: this.id,
142
133
  location: metadata?.location,
143
134
  people: metadata?.people,
144
- sessionId: metadata?.sessionId,
145
- };
146
- // Try to get embedding from perennial memory (via Ollama)
135
+ });
136
+ // Try to get embedding for semantic search
147
137
  try {
148
138
  const embedding = await this.llm.getEmbedding(content);
149
- entry.embedding = embedding;
139
+ // Note: SessionEventStore doesn't store embedding in addEvent
140
+ // For now, embeddings are computed on-demand during search
150
141
  }
151
142
  catch { }
152
- this.db.query(`
153
- INSERT INTO memory_stream (id, timestamp, content, type, importance, agent_id, session_id, location, people, embedding, metadata)
154
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
155
- `).run(entry.id, entry.timestamp, entry.content, entry.type, entry.importance, entry.agentId, entry.sessionId || null, entry.location || null, entry.people ? JSON.stringify(entry.people) : null, entry.embedding ? Buffer.from(new Float32Array(entry.embedding).buffer) : null, metadata ? JSON.stringify(metadata) : null);
156
143
  // Update observation count
157
144
  this.db.query(`UPDATE agents SET observation_count = observation_count + 1 WHERE id = ?`).run(this.id);
158
145
  // Trigger reflection if threshold reached
@@ -160,76 +147,52 @@ class GenerativeAgent {
160
147
  if (count && count.observation_count % 20 === 0) {
161
148
  await this.generateReflections();
162
149
  }
163
- return entry;
150
+ return event;
164
151
  }
165
152
  // Add thought (internal)
166
- async think(content) {
153
+ async think(content, sessionId) {
167
154
  const importance = calculateImportance(content);
168
- const entry = {
169
- id: randomUUID(),
170
- timestamp: new Date().toISOString(),
171
- content,
155
+ const event = this.sessionStore.events.addEvent({
156
+ sessionId: sessionId || `agent-${this.id}`,
172
157
  type: "thought",
158
+ content,
173
159
  importance,
174
160
  agentId: this.id,
175
- };
176
- this.db.query(`
177
- INSERT INTO memory_stream (id, timestamp, content, type, importance, agent_id)
178
- VALUES (?, ?, ?, ?, ?, ?)
179
- `).run(entry.id, entry.timestamp, entry.content, entry.type, entry.importance, entry.agentId);
180
- return entry;
161
+ });
162
+ return event;
181
163
  }
182
- // Add action to memory stream
183
- async act(content) {
164
+ // Add action to session events
165
+ async act(content, sessionId) {
184
166
  const importance = calculateImportance(content);
185
- const entry = {
186
- id: randomUUID(),
187
- timestamp: new Date().toISOString(),
188
- content,
167
+ const event = this.sessionStore.events.addEvent({
168
+ sessionId: sessionId || `agent-${this.id}`,
189
169
  type: "action",
170
+ content,
190
171
  importance,
191
172
  agentId: this.id,
192
- };
193
- this.db.query(`
194
- INSERT INTO memory_stream (id, timestamp, content, type, importance, agent_id)
195
- VALUES (?, ?, ?, ?, ?, ?)
196
- `).run(entry.id, entry.timestamp, entry.content, entry.type, entry.importance, entry.agentId);
197
- return entry;
173
+ });
174
+ return event;
198
175
  }
199
- // Retrieve relevant memories
200
- async retrieveMemories(context, k = 10) {
176
+ // Retrieve relevant memories from session events
177
+ async retrieveMemories(context, k = 10, sessionId) {
201
178
  const now = Date.now();
202
- // Get recent memories with importance weighting
203
- const rows = this.db.query(`
204
- SELECT id, timestamp, content, type, importance, location, people
205
- FROM memory_stream
206
- WHERE agent_id = ?
207
- ORDER BY timestamp DESC
208
- LIMIT 200
209
- `).all(this.id);
179
+ const currentSession = sessionId || `agent-${this.id}`;
180
+ // Get recent events from session store
181
+ const events = this.sessionStore.events.getRecentEvents(currentSession, 200);
210
182
  // Calculate scores (recency + importance + relevance)
211
- const scored = rows.map(row => {
212
- const hoursAgo = (now - new Date(row.timestamp).getTime()) / (1000 * 60 * 60);
183
+ const scored = events.map(event => {
184
+ const hoursAgo = (now - event.timestamp) / (1000 * 60 * 60);
213
185
  const recency = Math.exp(-0.005 * hoursAgo); // Decay
214
- const relevance = this.calculateRelevance(row.content, context);
186
+ const relevance = this.calculateRelevance(event.content, context);
215
187
  return {
216
- memory: {
217
- id: row.id,
218
- timestamp: row.timestamp,
219
- content: row.content,
220
- type: row.type,
221
- importance: row.importance,
222
- agentId: this.id,
223
- location: row.location,
224
- people: row.people ? JSON.parse(row.people) : undefined,
225
- },
226
- score: (recency * 0.3) + (row.importance / 10 * 0.3) + (relevance * 0.4),
188
+ event,
189
+ score: (recency * 0.3) + (event.importance / 10 * 0.3) + (relevance * 0.4),
227
190
  };
228
191
  });
229
192
  return scored
230
193
  .sort((a, b) => b.score - a.score)
231
194
  .slice(0, k)
232
- .map(s => s.memory);
195
+ .map(s => s.event);
233
196
  }
234
197
  calculateRelevance(memoryContent, context) {
235
198
  const memWords = new Set(memoryContent.toLowerCase().split(/\s+/));
@@ -238,20 +201,18 @@ class GenerativeAgent {
238
201
  return intersection.length / Math.max(memWords.size, ctxWords.size);
239
202
  }
240
203
  // Generate reflections from recent memories
241
- async generateReflections() {
242
- const recentMemories = this.db.query(`
243
- SELECT id, content, timestamp, type FROM memory_stream
244
- WHERE agent_id = ? AND type IN ('observation', 'thought', 'action')
245
- ORDER BY timestamp DESC
246
- LIMIT 100
247
- `).all(this.id);
248
- if (recentMemories.length < 10)
204
+ async generateReflections(sessionId) {
205
+ const currentSession = sessionId || `agent-${this.id}`;
206
+ // Get recent events from session store
207
+ const events = this.sessionStore.events.getRecentEvents(currentSession, 100)
208
+ .filter(e => e.type === 'observation' || e.type === 'thought' || e.type === 'action');
209
+ if (events.length < 10)
249
210
  return []; // Need enough context
250
211
  const prompt = `
251
212
  You are analyzing memories of an AI agent named "${this.name}" with traits: ${this.traits.join(', ')}.
252
213
 
253
214
  Recent memories:
254
- ${recentMemories.slice(0, 50).map(m => `- ${m.type}: ${m.content}`).join('\n')}
215
+ ${events.slice(0, 50).map(e => `- ${e.type}: ${e.content}`).join('\n')}
255
216
 
256
217
  Generate 3-5 high-level insights or patterns about this agent's behavior, work patterns, or learning.
257
218
  For each insight:
@@ -263,7 +224,7 @@ Insight: [clear statement]
263
224
  Evidence: [comma-separated memory IDs]
264
225
  ---`;
265
226
  const response = await this.llm.generate(prompt);
266
- const insights = this.parseReflections(response, recentMemories.map(m => m.id));
227
+ const insights = this.parseReflections(response, events.map(e => e.id));
267
228
  const reflections = [];
268
229
  for (const insight of insights) {
269
230
  const reflection = {
@@ -440,7 +401,7 @@ function createLLMInterface(ollamaUrl) {
440
401
  const response = await fetch(`${ollamaUrl}/api/embeddings`, {
441
402
  method: "POST",
442
403
  headers: { "Content-Type": "application/json" },
443
- body: JSON.stringify({ model: "nomic-embed-text", prompt: text }),
404
+ body: JSON.stringify({ model: "nomic-embed-text-v2-moe", prompt: text }),
444
405
  });
445
406
  if (!response.ok)
446
407
  throw new Error(`Embedding error: ${response.status}`);
@@ -452,13 +413,13 @@ function createLLMInterface(ollamaUrl) {
452
413
  // ============================================================================
453
414
  // Extension Export
454
415
  // ============================================================================
455
- export default async function generativeAgentsExtension(pi) {
456
- console.log("[🧠 Generative Agents] Loading...");
457
- const db = initGenerativeDB();
416
+ export default async function learningExtension(pi) {
417
+ console.log("[📚 Learning] Loading...");
418
+ const db = initLearningDB();
458
419
  const config = pi.config || {};
459
420
  const ollamaUrl = config.ollama?.url || "http://localhost:11434";
460
421
  const llm = createLLMInterface(ollamaUrl);
461
- // Track active generative agents
422
+ // Track active learning agents
462
423
  const agents = new Map();
463
424
  // Get or create Shalom agent
464
425
  function getShalomAgent(ctx) {
@@ -480,14 +441,14 @@ export default async function generativeAgentsExtension(pi) {
480
441
  VALUES (?, 'Shalom', ?, 'workspace', 0, ?)
481
442
  `).run(agentId, JSON.stringify(traits), new Date().toISOString());
482
443
  }
483
- const agent = new GenerativeAgent(agentId, "Shalom", traits, db, llm);
444
+ const agent = new LearningAgent(agentId, "Shalom", traits, db, llm);
484
445
  agents.set("shalom", agent);
485
446
  return agent;
486
447
  }
487
448
  // TOOL: Observe
488
449
  pi.registerTool({
489
- name: "generative_observe",
490
- label: "🧠 Observe (Memory Stream)",
450
+ name: "learning_observe",
451
+ label: "📚 Observe (Memory Stream)",
491
452
  description: "Add observation to agent's memory stream. Triggers reflection every 20 observations.",
492
453
  parameters: Type.Object({
493
454
  content: Type.String({ description: "What the agent observed" }),
@@ -497,15 +458,15 @@ export default async function generativeAgentsExtension(pi) {
497
458
  const agent = getShalomAgent(ctx);
498
459
  const entry = await agent.observe(params.content, { sessionId: ctx.sessionManager?.getSessionId?.() });
499
460
  return {
500
- content: [{ type: "text", text: `🧠 Observed: "${entry.content.slice(0, 60)}..." (${entry.importance}/10 importance)` }],
461
+ content: [{ type: "text", text: `📚 Observed: "${entry.content.slice(0, 60)}..." (${entry.importance}/10 importance)` }],
501
462
  details: entry,
502
463
  };
503
464
  },
504
465
  });
505
466
  // TOOL: Think
506
467
  pi.registerTool({
507
- name: "generative_think",
508
- label: "🧠 Think (Internal)",
468
+ name: "learning_think",
469
+ label: "📚 Think (Internal)",
509
470
  description: "Add internal thought to memory stream.",
510
471
  parameters: Type.Object({
511
472
  content: Type.String({ description: "Agent's thought" }),
@@ -521,8 +482,8 @@ export default async function generativeAgentsExtension(pi) {
521
482
  });
522
483
  // TOOL: Retrieve Memories
523
484
  pi.registerTool({
524
- name: "generative_recall",
525
- label: "🧠 Recall Memories",
485
+ name: "learning_recall",
486
+ label: "📚 Recall Memories",
526
487
  description: "Retrieve relevant memories based on context. Combines recency, importance, and relevance.",
527
488
  parameters: Type.Object({
528
489
  context: Type.String({ description: "Current context to find relevant memories" }),
@@ -540,8 +501,8 @@ export default async function generativeAgentsExtension(pi) {
540
501
  });
541
502
  // TOOL: Reflect
542
503
  pi.registerTool({
543
- name: "generative_reflect",
544
- label: "🧠 Generate Reflections",
504
+ name: "learning_reflect",
505
+ label: "📚 Generate Reflections",
545
506
  description: "Synthesize memories into higher-level insights. Run periodically or after significant events.",
546
507
  parameters: Type.Object({}),
547
508
  async execute(_id, _params, _signal, _onUpdate, ctx) {
@@ -556,8 +517,8 @@ export default async function generativeAgentsExtension(pi) {
556
517
  });
557
518
  // TOOL: Plan
558
519
  pi.registerTool({
559
- name: "generative_plan",
560
- label: "🧠 Create Plan",
520
+ name: "learning_plan",
521
+ label: "📚 Create Plan",
561
522
  description: "Create daily plan based on memories and traits.",
562
523
  parameters: Type.Object({
563
524
  type: Type.String({ description: "Plan type: daily, action, project" }),
@@ -592,8 +553,8 @@ export default async function generativeAgentsExtension(pi) {
592
553
  });
593
554
  // TOOL: Decide
594
555
  pi.registerTool({
595
- name: "generative_decide",
596
- label: "🧠 Decide Action",
556
+ name: "learning_decide",
557
+ label: "📚 Decide Action",
597
558
  description: "Use memories and reflections to decide next action. Returns action + reasoning.",
598
559
  parameters: Type.Object({
599
560
  context: Type.String({ description: "Current situation context" }),
@@ -609,14 +570,13 @@ export default async function generativeAgentsExtension(pi) {
609
570
  });
610
571
  // COMMANDS
611
572
  pi.registerCommand("agent-memories", {
612
- description: "Show recent memory stream",
573
+ description: "Show recent session events",
613
574
  handler: async (_args, ctx) => {
614
575
  const agent = getShalomAgent(ctx);
615
- const memories = db.query(`
616
- SELECT timestamp, content, type, importance FROM memory_stream
617
- WHERE agent_id = ? ORDER BY timestamp DESC LIMIT 10
618
- `).all(agent.id);
619
- ctx.ui.notify(memories.map((m, i) => `${i + 1}. [${m.type}] ${m.content.slice(0, 40)}... (${m.importance}/10)`).join("\n") || "No memories yet", "info");
576
+ const sessionId = ctx.sessionManager?.getSessionId?.() || `agent-${agent.id}`;
577
+ const sessionStore = getSessionStore();
578
+ const events = sessionStore.events.getRecentEvents(sessionId, 10);
579
+ ctx.ui.notify(events.map((e, i) => `${i + 1}. [${e.type}] ${e.content.slice(0, 40)}... (${e.importance}/10)`).join("\n") || "No memories yet", "info");
620
580
  },
621
581
  });
622
582
  pi.registerCommand("agent-reflections", {
@@ -648,12 +608,14 @@ export default async function generativeAgentsExtension(pi) {
648
608
  const stats = db.query(`
649
609
  SELECT observation_count, last_reflection_at FROM agents WHERE id = ?
650
610
  `).get(agent.id);
651
- const memoryCount = db.query(`SELECT COUNT(*) as count FROM memory_stream WHERE agent_id = ?`).get(agent.id);
611
+ const sessionId = `agent-${agent.id}`;
612
+ const sessionStore = getSessionStore();
613
+ const events = sessionStore.events.getRecentEvents(sessionId, 1000);
652
614
  const reflectionCount = db.query(`SELECT COUNT(*) as count FROM reflections WHERE agent_id = ?`).get(agent.id);
653
- ctx.ui.notify(`🧠 Agent: ${agent.name}\n` +
615
+ ctx.ui.notify(`📚 Agent: ${agent.name}\n` +
654
616
  ` Traits: ${agent.traits.join(', ')}\n` +
655
617
  ` Observations: ${stats?.observation_count || 0}\n` +
656
- ` Memories: ${memoryCount.count}\n` +
618
+ ` Memory events: ${events.length}\n` +
657
619
  ` Reflections: ${reflectionCount.count}\n` +
658
620
  ` Last reflection: ${stats?.last_reflection_at ? new Date(stats.last_reflection_at).toLocaleDateString() : 'Never'}`, "info");
659
621
  },
@@ -695,10 +657,10 @@ export default async function generativeAgentsExtension(pi) {
695
657
  // Silent fail
696
658
  }
697
659
  });
698
- console.log("[🧠 Generative Agents] Ready");
699
- console.log(" Tools: generative_observe, generative_think, generative_recall");
700
- console.log(" generative_reflect, generative_plan, generative_decide");
660
+ console.log("[📚 Learning] Ready");
661
+ console.log(" Tools: learning_observe, learning_think, learning_recall");
662
+ console.log(" learning_reflect, learning_plan, learning_decide");
701
663
  console.log(" Commands: /agent-memories, /agent-reflections, /agent-plans, /agent-status");
702
664
  console.log(" Auto-observation: input, tool_execution_end, agent_end");
703
665
  }
704
- //# sourceMappingURL=generative-agents-extension.js.map
666
+ //# sourceMappingURL=learning-extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"learning-extension.js","sourceRoot":"","sources":["../../../../src/extensions/core/learning-extension.ts"],"names":[],"mappings":"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"}