@tonycasey/lisa 2.25.4 → 2.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/dist/lib/application/handlers/PromptSubmitHandler.d.ts.map +1 -1
  2. package/dist/lib/application/handlers/PromptSubmitHandler.js +2 -2
  3. package/dist/lib/application/handlers/PromptSubmitHandler.js.map +1 -1
  4. package/dist/lib/application/handlers/SessionStartHandler.d.ts +8 -24
  5. package/dist/lib/application/handlers/SessionStartHandler.d.ts.map +1 -1
  6. package/dist/lib/application/handlers/SessionStartHandler.js +43 -31
  7. package/dist/lib/application/handlers/SessionStartHandler.js.map +1 -1
  8. package/dist/lib/application/handlers/SessionStopHandler.d.ts.map +1 -1
  9. package/dist/lib/application/handlers/SessionStopHandler.js +2 -3
  10. package/dist/lib/application/handlers/SessionStopHandler.js.map +1 -1
  11. package/dist/lib/application/handlers/pr/PrPollHandler.d.ts +1 -2
  12. package/dist/lib/application/handlers/pr/PrPollHandler.d.ts.map +1 -1
  13. package/dist/lib/application/handlers/pr/PrPollHandler.js +3 -4
  14. package/dist/lib/application/handlers/pr/PrPollHandler.js.map +1 -1
  15. package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts +1 -2
  16. package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts.map +1 -1
  17. package/dist/lib/application/handlers/pr/PrRememberHandler.js +2 -3
  18. package/dist/lib/application/handlers/pr/PrRememberHandler.js.map +1 -1
  19. package/dist/lib/application/services/GitExtractorService.d.ts +22 -0
  20. package/dist/lib/application/services/GitExtractorService.d.ts.map +1 -0
  21. package/dist/lib/application/services/GitExtractorService.js +232 -0
  22. package/dist/lib/application/services/GitExtractorService.js.map +1 -0
  23. package/dist/lib/application/services/GitIndexingService.d.ts +25 -0
  24. package/dist/lib/application/services/GitIndexingService.d.ts.map +1 -0
  25. package/dist/lib/application/services/GitIndexingService.js +175 -0
  26. package/dist/lib/application/services/GitIndexingService.js.map +1 -0
  27. package/dist/lib/application/services/GitTriageService.d.ts +45 -0
  28. package/dist/lib/application/services/GitTriageService.d.ts.map +1 -0
  29. package/dist/lib/application/services/GitTriageService.js +360 -0
  30. package/dist/lib/application/services/GitTriageService.js.map +1 -0
  31. package/dist/lib/application/services/MemoryContextLoader.d.ts +7 -16
  32. package/dist/lib/application/services/MemoryContextLoader.d.ts.map +1 -1
  33. package/dist/lib/application/services/MemoryContextLoader.js +12 -75
  34. package/dist/lib/application/services/MemoryContextLoader.js.map +1 -1
  35. package/dist/lib/application/services/RepoProfileService.d.ts +37 -0
  36. package/dist/lib/application/services/RepoProfileService.d.ts.map +1 -0
  37. package/dist/lib/application/services/RepoProfileService.js +388 -0
  38. package/dist/lib/application/services/RepoProfileService.js.map +1 -0
  39. package/dist/lib/application/services/SessionContextFormatter.d.ts +11 -1
  40. package/dist/lib/application/services/SessionContextFormatter.d.ts.map +1 -1
  41. package/dist/lib/application/services/SessionContextFormatter.js +59 -3
  42. package/dist/lib/application/services/SessionContextFormatter.js.map +1 -1
  43. package/dist/lib/application/services/index.d.ts +2 -0
  44. package/dist/lib/application/services/index.d.ts.map +1 -1
  45. package/dist/lib/application/services/index.js +7 -1
  46. package/dist/lib/application/services/index.js.map +1 -1
  47. package/dist/lib/cli.d.ts +2 -2
  48. package/dist/lib/cli.d.ts.map +1 -1
  49. package/dist/lib/cli.js +4 -52
  50. package/dist/lib/cli.js.map +1 -1
  51. package/dist/lib/commands/doctor.d.ts +5 -12
  52. package/dist/lib/commands/doctor.d.ts.map +1 -1
  53. package/dist/lib/commands/doctor.js +60 -280
  54. package/dist/lib/commands/doctor.js.map +1 -1
  55. package/dist/lib/commands/index.d.ts +2 -3
  56. package/dist/lib/commands/index.d.ts.map +1 -1
  57. package/dist/lib/commands/index.js +2 -7
  58. package/dist/lib/commands/index.js.map +1 -1
  59. package/dist/lib/commands/init.d.ts +2 -8
  60. package/dist/lib/commands/init.d.ts.map +1 -1
  61. package/dist/lib/commands/init.js +13 -67
  62. package/dist/lib/commands/init.js.map +1 -1
  63. package/dist/lib/commands/knowledge.d.ts.map +1 -1
  64. package/dist/lib/commands/knowledge.js +1 -2
  65. package/dist/lib/commands/knowledge.js.map +1 -1
  66. package/dist/lib/commands/pr.d.ts.map +1 -1
  67. package/dist/lib/commands/pr.js +20 -21
  68. package/dist/lib/commands/pr.js.map +1 -1
  69. package/dist/lib/commands/shared/constants.d.ts +1 -15
  70. package/dist/lib/commands/shared/constants.d.ts.map +1 -1
  71. package/dist/lib/commands/shared/constants.js +2 -5
  72. package/dist/lib/commands/shared/constants.js.map +1 -1
  73. package/dist/lib/commands/shared/index.d.ts +1 -1
  74. package/dist/lib/commands/shared/index.d.ts.map +1 -1
  75. package/dist/lib/commands/shared/index.js +1 -3
  76. package/dist/lib/commands/shared/index.js.map +1 -1
  77. package/dist/lib/commands/skills.d.ts +1 -1
  78. package/dist/lib/commands/skills.js +5 -5
  79. package/dist/lib/commands/skills.js.map +1 -1
  80. package/dist/lib/domain/interfaces/ICommitEnricher.d.ts +81 -0
  81. package/dist/lib/domain/interfaces/ICommitEnricher.d.ts.map +1 -0
  82. package/dist/lib/domain/interfaces/ICommitEnricher.js +33 -0
  83. package/dist/lib/domain/interfaces/ICommitEnricher.js.map +1 -0
  84. package/dist/lib/domain/interfaces/IConsolidationService.d.ts +3 -2
  85. package/dist/lib/domain/interfaces/IConsolidationService.d.ts.map +1 -1
  86. package/dist/lib/domain/interfaces/ICurationService.d.ts +3 -2
  87. package/dist/lib/domain/interfaces/ICurationService.d.ts.map +1 -1
  88. package/dist/lib/domain/interfaces/IFileSystem.d.ts +28 -0
  89. package/dist/lib/domain/interfaces/IFileSystem.d.ts.map +1 -0
  90. package/dist/lib/domain/interfaces/IFileSystem.js +12 -0
  91. package/dist/lib/domain/interfaces/IFileSystem.js.map +1 -0
  92. package/dist/lib/domain/interfaces/IGitClient.d.ts +86 -0
  93. package/dist/lib/domain/interfaces/IGitClient.d.ts.map +1 -1
  94. package/dist/lib/domain/interfaces/IGitExtractor.d.ts +160 -0
  95. package/dist/lib/domain/interfaces/IGitExtractor.d.ts.map +1 -0
  96. package/dist/lib/domain/interfaces/IGitExtractor.js +37 -0
  97. package/dist/lib/domain/interfaces/IGitExtractor.js.map +1 -0
  98. package/dist/lib/domain/interfaces/IGitIndexingService.d.ts +69 -0
  99. package/dist/lib/domain/interfaces/IGitIndexingService.d.ts.map +1 -0
  100. package/dist/lib/domain/interfaces/IGitIndexingService.js +43 -0
  101. package/dist/lib/domain/interfaces/IGitIndexingService.js.map +1 -0
  102. package/dist/lib/domain/interfaces/IGitMemClient.d.ts +44 -0
  103. package/dist/lib/domain/interfaces/IGitMemClient.d.ts.map +1 -0
  104. package/dist/lib/domain/interfaces/IGitMemClient.js +9 -0
  105. package/dist/lib/domain/interfaces/IGitMemClient.js.map +1 -0
  106. package/dist/lib/domain/interfaces/IGitTriageService.d.ts +180 -0
  107. package/dist/lib/domain/interfaces/IGitTriageService.d.ts.map +1 -0
  108. package/dist/lib/domain/interfaces/IGitTriageService.js +12 -0
  109. package/dist/lib/domain/interfaces/IGitTriageService.js.map +1 -0
  110. package/dist/lib/domain/interfaces/ILisaServices.d.ts +0 -9
  111. package/dist/lib/domain/interfaces/ILisaServices.d.ts.map +1 -1
  112. package/dist/lib/domain/interfaces/IMemoryService.d.ts +14 -89
  113. package/dist/lib/domain/interfaces/IMemoryService.d.ts.map +1 -1
  114. package/dist/lib/domain/interfaces/INlCurationService.d.ts +4 -4
  115. package/dist/lib/domain/interfaces/INlCurationService.d.ts.map +1 -1
  116. package/dist/lib/domain/interfaces/IRecursionService.d.ts +3 -2
  117. package/dist/lib/domain/interfaces/IRecursionService.d.ts.map +1 -1
  118. package/dist/lib/domain/interfaces/IRepoProfileService.d.ts +132 -0
  119. package/dist/lib/domain/interfaces/IRepoProfileService.d.ts.map +1 -0
  120. package/dist/lib/domain/interfaces/IRepoProfileService.js +25 -0
  121. package/dist/lib/domain/interfaces/IRepoProfileService.js.map +1 -0
  122. package/dist/lib/domain/interfaces/ISummarizationService.d.ts +4 -3
  123. package/dist/lib/domain/interfaces/ISummarizationService.d.ts.map +1 -1
  124. package/dist/lib/domain/interfaces/ITaskService.d.ts +11 -16
  125. package/dist/lib/domain/interfaces/ITaskService.d.ts.map +1 -1
  126. package/dist/lib/domain/interfaces/dal/IMemoryRepository.d.ts +0 -1
  127. package/dist/lib/domain/interfaces/dal/IMemoryRepository.d.ts.map +1 -1
  128. package/dist/lib/domain/interfaces/dal/IRepositoryRouter.d.ts +1 -1
  129. package/dist/lib/domain/interfaces/dal/IRepositoryRouter.js +2 -2
  130. package/dist/lib/domain/interfaces/dal/IRepositoryRouter.js.map +1 -1
  131. package/dist/lib/domain/interfaces/events/IMemoryEvent.d.ts +6 -4
  132. package/dist/lib/domain/interfaces/events/IMemoryEvent.d.ts.map +1 -1
  133. package/dist/lib/domain/interfaces/events/IMemoryEvent.js +2 -4
  134. package/dist/lib/domain/interfaces/events/IMemoryEvent.js.map +1 -1
  135. package/dist/lib/domain/interfaces/index.d.ts +9 -3
  136. package/dist/lib/domain/interfaces/index.d.ts.map +1 -1
  137. package/dist/lib/domain/interfaces/index.js +13 -1
  138. package/dist/lib/domain/interfaces/index.js.map +1 -1
  139. package/dist/lib/infrastructure/adapters/claude/session-start.d.ts +1 -0
  140. package/dist/lib/infrastructure/adapters/claude/session-start.d.ts.map +1 -1
  141. package/dist/lib/infrastructure/adapters/claude/session-start.js +18 -4
  142. package/dist/lib/infrastructure/adapters/claude/session-start.js.map +1 -1
  143. package/dist/lib/infrastructure/adapters/gitmem/GitMemAdapter.d.ts +22 -0
  144. package/dist/lib/infrastructure/adapters/gitmem/GitMemAdapter.d.ts.map +1 -0
  145. package/dist/lib/infrastructure/adapters/gitmem/GitMemAdapter.js +88 -0
  146. package/dist/lib/infrastructure/adapters/gitmem/GitMemAdapter.js.map +1 -0
  147. package/dist/lib/infrastructure/adapters/gitmem/GitMemTaskAdapter.d.ts +19 -0
  148. package/dist/lib/infrastructure/adapters/gitmem/GitMemTaskAdapter.d.ts.map +1 -0
  149. package/dist/lib/infrastructure/adapters/gitmem/GitMemTaskAdapter.js +109 -0
  150. package/dist/lib/infrastructure/adapters/gitmem/GitMemTaskAdapter.js.map +1 -0
  151. package/dist/lib/infrastructure/adapters/gitmem/index.d.ts +3 -0
  152. package/dist/lib/infrastructure/adapters/gitmem/index.d.ts.map +1 -0
  153. package/dist/lib/infrastructure/adapters/gitmem/index.js +8 -0
  154. package/dist/lib/infrastructure/adapters/gitmem/index.js.map +1 -0
  155. package/dist/lib/infrastructure/dal/connections/index.d.ts +0 -4
  156. package/dist/lib/infrastructure/dal/connections/index.d.ts.map +1 -1
  157. package/dist/lib/infrastructure/dal/connections/index.js +2 -10
  158. package/dist/lib/infrastructure/dal/connections/index.js.map +1 -1
  159. package/dist/lib/infrastructure/dal/index.d.ts +4 -22
  160. package/dist/lib/infrastructure/dal/index.d.ts.map +1 -1
  161. package/dist/lib/infrastructure/dal/index.js +3 -37
  162. package/dist/lib/infrastructure/dal/index.js.map +1 -1
  163. package/dist/lib/infrastructure/dal/repositories/index.d.ts +1 -3
  164. package/dist/lib/infrastructure/dal/repositories/index.d.ts.map +1 -1
  165. package/dist/lib/infrastructure/dal/repositories/index.js +2 -12
  166. package/dist/lib/infrastructure/dal/repositories/index.js.map +1 -1
  167. package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts +0 -2
  168. package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts.map +1 -1
  169. package/dist/lib/infrastructure/dal/repositories/neo4j/index.js +2 -6
  170. package/dist/lib/infrastructure/dal/repositories/neo4j/index.js.map +1 -1
  171. package/dist/lib/infrastructure/di/ServiceFactory.d.ts +2 -9
  172. package/dist/lib/infrastructure/di/ServiceFactory.d.ts.map +1 -1
  173. package/dist/lib/infrastructure/di/bootstrap.d.ts +3 -1
  174. package/dist/lib/infrastructure/di/bootstrap.d.ts.map +1 -1
  175. package/dist/lib/infrastructure/di/bootstrap.js +29 -131
  176. package/dist/lib/infrastructure/di/bootstrap.js.map +1 -1
  177. package/dist/lib/infrastructure/di/tokens.d.ts +0 -20
  178. package/dist/lib/infrastructure/di/tokens.d.ts.map +1 -1
  179. package/dist/lib/infrastructure/di/tokens.js +0 -11
  180. package/dist/lib/infrastructure/di/tokens.js.map +1 -1
  181. package/dist/lib/infrastructure/git/GitClient.d.ts +11 -1
  182. package/dist/lib/infrastructure/git/GitClient.d.ts.map +1 -1
  183. package/dist/lib/infrastructure/git/GitClient.js +137 -0
  184. package/dist/lib/infrastructure/git/GitClient.js.map +1 -1
  185. package/dist/lib/infrastructure/git-mem/GitMemClient.d.ts +37 -0
  186. package/dist/lib/infrastructure/git-mem/GitMemClient.d.ts.map +1 -0
  187. package/dist/lib/infrastructure/git-mem/GitMemClient.js +151 -0
  188. package/dist/lib/infrastructure/git-mem/GitMemClient.js.map +1 -0
  189. package/dist/lib/infrastructure/git-mem/GitMemFactory.d.ts +36 -0
  190. package/dist/lib/infrastructure/git-mem/GitMemFactory.d.ts.map +1 -0
  191. package/dist/lib/infrastructure/git-mem/GitMemFactory.js +56 -0
  192. package/dist/lib/infrastructure/git-mem/GitMemFactory.js.map +1 -0
  193. package/dist/lib/infrastructure/git-mem/index.d.ts +7 -0
  194. package/dist/lib/infrastructure/git-mem/index.d.ts.map +1 -0
  195. package/dist/lib/infrastructure/git-mem/index.js +13 -0
  196. package/dist/lib/infrastructure/git-mem/index.js.map +1 -0
  197. package/dist/lib/infrastructure/git-mem/types.d.ts +90 -0
  198. package/dist/lib/infrastructure/git-mem/types.d.ts.map +1 -0
  199. package/dist/lib/infrastructure/git-mem/types.js +9 -0
  200. package/dist/lib/infrastructure/git-mem/types.js.map +1 -0
  201. package/dist/lib/infrastructure/github/GitHubDataFetcher.d.ts +21 -0
  202. package/dist/lib/infrastructure/github/GitHubDataFetcher.d.ts.map +1 -0
  203. package/dist/lib/infrastructure/github/GitHubDataFetcher.js +111 -0
  204. package/dist/lib/infrastructure/github/GitHubDataFetcher.js.map +1 -0
  205. package/dist/lib/infrastructure/index.d.ts +0 -1
  206. package/dist/lib/infrastructure/index.d.ts.map +1 -1
  207. package/dist/lib/infrastructure/index.js +1 -3
  208. package/dist/lib/infrastructure/index.js.map +1 -1
  209. package/dist/lib/infrastructure/logging/Logger.d.ts +13 -1
  210. package/dist/lib/infrastructure/logging/Logger.d.ts.map +1 -1
  211. package/dist/lib/infrastructure/logging/Logger.js +25 -7
  212. package/dist/lib/infrastructure/logging/Logger.js.map +1 -1
  213. package/dist/lib/infrastructure/logging/factory.d.ts +5 -1
  214. package/dist/lib/infrastructure/logging/factory.d.ts.map +1 -1
  215. package/dist/lib/infrastructure/logging/factory.js +3 -0
  216. package/dist/lib/infrastructure/logging/factory.js.map +1 -1
  217. package/dist/lib/infrastructure/logging/index.d.ts +1 -1
  218. package/dist/lib/infrastructure/logging/index.d.ts.map +1 -1
  219. package/dist/lib/infrastructure/logging/index.js.map +1 -1
  220. package/dist/lib/infrastructure/services/CommitEnricher.d.ts +26 -0
  221. package/dist/lib/infrastructure/services/CommitEnricher.d.ts.map +1 -0
  222. package/dist/lib/infrastructure/services/CommitEnricher.js +214 -0
  223. package/dist/lib/infrastructure/services/CommitEnricher.js.map +1 -0
  224. package/dist/lib/infrastructure/services/CurationService.d.ts.map +1 -1
  225. package/dist/lib/infrastructure/services/CurationService.js +4 -4
  226. package/dist/lib/infrastructure/services/CurationService.js.map +1 -1
  227. package/dist/lib/infrastructure/services/GitMemMemoryService.d.ts +24 -0
  228. package/dist/lib/infrastructure/services/GitMemMemoryService.d.ts.map +1 -0
  229. package/dist/lib/infrastructure/services/GitMemMemoryService.js +114 -0
  230. package/dist/lib/infrastructure/services/GitMemMemoryService.js.map +1 -0
  231. package/dist/lib/infrastructure/services/GitMemTaskService.d.ts +24 -0
  232. package/dist/lib/infrastructure/services/GitMemTaskService.d.ts.map +1 -0
  233. package/dist/lib/infrastructure/services/GitMemTaskService.js +142 -0
  234. package/dist/lib/infrastructure/services/GitMemTaskService.js.map +1 -0
  235. package/dist/lib/infrastructure/services/LlmGuard.d.ts.map +1 -1
  236. package/dist/lib/infrastructure/services/LlmGuard.js +44 -13
  237. package/dist/lib/infrastructure/services/LlmGuard.js.map +1 -1
  238. package/dist/lib/infrastructure/services/NlCurationService.d.ts.map +1 -1
  239. package/dist/lib/infrastructure/services/NlCurationService.js +12 -12
  240. package/dist/lib/infrastructure/services/NlCurationService.js.map +1 -1
  241. package/dist/lib/infrastructure/services/NodeFileSystem.d.ts +12 -0
  242. package/dist/lib/infrastructure/services/NodeFileSystem.d.ts.map +1 -0
  243. package/dist/lib/infrastructure/services/NodeFileSystem.js +40 -0
  244. package/dist/lib/infrastructure/services/NodeFileSystem.js.map +1 -0
  245. package/dist/lib/infrastructure/services/RecursionService.d.ts +1 -1
  246. package/dist/lib/infrastructure/services/RecursionService.d.ts.map +1 -1
  247. package/dist/lib/infrastructure/services/RecursionService.js +8 -8
  248. package/dist/lib/infrastructure/services/RecursionService.js.map +1 -1
  249. package/dist/lib/infrastructure/services/SkillMemoryService.d.ts +26 -0
  250. package/dist/lib/infrastructure/services/SkillMemoryService.d.ts.map +1 -0
  251. package/dist/lib/infrastructure/services/SkillMemoryService.js +317 -0
  252. package/dist/lib/infrastructure/services/SkillMemoryService.js.map +1 -0
  253. package/dist/lib/infrastructure/services/SkillPromptService.d.ts +16 -0
  254. package/dist/lib/infrastructure/services/SkillPromptService.d.ts.map +1 -0
  255. package/dist/lib/infrastructure/services/SkillPromptService.js +53 -0
  256. package/dist/lib/infrastructure/services/SkillPromptService.js.map +1 -0
  257. package/dist/lib/infrastructure/services/SkillTaskService.d.ts +32 -0
  258. package/dist/lib/infrastructure/services/SkillTaskService.d.ts.map +1 -0
  259. package/dist/lib/infrastructure/services/SkillTaskService.js +214 -0
  260. package/dist/lib/infrastructure/services/SkillTaskService.js.map +1 -0
  261. package/dist/lib/infrastructure/services/SummarizationService.d.ts.map +1 -1
  262. package/dist/lib/infrastructure/services/SummarizationService.js +3 -5
  263. package/dist/lib/infrastructure/services/SummarizationService.js.map +1 -1
  264. package/dist/lib/infrastructure/services/index.d.ts +7 -4
  265. package/dist/lib/infrastructure/services/index.d.ts.map +1 -1
  266. package/dist/lib/infrastructure/services/index.js +31 -13
  267. package/dist/lib/infrastructure/services/index.js.map +1 -1
  268. package/dist/lib/infrastructure/services/patterns/HeuristicPatterns.d.ts +72 -0
  269. package/dist/lib/infrastructure/services/patterns/HeuristicPatterns.d.ts.map +1 -0
  270. package/dist/lib/infrastructure/services/patterns/HeuristicPatterns.js +261 -0
  271. package/dist/lib/infrastructure/services/patterns/HeuristicPatterns.js.map +1 -0
  272. package/dist/lib/infrastructure/services/prompts/commit-extraction.d.ts +26 -0
  273. package/dist/lib/infrastructure/services/prompts/commit-extraction.d.ts.map +1 -0
  274. package/dist/lib/infrastructure/services/prompts/commit-extraction.js +151 -0
  275. package/dist/lib/infrastructure/services/prompts/commit-extraction.js.map +1 -0
  276. package/dist/lib/{skills/shared/services/interfaces/IMemoryService.d.ts → infrastructure/services/skill-interfaces/ISkillMemoryService.d.ts} +38 -47
  277. package/dist/lib/infrastructure/services/skill-interfaces/ISkillMemoryService.d.ts.map +1 -0
  278. package/dist/lib/{domain/interfaces/IMcpClient.js → infrastructure/services/skill-interfaces/ISkillMemoryService.js} +1 -1
  279. package/dist/lib/infrastructure/services/skill-interfaces/ISkillMemoryService.js.map +1 -0
  280. package/dist/lib/infrastructure/services/skill-interfaces/ISkillPromptService.d.ts +48 -0
  281. package/dist/lib/infrastructure/services/skill-interfaces/ISkillPromptService.d.ts.map +1 -0
  282. package/dist/lib/infrastructure/services/skill-interfaces/ISkillPromptService.js +10 -0
  283. package/dist/lib/infrastructure/services/skill-interfaces/ISkillPromptService.js.map +1 -0
  284. package/dist/lib/{skills/shared/services/interfaces/ITaskService.d.ts → infrastructure/services/skill-interfaces/ISkillTaskService.d.ts} +29 -27
  285. package/dist/lib/infrastructure/services/skill-interfaces/ISkillTaskService.d.ts.map +1 -0
  286. package/dist/lib/infrastructure/services/skill-interfaces/ISkillTaskService.js +13 -0
  287. package/dist/lib/infrastructure/services/skill-interfaces/ISkillTaskService.js.map +1 -0
  288. package/dist/lib/infrastructure/services/skill-interfaces/index.d.ts +16 -0
  289. package/dist/lib/infrastructure/services/skill-interfaces/index.d.ts.map +1 -0
  290. package/dist/lib/infrastructure/services/skill-interfaces/index.js +11 -0
  291. package/dist/lib/infrastructure/services/skill-interfaces/index.js.map +1 -0
  292. package/dist/lib/scanner/reviewer.js +2 -2
  293. package/dist/lib/scanner/reviewer.js.map +1 -1
  294. package/dist/lib/skills/github/bump-version.d.ts +14 -0
  295. package/dist/lib/skills/github/bump-version.d.ts.map +1 -0
  296. package/dist/lib/skills/{git → github}/bump-version.js +22 -1
  297. package/dist/lib/skills/github/bump-version.js.map +1 -0
  298. package/dist/lib/skills/github/github.d.ts +0 -1
  299. package/dist/lib/skills/github/github.d.ts.map +1 -1
  300. package/dist/lib/skills/github/github.js +15 -45
  301. package/dist/lib/skills/github/github.js.map +1 -1
  302. package/dist/lib/skills/memory/memory.js +5 -9
  303. package/dist/lib/skills/memory/memory.js.map +1 -1
  304. package/dist/lib/skills/prompt/prompt.d.ts +4 -1
  305. package/dist/lib/skills/prompt/prompt.d.ts.map +1 -1
  306. package/dist/lib/skills/prompt/prompt.js +10 -11
  307. package/dist/lib/skills/prompt/prompt.js.map +1 -1
  308. package/dist/lib/skills/{init-review → review}/ai-enrich.d.ts +3 -0
  309. package/dist/lib/skills/review/ai-enrich.d.ts.map +1 -0
  310. package/dist/lib/skills/{init-review → review}/ai-enrich.js +6 -6
  311. package/dist/lib/skills/review/ai-enrich.js.map +1 -0
  312. package/dist/lib/skills/review/init-review.d.ts.map +1 -0
  313. package/dist/lib/skills/review/init-review.js.map +1 -0
  314. package/dist/lib/skills/shared/clients/index.d.ts +4 -3
  315. package/dist/lib/skills/shared/clients/index.d.ts.map +1 -1
  316. package/dist/lib/skills/shared/clients/index.js +7 -10
  317. package/dist/lib/skills/shared/clients/index.js.map +1 -1
  318. package/dist/lib/skills/shared/clients/interfaces/index.d.ts +0 -3
  319. package/dist/lib/skills/shared/clients/interfaces/index.d.ts.map +1 -1
  320. package/dist/lib/skills/shared/clients/interfaces/index.js +0 -3
  321. package/dist/lib/skills/shared/clients/interfaces/index.js.map +1 -1
  322. package/dist/lib/skills/shared/index.d.ts +3 -2
  323. package/dist/lib/skills/shared/index.d.ts.map +1 -1
  324. package/dist/lib/skills/shared/index.js +3 -2
  325. package/dist/lib/skills/shared/index.js.map +1 -1
  326. package/dist/lib/skills/shared/services/GitHubSyncService.d.ts +4 -0
  327. package/dist/lib/skills/shared/services/GitHubSyncService.d.ts.map +1 -1
  328. package/dist/lib/skills/shared/services/GitHubSyncService.js +7 -7
  329. package/dist/lib/skills/shared/services/GitHubSyncService.js.map +1 -1
  330. package/dist/lib/skills/shared/services/MemoryCliService.d.ts +0 -2
  331. package/dist/lib/skills/shared/services/MemoryCliService.d.ts.map +1 -1
  332. package/dist/lib/skills/shared/services/MemoryCliService.js +11 -17
  333. package/dist/lib/skills/shared/services/MemoryCliService.js.map +1 -1
  334. package/dist/lib/skills/shared/services/StorageService.d.ts.map +1 -1
  335. package/dist/lib/skills/shared/services/StorageService.js +6 -2
  336. package/dist/lib/skills/shared/services/StorageService.js.map +1 -1
  337. package/dist/lib/skills/shared/services/TaskCliService.d.ts +3 -3
  338. package/dist/lib/skills/shared/services/TaskCliService.d.ts.map +1 -1
  339. package/dist/lib/skills/shared/services/TaskCliService.js +10 -14
  340. package/dist/lib/skills/shared/services/TaskCliService.js.map +1 -1
  341. package/dist/lib/skills/shared/services/index.d.ts +8 -4
  342. package/dist/lib/skills/shared/services/index.d.ts.map +1 -1
  343. package/dist/lib/skills/shared/services/index.js +15 -10
  344. package/dist/lib/skills/shared/services/index.js.map +1 -1
  345. package/dist/lib/skills/shared/services/interfaces/index.d.ts +4 -2
  346. package/dist/lib/skills/shared/services/interfaces/index.d.ts.map +1 -1
  347. package/dist/lib/skills/shared/services/interfaces/index.js +4 -2
  348. package/dist/lib/skills/shared/services/interfaces/index.js.map +1 -1
  349. package/dist/lib/skills/shared/utils/index.d.ts +0 -1
  350. package/dist/lib/skills/shared/utils/index.d.ts.map +1 -1
  351. package/dist/lib/skills/shared/utils/index.js +1 -9
  352. package/dist/lib/skills/shared/utils/index.js.map +1 -1
  353. package/dist/lib/skills/tasks/tasks.d.ts +9 -6
  354. package/dist/lib/skills/tasks/tasks.d.ts.map +1 -1
  355. package/dist/lib/skills/tasks/tasks.js +17 -17
  356. package/dist/lib/skills/tasks/tasks.js.map +1 -1
  357. package/dist/opencode/lisa.js +62391 -14984
  358. package/dist/package.json +5 -4
  359. package/dist/project/.lisa/.env.template +12 -9
  360. package/dist/project/.lisa/rules/shared/git-rules.md +13 -12
  361. package/dist/project/.lisa/skills/github/SKILL.md +121 -3
  362. package/dist/project/.lisa/skills/github/pr-description-template.txt +8 -0
  363. package/dist/project/.lisa/skills/pr/SKILL.md +1 -2
  364. package/dist/project/.lisa/skills/pr/pr-description-template.txt +8 -0
  365. package/dist/project/.lisa/skills/{init-review → review}/SKILL.md +9 -9
  366. package/package.json +5 -4
  367. package/dist/lib/commands/docker.d.ts +0 -20
  368. package/dist/lib/commands/docker.d.ts.map +0 -1
  369. package/dist/lib/commands/docker.js +0 -27
  370. package/dist/lib/commands/docker.js.map +0 -1
  371. package/dist/lib/domain/interfaces/IMcpClient.d.ts +0 -44
  372. package/dist/lib/domain/interfaces/IMcpClient.d.ts.map +0 -1
  373. package/dist/lib/domain/interfaces/IMcpClient.js.map +0 -1
  374. package/dist/lib/infrastructure/dal/RepositoryFactory.d.ts +0 -71
  375. package/dist/lib/infrastructure/dal/RepositoryFactory.d.ts.map +0 -1
  376. package/dist/lib/infrastructure/dal/RepositoryFactory.js +0 -134
  377. package/dist/lib/infrastructure/dal/RepositoryFactory.js.map +0 -1
  378. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.d.ts +0 -56
  379. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.d.ts.map +0 -1
  380. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js +0 -98
  381. package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js.map +0 -1
  382. package/dist/lib/infrastructure/dal/connections/ZepConnectionManager.d.ts +0 -53
  383. package/dist/lib/infrastructure/dal/connections/ZepConnectionManager.d.ts.map +0 -1
  384. package/dist/lib/infrastructure/dal/connections/ZepConnectionManager.js +0 -168
  385. package/dist/lib/infrastructure/dal/connections/ZepConnectionManager.js.map +0 -1
  386. package/dist/lib/infrastructure/dal/repositories/mcp/McpMemoryRepository.d.ts +0 -64
  387. package/dist/lib/infrastructure/dal/repositories/mcp/McpMemoryRepository.d.ts.map +0 -1
  388. package/dist/lib/infrastructure/dal/repositories/mcp/McpMemoryRepository.js +0 -145
  389. package/dist/lib/infrastructure/dal/repositories/mcp/McpMemoryRepository.js.map +0 -1
  390. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.d.ts +0 -60
  391. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.d.ts.map +0 -1
  392. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js +0 -186
  393. package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js.map +0 -1
  394. package/dist/lib/infrastructure/dal/repositories/mcp/index.d.ts +0 -6
  395. package/dist/lib/infrastructure/dal/repositories/mcp/index.d.ts.map +0 -1
  396. package/dist/lib/infrastructure/dal/repositories/mcp/index.js +0 -11
  397. package/dist/lib/infrastructure/dal/repositories/mcp/index.js.map +0 -1
  398. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jMemoryRepository.d.ts +0 -69
  399. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jMemoryRepository.d.ts.map +0 -1
  400. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jMemoryRepository.js +0 -299
  401. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jMemoryRepository.js.map +0 -1
  402. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts +0 -49
  403. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts.map +0 -1
  404. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js +0 -193
  405. package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js.map +0 -1
  406. package/dist/lib/infrastructure/dal/repositories/zep/ZepMemoryRepository.d.ts +0 -55
  407. package/dist/lib/infrastructure/dal/repositories/zep/ZepMemoryRepository.d.ts.map +0 -1
  408. package/dist/lib/infrastructure/dal/repositories/zep/ZepMemoryRepository.js +0 -165
  409. package/dist/lib/infrastructure/dal/repositories/zep/ZepMemoryRepository.js.map +0 -1
  410. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.d.ts +0 -58
  411. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.d.ts.map +0 -1
  412. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js +0 -210
  413. package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js.map +0 -1
  414. package/dist/lib/infrastructure/dal/repositories/zep/index.d.ts +0 -6
  415. package/dist/lib/infrastructure/dal/repositories/zep/index.d.ts.map +0 -1
  416. package/dist/lib/infrastructure/dal/repositories/zep/index.js +0 -11
  417. package/dist/lib/infrastructure/dal/repositories/zep/index.js.map +0 -1
  418. package/dist/lib/infrastructure/dal/routing/RepositoryRouter.d.ts +0 -73
  419. package/dist/lib/infrastructure/dal/routing/RepositoryRouter.d.ts.map +0 -1
  420. package/dist/lib/infrastructure/dal/routing/RepositoryRouter.js +0 -170
  421. package/dist/lib/infrastructure/dal/routing/RepositoryRouter.js.map +0 -1
  422. package/dist/lib/infrastructure/dal/routing/index.d.ts +0 -5
  423. package/dist/lib/infrastructure/dal/routing/index.d.ts.map +0 -1
  424. package/dist/lib/infrastructure/dal/routing/index.js +0 -10
  425. package/dist/lib/infrastructure/dal/routing/index.js.map +0 -1
  426. package/dist/lib/infrastructure/mcp/McpClient.d.ts +0 -71
  427. package/dist/lib/infrastructure/mcp/McpClient.d.ts.map +0 -1
  428. package/dist/lib/infrastructure/mcp/McpClient.js +0 -221
  429. package/dist/lib/infrastructure/mcp/McpClient.js.map +0 -1
  430. package/dist/lib/infrastructure/mcp/index.d.ts +0 -5
  431. package/dist/lib/infrastructure/mcp/index.d.ts.map +0 -1
  432. package/dist/lib/infrastructure/mcp/index.js +0 -9
  433. package/dist/lib/infrastructure/mcp/index.js.map +0 -1
  434. package/dist/lib/infrastructure/services/ConsolidationService.d.ts +0 -21
  435. package/dist/lib/infrastructure/services/ConsolidationService.d.ts.map +0 -1
  436. package/dist/lib/infrastructure/services/ConsolidationService.js +0 -134
  437. package/dist/lib/infrastructure/services/ConsolidationService.js.map +0 -1
  438. package/dist/lib/infrastructure/services/DeduplicationService.d.ts +0 -21
  439. package/dist/lib/infrastructure/services/DeduplicationService.d.ts.map +0 -1
  440. package/dist/lib/infrastructure/services/DeduplicationService.js +0 -111
  441. package/dist/lib/infrastructure/services/DeduplicationService.js.map +0 -1
  442. package/dist/lib/infrastructure/services/MemoryService.d.ts +0 -96
  443. package/dist/lib/infrastructure/services/MemoryService.d.ts.map +0 -1
  444. package/dist/lib/infrastructure/services/MemoryService.js +0 -486
  445. package/dist/lib/infrastructure/services/MemoryService.js.map +0 -1
  446. package/dist/lib/infrastructure/services/TaskService.d.ts +0 -38
  447. package/dist/lib/infrastructure/services/TaskService.d.ts.map +0 -1
  448. package/dist/lib/infrastructure/services/TaskService.js +0 -227
  449. package/dist/lib/infrastructure/services/TaskService.js.map +0 -1
  450. package/dist/lib/skills/common/group-id.d.ts +0 -49
  451. package/dist/lib/skills/common/group-id.d.ts.map +0 -1
  452. package/dist/lib/skills/common/group-id.js +0 -194
  453. package/dist/lib/skills/common/group-id.js.map +0 -1
  454. package/dist/lib/skills/git/bump-version.d.ts +0 -9
  455. package/dist/lib/skills/git/bump-version.d.ts.map +0 -1
  456. package/dist/lib/skills/git/bump-version.js.map +0 -1
  457. package/dist/lib/skills/init-review/ai-enrich.d.ts.map +0 -1
  458. package/dist/lib/skills/init-review/ai-enrich.js.map +0 -1
  459. package/dist/lib/skills/init-review/init-review.d.ts.map +0 -1
  460. package/dist/lib/skills/init-review/init-review.js.map +0 -1
  461. package/dist/lib/skills/shared/clients/McpClient.d.ts +0 -26
  462. package/dist/lib/skills/shared/clients/McpClient.d.ts.map +0 -1
  463. package/dist/lib/skills/shared/clients/McpClient.js +0 -162
  464. package/dist/lib/skills/shared/clients/McpClient.js.map +0 -1
  465. package/dist/lib/skills/shared/clients/Neo4jClient.d.ts +0 -15
  466. package/dist/lib/skills/shared/clients/Neo4jClient.d.ts.map +0 -1
  467. package/dist/lib/skills/shared/clients/Neo4jClient.js +0 -139
  468. package/dist/lib/skills/shared/clients/Neo4jClient.js.map +0 -1
  469. package/dist/lib/skills/shared/clients/ZepClient.d.ts +0 -14
  470. package/dist/lib/skills/shared/clients/ZepClient.d.ts.map +0 -1
  471. package/dist/lib/skills/shared/clients/ZepClient.js +0 -238
  472. package/dist/lib/skills/shared/clients/ZepClient.js.map +0 -1
  473. package/dist/lib/skills/shared/clients/interfaces/IMcpClient.d.ts +0 -56
  474. package/dist/lib/skills/shared/clients/interfaces/IMcpClient.d.ts.map +0 -1
  475. package/dist/lib/skills/shared/clients/interfaces/IMcpClient.js +0 -3
  476. package/dist/lib/skills/shared/clients/interfaces/IMcpClient.js.map +0 -1
  477. package/dist/lib/skills/shared/clients/interfaces/INeo4jClient.d.ts +0 -59
  478. package/dist/lib/skills/shared/clients/interfaces/INeo4jClient.d.ts.map +0 -1
  479. package/dist/lib/skills/shared/clients/interfaces/INeo4jClient.js +0 -3
  480. package/dist/lib/skills/shared/clients/interfaces/INeo4jClient.js.map +0 -1
  481. package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts +0 -152
  482. package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts.map +0 -1
  483. package/dist/lib/skills/shared/clients/interfaces/IZepClient.js +0 -3
  484. package/dist/lib/skills/shared/clients/interfaces/IZepClient.js.map +0 -1
  485. package/dist/lib/skills/shared/group-id.d.ts +0 -2
  486. package/dist/lib/skills/shared/group-id.d.ts.map +0 -1
  487. package/dist/lib/skills/shared/group-id.js +0 -18
  488. package/dist/lib/skills/shared/group-id.js.map +0 -1
  489. package/dist/lib/skills/shared/services/MemoryService.d.ts +0 -24
  490. package/dist/lib/skills/shared/services/MemoryService.d.ts.map +0 -1
  491. package/dist/lib/skills/shared/services/MemoryService.js +0 -574
  492. package/dist/lib/skills/shared/services/MemoryService.js.map +0 -1
  493. package/dist/lib/skills/shared/services/PromptService.d.ts +0 -28
  494. package/dist/lib/skills/shared/services/PromptService.d.ts.map +0 -1
  495. package/dist/lib/skills/shared/services/PromptService.js +0 -53
  496. package/dist/lib/skills/shared/services/PromptService.js.map +0 -1
  497. package/dist/lib/skills/shared/services/TaskService.d.ts +0 -24
  498. package/dist/lib/skills/shared/services/TaskService.d.ts.map +0 -1
  499. package/dist/lib/skills/shared/services/TaskService.js +0 -388
  500. package/dist/lib/skills/shared/services/TaskService.js.map +0 -1
  501. package/dist/lib/skills/shared/services/interfaces/IMemoryService.d.ts.map +0 -1
  502. package/dist/lib/skills/shared/services/interfaces/IMemoryService.js +0 -3
  503. package/dist/lib/skills/shared/services/interfaces/IMemoryService.js.map +0 -1
  504. package/dist/lib/skills/shared/services/interfaces/ITaskService.d.ts.map +0 -1
  505. package/dist/lib/skills/shared/services/interfaces/ITaskService.js +0 -7
  506. package/dist/lib/skills/shared/services/interfaces/ITaskService.js.map +0 -1
  507. package/dist/lib/skills/shared/utils/group-id.d.ts +0 -64
  508. package/dist/lib/skills/shared/utils/group-id.d.ts.map +0 -1
  509. package/dist/lib/skills/shared/utils/group-id.js +0 -176
  510. package/dist/lib/skills/shared/utils/group-id.js.map +0 -1
  511. package/dist/project/.lisa/docker/docker-compose.graphiti.yml +0 -45
  512. package/dist/project/.lisa/skills/git/SKILL.md +0 -171
  513. /package/dist/lib/skills/{init-review → review}/init-review.d.ts +0 -0
  514. /package/dist/lib/skills/{init-review → review}/init-review.js +0 -0
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonycasey/lisa",
3
- "version": "2.25.4",
3
+ "version": "2.27.0",
4
4
  "description": "Long-term memory for AI coding assistants. Automatic context persistence, task tracking, and knowledge capture across coding sessions. Supports Claude Code and OpenCode.",
