spidersan 0.9.0 → 0.20.1

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 (467) hide show
  1. package/CHANGELOG.md +187 -0
  2. package/README.md +39 -280
  3. package/package.json +9 -13
  4. package/dist/bin/spidersan.d.ts +0 -9
  5. package/dist/bin/spidersan.d.ts.map +0 -1
  6. package/dist/bin/spidersan.js +0 -117
  7. package/dist/bin/spidersan.js.map +0 -1
  8. package/dist/commands/abandon.d.ts +0 -8
  9. package/dist/commands/abandon.d.ts.map +0 -1
  10. package/dist/commands/abandon.js +0 -43
  11. package/dist/commands/abandon.js.map +0 -1
  12. package/dist/commands/activate.d.ts +0 -9
  13. package/dist/commands/activate.d.ts.map +0 -1
  14. package/dist/commands/activate.js +0 -45
  15. package/dist/commands/activate.js.map +0 -1
  16. package/dist/commands/active-windows.d.ts +0 -16
  17. package/dist/commands/active-windows.d.ts.map +0 -1
  18. package/dist/commands/active-windows.js +0 -373
  19. package/dist/commands/active-windows.js.map +0 -1
  20. package/dist/commands/ai.d.ts +0 -15
  21. package/dist/commands/ai.d.ts.map +0 -1
  22. package/dist/commands/ai.js +0 -498
  23. package/dist/commands/ai.js.map +0 -1
  24. package/dist/commands/audit-mark.d.ts +0 -12
  25. package/dist/commands/audit-mark.d.ts.map +0 -1
  26. package/dist/commands/audit-mark.js +0 -204
  27. package/dist/commands/audit-mark.js.map +0 -1
  28. package/dist/commands/auto.d.ts +0 -8
  29. package/dist/commands/auto.d.ts.map +0 -1
  30. package/dist/commands/auto.js +0 -207
  31. package/dist/commands/auto.js.map +0 -1
  32. package/dist/commands/bot.d.ts +0 -16
  33. package/dist/commands/bot.d.ts.map +0 -1
  34. package/dist/commands/bot.js +0 -398
  35. package/dist/commands/bot.js.map +0 -1
  36. package/dist/commands/cleanup.d.ts +0 -8
  37. package/dist/commands/cleanup.d.ts.map +0 -1
  38. package/dist/commands/cleanup.js +0 -36
  39. package/dist/commands/cleanup.js.map +0 -1
  40. package/dist/commands/close.d.ts +0 -9
  41. package/dist/commands/close.d.ts.map +0 -1
  42. package/dist/commands/close.js +0 -129
  43. package/dist/commands/close.js.map +0 -1
  44. package/dist/commands/collab-sync.d.ts +0 -14
  45. package/dist/commands/collab-sync.d.ts.map +0 -1
  46. package/dist/commands/collab-sync.js +0 -264
  47. package/dist/commands/collab-sync.js.map +0 -1
  48. package/dist/commands/collab.d.ts +0 -6
  49. package/dist/commands/collab.d.ts.map +0 -1
  50. package/dist/commands/collab.js +0 -103
  51. package/dist/commands/collab.js.map +0 -1
  52. package/dist/commands/completions.d.ts +0 -8
  53. package/dist/commands/completions.d.ts.map +0 -1
  54. package/dist/commands/completions.js +0 -83
  55. package/dist/commands/completions.js.map +0 -1
  56. package/dist/commands/config.d.ts +0 -15
  57. package/dist/commands/config.d.ts.map +0 -1
  58. package/dist/commands/config.js +0 -337
  59. package/dist/commands/config.js.map +0 -1
  60. package/dist/commands/conflicts.d.ts +0 -12
  61. package/dist/commands/conflicts.d.ts.map +0 -1
  62. package/dist/commands/conflicts.js +0 -581
  63. package/dist/commands/conflicts.js.map +0 -1
  64. package/dist/commands/context.d.ts +0 -8
  65. package/dist/commands/context.d.ts.map +0 -1
  66. package/dist/commands/context.js +0 -104
  67. package/dist/commands/context.js.map +0 -1
  68. package/dist/commands/cross-conflicts.d.ts +0 -17
  69. package/dist/commands/cross-conflicts.d.ts.map +0 -1
  70. package/dist/commands/cross-conflicts.js +0 -268
  71. package/dist/commands/cross-conflicts.js.map +0 -1
  72. package/dist/commands/daily.d.ts +0 -7
  73. package/dist/commands/daily.d.ts.map +0 -1
  74. package/dist/commands/daily.js +0 -171
  75. package/dist/commands/daily.js.map +0 -1
  76. package/dist/commands/dashboard.d.ts +0 -22
  77. package/dist/commands/dashboard.d.ts.map +0 -1
  78. package/dist/commands/dashboard.js +0 -401
  79. package/dist/commands/dashboard.js.map +0 -1
  80. package/dist/commands/demo.d.ts +0 -3
  81. package/dist/commands/demo.d.ts.map +0 -1
  82. package/dist/commands/demo.js +0 -118
  83. package/dist/commands/demo.js.map +0 -1
  84. package/dist/commands/depends.d.ts +0 -8
  85. package/dist/commands/depends.d.ts.map +0 -1
  86. package/dist/commands/depends.js +0 -36
  87. package/dist/commands/depends.js.map +0 -1
  88. package/dist/commands/doctor.d.ts +0 -30
  89. package/dist/commands/doctor.d.ts.map +0 -1
  90. package/dist/commands/doctor.js +0 -540
  91. package/dist/commands/doctor.js.map +0 -1
  92. package/dist/commands/ecosystem-loader.d.ts +0 -14
  93. package/dist/commands/ecosystem-loader.d.ts.map +0 -1
  94. package/dist/commands/ecosystem-loader.js +0 -90
  95. package/dist/commands/ecosystem-loader.js.map +0 -1
  96. package/dist/commands/fleet-status.d.ts +0 -14
  97. package/dist/commands/fleet-status.d.ts.map +0 -1
  98. package/dist/commands/fleet-status.js +0 -127
  99. package/dist/commands/fleet-status.js.map +0 -1
  100. package/dist/commands/git-watch.d.ts +0 -24
  101. package/dist/commands/git-watch.d.ts.map +0 -1
  102. package/dist/commands/git-watch.js +0 -84
  103. package/dist/commands/git-watch.js.map +0 -1
  104. package/dist/commands/github-sync.d.ts +0 -9
  105. package/dist/commands/github-sync.d.ts.map +0 -1
  106. package/dist/commands/github-sync.js +0 -180
  107. package/dist/commands/github-sync.js.map +0 -1
  108. package/dist/commands/inbox.d.ts +0 -3
  109. package/dist/commands/inbox.d.ts.map +0 -1
  110. package/dist/commands/inbox.js +0 -120
  111. package/dist/commands/inbox.js.map +0 -1
  112. package/dist/commands/index.d.ts +0 -36
  113. package/dist/commands/index.d.ts.map +0 -1
  114. package/dist/commands/index.js +0 -44
  115. package/dist/commands/index.js.map +0 -1
  116. package/dist/commands/init.d.ts +0 -8
  117. package/dist/commands/init.d.ts.map +0 -1
  118. package/dist/commands/init.js +0 -23
  119. package/dist/commands/init.js.map +0 -1
  120. package/dist/commands/intent-scan.d.ts +0 -17
  121. package/dist/commands/intent-scan.d.ts.map +0 -1
  122. package/dist/commands/intent-scan.js +0 -336
  123. package/dist/commands/intent-scan.js.map +0 -1
  124. package/dist/commands/key-import.d.ts +0 -3
  125. package/dist/commands/key-import.d.ts.map +0 -1
  126. package/dist/commands/key-import.js +0 -54
  127. package/dist/commands/key-import.js.map +0 -1
  128. package/dist/commands/keygen.d.ts +0 -3
  129. package/dist/commands/keygen.d.ts.map +0 -1
  130. package/dist/commands/keygen.js +0 -53
  131. package/dist/commands/keygen.js.map +0 -1
  132. package/dist/commands/keys.d.ts +0 -3
  133. package/dist/commands/keys.d.ts.map +0 -1
  134. package/dist/commands/keys.js +0 -56
  135. package/dist/commands/keys.js.map +0 -1
  136. package/dist/commands/list.d.ts +0 -3
  137. package/dist/commands/list.d.ts.map +0 -1
  138. package/dist/commands/list.js +0 -45
  139. package/dist/commands/list.js.map +0 -1
  140. package/dist/commands/lock.d.ts +0 -11
  141. package/dist/commands/lock.d.ts.map +0 -1
  142. package/dist/commands/lock.js +0 -257
  143. package/dist/commands/lock.js.map +0 -1
  144. package/dist/commands/log.d.ts +0 -7
  145. package/dist/commands/log.d.ts.map +0 -1
  146. package/dist/commands/log.js +0 -110
  147. package/dist/commands/log.js.map +0 -1
  148. package/dist/commands/mcp-health.d.ts +0 -3
  149. package/dist/commands/mcp-health.d.ts.map +0 -1
  150. package/dist/commands/mcp-health.js +0 -305
  151. package/dist/commands/mcp-health.js.map +0 -1
  152. package/dist/commands/mcp-restart.d.ts +0 -3
  153. package/dist/commands/mcp-restart.d.ts.map +0 -1
  154. package/dist/commands/mcp-restart.js +0 -176
  155. package/dist/commands/mcp-restart.js.map +0 -1
  156. package/dist/commands/merge-order.d.ts +0 -9
  157. package/dist/commands/merge-order.d.ts.map +0 -1
  158. package/dist/commands/merge-order.js +0 -96
  159. package/dist/commands/merge-order.js.map +0 -1
  160. package/dist/commands/merged.d.ts +0 -8
  161. package/dist/commands/merged.d.ts.map +0 -1
  162. package/dist/commands/merged.js +0 -33
  163. package/dist/commands/merged.js.map +0 -1
  164. package/dist/commands/monitor.d.ts +0 -3
  165. package/dist/commands/monitor.d.ts.map +0 -1
  166. package/dist/commands/monitor.js +0 -153
  167. package/dist/commands/monitor.js.map +0 -1
  168. package/dist/commands/msg-read.d.ts +0 -3
  169. package/dist/commands/msg-read.d.ts.map +0 -1
  170. package/dist/commands/msg-read.js +0 -95
  171. package/dist/commands/msg-read.js.map +0 -1
  172. package/dist/commands/pulse.d.ts +0 -13
  173. package/dist/commands/pulse.d.ts.map +0 -1
  174. package/dist/commands/pulse.js +0 -245
  175. package/dist/commands/pulse.js.map +0 -1
  176. package/dist/commands/queen.d.ts +0 -25
  177. package/dist/commands/queen.d.ts.map +0 -1
  178. package/dist/commands/queen.js +0 -326
  179. package/dist/commands/queen.js.map +0 -1
  180. package/dist/commands/radar.d.ts +0 -3
  181. package/dist/commands/radar.d.ts.map +0 -1
  182. package/dist/commands/radar.js +0 -147
  183. package/dist/commands/radar.js.map +0 -1
  184. package/dist/commands/ready-check.d.ts +0 -11
  185. package/dist/commands/ready-check.d.ts.map +0 -1
  186. package/dist/commands/ready-check.js +0 -147
  187. package/dist/commands/ready-check.js.map +0 -1
  188. package/dist/commands/rebase-helper.d.ts +0 -3
  189. package/dist/commands/rebase-helper.d.ts.map +0 -1
  190. package/dist/commands/rebase-helper.js +0 -52
  191. package/dist/commands/rebase-helper.js.map +0 -1
  192. package/dist/commands/register.d.ts +0 -5
  193. package/dist/commands/register.d.ts.map +0 -1
  194. package/dist/commands/register.js +0 -156
  195. package/dist/commands/register.js.map +0 -1
  196. package/dist/commands/registry-sync.d.ts +0 -9
  197. package/dist/commands/registry-sync.d.ts.map +0 -1
  198. package/dist/commands/registry-sync.js +0 -163
  199. package/dist/commands/registry-sync.js.map +0 -1
  200. package/dist/commands/rescue.d.ts +0 -11
  201. package/dist/commands/rescue.d.ts.map +0 -1
  202. package/dist/commands/rescue.js +0 -147
  203. package/dist/commands/rescue.js.map +0 -1
  204. package/dist/commands/semantic.d.ts +0 -3
  205. package/dist/commands/semantic.d.ts.map +0 -1
  206. package/dist/commands/semantic.js +0 -62
  207. package/dist/commands/semantic.js.map +0 -1
  208. package/dist/commands/send.d.ts +0 -3
  209. package/dist/commands/send.d.ts.map +0 -1
  210. package/dist/commands/send.js +0 -121
  211. package/dist/commands/send.js.map +0 -1
  212. package/dist/commands/stale.d.ts +0 -17
  213. package/dist/commands/stale.d.ts.map +0 -1
  214. package/dist/commands/stale.js +0 -131
  215. package/dist/commands/stale.js.map +0 -1
  216. package/dist/commands/status.d.ts +0 -9
  217. package/dist/commands/status.d.ts.map +0 -1
  218. package/dist/commands/status.js +0 -41
  219. package/dist/commands/status.js.map +0 -1
  220. package/dist/commands/sync-advisor.d.ts +0 -14
  221. package/dist/commands/sync-advisor.d.ts.map +0 -1
  222. package/dist/commands/sync-advisor.js +0 -110
  223. package/dist/commands/sync-advisor.js.map +0 -1
  224. package/dist/commands/sync.d.ts +0 -8
  225. package/dist/commands/sync.d.ts.map +0 -1
  226. package/dist/commands/sync.js +0 -60
  227. package/dist/commands/sync.js.map +0 -1
  228. package/dist/commands/tension.d.ts +0 -12
  229. package/dist/commands/tension.d.ts.map +0 -1
  230. package/dist/commands/tension.js +0 -262
  231. package/dist/commands/tension.js.map +0 -1
  232. package/dist/commands/torrent.d.ts +0 -9
  233. package/dist/commands/torrent.d.ts.map +0 -1
  234. package/dist/commands/torrent.js +0 -470
  235. package/dist/commands/torrent.js.map +0 -1
  236. package/dist/commands/tui.d.ts +0 -8
  237. package/dist/commands/tui.d.ts.map +0 -1
  238. package/dist/commands/tui.js +0 -15
  239. package/dist/commands/tui.js.map +0 -1
  240. package/dist/commands/wake.d.ts +0 -9
  241. package/dist/commands/wake.d.ts.map +0 -1
  242. package/dist/commands/wake.js +0 -188
  243. package/dist/commands/wake.js.map +0 -1
  244. package/dist/commands/watch.d.ts +0 -3
  245. package/dist/commands/watch.d.ts.map +0 -1
  246. package/dist/commands/watch.js +0 -428
  247. package/dist/commands/watch.js.map +0 -1
  248. package/dist/commands/welcome.d.ts +0 -8
  249. package/dist/commands/welcome.d.ts.map +0 -1
  250. package/dist/commands/welcome.js +0 -85
  251. package/dist/commands/welcome.js.map +0 -1
  252. package/dist/commands/who-owns.d.ts +0 -3
  253. package/dist/commands/who-owns.d.ts.map +0 -1
  254. package/dist/commands/who-owns.js +0 -68
  255. package/dist/commands/who-owns.js.map +0 -1
  256. package/dist/commands/who-touched.d.ts +0 -9
  257. package/dist/commands/who-touched.d.ts.map +0 -1
  258. package/dist/commands/who-touched.js +0 -198
  259. package/dist/commands/who-touched.js.map +0 -1
  260. package/dist/index.d.ts +0 -11
  261. package/dist/index.d.ts.map +0 -1
  262. package/dist/index.js +0 -11
  263. package/dist/index.js.map +0 -1
  264. package/dist/lib/activity.d.ts +0 -53
  265. package/dist/lib/activity.d.ts.map +0 -1
  266. package/dist/lib/activity.js +0 -267
  267. package/dist/lib/activity.js.map +0 -1
  268. package/dist/lib/agent-errors.d.ts +0 -41
  269. package/dist/lib/agent-errors.d.ts.map +0 -1
  270. package/dist/lib/agent-errors.js +0 -145
  271. package/dist/lib/agent-errors.js.map +0 -1
  272. package/dist/lib/ai/context-builder.d.ts +0 -16
  273. package/dist/lib/ai/context-builder.d.ts.map +0 -1
  274. package/dist/lib/ai/context-builder.js +0 -216
  275. package/dist/lib/ai/context-builder.js.map +0 -1
  276. package/dist/lib/ai/event-handler.d.ts +0 -21
  277. package/dist/lib/ai/event-handler.d.ts.map +0 -1
  278. package/dist/lib/ai/event-handler.js +0 -98
  279. package/dist/lib/ai/event-handler.js.map +0 -1
  280. package/dist/lib/ai/index.d.ts +0 -13
  281. package/dist/lib/ai/index.d.ts.map +0 -1
  282. package/dist/lib/ai/index.js +0 -11
  283. package/dist/lib/ai/index.js.map +0 -1
  284. package/dist/lib/ai/llm-client.d.ts +0 -37
  285. package/dist/lib/ai/llm-client.d.ts.map +0 -1
  286. package/dist/lib/ai/llm-client.js +0 -225
  287. package/dist/lib/ai/llm-client.js.map +0 -1
  288. package/dist/lib/ai/reasoner.d.ts +0 -11
  289. package/dist/lib/ai/reasoner.d.ts.map +0 -1
  290. package/dist/lib/ai/reasoner.js +0 -246
  291. package/dist/lib/ai/reasoner.js.map +0 -1
  292. package/dist/lib/ai/setup.d.ts +0 -40
  293. package/dist/lib/ai/setup.d.ts.map +0 -1
  294. package/dist/lib/ai/setup.js +0 -154
  295. package/dist/lib/ai/setup.js.map +0 -1
  296. package/dist/lib/ai/types.d.ts +0 -135
  297. package/dist/lib/ai/types.d.ts.map +0 -1
  298. package/dist/lib/ai/types.js +0 -39
  299. package/dist/lib/ai/types.js.map +0 -1
  300. package/dist/lib/ast.d.ts +0 -36
  301. package/dist/lib/ast.d.ts.map +0 -1
  302. package/dist/lib/ast.js +0 -135
  303. package/dist/lib/ast.js.map +0 -1
  304. package/dist/lib/colony-subscriber.d.ts +0 -56
  305. package/dist/lib/colony-subscriber.d.ts.map +0 -1
  306. package/dist/lib/colony-subscriber.js +0 -265
  307. package/dist/lib/colony-subscriber.js.map +0 -1
  308. package/dist/lib/config.d.ts +0 -62
  309. package/dist/lib/config.d.ts.map +0 -1
  310. package/dist/lib/config.js +0 -230
  311. package/dist/lib/config.js.map +0 -1
  312. package/dist/lib/conflict-analyzer.d.ts +0 -33
  313. package/dist/lib/conflict-analyzer.d.ts.map +0 -1
  314. package/dist/lib/conflict-analyzer.js +0 -114
  315. package/dist/lib/conflict-analyzer.js.map +0 -1
  316. package/dist/lib/conflict-renderer.d.ts +0 -7
  317. package/dist/lib/conflict-renderer.d.ts.map +0 -1
  318. package/dist/lib/conflict-renderer.js +0 -162
  319. package/dist/lib/conflict-renderer.js.map +0 -1
  320. package/dist/lib/conflict-tier.d.ts +0 -20
  321. package/dist/lib/conflict-tier.d.ts.map +0 -1
  322. package/dist/lib/conflict-tier.js +0 -49
  323. package/dist/lib/conflict-tier.js.map +0 -1
  324. package/dist/lib/crdt.d.ts +0 -83
  325. package/dist/lib/crdt.d.ts.map +0 -1
  326. package/dist/lib/crdt.js +0 -160
  327. package/dist/lib/crdt.js.map +0 -1
  328. package/dist/lib/crypto.d.ts +0 -71
  329. package/dist/lib/crypto.d.ts.map +0 -1
  330. package/dist/lib/crypto.js +0 -176
  331. package/dist/lib/crypto.js.map +0 -1
  332. package/dist/lib/daily-bridge.d.ts +0 -41
  333. package/dist/lib/daily-bridge.d.ts.map +0 -1
  334. package/dist/lib/daily-bridge.js +0 -186
  335. package/dist/lib/daily-bridge.js.map +0 -1
  336. package/dist/lib/errors.d.ts +0 -35
  337. package/dist/lib/errors.d.ts.map +0 -1
  338. package/dist/lib/errors.js +0 -71
  339. package/dist/lib/errors.js.map +0 -1
  340. package/dist/lib/git-events-subscriber.d.ts +0 -59
  341. package/dist/lib/git-events-subscriber.d.ts.map +0 -1
  342. package/dist/lib/git-events-subscriber.js +0 -779
  343. package/dist/lib/git-events-subscriber.js.map +0 -1
  344. package/dist/lib/git.d.ts +0 -15
  345. package/dist/lib/git.d.ts.map +0 -1
  346. package/dist/lib/git.js +0 -180
  347. package/dist/lib/git.js.map +0 -1
  348. package/dist/lib/github.d.ts +0 -83
  349. package/dist/lib/github.d.ts.map +0 -1
  350. package/dist/lib/github.js +0 -211
  351. package/dist/lib/github.js.map +0 -1
  352. package/dist/lib/graph.d.ts +0 -23
  353. package/dist/lib/graph.d.ts.map +0 -1
  354. package/dist/lib/graph.js +0 -134
  355. package/dist/lib/graph.js.map +0 -1
  356. package/dist/lib/hub.d.ts +0 -31
  357. package/dist/lib/hub.d.ts.map +0 -1
  358. package/dist/lib/hub.js +0 -92
  359. package/dist/lib/hub.js.map +0 -1
  360. package/dist/lib/license.d.ts +0 -61
  361. package/dist/lib/license.d.ts.map +0 -1
  362. package/dist/lib/license.js +0 -171
  363. package/dist/lib/license.js.map +0 -1
  364. package/dist/lib/regex-utils.d.ts +0 -6
  365. package/dist/lib/regex-utils.d.ts.map +0 -1
  366. package/dist/lib/regex-utils.js +0 -24
  367. package/dist/lib/regex-utils.js.map +0 -1
  368. package/dist/lib/remote-drift.d.ts +0 -60
  369. package/dist/lib/remote-drift.d.ts.map +0 -1
  370. package/dist/lib/remote-drift.js +0 -225
  371. package/dist/lib/remote-drift.js.map +0 -1
  372. package/dist/lib/repo-scanner.d.ts +0 -32
  373. package/dist/lib/repo-scanner.d.ts.map +0 -1
  374. package/dist/lib/repo-scanner.js +0 -160
  375. package/dist/lib/repo-scanner.js.map +0 -1
  376. package/dist/lib/salvage-analyzer.d.ts +0 -29
  377. package/dist/lib/salvage-analyzer.d.ts.map +0 -1
  378. package/dist/lib/salvage-analyzer.js +0 -121
  379. package/dist/lib/salvage-analyzer.js.map +0 -1
  380. package/dist/lib/security.d.ts +0 -77
  381. package/dist/lib/security.d.ts.map +0 -1
  382. package/dist/lib/security.js +0 -190
  383. package/dist/lib/security.js.map +0 -1
  384. package/dist/lib/session-logger.d.ts +0 -54
  385. package/dist/lib/session-logger.d.ts.map +0 -1
  386. package/dist/lib/session-logger.js +0 -136
  387. package/dist/lib/session-logger.js.map +0 -1
  388. package/dist/lib/symbol-extractor.d.ts +0 -41
  389. package/dist/lib/symbol-extractor.d.ts.map +0 -1
  390. package/dist/lib/symbol-extractor.js +0 -78
  391. package/dist/lib/symbol-extractor.js.map +0 -1
  392. package/dist/lib/update-check.d.ts +0 -11
  393. package/dist/lib/update-check.d.ts.map +0 -1
  394. package/dist/lib/update-check.js +0 -113
  395. package/dist/lib/update-check.js.map +0 -1
  396. package/dist/storage/adapter.d.ts +0 -62
  397. package/dist/storage/adapter.d.ts.map +0 -1
  398. package/dist/storage/adapter.js +0 -8
  399. package/dist/storage/adapter.js.map +0 -1
  400. package/dist/storage/branch-registry-store.d.ts +0 -13
  401. package/dist/storage/branch-registry-store.d.ts.map +0 -1
  402. package/dist/storage/branch-registry-store.js +0 -2
  403. package/dist/storage/branch-registry-store.js.map +0 -1
  404. package/dist/storage/factory.d.ts +0 -10
  405. package/dist/storage/factory.d.ts.map +0 -1
  406. package/dist/storage/factory.js +0 -38
  407. package/dist/storage/factory.js.map +0 -1
  408. package/dist/storage/git-messages.d.ts +0 -53
  409. package/dist/storage/git-messages.d.ts.map +0 -1
  410. package/dist/storage/git-messages.js +0 -376
  411. package/dist/storage/git-messages.js.map +0 -1
  412. package/dist/storage/index.d.ts +0 -10
  413. package/dist/storage/index.d.ts.map +0 -1
  414. package/dist/storage/index.js +0 -11
  415. package/dist/storage/index.js.map +0 -1
  416. package/dist/storage/json-branch-registry-store.d.ts +0 -19
  417. package/dist/storage/json-branch-registry-store.d.ts.map +0 -1
  418. package/dist/storage/json-branch-registry-store.js +0 -112
  419. package/dist/storage/json-branch-registry-store.js.map +0 -1
  420. package/dist/storage/local-messages.d.ts +0 -37
  421. package/dist/storage/local-messages.d.ts.map +0 -1
  422. package/dist/storage/local-messages.js +0 -151
  423. package/dist/storage/local-messages.js.map +0 -1
  424. package/dist/storage/local.d.ts +0 -20
  425. package/dist/storage/local.d.ts.map +0 -1
  426. package/dist/storage/local.js +0 -40
  427. package/dist/storage/local.js.map +0 -1
  428. package/dist/storage/memory-branch-registry-store.d.ts +0 -16
  429. package/dist/storage/memory-branch-registry-store.d.ts.map +0 -1
  430. package/dist/storage/memory-branch-registry-store.js +0 -65
  431. package/dist/storage/memory-branch-registry-store.js.map +0 -1
  432. package/dist/storage/message-adapter.d.ts +0 -86
  433. package/dist/storage/message-adapter.d.ts.map +0 -1
  434. package/dist/storage/message-adapter.js +0 -28
  435. package/dist/storage/message-adapter.js.map +0 -1
  436. package/dist/storage/message-factory.d.ts +0 -36
  437. package/dist/storage/message-factory.d.ts.map +0 -1
  438. package/dist/storage/message-factory.js +0 -99
  439. package/dist/storage/message-factory.js.map +0 -1
  440. package/dist/storage/mycmail-adapter.d.ts +0 -38
  441. package/dist/storage/mycmail-adapter.d.ts.map +0 -1
  442. package/dist/storage/mycmail-adapter.js +0 -300
  443. package/dist/storage/mycmail-adapter.js.map +0 -1
  444. package/dist/storage/supabase-registry-sync-client-impl.d.ts +0 -46
  445. package/dist/storage/supabase-registry-sync-client-impl.d.ts.map +0 -1
  446. package/dist/storage/supabase-registry-sync-client-impl.js +0 -322
  447. package/dist/storage/supabase-registry-sync-client-impl.js.map +0 -1
  448. package/dist/storage/supabase-registry-sync-client.d.ts +0 -9
  449. package/dist/storage/supabase-registry-sync-client.d.ts.map +0 -1
  450. package/dist/storage/supabase-registry-sync-client.js +0 -2
  451. package/dist/storage/supabase-registry-sync-client.js.map +0 -1
  452. package/dist/storage/supabase.d.ts +0 -34
  453. package/dist/storage/supabase.d.ts.map +0 -1
  454. package/dist/storage/supabase.js +0 -74
  455. package/dist/storage/supabase.js.map +0 -1
  456. package/dist/tui/dashboard.d.ts +0 -35
  457. package/dist/tui/dashboard.d.ts.map +0 -1
  458. package/dist/tui/dashboard.js +0 -199
  459. package/dist/tui/dashboard.js.map +0 -1
  460. package/dist/tui/screen.d.ts +0 -14
  461. package/dist/tui/screen.d.ts.map +0 -1
  462. package/dist/tui/screen.js +0 -138
  463. package/dist/tui/screen.js.map +0 -1
  464. package/dist/types/cloud.d.ts +0 -101
  465. package/dist/types/cloud.d.ts.map +0 -1
  466. package/dist/types/cloud.js +0 -13
  467. package/dist/types/cloud.js.map +0 -1
