@tonycasey/lisa 2.2.0 → 2.11.5

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 (413) hide show
  1. package/dist/lib/application/handlers/PromptSubmitHandler.d.ts +22 -12
  2. package/dist/lib/application/handlers/PromptSubmitHandler.d.ts.map +1 -1
  3. package/dist/lib/application/handlers/PromptSubmitHandler.js +36 -13
  4. package/dist/lib/application/handlers/PromptSubmitHandler.js.map +1 -1
  5. package/dist/lib/application/handlers/SessionStartHandler.d.ts +58 -5
  6. package/dist/lib/application/handlers/SessionStartHandler.d.ts.map +1 -1
  7. package/dist/lib/application/handlers/SessionStartHandler.js +259 -44
  8. package/dist/lib/application/handlers/SessionStartHandler.js.map +1 -1
  9. package/dist/lib/application/handlers/SessionStopHandler.d.ts +29 -5
  10. package/dist/lib/application/handlers/SessionStopHandler.d.ts.map +1 -1
  11. package/dist/lib/application/handlers/SessionStopHandler.js +83 -11
  12. package/dist/lib/application/handlers/SessionStopHandler.js.map +1 -1
  13. package/dist/lib/application/handlers/index.d.ts +1 -0
  14. package/dist/lib/application/handlers/index.d.ts.map +1 -1
  15. package/dist/lib/application/handlers/index.js +13 -1
  16. package/dist/lib/application/handlers/index.js.map +1 -1
  17. package/dist/lib/application/handlers/pr/PrAddressHandler.d.ts +103 -0
  18. package/dist/lib/application/handlers/pr/PrAddressHandler.d.ts.map +1 -0
  19. package/dist/lib/application/handlers/pr/PrAddressHandler.js +354 -0
  20. package/dist/lib/application/handlers/pr/PrAddressHandler.js.map +1 -0
  21. package/dist/lib/application/handlers/pr/PrChecksHandler.d.ts +64 -0
  22. package/dist/lib/application/handlers/pr/PrChecksHandler.d.ts.map +1 -0
  23. package/dist/lib/application/handlers/pr/PrChecksHandler.js +154 -0
  24. package/dist/lib/application/handlers/pr/PrChecksHandler.js.map +1 -0
  25. package/dist/lib/application/handlers/pr/PrCommentsHandler.d.ts +81 -0
  26. package/dist/lib/application/handlers/pr/PrCommentsHandler.d.ts.map +1 -0
  27. package/dist/lib/application/handlers/pr/PrCommentsHandler.js +184 -0
  28. package/dist/lib/application/handlers/pr/PrCommentsHandler.js.map +1 -0
  29. package/dist/lib/application/handlers/pr/PrCreateHandler.d.ts +78 -0
  30. package/dist/lib/application/handlers/pr/PrCreateHandler.d.ts.map +1 -0
  31. package/dist/lib/application/handlers/pr/PrCreateHandler.js +230 -0
  32. package/dist/lib/application/handlers/pr/PrCreateHandler.js.map +1 -0
  33. package/dist/lib/application/handlers/pr/PrLinkHandler.d.ts +75 -0
  34. package/dist/lib/application/handlers/pr/PrLinkHandler.d.ts.map +1 -0
  35. package/dist/lib/application/handlers/pr/PrLinkHandler.js +151 -0
  36. package/dist/lib/application/handlers/pr/PrLinkHandler.js.map +1 -0
  37. package/dist/lib/application/handlers/pr/PrPollHandler.d.ts +161 -0
  38. package/dist/lib/application/handlers/pr/PrPollHandler.d.ts.map +1 -0
  39. package/dist/lib/application/handlers/pr/PrPollHandler.js +674 -0
  40. package/dist/lib/application/handlers/pr/PrPollHandler.js.map +1 -0
  41. package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts +55 -0
  42. package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts.map +1 -0
  43. package/dist/lib/application/handlers/pr/PrRememberHandler.js +75 -0
  44. package/dist/lib/application/handlers/pr/PrRememberHandler.js.map +1 -0
  45. package/dist/lib/application/handlers/pr/PrReviewHandler.d.ts +103 -0
  46. package/dist/lib/application/handlers/pr/PrReviewHandler.d.ts.map +1 -0
  47. package/dist/lib/application/handlers/pr/PrReviewHandler.js +334 -0
  48. package/dist/lib/application/handlers/pr/PrReviewHandler.js.map +1 -0
  49. package/dist/lib/application/handlers/pr/PrStatusHandler.d.ts +150 -0
  50. package/dist/lib/application/handlers/pr/PrStatusHandler.d.ts.map +1 -0
  51. package/dist/lib/application/handlers/pr/PrStatusHandler.js +389 -0
  52. package/dist/lib/application/handlers/pr/PrStatusHandler.js.map +1 -0
  53. package/dist/lib/application/handlers/pr/PrWatchHandler.d.ts +77 -0
  54. package/dist/lib/application/handlers/pr/PrWatchHandler.d.ts.map +1 -0
  55. package/dist/lib/application/handlers/pr/PrWatchHandler.js +174 -0
  56. package/dist/lib/application/handlers/pr/PrWatchHandler.js.map +1 -0
  57. package/dist/lib/application/handlers/pr/index.d.ts +25 -0
  58. package/dist/lib/application/handlers/pr/index.d.ts.map +1 -0
  59. package/dist/lib/application/handlers/pr/index.js +38 -0
  60. package/dist/lib/application/handlers/pr/index.js.map +1 -0
  61. package/dist/lib/application/interfaces/index.d.ts +1 -0
  62. package/dist/lib/application/interfaces/index.d.ts.map +1 -1
  63. package/dist/lib/application/mediator/IMediator.d.ts +73 -0
  64. package/dist/lib/application/mediator/IMediator.d.ts.map +1 -0
  65. package/dist/lib/application/mediator/IMediator.js +12 -0
  66. package/dist/lib/application/mediator/IMediator.js.map +1 -0
  67. package/dist/lib/application/mediator/Mediator.d.ts +29 -0
  68. package/dist/lib/application/mediator/Mediator.d.ts.map +1 -0
  69. package/dist/lib/application/mediator/Mediator.js +53 -0
  70. package/dist/lib/application/mediator/Mediator.js.map +1 -0
  71. package/dist/lib/application/mediator/index.d.ts +10 -0
  72. package/dist/lib/application/mediator/index.d.ts.map +1 -0
  73. package/dist/lib/application/mediator/index.js +18 -0
  74. package/dist/lib/application/mediator/index.js.map +1 -0
  75. package/dist/lib/application/mediator/requests/PromptSubmitRequest.d.ts +60 -0
  76. package/dist/lib/application/mediator/requests/PromptSubmitRequest.d.ts.map +1 -0
  77. package/dist/lib/application/mediator/requests/PromptSubmitRequest.js +35 -0
  78. package/dist/lib/application/mediator/requests/PromptSubmitRequest.js.map +1 -0
  79. package/dist/lib/application/mediator/requests/SessionStartRequest.d.ts +36 -0
  80. package/dist/lib/application/mediator/requests/SessionStartRequest.d.ts.map +1 -0
  81. package/dist/lib/application/mediator/requests/SessionStartRequest.js +32 -0
  82. package/dist/lib/application/mediator/requests/SessionStartRequest.js.map +1 -0
  83. package/dist/lib/application/mediator/requests/SessionStopRequest.d.ts +67 -0
  84. package/dist/lib/application/mediator/requests/SessionStopRequest.d.ts.map +1 -0
  85. package/dist/lib/application/mediator/requests/SessionStopRequest.js +35 -0
  86. package/dist/lib/application/mediator/requests/SessionStopRequest.js.map +1 -0
  87. package/dist/lib/application/mediator/requests/index.d.ts +9 -0
  88. package/dist/lib/application/mediator/requests/index.d.ts.map +1 -0
  89. package/dist/lib/application/mediator/requests/index.js +13 -0
  90. package/dist/lib/application/mediator/requests/index.js.map +1 -0
  91. package/dist/lib/cli.d.ts +2 -44
  92. package/dist/lib/cli.d.ts.map +1 -1
  93. package/dist/lib/cli.js +1380 -597
  94. package/dist/lib/cli.js.map +1 -1
  95. package/dist/lib/commands/docker.d.ts +20 -0
  96. package/dist/lib/commands/docker.d.ts.map +1 -0
  97. package/dist/lib/commands/docker.js +27 -0
  98. package/dist/lib/commands/docker.js.map +1 -0
  99. package/dist/lib/commands/doctor.d.ts +94 -0
  100. package/dist/lib/commands/doctor.d.ts.map +1 -0
  101. package/dist/lib/commands/doctor.js +716 -0
  102. package/dist/lib/commands/doctor.js.map +1 -0
  103. package/dist/lib/commands/index.d.ts +10 -0
  104. package/dist/lib/commands/index.d.ts.map +1 -0
  105. package/dist/lib/commands/index.js +31 -0
  106. package/dist/lib/commands/index.js.map +1 -0
  107. package/dist/lib/commands/init.d.ts +37 -0
  108. package/dist/lib/commands/init.d.ts.map +1 -0
  109. package/dist/lib/commands/init.js +589 -0
  110. package/dist/lib/commands/init.js.map +1 -0
  111. package/dist/lib/commands/shared/constants.d.ts +27 -0
  112. package/dist/lib/commands/shared/constants.d.ts.map +1 -0
  113. package/dist/lib/commands/shared/constants.js +46 -0
  114. package/dist/lib/commands/shared/constants.js.map +1 -0
  115. package/dist/lib/commands/shared/index.d.ts +5 -0
  116. package/dist/lib/commands/shared/index.d.ts.map +1 -0
  117. package/dist/lib/commands/shared/index.js +15 -0
  118. package/dist/lib/commands/shared/index.js.map +1 -0
  119. package/dist/lib/domain/index.d.ts +4 -2
  120. package/dist/lib/domain/index.d.ts.map +1 -1
  121. package/dist/lib/domain/index.js +5 -2
  122. package/dist/lib/domain/index.js.map +1 -1
  123. package/dist/lib/domain/interfaces/ICronService.d.ts +100 -0
  124. package/dist/lib/domain/interfaces/ICronService.d.ts.map +1 -0
  125. package/dist/lib/domain/interfaces/ICronService.js +9 -0
  126. package/dist/lib/domain/interfaces/ICronService.js.map +1 -0
  127. package/dist/lib/domain/interfaces/ILabelInference.d.ts +62 -0
  128. package/dist/lib/domain/interfaces/ILabelInference.d.ts.map +1 -0
  129. package/dist/lib/domain/interfaces/ILabelInference.js +11 -0
  130. package/dist/lib/domain/interfaces/ILabelInference.js.map +1 -0
  131. package/dist/lib/domain/interfaces/ILisaServices.d.ts +6 -0
  132. package/dist/lib/domain/interfaces/ILisaServices.d.ts.map +1 -1
  133. package/dist/lib/domain/interfaces/IMcpClient.d.ts +15 -2
  134. package/dist/lib/domain/interfaces/IMcpClient.d.ts.map +1 -1
  135. package/dist/lib/domain/interfaces/IMemoryService.d.ts +11 -1
  136. package/dist/lib/domain/interfaces/IMemoryService.d.ts.map +1 -1
  137. package/dist/lib/domain/interfaces/INotificationService.d.ts +81 -0
  138. package/dist/lib/domain/interfaces/INotificationService.d.ts.map +1 -0
  139. package/dist/lib/domain/interfaces/INotificationService.js +9 -0
  140. package/dist/lib/domain/interfaces/INotificationService.js.map +1 -0
  141. package/dist/lib/domain/interfaces/ISessionCaptureService.d.ts +2 -1
  142. package/dist/lib/domain/interfaces/ISessionCaptureService.d.ts.map +1 -1
  143. package/dist/lib/domain/interfaces/IStructuredLog.d.ts +162 -0
  144. package/dist/lib/domain/interfaces/IStructuredLog.d.ts.map +1 -0
  145. package/dist/lib/domain/interfaces/IStructuredLog.js +85 -0
  146. package/dist/lib/domain/interfaces/IStructuredLog.js.map +1 -0
  147. package/dist/lib/domain/interfaces/dal/IGithubClient.d.ts +42 -0
  148. package/dist/lib/domain/interfaces/dal/IGithubClient.d.ts.map +1 -0
  149. package/dist/lib/domain/interfaces/dal/IGithubClient.js +12 -0
  150. package/dist/lib/domain/interfaces/dal/IGithubClient.js.map +1 -0
  151. package/dist/lib/domain/interfaces/dal/IPullRequestRepository.d.ts +124 -0
  152. package/dist/lib/domain/interfaces/dal/IPullRequestRepository.d.ts.map +1 -0
  153. package/dist/lib/domain/interfaces/dal/IPullRequestRepository.js +13 -0
  154. package/dist/lib/domain/interfaces/dal/IPullRequestRepository.js.map +1 -0
  155. package/dist/lib/domain/interfaces/dal/index.d.ts +2 -0
  156. package/dist/lib/domain/interfaces/dal/index.d.ts.map +1 -1
  157. package/dist/lib/domain/interfaces/dal/index.js.map +1 -1
  158. package/dist/lib/domain/interfaces/index.d.ts +5 -1
  159. package/dist/lib/domain/interfaces/index.d.ts.map +1 -1
  160. package/dist/lib/domain/interfaces/index.js +6 -0
  161. package/dist/lib/domain/interfaces/index.js.map +1 -1
  162. package/dist/lib/domain/interfaces/types/IPullRequest.d.ts +120 -0
  163. package/dist/lib/domain/interfaces/types/IPullRequest.d.ts.map +1 -0
  164. package/dist/lib/domain/interfaces/types/IPullRequest.js +42 -0
  165. package/dist/lib/domain/interfaces/types/IPullRequest.js.map +1 -0
  166. package/dist/lib/domain/interfaces/types/ITask.d.ts +16 -0
  167. package/dist/lib/domain/interfaces/types/ITask.d.ts.map +1 -1
  168. package/dist/lib/domain/interfaces/types/ITask.js.map +1 -1
  169. package/dist/lib/domain/interfaces/types/index.d.ts +1 -0
  170. package/dist/lib/domain/interfaces/types/index.d.ts.map +1 -1
  171. package/dist/lib/domain/interfaces/types/index.js +4 -1
  172. package/dist/lib/domain/interfaces/types/index.js.map +1 -1
  173. package/dist/lib/domain/utils/cancellation.d.ts +111 -0
  174. package/dist/lib/domain/utils/cancellation.d.ts.map +1 -0
  175. package/dist/lib/domain/utils/cancellation.js +168 -0
  176. package/dist/lib/domain/utils/cancellation.js.map +1 -0
  177. package/dist/lib/domain/utils/index.d.ts +8 -0
  178. package/dist/lib/domain/utils/index.d.ts.map +1 -0
  179. package/dist/lib/domain/utils/index.js +16 -0
  180. package/dist/lib/domain/utils/index.js.map +1 -0
  181. package/dist/lib/infrastructure/adapters/claude/session-start.d.ts +1 -1
  182. package/dist/lib/infrastructure/adapters/claude/session-start.js +9 -11
  183. package/dist/lib/infrastructure/adapters/claude/session-start.js.map +1 -1
  184. package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts +1 -5
  185. package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts.map +1 -1
  186. package/dist/lib/infrastructure/adapters/claude/session-stop.js +12 -15
  187. package/dist/lib/infrastructure/adapters/claude/session-stop.js.map +1 -1
  188. package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.d.ts +1 -1
  189. package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.js +9 -11
  190. package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.js.map +1 -1
  191. package/dist/lib/infrastructure/adapters/opencode/plugin.d.ts +2 -2
  192. package/dist/lib/infrastructure/adapters/opencode/plugin.d.ts.map +1 -1
  193. package/dist/lib/infrastructure/adapters/opencode/plugin.js +16 -21
  194. package/dist/lib/infrastructure/adapters/opencode/plugin.js.map +1 -1
  195. package/dist/lib/infrastructure/cli/index.d.ts +8 -0
  196. package/dist/lib/infrastructure/cli/index.d.ts.map +1 -0
  197. package/dist/lib/infrastructure/cli/index.js +15 -0
  198. package/dist/lib/infrastructure/cli/index.js.map +1 -0
  199. package/dist/lib/infrastructure/cli/io.d.ts +91 -0
  200. package/dist/lib/infrastructure/cli/io.d.ts.map +1 -0
  201. package/dist/lib/infrastructure/cli/io.js +128 -0
  202. package/dist/lib/infrastructure/cli/io.js.map +1 -0
  203. package/dist/lib/infrastructure/cron/CronService.d.ts +87 -0
  204. package/dist/lib/infrastructure/cron/CronService.d.ts.map +1 -0
  205. package/dist/lib/infrastructure/cron/CronService.js +571 -0
  206. package/dist/lib/infrastructure/cron/CronService.js.map +1 -0
  207. package/dist/lib/infrastructure/cron/index.d.ts +5 -0
  208. package/dist/lib/infrastructure/cron/index.d.ts.map +1 -0
  209. package/dist/lib/infrastructure/cron/index.js +10 -0
  210. package/dist/lib/infrastructure/cron/index.js.map +1 -0
  211. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js +1 -1
  212. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js.map +1 -1
  213. package/dist/lib/infrastructure/dal/index.d.ts +1 -1
  214. package/dist/lib/infrastructure/dal/index.d.ts.map +1 -1
  215. package/dist/lib/infrastructure/dal/index.js +2 -1
  216. package/dist/lib/infrastructure/dal/index.js.map +1 -1
  217. package/dist/lib/infrastructure/dal/repositories/index.d.ts +1 -1
  218. package/dist/lib/infrastructure/dal/repositories/index.d.ts.map +1 -1
  219. package/dist/lib/infrastructure/dal/repositories/index.js +3 -2
  220. package/dist/lib/infrastructure/dal/repositories/index.js.map +1 -1
  221. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.d.ts.map +1 -1
  222. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js +6 -2
  223. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js.map +1 -1
  224. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.d.ts +54 -0
  225. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.d.ts.map +1 -0
  226. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.js +561 -0
  227. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.js.map +1 -0
  228. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts +5 -2
  229. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts.map +1 -1
  230. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js +78 -45
  231. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js.map +1 -1
  232. package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts +1 -0
  233. package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts.map +1 -1
  234. package/dist/lib/infrastructure/dal/repositories/neo4j/index.js +3 -1
  235. package/dist/lib/infrastructure/dal/repositories/neo4j/index.js.map +1 -1
  236. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.d.ts.map +1 -1
  237. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js +6 -2
  238. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js.map +1 -1
  239. package/dist/lib/infrastructure/di/Container.d.ts +72 -0
  240. package/dist/lib/infrastructure/di/Container.d.ts.map +1 -0
  241. package/dist/lib/infrastructure/di/Container.js +182 -0
  242. package/dist/lib/infrastructure/di/Container.js.map +1 -0
  243. package/dist/lib/infrastructure/di/IContainer.d.ts +87 -0
  244. package/dist/lib/infrastructure/di/IContainer.d.ts.map +1 -0
  245. package/dist/lib/infrastructure/di/IContainer.js +11 -0
  246. package/dist/lib/infrastructure/di/IContainer.js.map +1 -0
  247. package/dist/lib/infrastructure/di/ServiceFactory.d.ts +6 -0
  248. package/dist/lib/infrastructure/di/ServiceFactory.d.ts.map +1 -1
  249. package/dist/lib/infrastructure/di/ServiceFactory.js +66 -0
  250. package/dist/lib/infrastructure/di/ServiceFactory.js.map +1 -1
  251. package/dist/lib/infrastructure/di/bootstrap.d.ts +43 -0
  252. package/dist/lib/infrastructure/di/bootstrap.d.ts.map +1 -0
  253. package/dist/lib/infrastructure/di/bootstrap.js +272 -0
  254. package/dist/lib/infrastructure/di/bootstrap.js.map +1 -0
  255. package/dist/lib/infrastructure/di/index.d.ts +6 -0
  256. package/dist/lib/infrastructure/di/index.d.ts.map +1 -1
  257. package/dist/lib/infrastructure/di/index.js +15 -1
  258. package/dist/lib/infrastructure/di/index.js.map +1 -1
  259. package/dist/lib/infrastructure/di/tokens.d.ts +70 -0
  260. package/dist/lib/infrastructure/di/tokens.d.ts.map +1 -0
  261. package/dist/lib/infrastructure/di/tokens.js +58 -0
  262. package/dist/lib/infrastructure/di/tokens.js.map +1 -0
  263. package/dist/lib/infrastructure/github/GithubClient.d.ts +129 -0
  264. package/dist/lib/infrastructure/github/GithubClient.d.ts.map +1 -0
  265. package/dist/lib/infrastructure/github/GithubClient.js +549 -0
  266. package/dist/lib/infrastructure/github/GithubClient.js.map +1 -0
  267. package/dist/lib/infrastructure/github/index.d.ts +8 -0
  268. package/dist/lib/infrastructure/github/index.d.ts.map +1 -0
  269. package/dist/lib/infrastructure/github/index.js +13 -0
  270. package/dist/lib/infrastructure/github/index.js.map +1 -0
  271. package/dist/lib/infrastructure/github/types.d.ts +145 -0
  272. package/dist/lib/infrastructure/github/types.d.ts.map +1 -0
  273. package/dist/lib/infrastructure/github/types.js +25 -0
  274. package/dist/lib/infrastructure/github/types.js.map +1 -0
  275. package/dist/lib/infrastructure/index.d.ts +4 -0
  276. package/dist/lib/infrastructure/index.d.ts.map +1 -1
  277. package/dist/lib/infrastructure/index.js +8 -0
  278. package/dist/lib/infrastructure/index.js.map +1 -1
  279. package/dist/lib/infrastructure/logging/Logger.d.ts +51 -4
  280. package/dist/lib/infrastructure/logging/Logger.d.ts.map +1 -1
  281. package/dist/lib/infrastructure/logging/Logger.js +127 -2
  282. package/dist/lib/infrastructure/logging/Logger.js.map +1 -1
  283. package/dist/lib/infrastructure/mcp/McpClient.d.ts +36 -1
  284. package/dist/lib/infrastructure/mcp/McpClient.d.ts.map +1 -1
  285. package/dist/lib/infrastructure/mcp/McpClient.js +68 -2
  286. package/dist/lib/infrastructure/mcp/McpClient.js.map +1 -1
  287. package/dist/lib/infrastructure/notifications/NotificationService.d.ts +90 -0
  288. package/dist/lib/infrastructure/notifications/NotificationService.d.ts.map +1 -0
  289. package/dist/lib/infrastructure/notifications/NotificationService.js +445 -0
  290. package/dist/lib/infrastructure/notifications/NotificationService.js.map +1 -0
  291. package/dist/lib/infrastructure/notifications/index.d.ts +7 -0
  292. package/dist/lib/infrastructure/notifications/index.d.ts.map +1 -0
  293. package/dist/lib/infrastructure/notifications/index.js +12 -0
  294. package/dist/lib/infrastructure/notifications/index.js.map +1 -0
  295. package/dist/lib/infrastructure/services/LabelInferenceService.d.ts +33 -0
  296. package/dist/lib/infrastructure/services/LabelInferenceService.d.ts.map +1 -0
  297. package/dist/lib/infrastructure/services/LabelInferenceService.js +225 -0
  298. package/dist/lib/infrastructure/services/LabelInferenceService.js.map +1 -0
  299. package/dist/lib/infrastructure/services/MemoryService.d.ts +23 -2
  300. package/dist/lib/infrastructure/services/MemoryService.d.ts.map +1 -1
  301. package/dist/lib/infrastructure/services/MemoryService.js +150 -55
  302. package/dist/lib/infrastructure/services/MemoryService.js.map +1 -1
  303. package/dist/lib/infrastructure/services/SessionCaptureService.d.ts +74 -20
  304. package/dist/lib/infrastructure/services/SessionCaptureService.d.ts.map +1 -1
  305. package/dist/lib/infrastructure/services/SessionCaptureService.js +331 -22
  306. package/dist/lib/infrastructure/services/SessionCaptureService.js.map +1 -1
  307. package/dist/lib/infrastructure/services/index.d.ts +1 -0
  308. package/dist/lib/infrastructure/services/index.d.ts.map +1 -1
  309. package/dist/lib/infrastructure/services/index.js +4 -1
  310. package/dist/lib/infrastructure/services/index.js.map +1 -1
  311. package/dist/lib/infrastructure/utils/index.d.ts +10 -0
  312. package/dist/lib/infrastructure/utils/index.d.ts.map +1 -0
  313. package/dist/lib/infrastructure/utils/index.js +26 -0
  314. package/dist/lib/infrastructure/utils/index.js.map +1 -0
  315. package/dist/lib/skills/common/type-mappings.d.ts.map +1 -1
  316. package/dist/lib/skills/common/type-mappings.js +6 -0
  317. package/dist/lib/skills/common/type-mappings.js.map +1 -1
  318. package/dist/lib/skills/github/github.d.ts +27 -0
  319. package/dist/lib/skills/github/github.d.ts.map +1 -0
  320. package/dist/lib/skills/github/github.js +408 -0
  321. package/dist/lib/skills/github/github.js.map +1 -0
  322. package/dist/lib/skills/memory/memory.js +3 -1
  323. package/dist/lib/skills/memory/memory.js.map +1 -1
  324. package/dist/lib/skills/shared/clients/GhCliClient.d.ts +17 -0
  325. package/dist/lib/skills/shared/clients/GhCliClient.d.ts.map +1 -0
  326. package/dist/lib/skills/shared/clients/GhCliClient.js +244 -0
  327. package/dist/lib/skills/shared/clients/GhCliClient.js.map +1 -0
  328. package/dist/lib/skills/shared/clients/McpClient.d.ts +12 -0
  329. package/dist/lib/skills/shared/clients/McpClient.d.ts.map +1 -1
  330. package/dist/lib/skills/shared/clients/McpClient.js +121 -76
  331. package/dist/lib/skills/shared/clients/McpClient.js.map +1 -1
  332. package/dist/lib/skills/shared/clients/Neo4jClient.d.ts.map +1 -1
  333. package/dist/lib/skills/shared/clients/Neo4jClient.js +12 -1
  334. package/dist/lib/skills/shared/clients/Neo4jClient.js.map +1 -1
  335. package/dist/lib/skills/shared/clients/index.d.ts +1 -0
  336. package/dist/lib/skills/shared/clients/index.d.ts.map +1 -1
  337. package/dist/lib/skills/shared/clients/index.js +4 -1
  338. package/dist/lib/skills/shared/clients/index.js.map +1 -1
  339. package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.d.ts +56 -0
  340. package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.d.ts.map +1 -0
  341. package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.js +7 -0
  342. package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.js.map +1 -0
  343. package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts +7 -1
  344. package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts.map +1 -1
  345. package/dist/lib/skills/shared/clients/interfaces/index.d.ts +1 -0
  346. package/dist/lib/skills/shared/clients/interfaces/index.d.ts.map +1 -1
  347. package/dist/lib/skills/shared/clients/interfaces/index.js +1 -0
  348. package/dist/lib/skills/shared/clients/interfaces/index.js.map +1 -1
  349. package/dist/lib/skills/shared/services/GitHubService.d.ts +169 -0
  350. package/dist/lib/skills/shared/services/GitHubService.d.ts.map +1 -0
  351. package/dist/lib/skills/shared/services/GitHubService.js +493 -0
  352. package/dist/lib/skills/shared/services/GitHubService.js.map +1 -0
  353. package/dist/lib/skills/shared/services/GitHubSyncService.d.ts +124 -0
  354. package/dist/lib/skills/shared/services/GitHubSyncService.d.ts.map +1 -0
  355. package/dist/lib/skills/shared/services/GitHubSyncService.js +412 -0
  356. package/dist/lib/skills/shared/services/GitHubSyncService.js.map +1 -0
  357. package/dist/lib/skills/shared/services/MemoryCliService.d.ts +2 -0
  358. package/dist/lib/skills/shared/services/MemoryCliService.d.ts.map +1 -1
  359. package/dist/lib/skills/shared/services/MemoryCliService.js +19 -2
  360. package/dist/lib/skills/shared/services/MemoryCliService.js.map +1 -1
  361. package/dist/lib/skills/shared/services/MemoryService.d.ts.map +1 -1
  362. package/dist/lib/skills/shared/services/MemoryService.js +26 -7
  363. package/dist/lib/skills/shared/services/MemoryService.js.map +1 -1
  364. package/dist/lib/skills/shared/services/TaskCliService.d.ts +6 -2
  365. package/dist/lib/skills/shared/services/TaskCliService.d.ts.map +1 -1
  366. package/dist/lib/skills/shared/services/TaskCliService.js +108 -7
  367. package/dist/lib/skills/shared/services/TaskCliService.js.map +1 -1
  368. package/dist/lib/skills/shared/services/TaskService.d.ts.map +1 -1
  369. package/dist/lib/skills/shared/services/TaskService.js +272 -42
  370. package/dist/lib/skills/shared/services/TaskService.js.map +1 -1
  371. package/dist/lib/skills/shared/services/index.d.ts +2 -0
  372. package/dist/lib/skills/shared/services/index.d.ts.map +1 -1
  373. package/dist/lib/skills/shared/services/index.js +7 -1
  374. package/dist/lib/skills/shared/services/index.js.map +1 -1
  375. package/dist/lib/skills/shared/services/interfaces/IMemoryService.d.ts +9 -1
  376. package/dist/lib/skills/shared/services/interfaces/IMemoryService.d.ts.map +1 -1
  377. package/dist/lib/skills/shared/services/interfaces/ITaskService.d.ts +65 -2
  378. package/dist/lib/skills/shared/services/interfaces/ITaskService.d.ts.map +1 -1
  379. package/dist/lib/skills/shared/utils/index.d.ts +1 -0
  380. package/dist/lib/skills/shared/utils/index.d.ts.map +1 -1
  381. package/dist/lib/skills/shared/utils/index.js +9 -1
  382. package/dist/lib/skills/shared/utils/index.js.map +1 -1
  383. package/dist/lib/skills/shared/utils/issue-refs.d.ts +127 -0
  384. package/dist/lib/skills/shared/utils/issue-refs.d.ts.map +1 -0
  385. package/dist/lib/skills/shared/utils/issue-refs.js +179 -0
  386. package/dist/lib/skills/shared/utils/issue-refs.js.map +1 -0
  387. package/dist/lib/skills/tasks/tasks.d.ts +5 -2
  388. package/dist/lib/skills/tasks/tasks.d.ts.map +1 -1
  389. package/dist/lib/skills/tasks/tasks.js +10 -3
  390. package/dist/lib/skills/tasks/tasks.js.map +1 -1
  391. package/dist/lib/utils/dateParser.d.ts +50 -0
  392. package/dist/lib/utils/dateParser.d.ts.map +1 -0
  393. package/dist/lib/utils/dateParser.js +152 -0
  394. package/dist/lib/utils/dateParser.js.map +1 -0
  395. package/dist/lib/utils/index.d.ts +5 -0
  396. package/dist/lib/utils/index.d.ts.map +1 -0
  397. package/dist/lib/utils/index.js +14 -0
  398. package/dist/lib/utils/index.js.map +1 -0
  399. package/dist/opencode/lisa.js +8627 -1312
  400. package/dist/package.json +1 -1
  401. package/dist/project/.lisa/assets/lisa-toast.png +0 -0
  402. package/dist/project/.lisa/rules/shared/git-rules.md +160 -47
  403. package/dist/project/.lisa/rules/shared/memory-rules.md +125 -0
  404. package/dist/project/.lisa/rules/shared/task-rules.md +209 -0
  405. package/dist/project/.lisa/skills/github/SKILL.md +415 -0
  406. package/dist/project/.lisa/skills/lisa/SKILL.md +22 -0
  407. package/dist/project/.lisa/skills/memory/SKILL.md +3 -2
  408. package/dist/project/.lisa/skills/pr/SKILL.md +520 -0
  409. package/package.json +6 -5
  410. package/dist/hooks/session-start.js +0 -5763
  411. package/dist/hooks/session-stop.js +0 -5348
  412. package/dist/hooks/user-prompt-submit.js +0 -5406
  413. package/dist/project/.claude/config.js +0 -40