5
5
  "bin": {
6
6
  "remember": "lib/cli.js",
@@ -15,12 +15,12 @@
15
15
  "./skills/memory": "./lib/skills/memory/memory.js",
16
16
  "./skills/tasks": "./lib/skills/tasks/tasks.js",
17
17
  "./skills/jira": "./lib/skills/jira/jira.js",
18
- "./skills/git/bump-version": "./lib/skills/git/bump-version.js",
18
+ "./skills/github/bump-version": "./lib/skills/github/bump-version.js",
19
19
  "./skills/lisa/storage": "./lib/skills/lisa/storage.js",
20
20
  "./skills/lisa/compile-skills": "./lib/skills/lisa/compile-skills.js",
21
21
  "./skills/prompt": "./lib/skills/prompt/prompt.js",
22
- "./skills/init-review": "./lib/skills/init-review/init-review.js",
23
- "./skills/init-review/ai-enrich": "./lib/skills/init-review/ai-enrich.js"
22
+ "./skills/review": "./lib/skills/review/init-review.js",
23
+ "./skills/review/ai-enrich": "./lib/skills/review/ai-enrich.js"
24
24
  },
25
25
  "engines": {
26
26
  "node": ">=18.0.0"
@@ -53,6 +53,7 @@
53
53
  "commander": "^11.1.0",
54
54
  "execa": "^8.0.1",
55
55
  "fs-extra": "^11.2.0",
56
+ "git-mem": "^0.1.1",
56
57
  "glob": "11.1.0",
57
58
  "neo4j-driver": "^6.0.1"
58
59
  }
