@tyvm/knowhow 0.0.161 โ†’ 0.0.163

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 (281) hide show
  1. package/package.json +6 -6
  2. package/sdk.d.ts +1 -0
  3. package/sdk.js +1 -0
  4. package/ts_build/package.json +6 -6
  5. package/ts_build/src/agents/base/base.d.ts +1 -0
  6. package/ts_build/src/agents/base/base.js +26 -6
  7. package/ts_build/src/agents/base/base.js.map +1 -1
  8. package/ts_build/src/agents/developer/developer.js +2 -2
  9. package/ts_build/src/agents/developer/developer.js.map +1 -1
  10. package/ts_build/src/agents/patcher/patcher.js +3 -3
  11. package/ts_build/src/agents/patcher/patcher.js.map +1 -1
  12. package/ts_build/src/agents/researcher/researcher.js +2 -2
  13. package/ts_build/src/agents/researcher/researcher.js.map +1 -1
  14. package/ts_build/src/agents/tools/connectAgent.js +2 -7
  15. package/ts_build/src/agents/tools/connectAgent.js.map +1 -1
  16. package/ts_build/src/agents/tools/execCommand.js +7 -2
  17. package/ts_build/src/agents/tools/execCommand.js.map +1 -1
  18. package/ts_build/src/agents/tools/index.d.ts +2 -0
  19. package/ts_build/src/agents/tools/index.js +2 -0
  20. package/ts_build/src/agents/tools/index.js.map +1 -1
  21. package/ts_build/src/agents/tools/list.js +4 -0
  22. package/ts_build/src/agents/tools/list.js.map +1 -1
  23. package/ts_build/src/agents/tools/listWorkers.d.ts +9 -0
  24. package/ts_build/src/agents/tools/listWorkers.js +55 -0
  25. package/ts_build/src/agents/tools/listWorkers.js.map +1 -0
  26. package/ts_build/src/agents/tools/minimal/callTool.js.map +1 -1
  27. package/ts_build/src/agents/tools/replyToParent.js +2 -7
  28. package/ts_build/src/agents/tools/replyToParent.js.map +1 -1
  29. package/ts_build/src/agents/tools/sendAgentMessage.js +28 -9
  30. package/ts_build/src/agents/tools/sendAgentMessage.js.map +1 -1
  31. package/ts_build/src/agents/tools/startAgentTask.d.ts +7 -0
  32. package/ts_build/src/agents/tools/startAgentTask.js +56 -2
  33. package/ts_build/src/agents/tools/startAgentTask.js.map +1 -1
  34. package/ts_build/src/agents/tools/waitForAgentCompleted.d.ts +2 -0
  35. package/ts_build/src/agents/tools/waitForAgentCompleted.js +35 -1
  36. package/ts_build/src/agents/tools/waitForAgentCompleted.js.map +1 -1
  37. package/ts_build/src/agents/tools/workerExec.d.ts +8 -0
  38. package/ts_build/src/agents/tools/workerExec.js +53 -0
  39. package/ts_build/src/agents/tools/workerExec.js.map +1 -0
  40. package/ts_build/src/chat/CliChatService.js +6 -2
  41. package/ts_build/src/chat/CliChatService.js.map +1 -1
  42. package/ts_build/src/chat/modules/AgentModule.d.ts +10 -0
  43. package/ts_build/src/chat/modules/AgentModule.js +84 -117
  44. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  45. package/ts_build/src/chat/modules/InternalChatModule.d.ts +1 -0
  46. package/ts_build/src/chat/modules/InternalChatModule.js +8 -0
  47. package/ts_build/src/chat/modules/InternalChatModule.js.map +1 -1
  48. package/ts_build/src/chat/modules/RemoteSyncModule.js +15 -8
  49. package/ts_build/src/chat/modules/RemoteSyncModule.js.map +1 -1
  50. package/ts_build/src/chat/modules/WorkerModule.d.ts +22 -0
  51. package/ts_build/src/chat/modules/WorkerModule.js +195 -0
  52. package/ts_build/src/chat/modules/WorkerModule.js.map +1 -0
  53. package/ts_build/src/chat/modules/index.d.ts +1 -0
  54. package/ts_build/src/chat/modules/index.js +3 -1
  55. package/ts_build/src/chat/modules/index.js.map +1 -1
  56. package/ts_build/src/cli.js +3 -0
  57. package/ts_build/src/cli.js.map +1 -1
  58. package/ts_build/src/clients/anthropic.js +65 -43
  59. package/ts_build/src/clients/anthropic.js.map +1 -1
  60. package/ts_build/src/clients/contextLimits.js +12 -0
  61. package/ts_build/src/clients/contextLimits.js.map +1 -1
  62. package/ts_build/src/clients/gemini.js +57 -27
  63. package/ts_build/src/clients/gemini.js.map +1 -1
  64. package/ts_build/src/clients/index.d.ts +5 -1
  65. package/ts_build/src/clients/index.js +57 -1
  66. package/ts_build/src/clients/index.js.map +1 -1
  67. package/ts_build/src/clients/jev.d.ts +14 -0
  68. package/ts_build/src/clients/jev.js +69 -0
  69. package/ts_build/src/clients/jev.js.map +1 -0
  70. package/ts_build/src/clients/knowhow.js +9 -1
  71. package/ts_build/src/clients/knowhow.js.map +1 -1
  72. package/ts_build/src/clients/openai.js +5 -0
  73. package/ts_build/src/clients/openai.js.map +1 -1
  74. package/ts_build/src/clients/pricing/anthropic.d.ts +3 -0
  75. package/ts_build/src/clients/pricing/anthropic.js +13 -0
  76. package/ts_build/src/clients/pricing/anthropic.js.map +1 -1
  77. package/ts_build/src/clients/pricing/fireworks.d.ts +0 -1
  78. package/ts_build/src/clients/pricing/fireworks.js +0 -3
  79. package/ts_build/src/clients/pricing/fireworks.js.map +1 -1
  80. package/ts_build/src/clients/pricing/google.d.ts +2 -0
  81. package/ts_build/src/clients/pricing/google.js +14 -0
  82. package/ts_build/src/clients/pricing/google.js.map +1 -1
  83. package/ts_build/src/clients/pricing/index.d.ts +2 -1
  84. package/ts_build/src/clients/pricing/index.js +7 -2
  85. package/ts_build/src/clients/pricing/index.js.map +1 -1
  86. package/ts_build/src/clients/pricing/jev.d.ts +7 -0
  87. package/ts_build/src/clients/pricing/jev.js +14 -0
  88. package/ts_build/src/clients/pricing/jev.js.map +1 -0
  89. package/ts_build/src/clients/pricing/models.js +2 -0
  90. package/ts_build/src/clients/pricing/models.js.map +1 -1
  91. package/ts_build/src/clients/pricing/openai.d.ts +3 -0
  92. package/ts_build/src/clients/pricing/openai.js +34 -0
  93. package/ts_build/src/clients/pricing/openai.js.map +1 -1
  94. package/ts_build/src/clients/pricing/types.d.ts +2 -1
  95. package/ts_build/src/clients/pricing/types.js +3 -1
  96. package/ts_build/src/clients/pricing/types.js.map +1 -1
  97. package/ts_build/src/clients/pricing/xai.d.ts +1 -0
  98. package/ts_build/src/clients/pricing/xai.js +4 -1
  99. package/ts_build/src/clients/pricing/xai.js.map +1 -1
  100. package/ts_build/src/clients/types.d.ts +62 -1
  101. package/ts_build/src/clients/types.js.map +1 -1
  102. package/ts_build/src/commands/agent.js +66 -0
  103. package/ts_build/src/commands/agent.js.map +1 -1
  104. package/ts_build/src/commands/agents.js +7 -1
  105. package/ts_build/src/commands/agents.js.map +1 -1
  106. package/ts_build/src/commands/convert.js +11 -10
  107. package/ts_build/src/commands/convert.js.map +1 -1
  108. package/ts_build/src/commands/mcp.js +132 -0
  109. package/ts_build/src/commands/mcp.js.map +1 -1
  110. package/ts_build/src/commands/processes.js +79 -37
  111. package/ts_build/src/commands/processes.js.map +1 -1
  112. package/ts_build/src/commands/remote.js +13 -0
  113. package/ts_build/src/commands/remote.js.map +1 -1
  114. package/ts_build/src/commands/services.d.ts +3 -0
  115. package/ts_build/src/commands/services.js +7 -4
  116. package/ts_build/src/commands/services.js.map +1 -1
  117. package/ts_build/src/commands/workers.d.ts +1 -0
  118. package/ts_build/src/commands/workers.js +134 -3
  119. package/ts_build/src/commands/workers.js.map +1 -1
  120. package/ts_build/src/config.js +1 -0
  121. package/ts_build/src/config.js.map +1 -1
  122. package/ts_build/src/fileSync.d.ts +1 -1
  123. package/ts_build/src/fileSync.js +7 -6
  124. package/ts_build/src/fileSync.js.map +1 -1
  125. package/ts_build/src/hashes.d.ts +2 -1
  126. package/ts_build/src/hashes.js +10 -1
  127. package/ts_build/src/hashes.js.map +1 -1
  128. package/ts_build/src/index.d.ts +0 -1
  129. package/ts_build/src/index.js +0 -1
  130. package/ts_build/src/index.js.map +1 -1
  131. package/ts_build/src/microphone.d.ts +1 -0
  132. package/ts_build/src/microphone.js +14 -6
  133. package/ts_build/src/microphone.js.map +1 -1
  134. package/ts_build/src/plugins/GitPlugin.d.ts +1 -0
  135. package/ts_build/src/plugins/GitPlugin.js +3 -0
  136. package/ts_build/src/plugins/GitPlugin.js.map +1 -1
  137. package/ts_build/src/plugins/embedding.js +21 -8
  138. package/ts_build/src/plugins/embedding.js.map +1 -1
  139. package/ts_build/src/processes/ProcessManager.js +5 -1
  140. package/ts_build/src/processes/ProcessManager.js.map +1 -1
  141. package/ts_build/src/processes/registry.d.ts +26 -0
  142. package/ts_build/src/processes/registry.js +228 -0
  143. package/ts_build/src/processes/registry.js.map +1 -0
  144. package/ts_build/src/processors/defaultProcessors.d.ts +8 -0
  145. package/ts_build/src/processors/defaultProcessors.js +38 -0
  146. package/ts_build/src/processors/defaultProcessors.js.map +1 -0
  147. package/ts_build/src/sdk.d.ts +30 -0
  148. package/ts_build/src/sdk.js +65 -0
  149. package/ts_build/src/sdk.js.map +1 -0
  150. package/ts_build/src/services/AgentService.d.ts +3 -0
  151. package/ts_build/src/services/AgentService.js +25 -0
  152. package/ts_build/src/services/AgentService.js.map +1 -1
  153. package/ts_build/src/services/AgentTaskCleanup.d.ts +5 -0
  154. package/ts_build/src/services/AgentTaskCleanup.js +155 -0
  155. package/ts_build/src/services/AgentTaskCleanup.js.map +1 -0
  156. package/ts_build/src/services/ExtensionsService.d.ts +18 -0
  157. package/ts_build/src/services/ExtensionsService.js +51 -1
  158. package/ts_build/src/services/ExtensionsService.js.map +1 -1
  159. package/ts_build/src/services/InteractiveAgentRuntime.d.ts +104 -0
  160. package/ts_build/src/services/InteractiveAgentRuntime.js +238 -0
  161. package/ts_build/src/services/InteractiveAgentRuntime.js.map +1 -0
  162. package/ts_build/src/services/KnowhowClient.d.ts +74 -1
  163. package/ts_build/src/services/KnowhowClient.js +24 -2
  164. package/ts_build/src/services/KnowhowClient.js.map +1 -1
  165. package/ts_build/src/services/Mcp.d.ts +1 -0
  166. package/ts_build/src/services/Mcp.js +78 -19
  167. package/ts_build/src/services/Mcp.js.map +1 -1
  168. package/ts_build/src/services/RemoteWorkers.d.ts +115 -0
  169. package/ts_build/src/services/RemoteWorkers.js +561 -0
  170. package/ts_build/src/services/RemoteWorkers.js.map +1 -0
  171. package/ts_build/src/services/Tools.d.ts +2 -1
  172. package/ts_build/src/services/Tools.js.map +1 -1
  173. package/ts_build/src/services/conversion/ConversionService.d.ts +6 -1
  174. package/ts_build/src/services/conversion/ConversionService.js +54 -1
  175. package/ts_build/src/services/conversion/ConversionService.js.map +1 -1
  176. package/ts_build/src/services/conversion/types.d.ts +10 -0
  177. package/ts_build/src/services/index.d.ts +1 -3
  178. package/ts_build/src/services/index.js +2 -3
  179. package/ts_build/src/services/index.js.map +1 -1
  180. package/ts_build/src/services/modules/index.d.ts +1 -2
  181. package/ts_build/src/services/modules/runtime.d.ts +11 -0
  182. package/ts_build/src/services/modules/runtime.js +81 -0
  183. package/ts_build/src/services/modules/runtime.js.map +1 -0
  184. package/ts_build/src/services/modules/types.d.ts +0 -2
  185. package/ts_build/src/services/stateful/ProcessMirror.d.ts +32 -0
  186. package/ts_build/src/services/stateful/ProcessMirror.js +120 -0
  187. package/ts_build/src/services/stateful/ProcessMirror.js.map +1 -0
  188. package/ts_build/src/services/stateful/ResumableProcess.d.ts +11 -0
  189. package/ts_build/src/services/stateful/ResumableProcess.js +20 -0
  190. package/ts_build/src/services/stateful/ResumableProcess.js.map +1 -0
  191. package/ts_build/src/services/stateful/StatefulProcess.d.ts +92 -0
  192. package/ts_build/src/services/stateful/StatefulProcess.js +513 -0
  193. package/ts_build/src/services/stateful/StatefulProcess.js.map +1 -0
  194. package/ts_build/src/services/stateful/agent/AgentFsChannel.d.ts +68 -0
  195. package/ts_build/src/services/stateful/agent/AgentFsChannel.js +448 -0
  196. package/ts_build/src/services/stateful/agent/AgentFsChannel.js.map +1 -0
  197. package/ts_build/src/services/stateful/agent/AgentSession.d.ts +68 -0
  198. package/ts_build/src/services/stateful/agent/AgentSession.js +340 -0
  199. package/ts_build/src/services/stateful/agent/AgentSession.js.map +1 -0
  200. package/ts_build/src/services/stateful/agent/KnowhowWebChannel.d.ts +54 -0
  201. package/ts_build/src/services/stateful/agent/KnowhowWebChannel.js +294 -0
  202. package/ts_build/src/services/stateful/agent/KnowhowWebChannel.js.map +1 -0
  203. package/ts_build/src/services/stateful/agent/agentChannels.d.ts +14 -0
  204. package/ts_build/src/services/stateful/agent/agentChannels.js +23 -0
  205. package/ts_build/src/services/stateful/agent/agentChannels.js.map +1 -0
  206. package/ts_build/src/services/stateful/agent/agentMirror.d.ts +59 -0
  207. package/ts_build/src/services/stateful/agent/agentMirror.js +203 -0
  208. package/ts_build/src/services/stateful/agent/agentMirror.js.map +1 -0
  209. package/ts_build/src/services/stateful/agent/agentProjection.d.ts +27 -0
  210. package/ts_build/src/services/stateful/agent/agentProjection.js +108 -0
  211. package/ts_build/src/services/stateful/agent/agentProjection.js.map +1 -0
  212. package/ts_build/src/services/stateful/agent/index.d.ts +7 -0
  213. package/ts_build/src/services/stateful/agent/index.js +24 -0
  214. package/ts_build/src/services/stateful/agent/index.js.map +1 -0
  215. package/ts_build/src/services/stateful/agent/types.d.ts +44 -0
  216. package/ts_build/src/services/{modules/computerUse.js โ†’ stateful/agent/types.js} +1 -1
  217. package/ts_build/src/services/stateful/agent/types.js.map +1 -0
  218. package/ts_build/src/services/stateful/changesIterable.d.ts +2 -0
  219. package/ts_build/src/services/stateful/changesIterable.js +51 -0
  220. package/ts_build/src/services/stateful/changesIterable.js.map +1 -0
  221. package/ts_build/src/services/stateful/channels/Channel.d.ts +71 -0
  222. package/ts_build/src/services/stateful/channels/Channel.js +158 -0
  223. package/ts_build/src/services/stateful/channels/Channel.js.map +1 -0
  224. package/ts_build/src/services/stateful/channels/JsonFileChannel.d.ts +65 -0
  225. package/ts_build/src/services/stateful/channels/JsonFileChannel.js +258 -0
  226. package/ts_build/src/services/stateful/channels/JsonFileChannel.js.map +1 -0
  227. package/ts_build/src/services/stateful/channels/MemoryChannel.d.ts +32 -0
  228. package/ts_build/src/services/stateful/channels/MemoryChannel.js +58 -0
  229. package/ts_build/src/services/stateful/channels/MemoryChannel.js.map +1 -0
  230. package/ts_build/src/services/stateful/channels/base.d.ts +29 -0
  231. package/ts_build/src/services/stateful/channels/base.js +36 -0
  232. package/ts_build/src/services/stateful/channels/base.js.map +1 -0
  233. package/ts_build/src/services/stateful/channels/delta.d.ts +34 -0
  234. package/ts_build/src/services/stateful/channels/delta.js +68 -0
  235. package/ts_build/src/services/stateful/channels/delta.js.map +1 -0
  236. package/ts_build/src/services/stateful/channels/inputStream.d.ts +67 -0
  237. package/ts_build/src/services/stateful/channels/inputStream.js +354 -0
  238. package/ts_build/src/services/stateful/channels/inputStream.js.map +1 -0
  239. package/ts_build/src/services/stateful/index.d.ts +12 -0
  240. package/ts_build/src/services/stateful/index.js +29 -0
  241. package/ts_build/src/services/stateful/index.js.map +1 -0
  242. package/ts_build/src/services/stateful/types.d.ts +93 -0
  243. package/ts_build/src/services/stateful/types.js +20 -0
  244. package/ts_build/src/services/stateful/types.js.map +1 -0
  245. package/ts_build/src/services/watchers/index.d.ts +1 -2
  246. package/ts_build/src/services/watchers/index.js +4 -16
  247. package/ts_build/src/services/watchers/index.js.map +1 -1
  248. package/ts_build/src/tunnel.d.ts +4 -0
  249. package/ts_build/src/tunnel.js +42 -1
  250. package/ts_build/src/tunnel.js.map +1 -1
  251. package/ts_build/src/types.d.ts +9 -1
  252. package/ts_build/src/utils/commandAction.d.ts +7 -0
  253. package/ts_build/src/utils/commandAction.js +48 -0
  254. package/ts_build/src/utils/commandAction.js.map +1 -0
  255. package/ts_build/src/utils/fallback.d.ts +38 -0
  256. package/ts_build/src/utils/fallback.js +91 -0
  257. package/ts_build/src/utils/fallback.js.map +1 -0
  258. package/ts_build/src/utils/knowhowCommand.d.ts +6 -0
  259. package/ts_build/src/utils/knowhowCommand.js +54 -0
  260. package/ts_build/src/utils/knowhowCommand.js.map +1 -0
  261. package/ts_build/src/worker.js +8 -4
  262. package/ts_build/src/worker.js.map +1 -1
  263. package/ts_build/src/workerRegistry.js +4 -1
  264. package/ts_build/src/workerRegistry.js.map +1 -1
  265. package/ts_build/src/services/AgentSyncFs.d.ts +0 -50
  266. package/ts_build/src/services/AgentSyncFs.js +0 -557
  267. package/ts_build/src/services/AgentSyncFs.js.map +0 -1
  268. package/ts_build/src/services/AgentSyncKnowhowWeb.d.ts +0 -36
  269. package/ts_build/src/services/AgentSyncKnowhowWeb.js +0 -245
  270. package/ts_build/src/services/AgentSyncKnowhowWeb.js.map +0 -1
  271. package/ts_build/src/services/SyncerService.d.ts +0 -32
  272. package/ts_build/src/services/SyncerService.js +0 -100
  273. package/ts_build/src/services/SyncerService.js.map +0 -1
  274. package/ts_build/src/services/modules/computerUse.d.ts +0 -165
  275. package/ts_build/src/services/modules/computerUse.js.map +0 -1
  276. package/ts_build/src/services/watchers/FsSyncer.d.ts +0 -32
  277. package/ts_build/src/services/watchers/FsSyncer.js +0 -174
  278. package/ts_build/src/services/watchers/FsSyncer.js.map +0 -1
  279. package/ts_build/src/services/watchers/RemoteSyncer.d.ts +0 -33
  280. package/ts_build/src/services/watchers/RemoteSyncer.js +0 -164
  281. package/ts_build/src/services/watchers/RemoteSyncer.js.map +0 -1