@@ -1 +1 @@
1
- {"version":3,"file":"session-start.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-start.ts"],"names":[],"mappings":";;AACA;;;;;GAKG;;AAEH,iCAAqD;AACrD,4DAAoE;AACpE,4CAA0F;AAC1F,mCAAoC;AAEpC,KAAK,UAAU,IAAI;IACjB,sCAAsC;IACtC,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,GAAE,CAAC;IACpC,MAAM,OAAO,GAAmB,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC;IAEzF,wDAAwD;IACxD,sEAAsE;IACtE,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAyB,EAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,MAAM,EAAE,aAAa;QACrB,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,IAAA,gCAAuB,EAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE3C,4DAA4D;QAC5D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEnC,wDAAwD;QACxD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACtC,IAAI,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,cAAc,SAAS,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACxG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,IAAI,YAAY,CAAC;QAC1B,CAAC;QACD,MAAM,YAAY,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,iBAAiB,YAAY,KAAK,OAAO,GAAG,CAAC,CAAC;IAC9D,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,oEAAoE;IACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IAC1B,kEAAkE;IAClE,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"session-start.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-start.ts"],"names":[],"mappings":";;AACA;;;;;GAKG;;AAEH,iCAAsD;AAEtD,qEAA6E;AAC7E,4CAAsE;AACtE,mCAAoC;AAEpC,KAAK,UAAU,IAAI;IACjB,sCAAsC;IACtC,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,GAAE,CAAC;IACpC,MAAM,OAAO,GAAmB,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC;IAEzF,8BAA8B;IAC9B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,uBAAkB,EAAC;QACtD,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAY,WAAM,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,4DAA4D;QAC5D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEnC,wDAAwD;QACxD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACtC,IAAI,OAAO,GAAG,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,cAAc,SAAS,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACxG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,IAAI,YAAY,CAAC;QAC1B,CAAC;QACD,MAAM,YAAY,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC;QAClE,OAAO,CAAC,KAAK,CAAC,iBAAiB,YAAY,KAAK,OAAO,GAAG,CAAC,CAAC;IAC9D,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,oEAAoE;IACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IAC1B,kEAAkE;IAClE,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -3,11 +3,7 @@
3
3
  * Claude Code - Session Stop Hook (Thin Adapter)