@@ -1,16 +1,19 @@
1
1
  # Lisa Configuration
2
- # Storage mode: local (MCP), neo4j (direct queries), zep-cloud
3
- STORAGE_MODE=local
4
2
 
5
3
  # Logging: debug, info, warn, error, silent
6
4
  LOG_LEVEL=debug
7
5
  LOG_CONSOLE=true # write to file AND stderr
8
6
 
9
- # Graphiti MCP endpoint (for local mode)
10
- GRAPHITI_ENDPOINT={{GRAPHITI_ENDPOINT}}
7
+ # LLM Feature Toggles (comma-separated, or * for all)
8
+ # Features: summarization, extraction, deduplication, curation, test
9
+ # LISA_LLM_FEATURES=*
11
10
 
12
- # Neo4j connection (for neo4j mode)
13
- NEO4J_URI=bolt://localhost:7687
14
- NEO4J_USER=neo4j
15
- NEO4J_PASSWORD=demodemo
16
- NEO4J_DATABASE=neo4j
11
+ # LLM Monthly Budget Limit (in USD, e.g., 10.00)
12
+ # LISA_LLM_MONTHLY_LIMIT=
13
+
14
+ # LLM API Keys
15
+ # ANTHROPIC_API_KEY=
16
+ # OPENAI_API_KEY=
17
+
18
+ # Auto version bump on push (true, false, or default bump type: patch|minor|major)
19
+ # LISA_AUTO_BUMP_VERSION=true
@@ -5,8 +5,9 @@
5
5
  ### Branch Naming