@@ -1,373 +0,0 @@
1
- /**
2
- * spidersan active-windows
3
- *
4
- * Layer 4: Temporal Conflict Detection
5
- *
6
- * Tracks when agents are actively working and detects
7
- * overlapping work sessions on the same files/areas.
8
- *
9
- * Usage:
10
- * spidersan active-windows # Show current active sessions
11
- * spidersan active-windows --history # Show recent session overlaps
12
- * spidersan active-windows --files # Group by files touched
13
- */
14
- import { Command } from 'commander';
15
- import { readFileSync, readdirSync, existsSync } from 'fs';
16
- import { join } from 'path';
17
- import { execSync } from 'child_process';
18
- import chalk from 'chalk';
19
- // Parse collab for dawn/close entries
20
- function findSessionBoundaries(collabDir) {
21
- const sessions = new Map();
22
- const files = readdirSync(collabDir)
23
- .filter(f => f.match(/^\d{4}-\d{2}-\d{2}-daily\.md$/))
24
- .sort()
25
- .slice(-3); // Last 3 days
26
- for (const file of files) {
27
- const dateMatch = file.match(/^(\d{4}-\d{2}-\d{2})/);
28
- if (!dateMatch)
29
- continue;
30
- const dateStr = dateMatch[1];
31
- const content = readFileSync(join(collabDir, file), 'utf-8');
32
- // Find agent entries with times
33
- const entryPattern = /^##\s+([\p{Emoji}]+)\s+(\w+)\s*[—-]\s*(\d{1,2}):(\d{2})/gmu;
34
- let match;
35
- while ((match = entryPattern.exec(content)) !== null) {
36
- const agent = match[2];
37
- const hour = parseInt(match[3]);
38
- const minute = parseInt(match[4]);
39
- const entryTime = new Date(`${dateStr}T${hour.toString().padStart(2, '0')}:${minute.toString().padStart(2, '0')}:00`);
40
- // Check if it's a dawn or close entry
41
- const contextStart = match.index;
42
- const contextEnd = Math.min(content.length, contextStart + 500);
43
- const context = content.substring(contextStart, contextEnd).toLowerCase();
44
- if (!sessions.has(agent)) {
45
- sessions.set(agent, []);
46
- }
47
- const agentSessions = sessions.get(agent);
48
- if (context.includes('dawn') || context.includes('morning') || context.includes('joining')) {
49
- // Start of session
50
- agentSessions.push({ dawn: entryTime });
51
- }
52
- else if (context.includes('close') || context.includes('closing') || context.includes('night')) {
53
- // End of session
54
- const lastSession = agentSessions[agentSessions.length - 1];
55
- if (lastSession && !lastSession.close) {
56
- lastSession.close = entryTime;
57
- }
58
- }
59
- }
60
- }
61
- return sessions;
62
- }
63
- // Get recent git activity per author
64
- function getGitActivity(repoPath, hours) {
65
- const activity = new Map();
66
- try {
67
- const since = new Date(Date.now() - hours * 60 * 60 * 1000);
68
- const sinceStr = since.toISOString();
69
- // Get commits with files changed
70
- const log = execSync(`git log --since="${sinceStr}" --name-only --pretty=format:"COMMIT:%h|%an|%ai" 2>/dev/null`, { cwd: repoPath, encoding: 'utf-8', maxBuffer: 10 * 1024 * 1024 });
71
- const lines = log.split('\n');
72
- let currentAuthor = '';
73
- let currentTime = null;
74
- let currentFiles = [];
75
- for (const line of lines) {
76
- if (line.startsWith('COMMIT:')) {
77
- // Save previous commit
78
- if (currentAuthor && currentFiles.length > 0 && currentTime) {
79
- if (!activity.has(currentAuthor)) {
80
- activity.set(currentAuthor, []);
81
- }
82
- activity.get(currentAuthor).push({
83
- files: [...currentFiles],
84
- timestamp: currentTime
85
- });
86
- }
87
- // Parse new commit
88
- const parts = line.substring(7).split('|');
89
- currentAuthor = parts[1] || 'Unknown';
90
- currentTime = new Date(parts[2]);
91
- currentFiles = [];
92
- }
93
- else if (line.trim()) {
94
- currentFiles.push(line.trim());
95
- }
96
- }
97
- // Don't forget last commit
98
- if (currentAuthor && currentFiles.length > 0 && currentTime) {
99
- if (!activity.has(currentAuthor)) {
100
- activity.set(currentAuthor, []);
101
- }
102
- activity.get(currentAuthor).push({
103
- files: [...currentFiles],
104
- timestamp: currentTime
105
- });
106
- }
107
- }
108
- catch (e) {
109
- // Not a git repo or no commits
110
- }
111
- return activity;
112
- }
113
- // Build work windows from git activity
114
- function buildWorkWindows(repoPath, hours) {
115
- const activity = getGitActivity(repoPath, hours);
116
- const windows = [];
117
- // Get machine name from hostname
118
- let machine = 'Unknown';
119
- try {
120
- machine = execSync('hostname', { encoding: 'utf-8' }).trim();
121
- }
122
- catch {
123
- // Ignore errors getting hostname
124
- }
125
- for (const [author, commits] of activity) {
126
- if (commits.length === 0)
127
- continue;
128
- // Sort by time
129
- commits.sort((a, b) => a.timestamp.getTime() - b.timestamp.getTime());
130
- // Group commits into windows (gap > 30 min = new window)
131
- let windowStart = commits[0].timestamp;
132
- let windowEnd = commits[0].timestamp;
133
- let windowFiles = new Set(commits[0].files);
134
- for (let i = 1; i < commits.length; i++) {
135
- const gap = commits[i].timestamp.getTime() - windowEnd.getTime();
136
- if (gap > 30 * 60 * 1000) { // 30 min gap
137
- // Save current window
138
- windows.push({
139
- agent: author,
140
- machine,
141
- startTime: windowStart,
142
- endTime: windowEnd,
143
- filesModified: Array.from(windowFiles),
144
- areasWorked: extractAreas(Array.from(windowFiles))
145
- });
146
- // Start new window
147
- windowStart = commits[i].timestamp;
148
- windowEnd = commits[i].timestamp;
149
- windowFiles = new Set(commits[i].files);
150
- }
151
- else {
152
- windowEnd = commits[i].timestamp;
153
- commits[i].files.forEach(f => windowFiles.add(f));
154
- }
155
- }
156
- // Check if last window is still active (last commit < 2 hours ago)
157
- const isActive = Date.now() - windowEnd.getTime() < 2 * 60 * 60 * 1000;
158
- windows.push({
159
- agent: author,
160
- machine,
161
- startTime: windowStart,
162
- endTime: isActive ? null : windowEnd,
163
- filesModified: Array.from(windowFiles),
164
- areasWorked: extractAreas(Array.from(windowFiles))
165
- });
166
- }
167
- return windows;
168
- }
169
- function extractAreas(files) {
170
- const areas = new Set();
171
- for (const file of files) {
172
- const parts = file.split('/');
173
- if (parts.length > 1) {
174
- areas.add(parts[0]); // Top level directory
175
- if (parts.length > 2) {
176
- areas.add(`${parts[0]}/${parts[1]}`); // Second level
177
- }
178
- }
179
- }
180
- return Array.from(areas);
181
- }
182
- function findWindowOverlaps(windows) {
183
- const overlaps = [];
184
- for (let i = 0; i < windows.length; i++) {
185
- for (let j = i + 1; j < windows.length; j++) {
186
- const w1 = windows[i];
187
- const w2 = windows[j];
188
- // Same agent can't conflict with self
189
- if (w1.agent === w2.agent)
190
- continue;
191
- // Calculate time overlap
192
- const start1 = w1.startTime.getTime();
193
- const end1 = (w1.endTime || new Date()).getTime();
194
- const start2 = w2.startTime.getTime();
195
- const end2 = (w2.endTime || new Date()).getTime();
196
- const overlapStart = Math.max(start1, start2);
197
- const overlapEnd = Math.min(end1, end2);
198
- if (overlapStart >= overlapEnd)
199
- continue; // No time overlap
200
- const overlapMinutes = Math.round((overlapEnd - overlapStart) / (60 * 1000));
201
- // Check file/area overlap
202
- const sharedFiles = w1.filesModified.filter(f => w2.filesModified.includes(f));
203
- const sharedAreas = w1.areasWorked.filter(a => w2.areasWorked.includes(a));
204
- // Determine severity
205
- let severity = 'safe';
206
- if (sharedFiles.length > 0) {
207
- severity = 'conflict';
208
- }
209
- else if (sharedAreas.length > 0) {
210
- severity = 'warn';
211
- }
212
- if (severity !== 'safe') {
213
- overlaps.push({
214
- window1: w1,
215
- window2: w2,
216
- overlapMinutes,
217
- sharedFiles,
218
- sharedAreas,
219
- severity
220
- });
221
- }
222
- }
223
- }
224
- return overlaps.sort((a, b) => {
225
- if (a.severity === 'conflict' && b.severity !== 'conflict')
226
- return -1;
227
- if (b.severity === 'conflict' && a.severity !== 'conflict')
228
- return 1;
229
- return b.overlapMinutes - a.overlapMinutes;
230
- });
231
- }
232
- function formatDuration(start, end) {
233
- const endTime = end || new Date();
234
- const minutes = Math.round((endTime.getTime() - start.getTime()) / (60 * 1000));
235
- if (minutes < 60)
236
- return `${minutes}m`;
237
- const hours = Math.floor(minutes / 60);
238
- const mins = minutes % 60;
239
- return `${hours}h${mins > 0 ? ` ${mins}m` : ''}`;
240
- }
241
- function formatTime(date) {
242
- return date.toLocaleTimeString('en-GB', { hour: '2-digit', minute: '2-digit' });
243
- }
244
- export const activeWindowsCommand = new Command('active-windows')
245
- .description('Detect overlapping work sessions (Layer 4)')
246
- .option('--hours <n>', 'Hours to look back', '24')
247
- .option('--repo <path>', 'Repository to analyze', process.cwd())
248
- .option('--json', 'Output as JSON')
249
- .option('--files', 'Group by files touched')
250
- .option('--all-repos', 'Scan all /Dev repositories')
251
- .addHelpText('after', `
252
- Examples:
253
- spidersan active-windows # Show sessions in current repo
254
- spidersan active-windows --hours 48 # Look back 48 hours
255
- spidersan active-windows --all-repos # Scan all repos
256
- spidersan active-windows --files # Show files per session
257
-
258
- Layer 4 of Spidersan's 7-layer conflict detection:
259
- L1: File-level (git conflicts)
260
- L2: Semantic (code dependencies)
261
- L3: Intent (collab entries)
262
- L4: Temporal (active windows) ← THIS
263
- L5: Cross-repo (breaking changes)
264
- L6: Predictive (pattern analysis)
265
- L7: Resolution (auto-merge)
266
- `)
267
- .action((options) => {
268
- const hours = parseInt(options.hours) || 24;
269
- const isJson = options.json;
270
- let allWindows = [];
271
- if (options.allRepos) {
272
- // Scan all /Dev repos
273
- const devDir = join(process.env.HOME || '', 'Dev');
274
- if (existsSync(devDir)) {
275
- const repos = readdirSync(devDir)
276
- .filter(d => existsSync(join(devDir, d, '.git')));
277
- for (const repo of repos) {
278
- const repoPath = join(devDir, repo);
279
- const windows = buildWorkWindows(repoPath, hours);
280
- // Tag windows with repo name
281
- windows.forEach(w => {
282
- w.areasWorked = w.areasWorked.map(a => `${repo}/${a}`);
283
- w.filesModified = w.filesModified.map(f => `${repo}/${f}`);
284
- });
285
- allWindows.push(...windows);
286
- }
287
- }
288
- }
289
- else {
290
- allWindows = buildWorkWindows(options.repo, hours);
291
- }
292
- // Find overlaps
293
- const overlaps = findWindowOverlaps(allWindows);
294
- if (isJson) {
295
- console.log(JSON.stringify({
296
- windows: allWindows.map(w => ({
297
- ...w,
298
- startTime: w.startTime.toISOString(),
299
- endTime: w.endTime?.toISOString() || null
300
- })),
301
- overlaps: overlaps.map(o => ({
302
- ...o,
303
- window1: {
304
- agent: o.window1.agent,
305
- startTime: o.window1.startTime.toISOString()
306
- },
307
- window2: {
308
- agent: o.window2.agent,
309
- startTime: o.window2.startTime.toISOString()
310
- }
311
- })),
312
- summary: {
313
- totalWindows: allWindows.length,
314
- activeNow: allWindows.filter(w => !w.endTime).length,
315
- conflicts: overlaps.filter(o => o.severity === 'conflict').length,
316
- warnings: overlaps.filter(o => o.severity === 'warn').length
317
- }
318
- }, null, 2));
319
- return;
320
- }
321
- console.log(chalk.bold('\nšŸ•·ļø ACTIVE WINDOWS — Layer 4 Conflict Detection\n'));
322
- // Show active sessions
323
- const active = allWindows.filter(w => !w.endTime);
324
- const recent = allWindows.filter(w => w.endTime);
325
- if (active.length > 0) {
326
- console.log(chalk.bold.green('🟢 Currently Active:\n'));
327
- for (const w of active) {
328
- console.log(` ${chalk.cyan(w.agent)} (${w.machine})`);
329
- console.log(` Started: ${formatTime(w.startTime)} (${formatDuration(w.startTime, null)} ago)`);
330
- console.log(` Areas: ${chalk.gray(w.areasWorked.join(', ') || 'none')}`);
331
- if (options.files && w.filesModified.length > 0) {
332
- console.log(` Files: ${chalk.gray(w.filesModified.slice(0, 5).join(', '))}`);
333
- }
334
- console.log();
335
- }
336
- }
337
- else {
338
- console.log(chalk.gray('No active sessions detected\n'));
339
- }
340
- // Show recent sessions
341
- if (recent.length > 0) {
342
- console.log(chalk.bold('šŸ“Š Recent Sessions:\n'));
343
- for (const w of recent.slice(-10)) {
344
- console.log(` ${chalk.cyan(w.agent)} (${w.machine})`);
345
- console.log(` ${formatTime(w.startTime)} - ${formatTime(w.endTime)} (${formatDuration(w.startTime, w.endTime)})`);
346
- console.log(` Areas: ${chalk.gray(w.areasWorked.join(', ') || 'none')}`);
347
- console.log();
348
- }
349
- }
350
- // Show overlaps
351
- if (overlaps.length > 0) {
352
- console.log(chalk.bold.yellow('\nāš ļø Session Overlaps Detected:\n'));
353
- for (const overlap of overlaps) {
354
- const icon = overlap.severity === 'conflict' ? 'šŸ”“' : '🟠';
355
- const label = overlap.severity === 'conflict' ? 'FILE CONFLICT' : 'AREA OVERLAP';
356
- console.log(`${icon} ${chalk.bold(label)} (${overlap.overlapMinutes} min overlap)`);
357
- console.log(` ${chalk.cyan(overlap.window1.agent)} ↔ ${chalk.cyan(overlap.window2.agent)}`);
358
- if (overlap.sharedFiles.length > 0) {
359
- console.log(` Shared files: ${chalk.red(overlap.sharedFiles.join(', '))}`);
360
- }
361
- if (overlap.sharedAreas.length > 0) {
362
- console.log(` Shared areas: ${chalk.yellow(overlap.sharedAreas.join(', '))}`);
363
- }
364
- console.log();
365
- }
366
- }
367
- else {
368
- console.log(chalk.green('\nāœ… No overlapping sessions detected\n'));
369
- }
370
- // Summary
371
- console.log(chalk.gray(`Scanned ${hours}h of activity, found ${allWindows.length} session(s)\n`));
372
- });
373
- //# sourceMappingURL=active-windows.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"active-windows.js","sourceRoot":"","sources":["../../src/commands/active-windows.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- /**
2
- * spidersan ask / advise / explain / ai-setup — AI-powered gitops reasoning
3
- *
4
- * Thin CLI wrappers over reason() from the AI core.
5
- * Builds context, sends to LLM (Gemma 4 default), streams response.
6
- */
7
- import { Command } from 'commander';
8
- export declare const askCommand: Command;
9
- export declare const adviseCommand: Command;
10
- export declare const explainCommand: Command;
11
- export declare const aiPingCommand: Command;
12
- export declare const aiSetupCommand: Command;
13
- export declare const aiTelemetryCommand: Command;
14
- export declare const checkOptOutCommand: Command;
15
- //# sourceMappingURL=ai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/commands/ai.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqCpC,eAAO,MAAM,UAAU,SAiCnB,CAAC;AAIL,eAAO,MAAM,aAAa,SA+BtB,CAAC;AAIL,eAAO,MAAM,cAAc,SA0BvB,CAAC;AAIL,eAAO,MAAM,aAAa,SAgBtB,CAAC;AAmGL,eAAO,MAAM,cAAc,SAsNvB,CAAC;AAIL,eAAO,MAAM,kBAAkB,SAkC3B,CAAC;AAML,eAAO,MAAM,kBAAkB,SAkC3B,CAAC"}