4
4
  *
5
5
  * Captures session work when Claude stops responding.
6
- * This is a thin adapter that delegates to SessionStopHandler.
7
- *
8
- * Note: The actual implementation spawns a background worker to avoid
9
- * blocking. This adapter is a placeholder that will need to integrate
10
- * with the existing worker approach.
6
+ * This is a thin adapter that delegates to SessionStopHandler via mediator.
11
7
  */
12
8
  export {};
13
9
  //# sourceMappingURL=session-stop.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-stop.d.ts","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-stop.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG"}
1
+ {"version":3,"file":"session-stop.d.ts","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-stop.ts"],"names":[],"mappings":";AACA;;;;;GAKG"}
@@ -4,33 +4,30 @@
4
4
  * Claude Code - Session Stop Hook (Thin Adapter)
5
5
  *
6
6
  * Captures session work when Claude stops responding.
7
- * This is a thin adapter that delegates to SessionStopHandler.
8
- *
9
- * Note: The actual implementation spawns a background worker to avoid
10
- * blocking. This adapter is a placeholder that will need to integrate
11
- * with the existing worker approach.
7
+ * This is a thin adapter that delegates to SessionStopHandler via mediator.
12
8
  */
13
9
  Object.defineProperty(exports, "__esModule", { value: true });