6
6
 
7
7
  - Create a branch and PR for each issue
8
- - Use the issue number as the branch name (no text)
9
- - Examples: `11`, `12`, `23`
8
+ - Use the Linear issue identifier as the branch name (lowercase, hyphenated)
9
+ - Linear issues are displayed as `LISA-7` but branches use lowercase: `lisa-7`
10
+ - Examples: `lisa-7`, `lisa-12`, `lisa-23`
10
11
 
11
12
  ### Commit Messages
12
13
 
@@ -21,7 +22,7 @@
21
22
 
22
23
  Before committing, ensure:
23
24
 
24
- 1. **Cover new code with tests** - all new functionality must have test coverage
25
+ 1. **Cover new code with tests** - all new functionality must have test coverage to 90%
25
26
  2. **Run full tests** on the branch before committing
26
27
  3. **Check for linting errors**
27
28
  4. **Review staged changes** with `git diff --staged`
@@ -43,15 +44,8 @@ If the answer to any of these is **no**:
43
44
 
44
45
  ## Version & PR Creation
45
46
 
46
- Use the `/git` skill for version bumping and PR operations:
47
+ Use the `/github` skill for version bumping and PR operations:
47
48
 
48
- ```bash
49
- # Bump version before pushing (default: minor)
50
- lisa bump-version
51
-
52
- # Or specify: patch, minor, major
53
- lisa bump-version patch
54
- ```
55
49
 