@@ -1,557 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
- return c > 3 && r && Object.defineProperty(target, key, r), r;
23
- };
24
- var __importStar = (this && this.__importStar) || (function () {
25
- var ownKeys = function(o) {
26
- ownKeys = Object.getOwnPropertyNames || function (o) {
27
- var ar = [];
28
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
- return ar;
30
- };
31
- return ownKeys(o);
32
- };
33
- return function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- })();
41
- var __metadata = (this && this.__metadata) || function (k, v) {
42
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
43
- };
44
- var AgentSyncFs_1;
45
- Object.defineProperty(exports, "__esModule", { value: true });
46
- exports.AgentSyncFs = void 0;
47
- const Trace_1 = require("../util/Trace");
48
- const fs_1 = require("fs");
49
- const path = __importStar(require("path"));
50
- const fs_2 = require("fs");
51
- let AgentSyncFs = class AgentSyncFs {
52
- static { AgentSyncFs_1 = this; }
53
- static sharedCleanupInterval = null;
54
- static sharedBasePath = ".knowhow/processes/agents";
55
- static cleanupStarted = false;
56
- taskId;
57
- basePath = ".knowhow/processes/agents";
58
- taskPath;
59
- eventHandlersSetup = false;
60
- watcher = null;
61
- lastInputContent = "";
62
- finalizationPromise = null;
63
- agent;
64
- threadUpdateHandler;
65
- doneHandler;
66
- tokenUsageHandler;
67
- pendingThreadUpdatePromise = null;
68
- constructor() {
69
- AgentSyncFs_1.startSharedCleanupProcess();
70
- }
71
- async createTask(options) {
72
- this.taskId = options.taskId;
73
- this.taskPath = path.join(this.basePath, this.taskId);
74
- try {
75
- await fs_1.promises.mkdir(this.taskPath, { recursive: true });
76
- await this.writeStatus("running");
77
- await this.writeInput("");
78
- await this.writeMetadata({
79
- taskId: this.taskId,
80
- pid: process.pid,
81
- prompt: options.prompt,
82
- agentName: options.agentName || "unknown",
83
- ...(options.parentTaskId ? { parentTaskId: options.parentTaskId } : {}),
84
- startTime: new Date().toISOString(),
85
- status: "running",
86
- });
87
- console.log(`โœ… Created filesystem sync at: ${this.taskPath}`);
88
- return this.taskId;
89
- }
90
- catch (error) {
91
- console.error(`โŒ Failed to create filesystem sync:`, error);
92
- throw error;
93
- }
94
- }
95
- static async cleanupOldManagedProcessDirs(maxAgeMs) {
96
- try {
97
- const processesPath = path.dirname(AgentSyncFs_1.sharedBasePath);
98
- try {
99
- await fs_1.promises.access(processesPath);
100
- }
101
- catch {
102
- return;
103
- }
104
- const entries = await fs_1.promises.readdir(processesPath, { withFileTypes: true });
105
- const now = Date.now();
106
- for (const entry of entries) {
107
- if (!entry.isDirectory())
108
- continue;
109
- const dirPath = path.join(processesPath, entry.name);
110
- const statusPath = path.join(dirPath, "status.json");
111
- try {
112
- await fs_1.promises.access(statusPath);
113
- const stats = await fs_1.promises.stat(dirPath);
114
- const age = now - stats.mtimeMs;
115
- if (age > maxAgeMs) {
116
- console.log(`๐Ÿงน Cleaning up old process directory: ${entry.name}`);
117
- await fs_1.promises.rm(dirPath, { recursive: true, force: true });
118
- }
119
- }
120
- catch {
121
- }
122
- }
123
- }
124
- catch (error) {
125
- console.error(`โŒ Error during managed process dir cleanup:`, error);
126
- }
127
- }
128
- async writeStatus(status) {
129
- if (!this.taskPath)
130
- return;
131
- try {
132
- const statusPath = path.join(this.taskPath, "status.txt");
133
- await fs_1.promises.writeFile(statusPath, status, "utf8");
134
- }
135
- catch (error) {
136
- console.error(`โŒ Failed to write status:`, error);
137
- }
138
- }
139
- async writeInput(content) {
140
- if (!this.taskPath)
141
- return;
142
- try {
143
- const inputPath = path.join(this.taskPath, "input.txt");
144
- await fs_1.promises.writeFile(inputPath, content, "utf8");
145
- this.lastInputContent = content;
146
- }
147
- catch (error) {
148
- console.error(`โŒ Failed to write input:`, error);
149
- }
150
- }
151
- async writeMetadata(data) {
152
- if (!this.taskPath)
153
- return;
154
- try {
155
- const metadataPath = path.join(this.taskPath, "metadata.json");
156
- let existing = {};
157
- try {
158
- existing = JSON.parse(await fs_1.promises.readFile(metadataPath, "utf8"));
159
- }
160
- catch { }
161
- await fs_1.promises.writeFile(metadataPath, JSON.stringify({ ...existing, ...data }, null, 2), "utf8");
162
- }
163
- catch (error) {
164
- console.error(`โŒ Failed to write metadata:`, error);
165
- }
166
- }
167
- static async persistRemoteIdentity(taskId, remoteTaskId, remoteMessageId) {
168
- const taskPath = path.join(AgentSyncFs_1.sharedBasePath, taskId);
169
- await AgentSyncFs_1.writeRemoteIdentity(taskPath, remoteTaskId, remoteMessageId);
170
- }
171
- async setRemoteIdentity(remoteTaskId, remoteMessageId) {
172
- if (!this.taskPath)
173
- return;
174
- await AgentSyncFs_1.writeRemoteIdentity(this.taskPath, remoteTaskId, remoteMessageId);
175
- }
176
- static async writeRemoteIdentity(taskPath, remoteTaskId, remoteMessageId) {
177
- try {
178
- const metadataPath = path.join(taskPath, "metadata.json");
179
- let metadata = {};
180
- try {
181
- metadata = JSON.parse(await fs_1.promises.readFile(metadataPath, "utf8"));
182
- }
183
- catch {
184
- }
185
- metadata.remoteTaskId = remoteTaskId;
186
- metadata.knowhowTaskId = remoteTaskId;
187
- if (remoteMessageId) {
188
- metadata.remoteMessageId = remoteMessageId;
189
- metadata.knowhowMessageId = remoteMessageId;
190
- }
191
- await fs_1.promises.writeFile(metadataPath, JSON.stringify(metadata, null, 2), "utf8");
192
- }
193
- catch (error) {
194
- console.error(`โŒ Failed to persist remote task identity:`, error);
195
- }
196
- }
197
- async appendUsageEntry(entry) {
198
- if (!this.taskPath)
199
- return;
200
- try {
201
- const usagePath = path.join(this.taskPath, "usage.json");
202
- let entries = [];
203
- try {
204
- const existingData = await fs_1.promises.readFile(usagePath, "utf8");
205
- entries = JSON.parse(existingData);
206
- }
207
- catch {
208
- }
209
- if (entries.length > 0) {
210
- const lastEntry = entries[entries.length - 1];
211
- const prevMessages = lastEntry?.messages;
212
- const newMessages = entry?.messages;
213
- if (Array.isArray(prevMessages) &&
214
- Array.isArray(newMessages) &&
215
- prevMessages.length > 0 &&
216
- newMessages.length >= prevMessages.length &&
217
- JSON.stringify(newMessages.slice(0, prevMessages.length)) ===
218
- JSON.stringify(prevMessages)) {
219
- lastEntry.messages = [{ PREV_CACHE_HIT: true }];
220
- }
221
- }
222
- entries.push(entry);
223
- await fs_1.promises.writeFile(usagePath, JSON.stringify(entries, null, 2), "utf8");
224
- }
225
- catch (error) {
226
- console.error(`โŒ Failed to append usage entry:`, error);
227
- }
228
- }
229
- async updateMetadata(agent, inProgress, result) {
230
- if (!this.taskPath)
231
- return;
232
- try {
233
- const metadataPath = path.join(this.taskPath, "metadata.json");
234
- let metadata = {};
235
- try {
236
- const existingData = await fs_1.promises.readFile(metadataPath, "utf8");
237
- metadata = JSON.parse(existingData);
238
- }
239
- catch {
240
- }
241
- metadata.threads = agent.getThreads();
242
- metadata.totalCostUsd = agent.getTotalCostUsd();
243
- metadata.tokenUsage = agent.getTokenUsage();
244
- metadata.agentName = agent.name;
245
- metadata.model = agent.getModel();
246
- metadata.provider = agent.getProvider();
247
- metadata.reasoningEffort = agent.getReasoningEffort?.();
248
- metadata.summarizeReasoning = agent.getSummarizeReasoning?.();
249
- metadata.enabledTools = agent.getEnabledToolNames();
250
- metadata.inProgress = inProgress;
251
- metadata.lastUpdate = new Date().toISOString();
252
- if (result !== undefined) {
253
- metadata.result = result;
254
- metadata.status = "completed";
255
- await this.writeStatus("completed");
256
- }
257
- await fs_1.promises.writeFile(metadataPath, JSON.stringify(metadata, null, 2), "utf8");
258
- }
259
- catch (error) {
260
- console.error(`โŒ Failed to update metadata:`, error);
261
- }
262
- }
263
- async readStatus() {
264
- if (!this.taskPath)
265
- return null;
266
- try {
267
- const statusPath = path.join(this.taskPath, "status.txt");
268
- const content = await fs_1.promises.readFile(statusPath, "utf8");
269
- return content.trim();
270
- }
271
- catch (error) {
272
- return null;
273
- }
274
- }
275
- async readInput() {
276
- if (!this.taskPath)
277
- return null;
278
- try {
279
- const inputPath = path.join(this.taskPath, "input.txt");
280
- const content = await fs_1.promises.readFile(inputPath, "utf8");
281
- return content;
282
- }
283
- catch (error) {
284
- return null;
285
- }
286
- }
287
- async checkForChanges(agent) {
288
- if (!this.taskPath)
289
- return;
290
- try {
291
- const status = await this.readStatus();
292
- if (status === "paused") {
293
- console.log(`โธ๏ธ Agent task ${this.taskId} paused via filesystem`);
294
- await agent.pause();
295
- await this.waitForResume(agent);
296
- }
297
- else if (status === "killed") {
298
- console.log(`๐Ÿ›‘ Agent task ${this.taskId} killed via filesystem`);
299
- await agent.kill();
300
- }
301
- const input = await this.readInput();
302
- if (input && input !== this.lastInputContent && input.trim() !== "") {
303
- console.log(`๐Ÿ“ฌ New message received via filesystem for task ${this.taskId}`);
304
- this.lastInputContent = input;
305
- if (input.trim().startsWith("/")) {
306
- await this.handleInputCommand(agent, input.trim());
307
- }
308
- else {
309
- agent.addPendingUserMessage({
310
- role: "user",
311
- content: input,
312
- });
313
- }
314
- await this.writeInput("");
315
- }
316
- }
317
- catch (error) {
318
- console.error(`โŒ Error checking for changes:`, error);
319
- }
320
- }
321
- async handleInputCommand(agent, input) {
322
- const [command, ...rest] = input.split(" ");
323
- const message = rest.join(" ").trim() || undefined;
324
- if (command === "/poke") {
325
- console.log(`๐Ÿซต Received /poke command for task ${this.taskId}`);
326
- agent.interrupt(message);
327
- }
328
- else {
329
- console.warn(`โš ๏ธ Unknown command "${command}", treating as message`);
330
- agent.addPendingUserMessage({ role: "user", content: input });
331
- }
332
- }
333
- async waitForResume(agent) {
334
- const POLL_INTERVAL_MS = 2000;
335
- const MAX_WAIT_MS = 60 * 60 * 1000;
336
- const startTime = Date.now();
337
- while (Date.now() - startTime < MAX_WAIT_MS) {
338
- await new Promise((resolve) => setTimeout(resolve, POLL_INTERVAL_MS));
339
- const status = await this.readStatus();
340
- if (status === "killed") {
341
- console.log(`๐Ÿ›‘ Agent task ${this.taskId} killed while paused`);
342
- await agent.kill();
343
- return;
344
- }
345
- if (status === "running") {
346
- console.log(`โ–ถ๏ธ Agent task ${this.taskId} resumed`);
347
- await agent.unpause();
348
- return;
349
- }
350
- }
351
- console.warn(`โš ๏ธ Timeout waiting for resume on task ${this.taskId}`);
352
- }
353
- setupFileWatcher(agent) {
354
- if (!this.taskPath || this.watcher)
355
- return;
356
- try {
357
- this.watcher = (0, fs_2.watch)(this.taskPath, async (eventType, filename) => {
358
- if (filename === "status.txt" || filename === "input.txt") {
359
- await this.checkForChanges(agent);
360
- }
361
- });
362
- console.log(`๐Ÿ‘๏ธ Watching filesystem at: ${this.taskPath}`);
363
- }
364
- catch (error) {
365
- console.error(`โŒ Failed to setup file watcher:`, error);
366
- }
367
- }
368
- async setupAgentSync(agent, taskId) {
369
- if (!taskId)
370
- return;
371
- this.taskId = taskId;
372
- this.taskPath = path.join(this.basePath, this.taskId);
373
- try {
374
- await fs_1.promises.mkdir(this.taskPath, { recursive: true });
375
- }
376
- catch (error) {
377
- }
378
- if (!this.eventHandlersSetup) {
379
- this.setupEventHandlers(agent);
380
- this.setupFileWatcher(agent);
381
- this.eventHandlersSetup = true;
382
- }
383
- }
384
- setupEventHandlers(agent) {
385
- this.agent = agent;
386
- this.threadUpdateHandler = async () => {
387
- if (!this.taskId)
388
- return;
389
- try {
390
- this.pendingThreadUpdatePromise = (async () => {
391
- await this.updateMetadata(agent, true);
392
- await this.checkForChanges(agent);
393
- })();
394
- await this.pendingThreadUpdatePromise;
395
- }
396
- catch (error) {
397
- console.error(`โŒ Error during threadUpdate sync:`, error);
398
- }
399
- };
400
- agent.agentEvents.on(agent.eventTypes.threadUpdate, this.threadUpdateHandler);
401
- this.tokenUsageHandler = (usage) => {
402
- this.appendUsageEntry(usage).catch((error) => {
403
- console.error(`โŒ Error recording token usage:`, error);
404
- });
405
- };
406
- agent.agentEvents.on(agent.eventTypes.tokenUsage, this.tokenUsageHandler);
407
- this.doneHandler = (result) => {
408
- if (!this.taskId) {
409
- console.warn(`โš ๏ธ [AgentSyncFs] Cannot finalize: taskId=${this.taskId}`);
410
- return;
411
- }
412
- console.log(`๐ŸŽฏ [AgentSyncFs] Done event received for task: ${this.taskId}`);
413
- this.finalizationPromise = (async () => {
414
- try {
415
- if (this.pendingThreadUpdatePromise) {
416
- console.log(`โณ [AgentSyncFs] Awaiting pending thread update before finalizing...`);
417
- await this.pendingThreadUpdatePromise.catch(() => {
418
- });
419
- this.pendingThreadUpdatePromise = null;
420
- }
421
- await this.updateMetadata(agent, false, result);
422
- console.log(`โœ… Completed filesystem sync for task: ${this.taskId}`);
423
- await this.cleanup();
424
- }
425
- catch (error) {
426
- console.error(`โŒ Error finalizing task:`, error);
427
- throw error;
428
- }
429
- })();
430
- };
431
- agent.agentEvents.on(agent.eventTypes.done, this.doneHandler);
432
- }
433
- async waitForFinalization() {
434
- if (this.finalizationPromise) {
435
- await this.finalizationPromise;
436
- }
437
- }
438
- async cleanup() {
439
- if (this.watcher) {
440
- this.watcher.close();
441
- this.watcher = null;
442
- }
443
- }
444
- static async cleanupOldTasks() {
445
- try {
446
- const agentsPath = AgentSyncFs_1.sharedBasePath;
447
- try {
448
- await fs_1.promises.access(agentsPath);
449
- }
450
- catch {
451
- return;
452
- }
453
- const entries = await fs_1.promises.readdir(agentsPath, { withFileTypes: true });
454
- const now = Date.now();
455
- const threeDaysMs = 3 * 24 * 60 * 60 * 1000;
456
- for (const entry of entries) {
457
- if (!entry.isDirectory())
458
- continue;
459
- const taskPath = path.join(agentsPath, entry.name);
460
- try {
461
- const stats = await fs_1.promises.stat(taskPath);
462
- const age = now - stats.mtimeMs;
463
- if (age > threeDaysMs) {
464
- console.log(`๐Ÿงน Cleaning up old task directory: ${entry.name}`);
465
- await fs_1.promises.rm(taskPath, { recursive: true, force: true });
466
- }
467
- }
468
- catch (error) {
469
- console.error(`โŒ Error cleaning up ${entry.name}:`, error);
470
- }
471
- }
472
- await AgentSyncFs_1.cleanupOldProcessLogs(threeDaysMs);
473
- await AgentSyncFs_1.cleanupOldManagedProcessDirs(threeDaysMs);
474
- }
475
- catch (error) {
476
- console.error(`โŒ Error during cleanup:`, error);
477
- }
478
- }
479
- static async cleanupOldProcessLogs(maxAgeMs) {
480
- try {
481
- const processesPath = path.dirname(AgentSyncFs_1.sharedBasePath);
482
- try {
483
- await fs_1.promises.access(processesPath);
484
- }
485
- catch {
486
- return;
487
- }
488
- const entries = await fs_1.promises.readdir(processesPath, { withFileTypes: true });
489
- const now = Date.now();
490
- for (const entry of entries) {
491
- if (!entry.isFile() || !entry.name.endsWith(".txt"))
492
- continue;
493
- const logPath = path.join(processesPath, entry.name);
494
- try {
495
- const stats = await fs_1.promises.stat(logPath);
496
- const age = now - stats.mtimeMs;
497
- if (age > maxAgeMs) {
498
- console.log(`๐Ÿงน Cleaning up old process log file: ${entry.name}`);
499
- await fs_1.promises.rm(logPath, { force: true });
500
- }
501
- }
502
- catch (error) {
503
- console.error(`โŒ Error cleaning up log ${entry.name}:`, error);
504
- }
505
- }
506
- }
507
- catch (error) {
508
- console.error(`โŒ Error during process log cleanup:`, error);
509
- }
510
- }
511
- static startSharedCleanupProcess() {
512
- if (AgentSyncFs_1.cleanupStarted)
513
- return;
514
- AgentSyncFs_1.cleanupStarted = true;
515
- AgentSyncFs_1.sharedCleanupInterval = setInterval(() => {
516
- AgentSyncFs_1.cleanupOldTasks();
517
- }, 60 * 60 * 1000);
518
- AgentSyncFs_1.cleanupOldTasks();
519
- }
520
- stopCleanup() {
521
- if (AgentSyncFs_1.sharedCleanupInterval) {
522
- clearInterval(AgentSyncFs_1.sharedCleanupInterval);
523
- AgentSyncFs_1.sharedCleanupInterval = null;
524
- AgentSyncFs_1.cleanupStarted = false;
525
- }
526
- }
527
- reset() {
528
- if (this.agent) {
529
- if (this.threadUpdateHandler) {
530
- this.agent.agentEvents.removeListener(this.agent.eventTypes.threadUpdate, this.threadUpdateHandler);
531
- this.threadUpdateHandler = undefined;
532
- }
533
- if (this.tokenUsageHandler) {
534
- this.agent.agentEvents.removeListener(this.agent.eventTypes.tokenUsage, this.tokenUsageHandler);
535
- this.tokenUsageHandler = undefined;
536
- }
537
- if (this.doneHandler) {
538
- this.agent.agentEvents.removeListener(this.agent.eventTypes.done, this.doneHandler);
539
- this.doneHandler = undefined;
540
- }
541
- this.agent = undefined;
542
- }
543
- this.cleanup();
544
- this.taskId = undefined;
545
- this.taskPath = undefined;
546
- this.eventHandlersSetup = false;
547
- this.lastInputContent = "";
548
- this.finalizationPromise = null;
549
- this.pendingThreadUpdatePromise = null;
550
- }
551
- };
552
- exports.AgentSyncFs = AgentSyncFs;
553
- exports.AgentSyncFs = AgentSyncFs = AgentSyncFs_1 = __decorate([
554
- (0, Trace_1.TraceAll)(),
555
- __metadata("design:paramtypes", [])
556
- ], AgentSyncFs);
557
- //# sourceMappingURL=AgentSyncFs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AgentSyncFs.js","sourceRoot":"","sources":["../../../src/services/AgentSyncFs.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- import { KnowhowSimpleClient } from "./KnowhowClient";
2
- import { BaseAgent } from "../agents/base/base";
3
- export interface SyncOptions {
4
- messageId?: string;
5
- syncRemote?: boolean;
6
- prompt: string;
7
- }
8
- export interface TaskSyncState {
9
- knowhowTaskId?: string;
10
- client: KnowhowSimpleClient;
11
- messageId?: string;
12
- }
13
- export declare class AgentSyncKnowhowWeb {
14
- private client;
15
- private baseUrl;
16
- private knowhowTaskId;
17
- private eventHandlersSetup;
18
- private finalizationPromise;
19
- private agent;
20
- private threadUpdateHandler;
21
- private doneHandler;
22
- private syncErrorLogged;
23
- private pendingThreadUpdatePromise;
24
- constructor(baseUrl?: string);
25
- private reportSyncErrorOnce;
26
- createChatTask(options: SyncOptions): Promise<string | undefined>;
27
- updateChatTask(knowhowTaskId: string, agent: BaseAgent, inProgress: boolean, result?: string): Promise<void>;
28
- checkAndProcessPendingMessages(agent: BaseAgent, knowhowTaskId: string): Promise<void>;
29
- private handleMessageCommand;
30
- private waitForResume;
31
- setupAgentSync(agent: BaseAgent, knowhowTaskId?: string): Promise<void>;
32
- private setupEventHandlers;
33
- waitForFinalization(): Promise<void>;
34
- reset(): void;
35
- finalizeTask(agent: BaseAgent, knowhowTaskId: string | undefined, result: string): Promise<void>;
36
- }