14
10
  const di_1 = require("../../di");
15
- const handlers_1 = require("../../../application/handlers");
11
+ const requests_1 = require("../../../application/mediator/requests");
16
12
  const domain_1 = require("../../../domain");
17
13
  async function main() {
18
- // Create services via DI (with cleanup for connections)
19
- // Disable pino logging to avoid worker thread issues in bundled hooks
20
- const services = await (0, di_1.createServicesWithCleanup)({
14
+ // Bootstrap container with DI
15
+ const { container, dispose } = await (0, di_1.bootstrapContainer)({
21
16
  projectRoot: process.cwd(),
22
- source: 'claude-code',
23
17
  disableLogging: true,
24
18
  });
25
19
  try {
26
- // Create handler and process event
27
- const handler = new handlers_1.SessionStopHandler(services);
28
- const event = (0, domain_1.createSessionStopEvent)('idle', (0, domain_1.toISOTimestamp)());
29
- await handler.handle(event);
20
+ // Resolve mediator and send request
21
+ const mediator = await container.resolve(di_1.TOKENS.Mediator);
22
+ const request = new requests_1.SessionStopRequest('idle', (0, domain_1.toISOTimestamp)());
23
+ const result = await mediator.send(request);
24
+ if (!result.skipped) {
25
+ console.error(`[Session captured: ${result.factsCaptured} facts]`);
26
+ }
30
27
  }
31
28
  finally {
32
29
  // Clean up connections before exiting
33
- await services.cleanup();
30
+ await dispose();
34
31
  }
35
32
  // Exit cleanly
36
33
  process.exit(0);
@@ -1 +1 @@
1
- {"version":3,"file":"session-stop.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-stop.ts"],"names":[],"mappings":";;AACA;;;;;;;;;GASG;;AAEH,iCAAqD;AACrD,4DAAmE;AACnE,4CAAyE;AAEzE,KAAK,UAAU,IAAI;IACjB,wDAAwD;IACxD,sEAAsE;IACtE,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAyB,EAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,MAAM,EAAE,aAAa;QACrB,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,6BAAkB,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAA,+BAAsB,EAAC,MAAM,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;QAE/D,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,eAAe;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IAC1B,4CAA4C;IAC5C,OAAO,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"session-stop.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/session-stop.ts"],"names":[],"mappings":";;AACA;;;;;GAKG;;AAEH,iCAAsD;AAEtD,qEAA4E;AAC5E,4CAAiD;AAEjD,KAAK,UAAU,IAAI;IACjB,8BAA8B;IAC9B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,uBAAkB,EAAC;QACtD,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAY,WAAM,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,6BAAkB,CAAC,MAAM,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,sBAAsB,MAAM,CAAC,aAAa,SAAS,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,eAAe;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;IAC1B,4CAA4C;IAC5C,OAAO,CAAC,KAAK,CAAC,6BAA6B,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Claude Code - User Prompt Submit Hook (Thin Adapter)
4
4
  *
5
5
  * Fires when the user submits a prompt.
6
- * This is a thin adapter that delegates to PromptSubmitHandler.
6
+ * This is a thin adapter that delegates to PromptSubmitHandler via mediator.
7
7
  *
8
8
  * In plan mode, also runs memory recursion to surface relevant context.
9
9
  *
@@ -4,7 +4,7 @@
4
4
  * Claude Code - User Prompt Submit Hook (Thin Adapter)
5
5
  *
6
6
  * Fires when the user submits a prompt.
7
- * This is a thin adapter that delegates to PromptSubmitHandler.
7
+ * This is a thin adapter that delegates to PromptSubmitHandler via mediator.
8
8
  *
9
9
  * In plan mode, also runs memory recursion to surface relevant context.
10
10
  *
@@ -12,7 +12,7 @@
12
12
  */
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  const di_1 = require("../../di");
15
- const handlers_1 = require("../../../application/handlers");
15
+ const requests_1 = require("../../../application/mediator/requests");
16
16
  const domain_1 = require("../../../domain");
17
17
  const stdin_1 = require("./stdin");
18
18
  async function main() {
@@ -25,18 +25,16 @@ async function main() {
25
25
  process.exit(0);
26
26
  return;
27
27
  }
28
- // Create services via DI (with cleanup for connections)
29
- // Disable pino logging to avoid worker thread issues in bundled hooks
30
- const services = await (0, di_1.createServicesWithCleanup)({
28
+ // Bootstrap container with DI
29
+ const { container, dispose } = await (0, di_1.bootstrapContainer)({
31
30
  projectRoot: process.cwd(),
32
- source: 'claude-code',
33
31
  disableLogging: true,
34
32
  });
35
33
  try {
36
- // Create handler and process event
37
- const handler = new handlers_1.PromptSubmitHandler(services);
38
- const event = (0, domain_1.createPromptSubmitEvent)(content, (0, domain_1.toISOTimestamp)(), undefined, permissionMode);
39
- const result = await handler.handle(event);
34
+ // Resolve mediator and send request
35
+ const mediator = await container.resolve(di_1.TOKENS.Mediator);
36
+ const request = new requests_1.PromptSubmitRequest(content, (0, domain_1.toISOTimestamp)(), undefined, permissionMode);
37
+ const result = await mediator.send(request);
40
38
  // Output recursion results to stdout (Claude context)
41
39
  if (result.recursion?.hasContext) {
42
40
  console.log('\n🔍 Related Context from Memory:\n');
@@ -46,7 +44,7 @@ async function main() {
46
44
  }
47
45
  finally {
48
46
  // Clean up connections before exiting
49
- await services.cleanup();
47
+ await dispose();
50
48
  }
51
49
  // Exit cleanly
52
50
  process.exit(0);
@@ -1 +1 @@
1
- {"version":3,"file":"user-prompt-submit.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/user-prompt-submit.ts"],"names":[],"mappings":";;AACA;;;;;;;;;GASG;;AAEH,iCAAqD;AACrD,4DAAoE;AACpE,4CAA0F;AAC1F,mCAAoC;AASpC,KAAK,UAAU,IAAI;IACjB,yBAAyB;IACzB,MAAM,KAAK,GAAG,MAAM,IAAA,iBAAS,GAAkB,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,cAAc,IAAI,SAAS,CAAmB,CAAC;IAEtG,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,wBAAwB;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,wDAAwD;IACxD,sEAAsE;IACtE,MAAM,QAAQ,GAAG,MAAM,IAAA,8BAAyB,EAAC;QAC/C,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,MAAM,EAAE,aAAa;QACrB,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,IAAA,gCAAuB,EAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAE5F,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE3C,sDAAsD;QACtD,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,eAAe;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;IAChB,2CAA2C;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"user-prompt-submit.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/claude/user-prompt-submit.ts"],"names":[],"mappings":";;AACA;;;;;;;;;GASG;;AAEH,iCAAsD;AAEtD,qEAA6E;AAC7E,4CAAiE;AACjE,mCAAoC;AASpC,KAAK,UAAU,IAAI;IACjB,yBAAyB;IACzB,MAAM,KAAK,GAAG,MAAM,IAAA,iBAAS,GAAkB,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;IACpD,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,cAAc,IAAI,SAAS,CAAmB,CAAC;IAEtG,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,wBAAwB;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,8BAA8B;IAC9B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,uBAAkB,EAAC;QACtD,WAAW,EAAE,OAAO,CAAC,GAAG,EAAE;QAC1B,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,oCAAoC;QACpC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAY,WAAM,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAE9F,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,sDAAsD;QACtD,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,sCAAsC;QACtC,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;IAED,eAAe;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;IAChB,2CAA2C;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Lisa Plugin for OpenCode
3
3
  *
4
- * This is a thin adapter that delegates to shared handlers.
5
- * It translates OpenCode's event system to Lisa's domain events.
4
+ * This is a thin adapter that delegates to shared handlers via mediator.
5
+ * It translates OpenCode's event system to Lisa's requests.
6
6
  */
7
7
  /**
8
8
  * OpenCode Session type (subset of fields we care about)
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/opencode/plugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;GAEG;AACH,UAAU,gBAAgB;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,GAAG,EAAE;QACZ,GAAG,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACpG,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,IAAI,IAAI,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAA;SAAE,CAAC,CAAC;QAC/C,GAAG,CAAC,MAAM,EAAE;YAAE,IAAI,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,gBAAgB,CAAA;SAAE,CAAC,CAAC;KAC7E,CAAC;CACH;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnF;;GAEG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAuInG;AAED;;GAEG;AACH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/opencode/plugin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH;;GAEG;AACH,UAAU,gBAAgB;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,UAAU,sBAAsB;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,GAAG,EAAE;QACZ,GAAG,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACpG,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,EAAE;QACjB,IAAI,IAAI,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,gBAAgB,EAAE,CAAA;SAAE,CAAC,CAAC;QAC/C,GAAG,CAAC,MAAM,EAAE;YAAE,IAAI,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,gBAAgB,CAAA;SAAE,CAAC,CAAC;KAC7E,CAAC;CACH;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,KAAK,YAAY,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnF;;GAEG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAkInG;AAED;;GAEG;AACH,eAAe,UAAU,CAAC"}
@@ -2,32 +2,27 @@
2
2
  /**
3
3
  * Lisa Plugin for OpenCode
4
4
  *
5
- * This is a thin adapter that delegates to shared handlers.
6
- * It translates OpenCode's event system to Lisa's domain events.
5
+ * This is a thin adapter that delegates to shared handlers via mediator.
6
+ * It translates OpenCode's event system to Lisa's requests.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.LisaPlugin = LisaPlugin;
10
10
  const di_1 = require("../../di");
11
- const handlers_1 = require("../../../application/handlers");
11
+ const requests_1 = require("../../../application/mediator/requests");
12
12
  const domain_1 = require("../../../domain");
13
13
  const opencode_events_1 = require("./opencode-events");
14
14
  /**
15
15
  * Plugin factory function called by OpenCode on load.
16
16
  */
17
17
  async function LisaPlugin(ctx) {
18
- const { directory, worktree, client } = ctx;
19
- // Create services with OpenCode context
20
- // Disable pino logging to avoid worker thread issues in bundled plugins
21
- const services = await (0, di_1.createServices)({
18
+ const { directory, client } = ctx;
19
+ // Bootstrap container with DI
20
+ const { container } = await (0, di_1.bootstrapContainer)({
22
21
  projectRoot: directory,
23
- gitWorktree: worktree,
24
- source: 'opencode',
25
22
  disableLogging: true,
26
23
  });
27
- // Create handlers
28
- const sessionStartHandler = new handlers_1.SessionStartHandler(services);
29
- const sessionStopHandler = new handlers_1.SessionStopHandler(services);
30
- const promptSubmitHandler = new handlers_1.PromptSubmitHandler(services);
24
+ // Resolve mediator (singleton - will be reused for all events)
25
+ const mediator = await container.resolve(di_1.TOKENS.Mediator);
31
26
  // Helper to log messages
32
27
  const log = async (level, message) => {
33
28
  await client.app.log({ service: 'lisa', level, message });
@@ -35,8 +30,8 @@ async function LisaPlugin(ctx) {
35
30
  // Helper to handle session start events
36
31
  const handleSessionStart = async (trigger) => {
37
32
  try {
38
- const event = (0, domain_1.createSessionStartEvent)(trigger, (0, domain_1.toISOTimestamp)());
39
- const result = await sessionStartHandler.handle(event);
33
+ const request = new requests_1.SessionStartRequest(trigger, (0, domain_1.toISOTimestamp)());
34
+ const result = await mediator.send(request);
40
35
  await log('info', result.message);
41
36
  }
42
37
  catch (error) {
@@ -73,8 +68,8 @@ async function LisaPlugin(ctx) {
73
68
  [opencode_events_1.OpenCodeEventNames.SESSION_COMPACTING]: async (_input, output) => {
74
69
  try {
75
70
  const trigger = opencode_events_1.OpenCodeEventToTrigger[opencode_events_1.OpenCodeEventNames.SESSION_COMPACTING];
76
- const event = (0, domain_1.createSessionStartEvent)(trigger, (0, domain_1.toISOTimestamp)());
77
- const result = await sessionStartHandler.handle(event);
71
+ const request = new requests_1.SessionStartRequest(trigger, (0, domain_1.toISOTimestamp)());
72
+ const result = await mediator.send(request);
78
73
  if (result.contextContent && output) {
79
74
  output.context.push(result.contextContent);
80
75
  }
@@ -90,8 +85,8 @@ async function LisaPlugin(ctx) {
90
85
  */
91
86
  [opencode_events_1.OpenCodeEventNames.SESSION_IDLE]: async () => {
92
87
  try {
93
- const event = (0, domain_1.createSessionStopEvent)('idle', (0, domain_1.toISOTimestamp)());
94
- await sessionStopHandler.handle(event);
88
+ const request = new requests_1.SessionStopRequest('idle', (0, domain_1.toISOTimestamp)());
89
+ await mediator.send(request);
95
90
  }
96
91
  catch (error) {
97
92
  const message = error instanceof Error ? error.message : 'Unknown error';
@@ -124,8 +119,8 @@ async function LisaPlugin(ctx) {
124
119
  // Ignore session lookup errors - continue with default mode
125
120
  }
126
121
  }
127
- const event = (0, domain_1.createPromptSubmitEvent)(msg.content, (0, domain_1.toISOTimestamp)(), msg.sessionId, permissionMode);
128
- const result = await promptSubmitHandler.handle(event);
122
+ const request = new requests_1.PromptSubmitRequest(msg.content, (0, domain_1.toISOTimestamp)(), msg.sessionId, permissionMode);
123
+ const result = await mediator.send(request);
129
124
  // Output recursion results (OpenCode captures stdout for context)
130
125
  if (result.recursion?.hasContext) {
131
126
  console.log('\n🔍 Related Context from Memory:\n');
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/opencode/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../../src/lib/infrastructure/adapters/opencode/plugin.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAsDH,gCAkIC;AAtLD,iCAAsD;AAEtD,qEAIgD;AAChD,4CAAiE;AACjE,uDAA+E;AAyC/E;;GAEG;AACI,KAAK,UAAU,UAAU,CAAC,GAA2B;IAC1D,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC;IAElC,8BAA8B;IAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,uBAAkB,EAAC;QAC7C,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,+DAA+D;IAC/D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAY,WAAM,CAAC,QAAQ,CAAC,CAAC;IAErE,yBAAyB;IACzB,MAAM,GAAG,GAAG,KAAK,EAAE,KAAgC,EAAE,OAAe,EAAiB,EAAE;QACrF,MAAM,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEF,wCAAwC;IACxC,MAAM,kBAAkB,GAAG,KAAK,EAAE,OAAuB,EAAiB,EAAE;QAC1E,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,MAAM,GAAG,CAAC,OAAO,EAAE,yBAAyB,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL;;WAEG;QACH,CAAC,oCAAkB,CAAC,eAAe,CAAC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QAED;;WAEG;QACH,CAAC,oCAAkB,CAAC,eAAe,CAAC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;QAED;;WAEG;QACH,CAAC,oCAAkB,CAAC,iBAAiB,CAAC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;QAED;;;;;;WAMG;QACH,CAAC,oCAAkB,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAe,EAAE,MAA0B,EAAE,EAAE;YAC7F,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,wCAAsB,CAAC,oCAAkB,CAAC,kBAAkB,CAAmB,CAAC;gBAChG,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;gBACnE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAE5C,IAAI,MAAM,CAAC,cAAc,IAAI,MAAM,EAAE,CAAC;oBACpC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC7C,CAAC;gBAED,MAAM,GAAG,CAAC,MAAM,EAAE,oCAAoC,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBACzE,MAAM,GAAG,CAAC,OAAO,EAAE,wCAAwC,OAAO,EAAE,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QAED;;WAEG;QACH,CAAC,oCAAkB,CAAC,YAAY,CAAC,EAAE,KAAK,IAAI,EAAE;YAC5C,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,6BAAkB,CAAC,MAA2B,EAAE,IAAA,uBAAc,GAAE,CAAC,CAAC;gBACtF,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBACzE,MAAM,GAAG,CAAC,OAAO,EAAE,2BAA2B,OAAO,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED;;;;;;;WAOG;QACH,CAAC,oCAAkB,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,KAAc,EAAE,EAAE;YAC7D,IAAI,CAAC;gBACH,+BAA+B;gBAC/B,MAAM,GAAG,GAAG,KAA4E,CAAC;gBACzF,IAAI,GAAG,EAAE,IAAI,KAAK,MAAM,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC;oBACzC,mCAAmC;oBACnC,IAAI,cAAc,GAAmB,SAAS,CAAC;oBAE/C,IAAI,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpC,IAAI,CAAC;4BACH,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;4BAChF,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;gCAC7B,cAAc,GAAG,MAAM,CAAC;4BAC1B,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC;4BACP,4DAA4D;wBAC9D,CAAC;oBACH,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,8BAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAA,uBAAc,GAAE,EAAE,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;oBACtG,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBAE5C,kEAAkE;oBAClE,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC;wBACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;wBACnD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAClB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,uDAAuD;YACzD,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,kBAAe,UAAU,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * CLI Infrastructure.
3
+ *
4
+ * Utilities for CLI hook commands.
5
+ */
6
+ export { readJsonFromStdin, writeJsonToStdout, writeToStream, writeStatus, parseTrigger, } from './io';
7
+ export type { ISessionStartInput, ISessionStopInput, IPromptSubmitInput, IHookOutput, } from './io';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/infrastructure/cli/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,YAAY,GACb,MAAM,MAAM,CAAC;AAEd,YAAY,EACV,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,GACZ,MAAM,MAAM,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * CLI Infrastructure.
4
+ *
5
+ * Utilities for CLI hook commands.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.parseTrigger = exports.writeStatus = exports.writeToStream = exports.writeJsonToStdout = exports.readJsonFromStdin = void 0;
9
+ var io_1 = require("./io");
10
+ Object.defineProperty(exports, "readJsonFromStdin", { enumerable: true, get: function () { return io_1.readJsonFromStdin; } });
11
+ Object.defineProperty(exports, "writeJsonToStdout", { enumerable: true, get: function () { return io_1.writeJsonToStdout; } });
12
+ Object.defineProperty(exports, "writeToStream", { enumerable: true, get: function () { return io_1.writeToStream; } });
13
+ Object.defineProperty(exports, "writeStatus", { enumerable: true, get: function () { return io_1.writeStatus; } });
14
+ Object.defineProperty(exports, "parseTrigger", { enumerable: true, get: function () { return io_1.parseTrigger; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/infrastructure/cli/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,2BAMc;AALZ,uGAAA,iBAAiB,OAAA;AACjB,uGAAA,iBAAiB,OAAA;AACjB,mGAAA,aAAa,OAAA;AACb,iGAAA,WAAW,OAAA;AACX,kGAAA,YAAY,OAAA"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * CLI I/O Utilities.
3
+ *
4
+ * Handles stdin/stdout communication for CLI hooks.
5
+ * Used by hook commands to read input and write output.
6
+ */
7
+ import type { Readable, Writable } from 'stream';
8
+ import type { SessionTrigger } from '../../domain';
9
+ /**
10
+ * Read JSON input from stdin with timeout.
11
+ *
12
+ * Returns empty object if stdin is empty or times out.
13
+ *
14
+ * @param stdin - Input stream (defaults to process.stdin)
15
+ * @param timeoutMs - Timeout in milliseconds
16
+ */
17
+ export declare function readJsonFromStdin<T>(stdin?: Readable, timeoutMs?: number): Promise<T>;
18
+ /**
19
+ * Write JSON output to stdout.
20
+ *
21
+ * Handles backpressure properly.
22
+ *
23
+ * @param data - Data to serialize and write
24
+ * @param stdout - Output stream (defaults to process.stdout)
25
+ */
26
+ export declare function writeJsonToStdout<T>(data: T, stdout?: Writable): Promise<void>;
27
+ /**
28
+ * Write text to a stream, handling backpressure.
29
+ *
30
+ * @param stream - Output stream
31
+ * @param text - Text to write
32
+ */
33
+ export declare function writeToStream(stream: Writable, text: string): Promise<void>;
34
+ /**
35
+ * Write a status message to stderr.
36
+ *
37
+ * Status messages are shown to the user in Claude Code.
38
+ *
39
+ * @param message - Message to write
40
+ * @param stderr - Error stream (defaults to process.stderr)
41
+ */
42
+ export declare function writeStatus(message: string, stderr?: Writable): Promise<void>;
43
+ /**
44
+ * Parse session trigger from Claude Code hook input.
45
+ *
46
+ * Claude Code sends different values depending on the event:
47
+ * - source: "startup", "resume"
48
+ * - session_type: "new", "existing"
49
+ *
50
+ * @param source - The source field from hook input
51
+ * @param sessionType - The session_type field from hook input
52
+ */
53
+ export declare function parseTrigger(source?: string, sessionType?: string, trigger?: string): SessionTrigger;
54
+ /**
55
+ * Claude Code hook input for session start.
56
+ */
57
+ export interface ISessionStartInput {
58
+ source?: string;
59
+ trigger?: string;
60
+ session_type?: string;
61
+ cwd?: string;
62
+ session_id?: string;
63
+ }
64
+ /**
65
+ * Claude Code hook input for session stop.
66
+ */
67
+ export interface ISessionStopInput {
68
+ session_id?: string;
69
+ transcript_path?: string;
70
+ cwd?: string;
71
+ }
72
+ /**
73
+ * Claude Code hook input for prompt submit.
74
+ */
75
+ export interface IPromptSubmitInput {
76
+ prompt?: string;
77
+ content?: string;
78
+ permission_mode?: string;
79
+ permissionMode?: string;
80
+ session_id?: string;
81
+ }
82
+ /**
83
+ * Claude Code hook output format.
84
+ */
85
+ export interface IHookOutput {
86
+ hookSpecificOutput?: {
87
+ hookEventName: string;
88
+ additionalContext?: string;
89
+ };
90
+ }
91
+ //# sourceMappingURL=io.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../../../src/lib/infrastructure/cli/io.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAOnD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EACvC,KAAK,GAAE,QAAwB,EAC/B,SAAS,GAAE,MAAiC,GAC3C,OAAO,CAAC,CAAC,CAAC,CA4BZ;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,CAAC,EACvC,IAAI,EAAE,CAAC,EACP,MAAM,GAAE,QAAyB,GAChC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CASjF;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,QAAyB,GAChC,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,MAAM,GACf,cAAc,CAqBhB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kBAAkB,CAAC,EAAE;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH"}
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ /**
3
+ * CLI I/O Utilities.
4
+ *
5
+ * Handles stdin/stdout communication for CLI hooks.
6
+ * Used by hook commands to read input and write output.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.readJsonFromStdin = readJsonFromStdin;
10
+ exports.writeJsonToStdout = writeJsonToStdout;
11
+ exports.writeToStream = writeToStream;
12
+ exports.writeStatus = writeStatus;
13
+ exports.parseTrigger = parseTrigger;
14
+ /**
15
+ * Default timeout for stdin reads (ms).
16
+ */
17
+ const DEFAULT_STDIN_TIMEOUT_MS = 100;
18
+ /**
19
+ * Read JSON input from stdin with timeout.
20
+ *
21
+ * Returns empty object if stdin is empty or times out.
22
+ *
23
+ * @param stdin - Input stream (defaults to process.stdin)
24
+ * @param timeoutMs - Timeout in milliseconds
25
+ */
26
+ async function readJsonFromStdin(stdin = process.stdin, timeoutMs = DEFAULT_STDIN_TIMEOUT_MS) {
27
+ return new Promise((resolve) => {
28
+ let input = '';
29
+ const timeout = setTimeout(() => {
30
+ resolve({});
31
+ }, timeoutMs);
32
+ stdin.setEncoding('utf8');
33
+ stdin.on('data', (chunk) => {
34
+ input += chunk;
35
+ });
36
+ stdin.on('end', () => {
37
+ clearTimeout(timeout);
38
+ try {
39
+ resolve(JSON.parse(input));
40
+ }
41
+ catch {
42
+ resolve({});
43
+ }
44
+ });
45
+ // Handle case where stdin is already closed
46
+ if ('readableEnded' in stdin && stdin.readableEnded) {
47
+ clearTimeout(timeout);
48
+ resolve({});
49
+ }
50
+ });
51
+ }
52
+ /**
53
+ * Write JSON output to stdout.
54
+ *
55
+ * Handles backpressure properly.
56
+ *
57
+ * @param data - Data to serialize and write
58
+ * @param stdout - Output stream (defaults to process.stdout)
59
+ */
60
+ async function writeJsonToStdout(data, stdout = process.stdout) {
61
+ return new Promise((resolve, reject) => {
62
+ const json = JSON.stringify(data);
63
+ const flushed = stdout.write(json);
64
+ if (flushed) {
65
+ resolve();
66
+ return;
67
+ }
68
+ stdout.once('drain', resolve);
69
+ stdout.once('error', reject);
70
+ });
71
+ }
72
+ /**
73
+ * Write text to a stream, handling backpressure.
74
+ *
75
+ * @param stream - Output stream
76
+ * @param text - Text to write
77
+ */
78
+ async function writeToStream(stream, text) {
79
+ return new Promise((resolve) => {
80
+ const flushed = stream.write(text);
81
+ if (flushed) {
82
+ resolve();
83
+ return;
84
+ }
85
+ stream.once('drain', resolve);
86
+ });
87
+ }
88
+ /**
89
+ * Write a status message to stderr.
90
+ *
91
+ * Status messages are shown to the user in Claude Code.
92
+ *
93
+ * @param message - Message to write
94
+ * @param stderr - Error stream (defaults to process.stderr)
95
+ */
96
+ async function writeStatus(message, stderr = process.stderr) {
97
+ return writeToStream(stderr, `${message}\n`);
98
+ }
99
+ /**
100
+ * Parse session trigger from Claude Code hook input.
101
+ *
102
+ * Claude Code sends different values depending on the event:
103
+ * - source: "startup", "resume"
104
+ * - session_type: "new", "existing"
105
+ *
106
+ * @param source - The source field from hook input
107
+ * @param sessionType - The session_type field from hook input
108
+ */
109
+ function parseTrigger(source, sessionType, trigger) {
110
+ // Prefer explicit trigger field when provided
111
+ if (trigger === 'startup' || trigger === 'resume' || trigger === 'compact' || trigger === 'clear') {
112
+ return trigger;
113
+ }
114
+ // Direct source mapping
115
+ if (source === 'startup' || source === 'resume' || source === 'compact' || source === 'clear') {
116
+ return source;
117
+ }
118
+ // Infer from session_type
119
+ if (sessionType === 'new') {
120
+ return 'startup';
121
+ }
122
+ if (sessionType === 'existing') {
123
+ return 'resume';
124
+ }
125
+ // Default to startup
126
+ return 'startup';
127
+ }
128
+ //# sourceMappingURL=io.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../../src/lib/infrastructure/cli/io.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Cross-Platform Cron Service
3
+ *
4
+ * Manages scheduled tasks for PR polling on Windows, macOS, and Linux.
5
+ * - Linux/macOS: Uses crontab
6
+ * - Windows: Uses Task Scheduler (schtasks)
7
+ */
8
+ import type { ICronService, ICronJobConfig, ICronConfig, ICronResult, CronPlatform, CronStatus } from '../../domain/interfaces/ICronService';
9
+ /**
10
+ * Clear the cached lisa path (for testing).
11
+ */
12
+ export declare function clearLisaPathCache(): void;
13
+ /**
14
+ * Options for CronService.
15
+ */
16
+ export interface ICronServiceOptions {
17
+ /** Custom path for config file (for testing) */
18
+ configPath?: string;
19
+ }
20
+ /**
21
+ * Cross-platform cron service implementation.
22
+ */
23
+ export declare class CronService implements ICronService {
24
+ private readonly configPath;
25
+ constructor(options?: ICronServiceOptions);
26
+ /**
27
+ * Get the current platform's cron implementation.
28
+ */
29
+ getPlatform(): CronPlatform;
30
+ /**
31
+ * Check if cron job is currently installed.
32
+ */
33
+ isInstalled(): Promise<CronStatus>;
34
+ /**
35
+ * Install the cron job.
36
+ */
37
+ install(config: ICronJobConfig): Promise<ICronResult>;
38
+ /**
39
+ * Uninstall the cron job.
40
+ */
41
+ uninstall(): Promise<ICronResult>;
42
+ /**
43
+ * Get the current cron configuration from ~/.lisa/config.json.
44
+ */
45
+ getConfig(): Promise<ICronConfig | null>;
46
+ /**
47
+ * Save cron configuration to ~/.lisa/config.json.
48
+ */
49
+ saveConfig(cronConfig: ICronConfig): Promise<void>;
50
+ /**
51
+ * Remove cron configuration from ~/.lisa/config.json.
52
+ */
53
+ removeConfig(): Promise<void>;
54
+ /**
55
+ * Get manual installation instructions for the current platform.
56
+ */
57
+ getManualInstructions(config: ICronJobConfig): string;
58
+ /**
59
+ * Check if Lisa cron job is in crontab.
60
+ */
61
+ private isCrontabInstalled;
62
+ /**
63
+ * Install Lisa cron job to crontab.
64
+ */
65
+ private installCrontab;
66
+ /**
67
+ * Uninstall Lisa cron job from crontab.
68
+ */
69
+ private uninstallCrontab;
70
+ /**
71
+ * Check if Lisa task is in Windows Task Scheduler.
72
+ */
73
+ private isWindowsTaskInstalled;
74
+ /**
75
+ * Install Lisa task to Windows Task Scheduler.
76
+ */
77
+ private installWindowsTask;
78
+ /**
79
+ * Uninstall Lisa task from Windows Task Scheduler.
80
+ */
81
+ private uninstallWindowsTask;
82
+ }
83
+ /**
84
+ * Create a new CronService instance.
85
+ */
86
+ export declare function createCronService(): ICronService;
87
+ //# sourceMappingURL=CronService.d.ts.map