56
50
  Use the `/pr` skill to create PRs:
57
51
 
@@ -67,7 +61,14 @@ lisa pr create --issue 40 --issue 41
67
61
 
68
62
  ### Update Ticket Status
69
63
 
70
- Use the `/jira` skill to transition tickets to Code Review:
64
+ Use Linear MCP to transition tickets to In Review:
65
+
66
+ ```
67
+ # Via Linear MCP (use issue identifier and state name)
68
+ mcp__linear-server__update_issue(id: "LISA-7", state: "In Review")
69
+ ```
70
+
71
+ Or use the `/jira` skill for Jira tickets:
71
72
 
72
73
  ```bash
73
74
  lisa jira transition PROJ-123 --to "Code Review"
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: github
3
- description: "GitHub Issues and Projects v2 management via gh CLI; triggers on 'github', 'create issue', 'list issues', 'github project', 'project board', 'sync tasks'."
3
+ description: "GitHub and Git workflow helpers, Issues and Projects v2 management via gh CLI; triggers on 'github', 'create issue', 'list issues', 'github project', 'project board', 'sync tasks', 'create pr', 'pr checks', 'retrigger tests', 'bump version', 'push'."
4
4
  ---
5
5
 
6
6
  ## Purpose
7
7
 
8
- Model-neutral helper to interact with GitHub Issues and Projects v2 using the gh CLI. Supports creating, listing, viewing, closing, and managing issues, managing GitHub Projects v2 boards, and bidirectional sync between Lisa tasks and GitHub Issues.
8
+ Model-neutral helper for GitHub and Git workflows including Issues, Projects v2, PR management, CI triggers, and version bumping. Uses the `gh` CLI.
9
9
 
10
10
  ## Triggers
11
11
 
@@ -16,6 +16,7 @@ Use when the user says:
16
16
  - "github project", "project board", "kanban"
17
17
  - "add to project", "update project field", "move to column"
18
18
  - "sync tasks with github", "import github issues", "export tasks to github"
19
+ - "create a pr", "check pr status", "retrigger tests", "toggle test label", "pr checks", "bump version", "push to remote"
19
20
 
20
21
  ## Configuration
21
22
 
@@ -398,18 +399,135 @@ lisa github sync --repo owner/repo
398
399
  lisa github sync --repo owner/repo --dry-run
399
400
  ```
400
401
 
402
+ ## Git Workflows
403
+
404
+ ### Check PR Status
405
+ ```bash
406
+ # View PR checks
407
+ gh pr checks <PR_NUMBER> --repo <owner/repo>
408
+
409
+ # View PR details
410
+ gh pr view <PR_NUMBER> --repo <owner/repo>
411
+ ```
412
+
413
+ ### Retrigger CI Tests
414
+ When a PR test fails and a fix is pushed, tests don't automatically re-run. Toggle the "TEST" label to trigger:
415
+
416
+ ```bash
417
+ # Remove and re-add TEST label to trigger CI
418
+ gh pr edit <PR_NUMBER> --repo <owner/repo> --remove-label "TEST"
419
+ sleep 2
420
+ gh pr edit <PR_NUMBER> --repo <owner/repo> --add-label "TEST"
421
+ ```
422
+
423
+ ### Check CircleCI Pipeline Status
424
+
425
+ **Prerequisites:** Set `CIRCLE_TOKEN` environment variable, or have CircleCI CLI configured at `~/.circleci/cli.yml`.
426
+
427
+ ```bash
428
+ # Get latest pipeline for a branch
429
+ curl -s -H "Circle-Token: ${CIRCLE_TOKEN}" \
430
+ "https://circleci.com/api/v2/project/gh/<owner>/<repo>/pipeline?branch=<BRANCH>" \
431
+ | jq '.items[0] | {number, state, created_at}'
432
+
433
+ # Get workflow status for a pipeline
434
+ curl -s -H "Circle-Token: ${CIRCLE_TOKEN}" \
435
+ "https://circleci.com/api/v2/pipeline/<PIPELINE_ID>/workflow" \
436
+ | jq '.items[] | {name, status}'
437
+ ```
438
+
439
+ ### Poll CI Until Completion
440
+ ```bash
441
+ # Poll current branch
442
+ lisa pr checks <PR_NUMBER>
443
+
444
+ # Or use gh CLI directly
445
+ gh pr checks <PR_NUMBER> --watch
446
+ ```
447
+
448
+ ### Bump Version
449
+ Bump the semantic version in package.json before pushing:
450
+
451
+ ```bash
452
+ # Bump minor version (default): 1.2.3 → 1.3.0
453
+ lisa bump-version
454
+
455
+ # Bump patch version: 1.2.3 → 1.2.4
456
+ lisa bump-version patch
457
+
458
+ # Bump major version: 1.2.3 → 2.0.0
459
+ lisa bump-version major
460
+ ```
461
+
462
+ #### Configuration
463
+
464
+ Control version bumping via `LISA_AUTO_BUMP_VERSION` in `.lisa/.env`:
465
+
466
+ | Value | Behavior |
467
+ |-------|----------|
468
+ | `true` (default) | Enabled, defaults to `minor` bump |
469
+ | `false` | Disabled, bump commands are skipped |
470
+ | `patch` / `minor` / `major` | Enabled with that bump type as the default |
471
+
472
+ ```bash
473
+ # In .lisa/.env:
474
+ LISA_AUTO_BUMP_VERSION=false # Disable version bumping
475
+ LISA_AUTO_BUMP_VERSION=patch # Default to patch bumps
476
+ ```
477
+
478
+ A CLI argument always overrides the env default: `lisa bump-version major` bumps major regardless of the env setting.
479
+
480
+ ### Workflow: Push with Version Bump
481
+
482
+ 1. **Bump version** (default: minor):
483
+
484
+ ```bash
485
+ lisa bump-version
486
+ ```
487
+
488
+ 2. **Commit the version bump**:
489
+
490
+ ```bash
491
+ git add package.json
492
+ git commit -m "chore: bump version to $(node -p "require('./package.json').version")"
493
+ ```
494
+
495
+ 3. **Push to remote**:
496
+
497
+ ```bash
498
+ git push
499
+ ```
500
+
501
+ ### Workflow: PR Test Failure
502
+
503
+ 1. **Identify the failure** - Check CircleCI logs or GitHub checks
504
+ 2. **Push a fix** - Commit and push the fix to the branch
505
+ 3. **Retrigger tests** - Toggle the TEST label:
506
+
507
+ ```bash
508
+ gh pr edit <PR_NUMBER> --repo <owner/repo> --remove-label "TEST" && \
509
+ sleep 2 && \
510
+ gh pr edit <PR_NUMBER> --repo <owner/repo> --add-label "TEST"
511
+ ```
512
+ 4. **Monitor** - Watch for the new pipeline to complete
513
+
401
514
  ## Cross-model checklist
515
+
402
516
  - Claude: Use JSON output for parsing; concise instructions
403
517
  - Gemini: Explicit commands; minimal formatting
404
518
  - All models: Always include --repo flag; parse JSON responses
405
519
 
406
520
  ## Notes
521
+
407
522
  - Requires `gh` CLI v2.0+ or `GITHUB_TOKEN` environment variable
523
+ - Requires CircleCI CLI/token for pipeline status
408
524
  - Projects v2 uses GraphQL API (requires appropriate permissions)
409
525
  - Rate limits apply per GitHub API policies
410
526
  - `--repo` flag is always required (no auto-detection)
527
+ - TEST label triggers CI workflow via GitHub Actions/CircleCI integration
411
528
 
412
529
  ## See Also
413
- - `/git` skill for PR creation, CI triggers, version bumping
530
+
531
+ - `/pr` skill for PR creation, polling, and review comment workflows
414
532
  - `/jira` skill for Jira integration (similar command structure)
415
533
  - `/tasks` skill for Lisa's internal task management
@@ -0,0 +1,8 @@
1
+ ## Summary
2
+ {{summary}}
3
+
4
+ ## Test plan
5
+ {{test_plan}}
6
+
7
+ ## Linked Issues
8
+ {{linked_issues}}
@@ -516,5 +516,4 @@ lisa pr poll 50
516
516
  - All: Neo4j must be running for watch/watching commands (lisa doctor to verify)
517
517
 
518
518
  ## Related Skills
519
- - `/git` - For version bumping, CI retriggers, and other git workflows
520
- - `/github` - For GitHub Issues and Projects operations
519
+ - `/github` - For GitHub Issues, Projects, version bumping, and CI retriggers
@@ -0,0 +1,8 @@
1
+ ## Summary
2
+ {{summary}}
3
+
4
+ ## Test plan
5
+ {{test_plan}}
6
+
7
+ ## Linked Issues
8
+ {{linked_issues}}
@@ -1,11 +1,11 @@
1
- # Init Review Skill
1
+ # Review Skill
2
2
 
3
3
  ## Purpose
4
- Automatically analyzes a codebase when Lisa is installed, creating a foundational memory of the project structure, technologies, and patterns. This init review serves as context for all future Claude sessions.
4
+ Automatically analyzes a codebase when Lisa is installed, creating a foundational memory of the project structure, technologies, and patterns. This review serves as context for all future Claude sessions.
5
5
 
6
6
  ## Triggers
7
7
  Use when the user says things like:
8
- - "run init review"
8
+ - "run review"
9
9
  - "analyze this codebase"
10
10
  - "scan the project"
11
11
  - "what is this project about"
@@ -14,7 +14,7 @@ Use when the user says things like:
14
14
  ## How to use
15
15
 
16
16
  ### Automatic (during npm install)
17
- The init review runs automatically when Lisa is installed via `npm install @tonycasey/lisa`. It:
17
+ The review runs automatically when Lisa is installed via `npm install @tonycasey/lisa`. It:
18
18
  1. Detects if the folder is a codebase
19
19
  2. Runs static analysis (language, framework, structure)
20
20
  3. Stores result as first memory
@@ -22,14 +22,14 @@ The init review runs automatically when Lisa is installed via `npm install @tony
22
22
 
23
23
  ### Manual commands
24
24
  ```bash
25
- # Run init review (or re-run with --force)
26
- lisa init-review run [--force]
25
+ # Run review (or re-run with --force)
26
+ lisa review run [--force]
27
27
 
28
- # Show current init review
29
- lisa init-review show
28
+ # Show current review
29
+ lisa review show
30
30
 
31
31
  # Check status (done, enriched, etc.)
32
- lisa init-review status
32
+ lisa review status
33
33
  ```
34
34
 
35
35
  ## I/O contract
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonycasey/lisa",
3
- "version": "2.25.4",
3
+ "version": "2.27.0",
4
4
  "description": "Long-term memory for AI coding assistants. Automatic context persistence, task tracking, and knowledge capture across coding sessions. Supports Claude Code and OpenCode.",
5
5
  "bin": {
6
6
  "lisa": "dist/lib/cli.js",
@@ -15,12 +15,12 @@
15
15
  "./skills/memory": "./dist/lib/skills/memory/memory.js",
16
16
  "./skills/tasks": "./dist/lib/skills/tasks/tasks.js",
17
17
  "./skills/jira": "./dist/lib/skills/jira/jira.js",
18
- "./skills/git/bump-version": "./dist/lib/skills/git/bump-version.js",
18
+ "./skills/github/bump-version": "./dist/lib/skills/github/bump-version.js",
19
19
  "./skills/lisa/storage": "./dist/lib/skills/lisa/storage.js",
20
20
  "./skills/lisa/compile-skills": "./dist/lib/skills/lisa/compile-skills.js",
21
21
  "./skills/prompt": "./dist/lib/skills/prompt/prompt.js",
22
- "./skills/init-review": "./dist/lib/skills/init-review/init-review.js",
23
- "./skills/init-review/ai-enrich": "./dist/lib/skills/init-review/ai-enrich.js"
22
+ "./skills/review": "./dist/lib/skills/review/init-review.js",
23
+ "./skills/review/ai-enrich": "./dist/lib/skills/review/ai-enrich.js"
24
24
  },
25
25
  "engines": {
26
26
  "node": ">=18.0.0"
@@ -82,6 +82,7 @@
82
82
  "commander": "^11.1.0",
83
83
  "execa": "^8.0.1",
84
84
  "fs-extra": "^11.2.0",
85
+ "git-mem": "^0.1.1",
85
86
  "glob": "11.1.0",
86
87
  "neo4j-driver": "^6.0.1"
87
88
  },
@@ -1,20 +0,0 @@
1
- /**
2
- * Docker Command Module
3
- *
4
- * Provides commands for managing Docker Compose services (Neo4j, Graphiti MCP).
5
- */
6
- import type { ICliServices } from './cli-services';
7
- export interface IDockerOptions {
8
- composeFile: string;
9
- }
10
- /**
11
- * Start Docker Compose services.
12
- * Runs `docker compose up -d` with the specified compose file.
13
- */
14
- export declare function upCommand(opts: IDockerOptions, services: ICliServices): Promise<void>;
15
- /**
16
- * Stop Docker Compose services.
17
- * Runs `docker compose down` with the specified compose file.
18
- */
19
- export declare function downCommand(opts: IDockerOptions, services: ICliServices): Promise<void>;
20
- //# sourceMappingURL=docker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../../src/lib/commands/docker.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAMnD,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7F"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- /**
3
- * Docker Command Module
4
- *
5
- * Provides commands for managing Docker Compose services (Neo4j, Graphiti MCP).
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.upCommand = upCommand;
9
- exports.downCommand = downCommand;
10
- // ============================================================================
11
- // Command Implementations
12
- // ============================================================================
13
- /**
14
- * Start Docker Compose services.
15
- * Runs `docker compose up -d` with the specified compose file.
16
- */
17
- async function upCommand(opts, services) {
18
- await services.docker.compose(opts.composeFile, ['up', '-d']);
19
- }
20
- /**
21
- * Stop Docker Compose services.
22
- * Runs `docker compose down` with the specified compose file.
23
- */
24
- async function downCommand(opts, services) {
25
- await services.docker.compose(opts.composeFile, ['down']);
26
- }
27
- //# sourceMappingURL=docker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../src/lib/commands/docker.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAoBH,8BAEC;AAMD,kCAEC;AAlBD,+EAA+E;AAC/E,0BAA0B;AAC1B,+EAA+E;AAE/E;;;GAGG;AACI,KAAK,UAAU,SAAS,CAAC,IAAoB,EAAE,QAAsB;IAC1E,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,WAAW,CAAC,IAAoB,EAAE,QAAsB;IAC5E,MAAM,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC"}
@@ -1,44 +0,0 @@
1
- /**
2
- * MCP (Model Context Protocol) client interface.
3
- * Handles communication with Graphiti MCP server or Zep Cloud.
4
- *
5
- * Session Management:
6
- * The MCP client manages sessions internally. Callers should NOT track
7
- * or pass session IDs manually. The client automatically:
8
- * - Initializes a session on first call
9
- * - Updates session ID when server returns a new one
10
- * - Handles session expiry by re-initializing
11
- */
12
- export interface IMcpClient {
13
- /**
14
- * Initialize the MCP session.
15
- * @param timeoutMs - Timeout in milliseconds
16
- * @returns Session ID
17
- */
18
- initialize(timeoutMs?: number): Promise<string>;
19
- /**
20
- * Make an RPC call to the MCP server.
21
- *
22
- * Session ID is managed internally - do not pass sessionId manually.
23
- * The client uses its cached session ID and updates it automatically.
24
- *
25
- * @param method - Method name (e.g., 'search_memory_facts', 'add_memory')
26
- * @param params - Method parameters
27
- * @param timeoutMs - Timeout in milliseconds
28
- * @returns Tuple of [result, sessionId] (sessionId returned for logging/debugging only)
29
- *
30
- * @deprecated The sessionId parameter is deprecated. Do not pass it manually.
31
- */
32
- call<T = unknown>(method: string, params?: Record<string, unknown>, sessionId?: string | null, timeoutMs?: number): Promise<[T, string]>;
33
- /**
34
- * Check if the MCP server is reachable.
35
- * @param timeoutMs - Timeout in milliseconds
36
- */
37
- ping(timeoutMs?: number): Promise<boolean>;
38
- /**
39
- * Get the current session ID.
40
- * For debugging/logging purposes only.
41
- */
42
- getSessionId(): string | null;
43
- }
44
- //# sourceMappingURL=IMcpClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMcpClient.d.ts","sourceRoot":"","sources":["../../../../src/lib/domain/interfaces/IMcpClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,WAAW,UAAU;IACzB;;;;OAIG;IACH,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhD;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EACd,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAExB;;;OAGG;IACH,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3C;;;OAGG;IACH,YAAY,IAAI,MAAM,GAAG,IAAI,CAAC;CAC/B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"IMcpClient.js","sourceRoot":"","sources":["../../../../src/lib/domain/interfaces/IMcpClient.ts"],"names":[],"mappings":""}
@@ -1,71 +0,0 @@
1
- /**
2
- * Repository Factory
3
- *
4
- * Creates and configures the repository router with all available backends.
5
- * Reads configuration from environment variables.
6
- */
7
- import type { IRepositoryRouter, BackendSource } from '../../domain/interfaces/dal';
8
- import type { ILogger } from '../../domain/interfaces';
9
- import { McpConnectionManager, Neo4jConnectionManager, ZepConnectionManager } from './connections';
10
- /**
11
- * Factory configuration options.
12
- */
13
- export interface IRepositoryFactoryConfig {
14
- /** Enable MCP backend (default: true if endpoint available) */
15
- mcp?: boolean;
16
- /** Enable Neo4j backend (default: true if URI available) */
17
- neo4j?: boolean;
18
- /** Enable Zep Cloud backend (default: true if API key available) */
19
- zep?: boolean;
20
- /** MCP endpoint override */
21
- mcpEndpoint?: string;
22
- /** MCP API key override */
23
- mcpApiKey?: string;
24
- /** Neo4j URI override */
25
- neo4jUri?: string;
26
- /** Neo4j username override */
27
- neo4jUsername?: string;
28
- /** Neo4j password override */
29
- neo4jPassword?: string;
30
- /** Neo4j database override */
31
- neo4jDatabase?: string;
32
- /** Zep API key override */
33
- zepApiKey?: string;
34
- /** Zep endpoint override */
35
- zepEndpoint?: string;
36
- /** Logger instance for diagnostic output */
37
- logger?: ILogger;
38
- }
39
- /**
40
- * Connection managers holder for lifecycle management.
41
- */
42
- export interface IConnectionManagers {
43
- mcp?: McpConnectionManager;
44
- neo4j?: Neo4jConnectionManager;
45
- zep?: ZepConnectionManager;
46
- }
47
- /**
48
- * Factory result including router and connection managers.
49
- */
50
- export interface IRepositoryFactoryResult {
51
- router: IRepositoryRouter;
52
- connections: IConnectionManagers;
53
- availableBackends: readonly BackendSource[];
54
- }
55
- /**
56
- * Create a fully configured repository router.
57
- *
58
- * This function:
59
- * 1. Detects available backends from environment
60
- * 2. Creates connection managers for each backend
61
- * 3. Creates repositories for each backend
62
- * 4. Registers everything with the router
63
- *
64
- * @param config Optional configuration overrides
65
- */
66
- export declare function createRepositoryRouter(config?: IRepositoryFactoryConfig): Promise<IRepositoryFactoryResult>;
67
- /**
68
- * Close all connection managers.
69
- */
70
- export declare function closeConnections(connections: IConnectionManagers): Promise<void>;
71
- //# sourceMappingURL=RepositoryFactory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RepositoryFactory.d.ts","sourceRoot":"","sources":["../../../../src/lib/infrastructure/dal/RepositoryFactory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACpF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EAIrB,MAAM,eAAe,CAAC;AAWvB;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,+DAA+D;IAC/D,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,4DAA4D;IAC5D,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,oBAAoB,CAAC;IAC3B,KAAK,CAAC,EAAE,sBAAsB,CAAC;IAC/B,GAAG,CAAC,EAAE,oBAAoB,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,WAAW,EAAE,mBAAmB,CAAC;IACjC,iBAAiB,EAAE,SAAS,aAAa,EAAE,CAAC;CAC7C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,CAAC,EAAE,wBAAwB,GAChC,OAAO,CAAC,wBAAwB,CAAC,CA0HnC;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CActF"}