@su-record/vibe 2.7.2 → 2.7.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1567) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +222 -222
  3. package/LICENSE +21 -21
  4. package/README.md +580 -580
  5. package/agents/architect-low.md +41 -41
  6. package/agents/architect-medium.md +59 -59
  7. package/agents/architect.md +80 -80
  8. package/agents/build-error-resolver.md +115 -115
  9. package/agents/compounder.md +261 -261
  10. package/agents/diagrammer.md +178 -178
  11. package/agents/docs/api-documenter.md +99 -99
  12. package/agents/docs/changelog-writer.md +93 -93
  13. package/agents/e2e-tester.md +266 -266
  14. package/agents/explorer-low.md +42 -42
  15. package/agents/explorer-medium.md +59 -59
  16. package/agents/explorer.md +48 -48
  17. package/agents/implementer-low.md +43 -43
  18. package/agents/implementer-medium.md +52 -52
  19. package/agents/implementer.md +54 -54
  20. package/agents/junior-mentor.md +141 -141
  21. package/agents/planning/requirements-analyst.md +84 -84
  22. package/agents/planning/ux-advisor.md +83 -83
  23. package/agents/qa/acceptance-tester.md +86 -86
  24. package/agents/qa/edge-case-finder.md +93 -93
  25. package/agents/refactor-cleaner.md +143 -143
  26. package/agents/research/best-practices-agent.md +199 -199
  27. package/agents/research/codebase-patterns-agent.md +157 -157
  28. package/agents/research/framework-docs-agent.md +188 -188
  29. package/agents/research/security-advisory-agent.md +213 -213
  30. package/agents/review/architecture-reviewer.md +107 -107
  31. package/agents/review/complexity-reviewer.md +116 -116
  32. package/agents/review/data-integrity-reviewer.md +88 -88
  33. package/agents/review/git-history-reviewer.md +103 -103
  34. package/agents/review/performance-reviewer.md +86 -86
  35. package/agents/review/python-reviewer.md +150 -150
  36. package/agents/review/rails-reviewer.md +139 -139
  37. package/agents/review/react-reviewer.md +144 -144
  38. package/agents/review/security-reviewer.md +80 -80
  39. package/agents/review/simplicity-reviewer.md +140 -140
  40. package/agents/review/test-coverage-reviewer.md +116 -116
  41. package/agents/review/typescript-reviewer.md +127 -127
  42. package/agents/searcher.md +54 -54
  43. package/agents/simplifier.md +120 -120
  44. package/agents/tester.md +49 -49
  45. package/agents/ui/ui-a11y-auditor.md +93 -93
  46. package/agents/ui/ui-antipattern-detector.md +94 -94
  47. package/agents/ui/ui-dataviz-advisor.md +69 -69
  48. package/agents/ui/ui-design-system-gen.md +57 -57
  49. package/agents/ui/ui-industry-analyzer.md +49 -49
  50. package/agents/ui/ui-layout-architect.md +65 -65
  51. package/agents/ui/ui-stack-implementer.md +68 -68
  52. package/agents/ui/ux-compliance-reviewer.md +81 -81
  53. package/agents/ui-previewer.md +260 -260
  54. package/commands/vibe.run.md +1 -1
  55. package/commands/vibe.spec.md +8 -8
  56. package/commands/vibe.spec.review.md +558 -558
  57. package/commands/vibe.utils.md +413 -413
  58. package/commands/vibe.voice.md +79 -79
  59. package/dist/agent/AgentLoop.d.ts +97 -0
  60. package/dist/agent/AgentLoop.d.ts.map +1 -0
  61. package/dist/agent/AgentLoop.js +546 -0
  62. package/dist/agent/AgentLoop.js.map +1 -0
  63. package/dist/agent/ConversationState.d.ts +29 -0
  64. package/dist/agent/ConversationState.d.ts.map +1 -0
  65. package/dist/agent/ConversationState.js +107 -0
  66. package/dist/agent/ConversationState.js.map +1 -0
  67. package/dist/agent/ConversationStore.d.ts +31 -0
  68. package/dist/agent/ConversationStore.d.ts.map +1 -0
  69. package/dist/agent/ConversationStore.integration.test.d.ts +2 -0
  70. package/dist/agent/ConversationStore.integration.test.d.ts.map +1 -0
  71. package/dist/agent/ConversationStore.integration.test.js +162 -0
  72. package/dist/agent/ConversationStore.integration.test.js.map +1 -0
  73. package/dist/agent/ConversationStore.js +126 -0
  74. package/dist/agent/ConversationStore.js.map +1 -0
  75. package/dist/agent/ConversationStore.test.d.ts +2 -0
  76. package/dist/agent/ConversationStore.test.d.ts.map +1 -0
  77. package/dist/agent/ConversationStore.test.js +93 -0
  78. package/dist/agent/ConversationStore.test.js.map +1 -0
  79. package/dist/agent/HeadModelSelector.d.ts +36 -0
  80. package/dist/agent/HeadModelSelector.d.ts.map +1 -0
  81. package/dist/agent/HeadModelSelector.js +124 -0
  82. package/dist/agent/HeadModelSelector.js.map +1 -0
  83. package/dist/agent/RateLimiter.d.ts +44 -0
  84. package/dist/agent/RateLimiter.d.ts.map +1 -0
  85. package/dist/agent/RateLimiter.js +71 -0
  86. package/dist/agent/RateLimiter.js.map +1 -0
  87. package/dist/agent/SystemPrompt.d.ts +35 -0
  88. package/dist/agent/SystemPrompt.d.ts.map +1 -0
  89. package/dist/agent/SystemPrompt.js +151 -0
  90. package/dist/agent/SystemPrompt.js.map +1 -0
  91. package/dist/agent/ToolExecutor.d.ts +33 -0
  92. package/dist/agent/ToolExecutor.d.ts.map +1 -0
  93. package/dist/agent/ToolExecutor.js +123 -0
  94. package/dist/agent/ToolExecutor.js.map +1 -0
  95. package/dist/agent/ToolRegistry.d.ts +37 -0
  96. package/dist/agent/ToolRegistry.d.ts.map +1 -0
  97. package/dist/agent/ToolRegistry.js +125 -0
  98. package/dist/agent/ToolRegistry.js.map +1 -0
  99. package/dist/agent/__tests__/AgentLoop.test.d.ts +6 -0
  100. package/dist/agent/__tests__/AgentLoop.test.d.ts.map +1 -0
  101. package/dist/agent/__tests__/AgentLoop.test.js +208 -0
  102. package/dist/agent/__tests__/AgentLoop.test.js.map +1 -0
  103. package/dist/agent/__tests__/ConversationState.test.d.ts +6 -0
  104. package/dist/agent/__tests__/ConversationState.test.d.ts.map +1 -0
  105. package/dist/agent/__tests__/ConversationState.test.js +102 -0
  106. package/dist/agent/__tests__/ConversationState.test.js.map +1 -0
  107. package/dist/agent/__tests__/HeadModelSelector.test.d.ts +6 -0
  108. package/dist/agent/__tests__/HeadModelSelector.test.d.ts.map +1 -0
  109. package/dist/agent/__tests__/HeadModelSelector.test.js +132 -0
  110. package/dist/agent/__tests__/HeadModelSelector.test.js.map +1 -0
  111. package/dist/agent/__tests__/JobManager.test.d.ts +6 -0
  112. package/dist/agent/__tests__/JobManager.test.d.ts.map +1 -0
  113. package/dist/agent/__tests__/JobManager.test.js +197 -0
  114. package/dist/agent/__tests__/JobManager.test.js.map +1 -0
  115. package/dist/agent/__tests__/MediaPreprocessor.test.d.ts +6 -0
  116. package/dist/agent/__tests__/MediaPreprocessor.test.d.ts.map +1 -0
  117. package/dist/agent/__tests__/MediaPreprocessor.test.js +163 -0
  118. package/dist/agent/__tests__/MediaPreprocessor.test.js.map +1 -0
  119. package/dist/agent/__tests__/ToolExecutor.test.d.ts +6 -0
  120. package/dist/agent/__tests__/ToolExecutor.test.d.ts.map +1 -0
  121. package/dist/agent/__tests__/ToolExecutor.test.js +140 -0
  122. package/dist/agent/__tests__/ToolExecutor.test.js.map +1 -0
  123. package/dist/agent/__tests__/ToolRegistry.test.d.ts +6 -0
  124. package/dist/agent/__tests__/ToolRegistry.test.d.ts.map +1 -0
  125. package/dist/agent/__tests__/ToolRegistry.test.js +172 -0
  126. package/dist/agent/__tests__/ToolRegistry.test.js.map +1 -0
  127. package/dist/agent/__tests__/tools.test.d.ts +6 -0
  128. package/dist/agent/__tests__/tools.test.d.ts.map +1 -0
  129. package/dist/agent/__tests__/tools.test.js +177 -0
  130. package/dist/agent/__tests__/tools.test.js.map +1 -0
  131. package/dist/agent/index.d.ts +19 -0
  132. package/dist/agent/index.d.ts.map +1 -0
  133. package/dist/agent/index.js +18 -0
  134. package/dist/agent/index.js.map +1 -0
  135. package/dist/agent/jobs/JobManager.d.ts +46 -0
  136. package/dist/agent/jobs/JobManager.d.ts.map +1 -0
  137. package/dist/agent/jobs/JobManager.js +213 -0
  138. package/dist/agent/jobs/JobManager.js.map +1 -0
  139. package/dist/agent/jobs/ProgressReporter.d.ts +32 -0
  140. package/dist/agent/jobs/ProgressReporter.d.ts.map +1 -0
  141. package/dist/agent/jobs/ProgressReporter.js +82 -0
  142. package/dist/agent/jobs/ProgressReporter.js.map +1 -0
  143. package/dist/agent/jobs/types.d.ts +32 -0
  144. package/dist/agent/jobs/types.d.ts.map +1 -0
  145. package/dist/agent/jobs/types.js +6 -0
  146. package/dist/agent/jobs/types.js.map +1 -0
  147. package/dist/agent/policy-integration.test.d.ts +6 -0
  148. package/dist/agent/policy-integration.test.d.ts.map +1 -0
  149. package/dist/agent/policy-integration.test.js +148 -0
  150. package/dist/agent/policy-integration.test.js.map +1 -0
  151. package/dist/agent/preprocessors/MediaPreprocessor.d.ts +63 -0
  152. package/dist/agent/preprocessors/MediaPreprocessor.d.ts.map +1 -0
  153. package/dist/agent/preprocessors/MediaPreprocessor.js +320 -0
  154. package/dist/agent/preprocessors/MediaPreprocessor.js.map +1 -0
  155. package/dist/agent/providers/claude-head.d.ts +17 -0
  156. package/dist/agent/providers/claude-head.d.ts.map +1 -0
  157. package/dist/agent/providers/claude-head.js +124 -0
  158. package/dist/agent/providers/claude-head.js.map +1 -0
  159. package/dist/agent/providers/gpt-head.d.ts +30 -0
  160. package/dist/agent/providers/gpt-head.d.ts.map +1 -0
  161. package/dist/agent/providers/gpt-head.js +359 -0
  162. package/dist/agent/providers/gpt-head.js.map +1 -0
  163. package/dist/agent/tools/claude-code.d.ts +11 -0
  164. package/dist/agent/tools/claude-code.d.ts.map +1 -0
  165. package/dist/agent/tools/claude-code.js +148 -0
  166. package/dist/agent/tools/claude-code.js.map +1 -0
  167. package/dist/agent/tools/dm-pair.d.ts +23 -0
  168. package/dist/agent/tools/dm-pair.d.ts.map +1 -0
  169. package/dist/agent/tools/dm-pair.js +70 -0
  170. package/dist/agent/tools/dm-pair.js.map +1 -0
  171. package/dist/agent/tools/dm-pair.test.d.ts +6 -0
  172. package/dist/agent/tools/dm-pair.test.d.ts.map +1 -0
  173. package/dist/agent/tools/dm-pair.test.js +106 -0
  174. package/dist/agent/tools/dm-pair.test.js.map +1 -0
  175. package/dist/agent/tools/gemini-stt.d.ts +9 -0
  176. package/dist/agent/tools/gemini-stt.d.ts.map +1 -0
  177. package/dist/agent/tools/gemini-stt.js +33 -0
  178. package/dist/agent/tools/gemini-stt.js.map +1 -0
  179. package/dist/agent/tools/google-search.d.ts +9 -0
  180. package/dist/agent/tools/google-search.d.ts.map +1 -0
  181. package/dist/agent/tools/google-search.js +38 -0
  182. package/dist/agent/tools/google-search.js.map +1 -0
  183. package/dist/agent/tools/index.d.ts +22 -0
  184. package/dist/agent/tools/index.d.ts.map +1 -0
  185. package/dist/agent/tools/index.js +37 -0
  186. package/dist/agent/tools/index.js.map +1 -0
  187. package/dist/agent/tools/kimi-analyze.d.ts +9 -0
  188. package/dist/agent/tools/kimi-analyze.d.ts.map +1 -0
  189. package/dist/agent/tools/kimi-analyze.js +49 -0
  190. package/dist/agent/tools/kimi-analyze.js.map +1 -0
  191. package/dist/agent/tools/manage-memory.d.ts +10 -0
  192. package/dist/agent/tools/manage-memory.d.ts.map +1 -0
  193. package/dist/agent/tools/manage-memory.js +70 -0
  194. package/dist/agent/tools/manage-memory.js.map +1 -0
  195. package/dist/agent/tools/send-imessage.d.ts +19 -0
  196. package/dist/agent/tools/send-imessage.d.ts.map +1 -0
  197. package/dist/agent/tools/send-imessage.js +67 -0
  198. package/dist/agent/tools/send-imessage.js.map +1 -0
  199. package/dist/agent/tools/send-slack.d.ts +21 -0
  200. package/dist/agent/tools/send-slack.d.ts.map +1 -0
  201. package/dist/agent/tools/send-slack.js +63 -0
  202. package/dist/agent/tools/send-slack.js.map +1 -0
  203. package/dist/agent/tools/send-telegram.d.ts +20 -0
  204. package/dist/agent/tools/send-telegram.d.ts.map +1 -0
  205. package/dist/agent/tools/send-telegram.js +58 -0
  206. package/dist/agent/tools/send-telegram.js.map +1 -0
  207. package/dist/agent/tools/vision-analyze.d.ts +11 -0
  208. package/dist/agent/tools/vision-analyze.d.ts.map +1 -0
  209. package/dist/agent/tools/vision-analyze.js +103 -0
  210. package/dist/agent/tools/vision-analyze.js.map +1 -0
  211. package/dist/agent/tools/vision-capture.d.ts +13 -0
  212. package/dist/agent/tools/vision-capture.d.ts.map +1 -0
  213. package/dist/agent/tools/vision-capture.js +87 -0
  214. package/dist/agent/tools/vision-capture.js.map +1 -0
  215. package/dist/agent/tools/web-browse.d.ts +20 -0
  216. package/dist/agent/tools/web-browse.d.ts.map +1 -0
  217. package/dist/agent/tools/web-browse.js +196 -0
  218. package/dist/agent/tools/web-browse.js.map +1 -0
  219. package/dist/agent/types.d.ts +151 -0
  220. package/dist/agent/types.d.ts.map +1 -0
  221. package/dist/agent/types.js +6 -0
  222. package/dist/agent/types.js.map +1 -0
  223. package/dist/bridge/telegram-assistant-bridge.d.ts +10 -0
  224. package/dist/bridge/telegram-assistant-bridge.d.ts.map +1 -0
  225. package/dist/bridge/telegram-assistant-bridge.js +274 -0
  226. package/dist/bridge/telegram-assistant-bridge.js.map +1 -0
  227. package/dist/bridge/telegram-bridge.d.ts +10 -0
  228. package/dist/bridge/telegram-bridge.d.ts.map +1 -0
  229. package/dist/bridge/telegram-bridge.js +154 -0
  230. package/dist/bridge/telegram-bridge.js.map +1 -0
  231. package/dist/cli/collaborator.js +52 -52
  232. package/dist/cli/commands/autostart.d.ts +19 -0
  233. package/dist/cli/commands/autostart.d.ts.map +1 -0
  234. package/dist/cli/commands/autostart.js +213 -0
  235. package/dist/cli/commands/autostart.js.map +1 -0
  236. package/dist/cli/commands/browser.d.ts +12 -0
  237. package/dist/cli/commands/browser.d.ts.map +1 -0
  238. package/dist/cli/commands/browser.js +50 -0
  239. package/dist/cli/commands/browser.js.map +1 -0
  240. package/dist/cli/commands/daemon.d.ts +16 -0
  241. package/dist/cli/commands/daemon.d.ts.map +1 -0
  242. package/dist/cli/commands/daemon.js +277 -0
  243. package/dist/cli/commands/daemon.js.map +1 -0
  244. package/dist/cli/commands/device.d.ts +9 -0
  245. package/dist/cli/commands/device.d.ts.map +1 -0
  246. package/dist/cli/commands/device.js +56 -0
  247. package/dist/cli/commands/device.js.map +1 -0
  248. package/dist/cli/commands/evolution.js +12 -12
  249. package/dist/cli/commands/google.d.ts +12 -0
  250. package/dist/cli/commands/google.d.ts.map +1 -0
  251. package/dist/cli/commands/google.js +83 -0
  252. package/dist/cli/commands/google.js.map +1 -0
  253. package/dist/cli/commands/imessage.d.ts +11 -0
  254. package/dist/cli/commands/imessage.d.ts.map +1 -0
  255. package/dist/cli/commands/imessage.js +85 -0
  256. package/dist/cli/commands/imessage.js.map +1 -0
  257. package/dist/cli/commands/info.js +54 -54
  258. package/dist/cli/commands/init.js +6 -6
  259. package/dist/cli/commands/interface.d.ts +15 -0
  260. package/dist/cli/commands/interface.d.ts.map +1 -0
  261. package/dist/cli/commands/interface.js +167 -0
  262. package/dist/cli/commands/interface.js.map +1 -0
  263. package/dist/cli/commands/job.d.ts +14 -0
  264. package/dist/cli/commands/job.d.ts.map +1 -0
  265. package/dist/cli/commands/job.js +170 -0
  266. package/dist/cli/commands/job.js.map +1 -0
  267. package/dist/cli/commands/pc.d.ts +12 -0
  268. package/dist/cli/commands/pc.d.ts.map +1 -0
  269. package/dist/cli/commands/pc.js +75 -0
  270. package/dist/cli/commands/pc.js.map +1 -0
  271. package/dist/cli/commands/policy.d.ts +10 -0
  272. package/dist/cli/commands/policy.d.ts.map +1 -0
  273. package/dist/cli/commands/policy.js +75 -0
  274. package/dist/cli/commands/policy.js.map +1 -0
  275. package/dist/cli/commands/remove.js +14 -14
  276. package/dist/cli/commands/sandbox.d.ts +10 -0
  277. package/dist/cli/commands/sandbox.d.ts.map +1 -0
  278. package/dist/cli/commands/sandbox.js +53 -0
  279. package/dist/cli/commands/sandbox.js.map +1 -0
  280. package/dist/cli/commands/sentinel.js +27 -27
  281. package/dist/cli/commands/setup.d.ts.map +1 -1
  282. package/dist/cli/commands/setup.js +1 -25
  283. package/dist/cli/commands/setup.js.map +1 -1
  284. package/dist/cli/commands/slack.js +10 -10
  285. package/dist/cli/commands/sync.d.ts +9 -0
  286. package/dist/cli/commands/sync.d.ts.map +1 -0
  287. package/dist/cli/commands/sync.js +167 -0
  288. package/dist/cli/commands/sync.js.map +1 -0
  289. package/dist/cli/commands/telegram.js +12 -12
  290. package/dist/cli/commands/vision.d.ts +12 -0
  291. package/dist/cli/commands/vision.d.ts.map +1 -0
  292. package/dist/cli/commands/vision.js +74 -0
  293. package/dist/cli/commands/vision.js.map +1 -0
  294. package/dist/cli/commands/voice.d.ts +12 -0
  295. package/dist/cli/commands/voice.d.ts.map +1 -0
  296. package/dist/cli/commands/voice.js +67 -0
  297. package/dist/cli/commands/voice.js.map +1 -0
  298. package/dist/cli/commands/webhook.d.ts +9 -0
  299. package/dist/cli/commands/webhook.d.ts.map +1 -0
  300. package/dist/cli/commands/webhook.js +85 -0
  301. package/dist/cli/commands/webhook.js.map +1 -0
  302. package/dist/cli/detect.js +32 -32
  303. package/dist/cli/hud.d.ts +46 -0
  304. package/dist/cli/hud.d.ts.map +1 -0
  305. package/dist/cli/hud.js +392 -0
  306. package/dist/cli/hud.js.map +1 -0
  307. package/dist/cli/index.d.ts.map +1 -1
  308. package/dist/cli/index.js +48 -53
  309. package/dist/cli/index.js.map +1 -1
  310. package/dist/cli/llm/az-commands.d.ts +12 -0
  311. package/dist/cli/llm/az-commands.d.ts.map +1 -0
  312. package/dist/cli/llm/az-commands.js +99 -0
  313. package/dist/cli/llm/az-commands.js.map +1 -0
  314. package/dist/cli/llm/claude-commands.js +16 -16
  315. package/dist/cli/llm/config.js +18 -18
  316. package/dist/cli/llm/gemini-commands.js +47 -47
  317. package/dist/cli/llm/gpt-commands.d.ts +6 -13
  318. package/dist/cli/llm/gpt-commands.d.ts.map +1 -1
  319. package/dist/cli/llm/gpt-commands.js +47 -117
  320. package/dist/cli/llm/gpt-commands.js.map +1 -1
  321. package/dist/cli/llm/help.js +21 -21
  322. package/dist/cli/llm/kimi-commands.d.ts +12 -0
  323. package/dist/cli/llm/kimi-commands.d.ts.map +1 -0
  324. package/dist/cli/llm/kimi-commands.js +100 -0
  325. package/dist/cli/llm/kimi-commands.js.map +1 -0
  326. package/dist/cli/llm/nvidia-commands.d.ts +16 -0
  327. package/dist/cli/llm/nvidia-commands.d.ts.map +1 -0
  328. package/dist/cli/llm/nvidia-commands.js +105 -0
  329. package/dist/cli/llm/nvidia-commands.js.map +1 -0
  330. package/dist/cli/llm/priority-commands.d.ts +18 -0
  331. package/dist/cli/llm/priority-commands.d.ts.map +1 -0
  332. package/dist/cli/llm/priority-commands.js +69 -0
  333. package/dist/cli/llm/priority-commands.js.map +1 -0
  334. package/dist/cli/postinstall/cursor-agents.js +32 -32
  335. package/dist/cli/postinstall/cursor-rules.js +83 -83
  336. package/dist/cli/postinstall/cursor-skills.js +743 -743
  337. package/dist/cli/postinstall/npmrc.d.ts +9 -0
  338. package/dist/cli/postinstall/npmrc.d.ts.map +1 -0
  339. package/dist/cli/postinstall/npmrc.js +80 -0
  340. package/dist/cli/postinstall/npmrc.js.map +1 -0
  341. package/dist/cli/types.d.ts +1 -0
  342. package/dist/cli/types.d.ts.map +1 -1
  343. package/dist/daemon/DaemonIPC.d.ts +40 -0
  344. package/dist/daemon/DaemonIPC.d.ts.map +1 -0
  345. package/dist/daemon/DaemonIPC.js +327 -0
  346. package/dist/daemon/DaemonIPC.js.map +1 -0
  347. package/dist/daemon/InterfaceManager.d.ts +62 -0
  348. package/dist/daemon/InterfaceManager.d.ts.map +1 -0
  349. package/dist/daemon/InterfaceManager.js +785 -0
  350. package/dist/daemon/InterfaceManager.js.map +1 -0
  351. package/dist/daemon/SessionPool.d.ts +80 -0
  352. package/dist/daemon/SessionPool.d.ts.map +1 -0
  353. package/dist/daemon/SessionPool.js +414 -0
  354. package/dist/daemon/SessionPool.js.map +1 -0
  355. package/dist/daemon/VibeDaemon.d.ts +69 -0
  356. package/dist/daemon/VibeDaemon.d.ts.map +1 -0
  357. package/dist/daemon/VibeDaemon.js +400 -0
  358. package/dist/daemon/VibeDaemon.js.map +1 -0
  359. package/dist/daemon/daemon.test.d.ts +6 -0
  360. package/dist/daemon/daemon.test.d.ts.map +1 -0
  361. package/dist/daemon/daemon.test.js +348 -0
  362. package/dist/daemon/daemon.test.js.map +1 -0
  363. package/dist/daemon/index.d.ts +10 -0
  364. package/dist/daemon/index.d.ts.map +1 -0
  365. package/dist/daemon/index.js +9 -0
  366. package/dist/daemon/index.js.map +1 -0
  367. package/dist/daemon/pipeline.test.d.ts +6 -0
  368. package/dist/daemon/pipeline.test.d.ts.map +1 -0
  369. package/dist/daemon/pipeline.test.js +258 -0
  370. package/dist/daemon/pipeline.test.js.map +1 -0
  371. package/dist/daemon/preflight.d.ts +23 -0
  372. package/dist/daemon/preflight.d.ts.map +1 -0
  373. package/dist/daemon/preflight.js +204 -0
  374. package/dist/daemon/preflight.js.map +1 -0
  375. package/dist/daemon/preflight.test.d.ts +6 -0
  376. package/dist/daemon/preflight.test.d.ts.map +1 -0
  377. package/dist/daemon/preflight.test.js +88 -0
  378. package/dist/daemon/preflight.test.js.map +1 -0
  379. package/dist/daemon/types.d.ts +117 -0
  380. package/dist/daemon/types.d.ts.map +1 -0
  381. package/dist/daemon/types.js +15 -0
  382. package/dist/daemon/types.js.map +1 -0
  383. package/dist/infra/lib/DeepInit.js +24 -24
  384. package/dist/infra/lib/IterationTracker.js +11 -11
  385. package/dist/infra/lib/PythonParser.js +108 -108
  386. package/dist/infra/lib/ReviewRace.js +96 -96
  387. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  388. package/dist/infra/lib/SkillQualityGate.js +9 -9
  389. package/dist/infra/lib/SkillRepository.js +159 -159
  390. package/dist/infra/lib/UltraQA.js +99 -99
  391. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  392. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  393. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  394. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  395. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  396. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  397. package/dist/infra/lib/az/auth.d.ts +15 -0
  398. package/dist/infra/lib/az/auth.d.ts.map +1 -0
  399. package/dist/infra/lib/az/auth.js +67 -0
  400. package/dist/infra/lib/az/auth.js.map +1 -0
  401. package/dist/infra/lib/az/chat.d.ts +26 -0
  402. package/dist/infra/lib/az/chat.d.ts.map +1 -0
  403. package/dist/infra/lib/az/chat.js +116 -0
  404. package/dist/infra/lib/az/chat.js.map +1 -0
  405. package/dist/infra/lib/az/embedding.d.ts +13 -0
  406. package/dist/infra/lib/az/embedding.d.ts.map +1 -0
  407. package/dist/infra/lib/az/embedding.js +60 -0
  408. package/dist/infra/lib/az/embedding.js.map +1 -0
  409. package/dist/infra/lib/az/index.d.ts +9 -0
  410. package/dist/infra/lib/az/index.d.ts.map +1 -0
  411. package/dist/infra/lib/az/index.js +9 -0
  412. package/dist/infra/lib/az/index.js.map +1 -0
  413. package/dist/infra/lib/az/orchestration.d.ts +11 -0
  414. package/dist/infra/lib/az/orchestration.d.ts.map +1 -0
  415. package/dist/infra/lib/az/orchestration.js +24 -0
  416. package/dist/infra/lib/az/orchestration.js.map +1 -0
  417. package/dist/infra/lib/az/types.d.ts +35 -0
  418. package/dist/infra/lib/az/types.d.ts.map +1 -0
  419. package/dist/infra/lib/az/types.js +5 -0
  420. package/dist/infra/lib/az/types.js.map +1 -0
  421. package/dist/infra/lib/az-api.d.ts +5 -0
  422. package/dist/infra/lib/az-api.d.ts.map +1 -0
  423. package/dist/infra/lib/az-api.js +5 -0
  424. package/dist/infra/lib/az-api.js.map +1 -0
  425. package/dist/infra/lib/az-constants.d.ts +44 -0
  426. package/dist/infra/lib/az-constants.d.ts.map +1 -0
  427. package/dist/infra/lib/az-constants.js +58 -0
  428. package/dist/infra/lib/az-constants.js.map +1 -0
  429. package/dist/infra/lib/az-storage.d.ts +12 -0
  430. package/dist/infra/lib/az-storage.d.ts.map +1 -0
  431. package/dist/infra/lib/az-storage.js +59 -0
  432. package/dist/infra/lib/az-storage.js.map +1 -0
  433. package/dist/infra/lib/claude-storage.d.ts +12 -0
  434. package/dist/infra/lib/claude-storage.d.ts.map +1 -0
  435. package/dist/infra/lib/claude-storage.js +59 -0
  436. package/dist/infra/lib/claude-storage.js.map +1 -0
  437. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  438. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  439. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  440. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  441. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  442. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  443. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  444. package/dist/infra/lib/gemini/constants.js +14 -14
  445. package/dist/infra/lib/gemini/orchestration.js +5 -5
  446. package/dist/infra/lib/gemini-api.d.ts +13 -0
  447. package/dist/infra/lib/gemini-api.d.ts.map +1 -0
  448. package/dist/infra/lib/gemini-api.js +13 -0
  449. package/dist/infra/lib/gemini-api.js.map +1 -0
  450. package/dist/infra/lib/gemini-constants.d.ts +19 -0
  451. package/dist/infra/lib/gemini-constants.d.ts.map +1 -0
  452. package/dist/infra/lib/gemini-constants.js +34 -0
  453. package/dist/infra/lib/gemini-constants.js.map +1 -0
  454. package/dist/infra/lib/gemini-oauth.d.ts +60 -0
  455. package/dist/infra/lib/gemini-oauth.d.ts.map +1 -0
  456. package/dist/infra/lib/gemini-oauth.js +386 -0
  457. package/dist/infra/lib/gemini-oauth.js.map +1 -0
  458. package/dist/infra/lib/gemini-storage.d.ts +64 -0
  459. package/dist/infra/lib/gemini-storage.d.ts.map +1 -0
  460. package/dist/infra/lib/gemini-storage.js +177 -0
  461. package/dist/infra/lib/gemini-storage.js.map +1 -0
  462. package/dist/infra/lib/gpt/auth.d.ts +18 -2
  463. package/dist/infra/lib/gpt/auth.d.ts.map +1 -1
  464. package/dist/infra/lib/gpt/auth.js +91 -7
  465. package/dist/infra/lib/gpt/auth.js.map +1 -1
  466. package/dist/infra/lib/gpt/chat.d.ts.map +1 -1
  467. package/dist/infra/lib/gpt/chat.js +1 -0
  468. package/dist/infra/lib/gpt/chat.js.map +1 -1
  469. package/dist/infra/lib/gpt/oauth.js +44 -44
  470. package/dist/infra/lib/gpt/orchestration.js +4 -4
  471. package/dist/infra/lib/gpt/types.d.ts +1 -1
  472. package/dist/infra/lib/gpt/types.d.ts.map +1 -1
  473. package/dist/infra/lib/gpt-api.d.ts +13 -0
  474. package/dist/infra/lib/gpt-api.d.ts.map +1 -0
  475. package/dist/infra/lib/gpt-api.js +13 -0
  476. package/dist/infra/lib/gpt-api.js.map +1 -0
  477. package/dist/infra/lib/gpt-constants.d.ts +12 -0
  478. package/dist/infra/lib/gpt-constants.d.ts.map +1 -0
  479. package/dist/infra/lib/gpt-constants.js +18 -0
  480. package/dist/infra/lib/gpt-constants.js.map +1 -0
  481. package/dist/infra/lib/gpt-oauth.d.ts +66 -0
  482. package/dist/infra/lib/gpt-oauth.d.ts.map +1 -0
  483. package/dist/infra/lib/gpt-oauth.js +389 -0
  484. package/dist/infra/lib/gpt-oauth.js.map +1 -0
  485. package/dist/infra/lib/gpt-storage.d.ts +64 -0
  486. package/dist/infra/lib/gpt-storage.d.ts.map +1 -0
  487. package/dist/infra/lib/gpt-storage.js +180 -0
  488. package/dist/infra/lib/gpt-storage.js.map +1 -0
  489. package/dist/infra/lib/kimi/auth.d.ts +10 -0
  490. package/dist/infra/lib/kimi/auth.d.ts.map +1 -0
  491. package/dist/infra/lib/kimi/auth.js +45 -0
  492. package/dist/infra/lib/kimi/auth.js.map +1 -0
  493. package/dist/infra/lib/kimi/chat.d.ts +26 -0
  494. package/dist/infra/lib/kimi/chat.d.ts.map +1 -0
  495. package/dist/infra/lib/kimi/chat.js +115 -0
  496. package/dist/infra/lib/kimi/chat.js.map +1 -0
  497. package/dist/infra/lib/kimi/index.d.ts +8 -0
  498. package/dist/infra/lib/kimi/index.d.ts.map +1 -0
  499. package/dist/infra/lib/kimi/index.js +8 -0
  500. package/dist/infra/lib/kimi/index.js.map +1 -0
  501. package/dist/infra/lib/kimi/orchestration.d.ts +10 -0
  502. package/dist/infra/lib/kimi/orchestration.d.ts.map +1 -0
  503. package/dist/infra/lib/kimi/orchestration.js +22 -0
  504. package/dist/infra/lib/kimi/orchestration.js.map +1 -0
  505. package/dist/infra/lib/kimi/types.d.ts +30 -0
  506. package/dist/infra/lib/kimi/types.d.ts.map +1 -0
  507. package/dist/infra/lib/kimi/types.js +5 -0
  508. package/dist/infra/lib/kimi/types.js.map +1 -0
  509. package/dist/infra/lib/kimi-api.d.ts +5 -0
  510. package/dist/infra/lib/kimi-api.d.ts.map +1 -0
  511. package/dist/infra/lib/kimi-api.js +5 -0
  512. package/dist/infra/lib/kimi-api.js.map +1 -0
  513. package/dist/infra/lib/kimi-constants.d.ts +27 -0
  514. package/dist/infra/lib/kimi-constants.d.ts.map +1 -0
  515. package/dist/infra/lib/kimi-constants.js +31 -0
  516. package/dist/infra/lib/kimi-constants.js.map +1 -0
  517. package/dist/infra/lib/kimi-storage.d.ts +12 -0
  518. package/dist/infra/lib/kimi-storage.d.ts.map +1 -0
  519. package/dist/infra/lib/kimi-storage.js +59 -0
  520. package/dist/infra/lib/kimi-storage.js.map +1 -0
  521. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  522. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  523. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  524. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  525. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  526. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  527. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  528. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  529. package/dist/infra/lib/priority-config.d.ts +39 -0
  530. package/dist/infra/lib/priority-config.d.ts.map +1 -0
  531. package/dist/infra/lib/priority-config.js +137 -0
  532. package/dist/infra/lib/priority-config.js.map +1 -0
  533. package/dist/infra/lib/sync/constants.d.ts +21 -0
  534. package/dist/infra/lib/sync/constants.d.ts.map +1 -0
  535. package/dist/infra/lib/sync/constants.js +78 -0
  536. package/dist/infra/lib/sync/constants.js.map +1 -0
  537. package/dist/infra/lib/sync/crypto.d.ts +23 -0
  538. package/dist/infra/lib/sync/crypto.d.ts.map +1 -0
  539. package/dist/infra/lib/sync/crypto.js +55 -0
  540. package/dist/infra/lib/sync/crypto.js.map +1 -0
  541. package/dist/infra/lib/sync/drive.d.ts +22 -0
  542. package/dist/infra/lib/sync/drive.d.ts.map +1 -0
  543. package/dist/infra/lib/sync/drive.js +99 -0
  544. package/dist/infra/lib/sync/drive.js.map +1 -0
  545. package/dist/infra/lib/sync/index.d.ts +9 -0
  546. package/dist/infra/lib/sync/index.d.ts.map +1 -0
  547. package/dist/infra/lib/sync/index.js +9 -0
  548. package/dist/infra/lib/sync/index.js.map +1 -0
  549. package/dist/infra/lib/sync/oauth.d.ts +12 -0
  550. package/dist/infra/lib/sync/oauth.d.ts.map +1 -0
  551. package/dist/infra/lib/sync/oauth.js +157 -0
  552. package/dist/infra/lib/sync/oauth.js.map +1 -0
  553. package/dist/infra/lib/sync/storage.d.ts +21 -0
  554. package/dist/infra/lib/sync/storage.d.ts.map +1 -0
  555. package/dist/infra/lib/sync/storage.js +32 -0
  556. package/dist/infra/lib/sync/storage.js.map +1 -0
  557. package/dist/infra/orchestrator/AgentManager.js +12 -12
  558. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  559. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  560. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  561. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  562. package/dist/infra/policy/Evidence.d.ts +30 -0
  563. package/dist/infra/policy/Evidence.d.ts.map +1 -0
  564. package/dist/infra/policy/Evidence.js +134 -0
  565. package/dist/infra/policy/Evidence.js.map +1 -0
  566. package/dist/infra/policy/PolicyEngine.d.ts +34 -0
  567. package/dist/infra/policy/PolicyEngine.d.ts.map +1 -0
  568. package/dist/infra/policy/PolicyEngine.js +219 -0
  569. package/dist/infra/policy/PolicyEngine.js.map +1 -0
  570. package/dist/infra/policy/PolicyStore.d.ts +36 -0
  571. package/dist/infra/policy/PolicyStore.d.ts.map +1 -0
  572. package/dist/infra/policy/PolicyStore.js +160 -0
  573. package/dist/infra/policy/PolicyStore.js.map +1 -0
  574. package/dist/infra/policy/RiskCalculator.d.ts +20 -0
  575. package/dist/infra/policy/RiskCalculator.d.ts.map +1 -0
  576. package/dist/infra/policy/RiskCalculator.js +64 -0
  577. package/dist/infra/policy/RiskCalculator.js.map +1 -0
  578. package/dist/infra/policy/default-policies.d.ts +13 -0
  579. package/dist/infra/policy/default-policies.d.ts.map +1 -0
  580. package/dist/infra/policy/default-policies.js +99 -0
  581. package/dist/infra/policy/default-policies.js.map +1 -0
  582. package/dist/infra/policy/index.d.ts +11 -0
  583. package/dist/infra/policy/index.d.ts.map +1 -0
  584. package/dist/infra/policy/index.js +10 -0
  585. package/dist/infra/policy/index.js.map +1 -0
  586. package/dist/infra/policy/policy.test.d.ts +5 -0
  587. package/dist/infra/policy/policy.test.d.ts.map +1 -0
  588. package/dist/infra/policy/policy.test.js +628 -0
  589. package/dist/infra/policy/policy.test.js.map +1 -0
  590. package/dist/infra/policy/types.d.ts +71 -0
  591. package/dist/infra/policy/types.d.ts.map +1 -0
  592. package/dist/infra/policy/types.js +18 -0
  593. package/dist/infra/policy/types.js.map +1 -0
  594. package/dist/interface/BaseInterface.d.ts +37 -0
  595. package/dist/interface/BaseInterface.d.ts.map +1 -0
  596. package/dist/interface/BaseInterface.js +105 -0
  597. package/dist/interface/BaseInterface.js.map +1 -0
  598. package/dist/interface/ClaudeCodeBridge.d.ts +38 -0
  599. package/dist/interface/ClaudeCodeBridge.d.ts.map +1 -0
  600. package/dist/interface/ClaudeCodeBridge.js +216 -0
  601. package/dist/interface/ClaudeCodeBridge.js.map +1 -0
  602. package/dist/interface/imessage/IMessageBot.d.ts +33 -0
  603. package/dist/interface/imessage/IMessageBot.d.ts.map +1 -0
  604. package/dist/interface/imessage/IMessageBot.js +222 -0
  605. package/dist/interface/imessage/IMessageBot.js.map +1 -0
  606. package/dist/interface/imessage/IMessageFormatter.d.ts +15 -0
  607. package/dist/interface/imessage/IMessageFormatter.d.ts.map +1 -0
  608. package/dist/interface/imessage/IMessageFormatter.js +81 -0
  609. package/dist/interface/imessage/IMessageFormatter.js.map +1 -0
  610. package/dist/interface/imessage/IMessageRpcClient.d.ts +39 -0
  611. package/dist/interface/imessage/IMessageRpcClient.d.ts.map +1 -0
  612. package/dist/interface/imessage/IMessageRpcClient.js +174 -0
  613. package/dist/interface/imessage/IMessageRpcClient.js.map +1 -0
  614. package/dist/interface/imessage/IMessageSender.d.ts +19 -0
  615. package/dist/interface/imessage/IMessageSender.d.ts.map +1 -0
  616. package/dist/interface/imessage/IMessageSender.js +136 -0
  617. package/dist/interface/imessage/IMessageSender.js.map +1 -0
  618. package/dist/interface/imessage/__tests__/IMessageBot.test.d.ts +5 -0
  619. package/dist/interface/imessage/__tests__/IMessageBot.test.d.ts.map +1 -0
  620. package/dist/interface/imessage/__tests__/IMessageBot.test.js +60 -0
  621. package/dist/interface/imessage/__tests__/IMessageBot.test.js.map +1 -0
  622. package/dist/interface/imessage/__tests__/IMessageFormatter.test.d.ts +5 -0
  623. package/dist/interface/imessage/__tests__/IMessageFormatter.test.d.ts.map +1 -0
  624. package/dist/interface/imessage/__tests__/IMessageFormatter.test.js +110 -0
  625. package/dist/interface/imessage/__tests__/IMessageFormatter.test.js.map +1 -0
  626. package/dist/interface/imessage/__tests__/IMessageSender.test.d.ts +5 -0
  627. package/dist/interface/imessage/__tests__/IMessageSender.test.d.ts.map +1 -0
  628. package/dist/interface/imessage/__tests__/IMessageSender.test.js +67 -0
  629. package/dist/interface/imessage/__tests__/IMessageSender.test.js.map +1 -0
  630. package/dist/interface/imessage/index.d.ts +8 -0
  631. package/dist/interface/imessage/index.d.ts.map +1 -0
  632. package/dist/interface/imessage/index.js +8 -0
  633. package/dist/interface/imessage/index.js.map +1 -0
  634. package/dist/interface/index.d.ts +26 -0
  635. package/dist/interface/index.d.ts.map +1 -0
  636. package/dist/interface/index.js +26 -0
  637. package/dist/interface/index.js.map +1 -0
  638. package/dist/interface/interface.test.d.ts +5 -0
  639. package/dist/interface/interface.test.d.ts.map +1 -0
  640. package/dist/interface/interface.test.js +442 -0
  641. package/dist/interface/interface.test.js.map +1 -0
  642. package/dist/interface/slack/SlackBot.d.ts +83 -0
  643. package/dist/interface/slack/SlackBot.d.ts.map +1 -0
  644. package/dist/interface/slack/SlackBot.js +563 -0
  645. package/dist/interface/slack/SlackBot.js.map +1 -0
  646. package/dist/interface/slack/SlackFormatter.d.ts +19 -0
  647. package/dist/interface/slack/SlackFormatter.d.ts.map +1 -0
  648. package/dist/interface/slack/SlackFormatter.js +76 -0
  649. package/dist/interface/slack/SlackFormatter.js.map +1 -0
  650. package/dist/interface/slack/__tests__/SlackBot.test.d.ts +5 -0
  651. package/dist/interface/slack/__tests__/SlackBot.test.d.ts.map +1 -0
  652. package/dist/interface/slack/__tests__/SlackBot.test.js +37 -0
  653. package/dist/interface/slack/__tests__/SlackBot.test.js.map +1 -0
  654. package/dist/interface/slack/__tests__/SlackFormatter.test.d.ts +5 -0
  655. package/dist/interface/slack/__tests__/SlackFormatter.test.d.ts.map +1 -0
  656. package/dist/interface/slack/__tests__/SlackFormatter.test.js +93 -0
  657. package/dist/interface/slack/__tests__/SlackFormatter.test.js.map +1 -0
  658. package/dist/interface/slack/index.d.ts +7 -0
  659. package/dist/interface/slack/index.d.ts.map +1 -0
  660. package/dist/interface/slack/index.js +7 -0
  661. package/dist/interface/slack/index.js.map +1 -0
  662. package/dist/interface/telegram/TelegramBot.d.ts +60 -0
  663. package/dist/interface/telegram/TelegramBot.d.ts.map +1 -0
  664. package/dist/interface/telegram/TelegramBot.js +400 -0
  665. package/dist/interface/telegram/TelegramBot.js.map +1 -0
  666. package/dist/interface/telegram/TelegramFormatter.d.ts +19 -0
  667. package/dist/interface/telegram/TelegramFormatter.d.ts.map +1 -0
  668. package/dist/interface/telegram/TelegramFormatter.js +66 -0
  669. package/dist/interface/telegram/TelegramFormatter.js.map +1 -0
  670. package/dist/interface/types.d.ts +167 -0
  671. package/dist/interface/types.d.ts.map +1 -0
  672. package/dist/interface/types.js +6 -0
  673. package/dist/interface/types.js.map +1 -0
  674. package/dist/interface/utils/MessageCombiner.d.ts +14 -0
  675. package/dist/interface/utils/MessageCombiner.d.ts.map +1 -0
  676. package/dist/interface/utils/MessageCombiner.js +48 -0
  677. package/dist/interface/utils/MessageCombiner.js.map +1 -0
  678. package/dist/interface/vision/AdaptiveFrameSampler.d.ts +44 -0
  679. package/dist/interface/vision/AdaptiveFrameSampler.d.ts.map +1 -0
  680. package/dist/interface/vision/AdaptiveFrameSampler.js +109 -0
  681. package/dist/interface/vision/AdaptiveFrameSampler.js.map +1 -0
  682. package/dist/interface/vision/AdaptiveFrameSampler.test.d.ts +7 -0
  683. package/dist/interface/vision/AdaptiveFrameSampler.test.d.ts.map +1 -0
  684. package/dist/interface/vision/AdaptiveFrameSampler.test.js +113 -0
  685. package/dist/interface/vision/AdaptiveFrameSampler.test.js.map +1 -0
  686. package/dist/interface/vision/GeminiLive.d.ts +37 -0
  687. package/dist/interface/vision/GeminiLive.d.ts.map +1 -0
  688. package/dist/interface/vision/GeminiLive.js +272 -0
  689. package/dist/interface/vision/GeminiLive.js.map +1 -0
  690. package/dist/interface/vision/GeminiLive.test.d.ts +6 -0
  691. package/dist/interface/vision/GeminiLive.test.d.ts.map +1 -0
  692. package/dist/interface/vision/GeminiLive.test.js +40 -0
  693. package/dist/interface/vision/GeminiLive.test.js.map +1 -0
  694. package/dist/interface/vision/GeminiLiveStream.d.ts +55 -0
  695. package/dist/interface/vision/GeminiLiveStream.d.ts.map +1 -0
  696. package/dist/interface/vision/GeminiLiveStream.js +213 -0
  697. package/dist/interface/vision/GeminiLiveStream.js.map +1 -0
  698. package/dist/interface/vision/GeminiVision.d.ts +25 -0
  699. package/dist/interface/vision/GeminiVision.d.ts.map +1 -0
  700. package/dist/interface/vision/GeminiVision.js +202 -0
  701. package/dist/interface/vision/GeminiVision.js.map +1 -0
  702. package/dist/interface/vision/ScreenCapture.d.ts +77 -0
  703. package/dist/interface/vision/ScreenCapture.d.ts.map +1 -0
  704. package/dist/interface/vision/ScreenCapture.js +314 -0
  705. package/dist/interface/vision/ScreenCapture.js.map +1 -0
  706. package/dist/interface/vision/ScreenCaptureEngine.d.ts +55 -0
  707. package/dist/interface/vision/ScreenCaptureEngine.d.ts.map +1 -0
  708. package/dist/interface/vision/ScreenCaptureEngine.js +223 -0
  709. package/dist/interface/vision/ScreenCaptureEngine.js.map +1 -0
  710. package/dist/interface/vision/ScreenCaptureEngine.test.d.ts +8 -0
  711. package/dist/interface/vision/ScreenCaptureEngine.test.d.ts.map +1 -0
  712. package/dist/interface/vision/ScreenCaptureEngine.test.js +175 -0
  713. package/dist/interface/vision/ScreenCaptureEngine.test.js.map +1 -0
  714. package/dist/interface/vision/VisionInterface.d.ts +26 -0
  715. package/dist/interface/vision/VisionInterface.d.ts.map +1 -0
  716. package/dist/interface/vision/VisionInterface.js +105 -0
  717. package/dist/interface/vision/VisionInterface.js.map +1 -0
  718. package/dist/interface/vision/VisionSession.d.ts +66 -0
  719. package/dist/interface/vision/VisionSession.d.ts.map +1 -0
  720. package/dist/interface/vision/VisionSession.js +274 -0
  721. package/dist/interface/vision/VisionSession.js.map +1 -0
  722. package/dist/interface/vision/VisionSession.test.d.ts +7 -0
  723. package/dist/interface/vision/VisionSession.test.d.ts.map +1 -0
  724. package/dist/interface/vision/VisionSession.test.js +218 -0
  725. package/dist/interface/vision/VisionSession.test.js.map +1 -0
  726. package/dist/interface/vision/__tests__/GeminiVision.test.d.ts +5 -0
  727. package/dist/interface/vision/__tests__/GeminiVision.test.d.ts.map +1 -0
  728. package/dist/interface/vision/__tests__/GeminiVision.test.js +92 -0
  729. package/dist/interface/vision/__tests__/GeminiVision.test.js.map +1 -0
  730. package/dist/interface/vision/__tests__/ScreenCapture.test.d.ts +5 -0
  731. package/dist/interface/vision/__tests__/ScreenCapture.test.d.ts.map +1 -0
  732. package/dist/interface/vision/__tests__/ScreenCapture.test.js +24 -0
  733. package/dist/interface/vision/__tests__/ScreenCapture.test.js.map +1 -0
  734. package/dist/interface/vision/__tests__/VisionInterface.test.d.ts +5 -0
  735. package/dist/interface/vision/__tests__/VisionInterface.test.d.ts.map +1 -0
  736. package/dist/interface/vision/__tests__/VisionInterface.test.js +59 -0
  737. package/dist/interface/vision/__tests__/VisionInterface.test.js.map +1 -0
  738. package/dist/interface/vision/index.d.ts +20 -0
  739. package/dist/interface/vision/index.d.ts.map +1 -0
  740. package/dist/interface/vision/index.js +16 -0
  741. package/dist/interface/vision/index.js.map +1 -0
  742. package/dist/interface/vision/types.d.ts +79 -0
  743. package/dist/interface/vision/types.d.ts.map +1 -0
  744. package/dist/interface/vision/types.js +22 -0
  745. package/dist/interface/vision/types.js.map +1 -0
  746. package/dist/interface/voice/STTProvider.d.ts +48 -0
  747. package/dist/interface/voice/STTProvider.d.ts.map +1 -0
  748. package/dist/interface/voice/STTProvider.js +254 -0
  749. package/dist/interface/voice/STTProvider.js.map +1 -0
  750. package/dist/interface/voice/STTProvider.test.d.ts +8 -0
  751. package/dist/interface/voice/STTProvider.test.d.ts.map +1 -0
  752. package/dist/interface/voice/STTProvider.test.js +144 -0
  753. package/dist/interface/voice/STTProvider.test.js.map +1 -0
  754. package/dist/interface/voice/TTSProvider.d.ts +44 -0
  755. package/dist/interface/voice/TTSProvider.d.ts.map +1 -0
  756. package/dist/interface/voice/TTSProvider.js +252 -0
  757. package/dist/interface/voice/TTSProvider.js.map +1 -0
  758. package/dist/interface/voice/TTSProvider.test.d.ts +8 -0
  759. package/dist/interface/voice/TTSProvider.test.d.ts.map +1 -0
  760. package/dist/interface/voice/TTSProvider.test.js +143 -0
  761. package/dist/interface/voice/TTSProvider.test.js.map +1 -0
  762. package/dist/interface/voice/VADProcessor.d.ts +34 -0
  763. package/dist/interface/voice/VADProcessor.d.ts.map +1 -0
  764. package/dist/interface/voice/VADProcessor.js +116 -0
  765. package/dist/interface/voice/VADProcessor.js.map +1 -0
  766. package/dist/interface/voice/VADProcessor.test.d.ts +8 -0
  767. package/dist/interface/voice/VADProcessor.test.d.ts.map +1 -0
  768. package/dist/interface/voice/VADProcessor.test.js +159 -0
  769. package/dist/interface/voice/VADProcessor.test.js.map +1 -0
  770. package/dist/interface/voice/VoiceSession.d.ts +77 -0
  771. package/dist/interface/voice/VoiceSession.d.ts.map +1 -0
  772. package/dist/interface/voice/VoiceSession.js +249 -0
  773. package/dist/interface/voice/VoiceSession.js.map +1 -0
  774. package/dist/interface/voice/VoiceSession.test.d.ts +8 -0
  775. package/dist/interface/voice/VoiceSession.test.d.ts.map +1 -0
  776. package/dist/interface/voice/VoiceSession.test.js +260 -0
  777. package/dist/interface/voice/VoiceSession.test.js.map +1 -0
  778. package/dist/interface/voice/VoiceWebSocket.d.ts +52 -0
  779. package/dist/interface/voice/VoiceWebSocket.d.ts.map +1 -0
  780. package/dist/interface/voice/VoiceWebSocket.js +165 -0
  781. package/dist/interface/voice/VoiceWebSocket.js.map +1 -0
  782. package/dist/interface/voice/types.d.ts +144 -0
  783. package/dist/interface/voice/types.d.ts.map +1 -0
  784. package/dist/interface/voice/types.js +23 -0
  785. package/dist/interface/voice/types.js.map +1 -0
  786. package/dist/interface/voice/types.test.d.ts +8 -0
  787. package/dist/interface/voice/types.test.d.ts.map +1 -0
  788. package/dist/interface/voice/types.test.js +90 -0
  789. package/dist/interface/voice/types.test.js.map +1 -0
  790. package/dist/interface/web/WebServer.d.ts +80 -0
  791. package/dist/interface/web/WebServer.d.ts.map +1 -0
  792. package/dist/interface/web/WebServer.js +999 -0
  793. package/dist/interface/web/WebServer.js.map +1 -0
  794. package/dist/interface/web/__tests__/WebServer.test.d.ts +5 -0
  795. package/dist/interface/web/__tests__/WebServer.test.d.ts.map +1 -0
  796. package/dist/interface/web/__tests__/WebServer.test.js +345 -0
  797. package/dist/interface/web/__tests__/WebServer.test.js.map +1 -0
  798. package/dist/interface/web/types.d.ts +109 -0
  799. package/dist/interface/web/types.d.ts.map +1 -0
  800. package/dist/interface/web/types.js +67 -0
  801. package/dist/interface/web/types.js.map +1 -0
  802. package/dist/interface/webhook/WebhookHandler.d.ts +45 -0
  803. package/dist/interface/webhook/WebhookHandler.d.ts.map +1 -0
  804. package/dist/interface/webhook/WebhookHandler.js +273 -0
  805. package/dist/interface/webhook/WebhookHandler.js.map +1 -0
  806. package/dist/job/ActionPlanGenerator.d.ts +21 -0
  807. package/dist/job/ActionPlanGenerator.d.ts.map +1 -0
  808. package/dist/job/ActionPlanGenerator.js +153 -0
  809. package/dist/job/ActionPlanGenerator.js.map +1 -0
  810. package/dist/job/AgentJobManager.d.ts +46 -0
  811. package/dist/job/AgentJobManager.d.ts.map +1 -0
  812. package/dist/job/AgentJobManager.js +213 -0
  813. package/dist/job/AgentJobManager.js.map +1 -0
  814. package/dist/job/AgentJobManager.test.d.ts +6 -0
  815. package/dist/job/AgentJobManager.test.d.ts.map +1 -0
  816. package/dist/job/AgentJobManager.test.js +197 -0
  817. package/dist/job/AgentJobManager.test.js.map +1 -0
  818. package/dist/job/IntentParser.d.ts +21 -0
  819. package/dist/job/IntentParser.d.ts.map +1 -0
  820. package/dist/job/IntentParser.js +142 -0
  821. package/dist/job/IntentParser.js.map +1 -0
  822. package/dist/job/JobManager.d.ts +54 -0
  823. package/dist/job/JobManager.d.ts.map +1 -0
  824. package/dist/job/JobManager.js +220 -0
  825. package/dist/job/JobManager.js.map +1 -0
  826. package/dist/job/JobQueue.d.ts +41 -0
  827. package/dist/job/JobQueue.d.ts.map +1 -0
  828. package/dist/job/JobQueue.js +153 -0
  829. package/dist/job/JobQueue.js.map +1 -0
  830. package/dist/job/JobStore.d.ts +36 -0
  831. package/dist/job/JobStore.d.ts.map +1 -0
  832. package/dist/job/JobStore.js +260 -0
  833. package/dist/job/JobStore.js.map +1 -0
  834. package/dist/job/ProgressReporter.d.ts +32 -0
  835. package/dist/job/ProgressReporter.d.ts.map +1 -0
  836. package/dist/job/ProgressReporter.js +82 -0
  837. package/dist/job/ProgressReporter.js.map +1 -0
  838. package/dist/job/agent-job-types.d.ts +32 -0
  839. package/dist/job/agent-job-types.d.ts.map +1 -0
  840. package/dist/job/agent-job-types.js +6 -0
  841. package/dist/job/agent-job-types.js.map +1 -0
  842. package/dist/job/index.d.ts +15 -0
  843. package/dist/job/index.d.ts.map +1 -0
  844. package/dist/job/index.js +15 -0
  845. package/dist/job/index.js.map +1 -0
  846. package/dist/job/job.test.d.ts +5 -0
  847. package/dist/job/job.test.d.ts.map +1 -0
  848. package/dist/job/job.test.js +303 -0
  849. package/dist/job/job.test.js.map +1 -0
  850. package/dist/job/types.d.ts +82 -0
  851. package/dist/job/types.d.ts.map +1 -0
  852. package/dist/job/types.js +40 -0
  853. package/dist/job/types.js.map +1 -0
  854. package/dist/orchestrator/AgentAnnouncer.d.ts +64 -0
  855. package/dist/orchestrator/AgentAnnouncer.d.ts.map +1 -0
  856. package/dist/orchestrator/AgentAnnouncer.js +127 -0
  857. package/dist/orchestrator/AgentAnnouncer.js.map +1 -0
  858. package/dist/orchestrator/AgentAnnouncer.test.d.ts +5 -0
  859. package/dist/orchestrator/AgentAnnouncer.test.d.ts.map +1 -0
  860. package/dist/orchestrator/AgentAnnouncer.test.js +119 -0
  861. package/dist/orchestrator/AgentAnnouncer.test.js.map +1 -0
  862. package/dist/orchestrator/AgentExecutor.d.ts +23 -0
  863. package/dist/orchestrator/AgentExecutor.d.ts.map +1 -0
  864. package/dist/orchestrator/AgentExecutor.js +231 -0
  865. package/dist/orchestrator/AgentExecutor.js.map +1 -0
  866. package/dist/orchestrator/AgentManager.d.ts +73 -0
  867. package/dist/orchestrator/AgentManager.d.ts.map +1 -0
  868. package/dist/orchestrator/AgentManager.js +184 -0
  869. package/dist/orchestrator/AgentManager.js.map +1 -0
  870. package/dist/orchestrator/AgentRegistry.d.ts +76 -0
  871. package/dist/orchestrator/AgentRegistry.d.ts.map +1 -0
  872. package/dist/orchestrator/AgentRegistry.js +217 -0
  873. package/dist/orchestrator/AgentRegistry.js.map +1 -0
  874. package/dist/orchestrator/AgentRegistry.test.d.ts +5 -0
  875. package/dist/orchestrator/AgentRegistry.test.d.ts.map +1 -0
  876. package/dist/orchestrator/AgentRegistry.test.js +122 -0
  877. package/dist/orchestrator/AgentRegistry.test.js.map +1 -0
  878. package/dist/orchestrator/BackgroundManager.d.ts +114 -0
  879. package/dist/orchestrator/BackgroundManager.d.ts.map +1 -0
  880. package/dist/orchestrator/BackgroundManager.js +517 -0
  881. package/dist/orchestrator/BackgroundManager.js.map +1 -0
  882. package/dist/orchestrator/BackgroundManager.test.d.ts +6 -0
  883. package/dist/orchestrator/BackgroundManager.test.d.ts.map +1 -0
  884. package/dist/orchestrator/BackgroundManager.test.js +162 -0
  885. package/dist/orchestrator/BackgroundManager.test.js.map +1 -0
  886. package/dist/orchestrator/CheckpointManager.d.ts +54 -0
  887. package/dist/orchestrator/CheckpointManager.d.ts.map +1 -0
  888. package/dist/orchestrator/CheckpointManager.js +121 -0
  889. package/dist/orchestrator/CheckpointManager.js.map +1 -0
  890. package/dist/orchestrator/LLMCluster.d.ts +91 -0
  891. package/dist/orchestrator/LLMCluster.d.ts.map +1 -0
  892. package/dist/orchestrator/LLMCluster.js +124 -0
  893. package/dist/orchestrator/LLMCluster.js.map +1 -0
  894. package/dist/orchestrator/MultiLlmResearch.d.ts +27 -0
  895. package/dist/orchestrator/MultiLlmResearch.d.ts.map +1 -0
  896. package/dist/orchestrator/MultiLlmResearch.js +145 -0
  897. package/dist/orchestrator/MultiLlmResearch.js.map +1 -0
  898. package/dist/orchestrator/PhasePipeline.d.ts +123 -0
  899. package/dist/orchestrator/PhasePipeline.d.ts.map +1 -0
  900. package/dist/orchestrator/PhasePipeline.js +382 -0
  901. package/dist/orchestrator/PhasePipeline.js.map +1 -0
  902. package/dist/orchestrator/PhaseResultStore.d.ts +39 -0
  903. package/dist/orchestrator/PhaseResultStore.d.ts.map +1 -0
  904. package/dist/orchestrator/PhaseResultStore.js +151 -0
  905. package/dist/orchestrator/PhaseResultStore.js.map +1 -0
  906. package/dist/orchestrator/SessionStore.d.ts +41 -0
  907. package/dist/orchestrator/SessionStore.d.ts.map +1 -0
  908. package/dist/orchestrator/SessionStore.js +117 -0
  909. package/dist/orchestrator/SessionStore.js.map +1 -0
  910. package/dist/orchestrator/SmartRouter.d.ts +77 -0
  911. package/dist/orchestrator/SmartRouter.d.ts.map +1 -0
  912. package/dist/orchestrator/SmartRouter.js +305 -0
  913. package/dist/orchestrator/SmartRouter.js.map +1 -0
  914. package/dist/orchestrator/SwarmOrchestrator.d.ts +144 -0
  915. package/dist/orchestrator/SwarmOrchestrator.d.ts.map +1 -0
  916. package/dist/orchestrator/SwarmOrchestrator.js +361 -0
  917. package/dist/orchestrator/SwarmOrchestrator.js.map +1 -0
  918. package/dist/orchestrator/SwarmOrchestrator.test.d.ts +5 -0
  919. package/dist/orchestrator/SwarmOrchestrator.test.d.ts.map +1 -0
  920. package/dist/orchestrator/SwarmOrchestrator.test.js +95 -0
  921. package/dist/orchestrator/SwarmOrchestrator.test.js.map +1 -0
  922. package/dist/orchestrator/agentDiscovery.d.ts +18 -0
  923. package/dist/orchestrator/agentDiscovery.d.ts.map +1 -0
  924. package/dist/orchestrator/agentDiscovery.js +175 -0
  925. package/dist/orchestrator/agentDiscovery.js.map +1 -0
  926. package/dist/orchestrator/backgroundAgent.d.ts +15 -0
  927. package/dist/orchestrator/backgroundAgent.d.ts.map +1 -0
  928. package/dist/orchestrator/backgroundAgent.js +16 -0
  929. package/dist/orchestrator/backgroundAgent.js.map +1 -0
  930. package/dist/orchestrator/index.d.ts +213 -0
  931. package/dist/orchestrator/index.d.ts.map +1 -0
  932. package/dist/orchestrator/index.js +391 -0
  933. package/dist/orchestrator/index.js.map +1 -0
  934. package/dist/orchestrator/orchestrator.d.ts +63 -0
  935. package/dist/orchestrator/orchestrator.d.ts.map +1 -0
  936. package/dist/orchestrator/orchestrator.js +217 -0
  937. package/dist/orchestrator/orchestrator.js.map +1 -0
  938. package/dist/orchestrator/parallelResearch.d.ts +30 -0
  939. package/dist/orchestrator/parallelResearch.d.ts.map +1 -0
  940. package/dist/orchestrator/parallelResearch.js +247 -0
  941. package/dist/orchestrator/parallelResearch.js.map +1 -0
  942. package/dist/orchestrator/types.d.ts +185 -0
  943. package/dist/orchestrator/types.d.ts.map +1 -0
  944. package/dist/orchestrator/types.js +21 -0
  945. package/dist/orchestrator/types.js.map +1 -0
  946. package/dist/pc/CommandDispatcher.d.ts +31 -0
  947. package/dist/pc/CommandDispatcher.d.ts.map +1 -0
  948. package/dist/pc/CommandDispatcher.js +132 -0
  949. package/dist/pc/CommandDispatcher.js.map +1 -0
  950. package/dist/pc/CommandDispatcher.test.d.ts +2 -0
  951. package/dist/pc/CommandDispatcher.test.d.ts.map +1 -0
  952. package/dist/pc/CommandDispatcher.test.js +360 -0
  953. package/dist/pc/CommandDispatcher.test.js.map +1 -0
  954. package/dist/pc/ModuleRegistry.d.ts +40 -0
  955. package/dist/pc/ModuleRegistry.d.ts.map +1 -0
  956. package/dist/pc/ModuleRegistry.js +163 -0
  957. package/dist/pc/ModuleRegistry.js.map +1 -0
  958. package/dist/pc/ResultFormatter.d.ts +27 -0
  959. package/dist/pc/ResultFormatter.d.ts.map +1 -0
  960. package/dist/pc/ResultFormatter.js +128 -0
  961. package/dist/pc/ResultFormatter.js.map +1 -0
  962. package/dist/pc/ResultFormatter.test.d.ts +2 -0
  963. package/dist/pc/ResultFormatter.test.d.ts.map +1 -0
  964. package/dist/pc/ResultFormatter.test.js +115 -0
  965. package/dist/pc/ResultFormatter.test.js.map +1 -0
  966. package/dist/pc/SecurityGate.d.ts +53 -0
  967. package/dist/pc/SecurityGate.d.ts.map +1 -0
  968. package/dist/pc/SecurityGate.js +142 -0
  969. package/dist/pc/SecurityGate.js.map +1 -0
  970. package/dist/pc/SecurityGate.test.d.ts +2 -0
  971. package/dist/pc/SecurityGate.test.d.ts.map +1 -0
  972. package/dist/pc/SecurityGate.test.js +160 -0
  973. package/dist/pc/SecurityGate.test.js.map +1 -0
  974. package/dist/pc/SessionContext.d.ts +31 -0
  975. package/dist/pc/SessionContext.d.ts.map +1 -0
  976. package/dist/pc/SessionContext.js +108 -0
  977. package/dist/pc/SessionContext.js.map +1 -0
  978. package/dist/pc/browser/BrowserActions.d.ts +22 -0
  979. package/dist/pc/browser/BrowserActions.d.ts.map +1 -0
  980. package/dist/pc/browser/BrowserActions.js +223 -0
  981. package/dist/pc/browser/BrowserActions.js.map +1 -0
  982. package/dist/pc/browser/BrowserActions.test.d.ts +7 -0
  983. package/dist/pc/browser/BrowserActions.test.d.ts.map +1 -0
  984. package/dist/pc/browser/BrowserActions.test.js +150 -0
  985. package/dist/pc/browser/BrowserActions.test.js.map +1 -0
  986. package/dist/pc/browser/BrowserService.d.ts +66 -0
  987. package/dist/pc/browser/BrowserService.d.ts.map +1 -0
  988. package/dist/pc/browser/BrowserService.js +319 -0
  989. package/dist/pc/browser/BrowserService.js.map +1 -0
  990. package/dist/pc/browser/BrowserService.test.d.ts +7 -0
  991. package/dist/pc/browser/BrowserService.test.d.ts.map +1 -0
  992. package/dist/pc/browser/BrowserService.test.js +160 -0
  993. package/dist/pc/browser/BrowserService.test.js.map +1 -0
  994. package/dist/pc/browser/RefLocator.d.ts +39 -0
  995. package/dist/pc/browser/RefLocator.d.ts.map +1 -0
  996. package/dist/pc/browser/RefLocator.js +88 -0
  997. package/dist/pc/browser/RefLocator.js.map +1 -0
  998. package/dist/pc/browser/RoleSnapshotManager.d.ts +22 -0
  999. package/dist/pc/browser/RoleSnapshotManager.d.ts.map +1 -0
  1000. package/dist/pc/browser/RoleSnapshotManager.js +143 -0
  1001. package/dist/pc/browser/RoleSnapshotManager.js.map +1 -0
  1002. package/dist/pc/browser/RoleSnapshotManager.test.d.ts +7 -0
  1003. package/dist/pc/browser/RoleSnapshotManager.test.d.ts.map +1 -0
  1004. package/dist/pc/browser/RoleSnapshotManager.test.js +152 -0
  1005. package/dist/pc/browser/RoleSnapshotManager.test.js.map +1 -0
  1006. package/dist/pc/browser/Security.test.d.ts +7 -0
  1007. package/dist/pc/browser/Security.test.d.ts.map +1 -0
  1008. package/dist/pc/browser/Security.test.js +171 -0
  1009. package/dist/pc/browser/Security.test.js.map +1 -0
  1010. package/dist/pc/browser/types.d.ts +142 -0
  1011. package/dist/pc/browser/types.d.ts.map +1 -0
  1012. package/dist/pc/browser/types.js +60 -0
  1013. package/dist/pc/browser/types.js.map +1 -0
  1014. package/dist/pc/google/OAuthFlow.d.ts +58 -0
  1015. package/dist/pc/google/OAuthFlow.d.ts.map +1 -0
  1016. package/dist/pc/google/OAuthFlow.js +322 -0
  1017. package/dist/pc/google/OAuthFlow.js.map +1 -0
  1018. package/dist/pc/google/OAuthFlow.test.d.ts +7 -0
  1019. package/dist/pc/google/OAuthFlow.test.d.ts.map +1 -0
  1020. package/dist/pc/google/OAuthFlow.test.js +178 -0
  1021. package/dist/pc/google/OAuthFlow.test.js.map +1 -0
  1022. package/dist/pc/google/ScopeManager.d.ts +28 -0
  1023. package/dist/pc/google/ScopeManager.d.ts.map +1 -0
  1024. package/dist/pc/google/ScopeManager.js +75 -0
  1025. package/dist/pc/google/ScopeManager.js.map +1 -0
  1026. package/dist/pc/google/TokenStore.d.ts +49 -0
  1027. package/dist/pc/google/TokenStore.d.ts.map +1 -0
  1028. package/dist/pc/google/TokenStore.js +324 -0
  1029. package/dist/pc/google/TokenStore.js.map +1 -0
  1030. package/dist/pc/google/TokenStore.test.d.ts +7 -0
  1031. package/dist/pc/google/TokenStore.test.d.ts.map +1 -0
  1032. package/dist/pc/google/TokenStore.test.js +134 -0
  1033. package/dist/pc/google/TokenStore.test.js.map +1 -0
  1034. package/dist/pc/google/services/CalendarService.d.ts +45 -0
  1035. package/dist/pc/google/services/CalendarService.d.ts.map +1 -0
  1036. package/dist/pc/google/services/CalendarService.js +148 -0
  1037. package/dist/pc/google/services/CalendarService.js.map +1 -0
  1038. package/dist/pc/google/services/DriveService.d.ts +33 -0
  1039. package/dist/pc/google/services/DriveService.d.ts.map +1 -0
  1040. package/dist/pc/google/services/DriveService.js +199 -0
  1041. package/dist/pc/google/services/DriveService.js.map +1 -0
  1042. package/dist/pc/google/services/GmailService.d.ts +50 -0
  1043. package/dist/pc/google/services/GmailService.d.ts.map +1 -0
  1044. package/dist/pc/google/services/GmailService.js +177 -0
  1045. package/dist/pc/google/services/GmailService.js.map +1 -0
  1046. package/dist/pc/google/services/Services.test.d.ts +8 -0
  1047. package/dist/pc/google/services/Services.test.d.ts.map +1 -0
  1048. package/dist/pc/google/services/Services.test.js +148 -0
  1049. package/dist/pc/google/services/Services.test.js.map +1 -0
  1050. package/dist/pc/google/services/SheetsService.d.ts +27 -0
  1051. package/dist/pc/google/services/SheetsService.d.ts.map +1 -0
  1052. package/dist/pc/google/services/SheetsService.js +107 -0
  1053. package/dist/pc/google/services/SheetsService.js.map +1 -0
  1054. package/dist/pc/google/types.d.ts +97 -0
  1055. package/dist/pc/google/types.d.ts.map +1 -0
  1056. package/dist/pc/google/types.js +39 -0
  1057. package/dist/pc/google/types.js.map +1 -0
  1058. package/dist/pc/google/types.test.d.ts +8 -0
  1059. package/dist/pc/google/types.test.d.ts.map +1 -0
  1060. package/dist/pc/google/types.test.js +131 -0
  1061. package/dist/pc/google/types.test.js.map +1 -0
  1062. package/dist/pc/sandbox/ContainerConfig.d.ts +24 -0
  1063. package/dist/pc/sandbox/ContainerConfig.d.ts.map +1 -0
  1064. package/dist/pc/sandbox/ContainerConfig.js +103 -0
  1065. package/dist/pc/sandbox/ContainerConfig.js.map +1 -0
  1066. package/dist/pc/sandbox/ContainerManager.d.ts +31 -0
  1067. package/dist/pc/sandbox/ContainerManager.d.ts.map +1 -0
  1068. package/dist/pc/sandbox/ContainerManager.js +245 -0
  1069. package/dist/pc/sandbox/ContainerManager.js.map +1 -0
  1070. package/dist/pc/sandbox/ContainerManager.test.d.ts +2 -0
  1071. package/dist/pc/sandbox/ContainerManager.test.d.ts.map +1 -0
  1072. package/dist/pc/sandbox/ContainerManager.test.js +249 -0
  1073. package/dist/pc/sandbox/ContainerManager.test.js.map +1 -0
  1074. package/dist/pc/sandbox/ExecAllowlist.d.ts +35 -0
  1075. package/dist/pc/sandbox/ExecAllowlist.d.ts.map +1 -0
  1076. package/dist/pc/sandbox/ExecAllowlist.js +148 -0
  1077. package/dist/pc/sandbox/ExecAllowlist.js.map +1 -0
  1078. package/dist/pc/sandbox/ExecAllowlist.test.d.ts +2 -0
  1079. package/dist/pc/sandbox/ExecAllowlist.test.d.ts.map +1 -0
  1080. package/dist/pc/sandbox/ExecAllowlist.test.js +210 -0
  1081. package/dist/pc/sandbox/ExecAllowlist.test.js.map +1 -0
  1082. package/dist/pc/sandbox/SandboxBrowser.d.ts +29 -0
  1083. package/dist/pc/sandbox/SandboxBrowser.d.ts.map +1 -0
  1084. package/dist/pc/sandbox/SandboxBrowser.js +72 -0
  1085. package/dist/pc/sandbox/SandboxBrowser.js.map +1 -0
  1086. package/dist/pc/sandbox/ToolPolicy.d.ts +24 -0
  1087. package/dist/pc/sandbox/ToolPolicy.d.ts.map +1 -0
  1088. package/dist/pc/sandbox/ToolPolicy.js +127 -0
  1089. package/dist/pc/sandbox/ToolPolicy.js.map +1 -0
  1090. package/dist/pc/sandbox/ToolPolicy.test.d.ts +2 -0
  1091. package/dist/pc/sandbox/ToolPolicy.test.d.ts.map +1 -0
  1092. package/dist/pc/sandbox/ToolPolicy.test.js +189 -0
  1093. package/dist/pc/sandbox/ToolPolicy.test.js.map +1 -0
  1094. package/dist/pc/sandbox/types.d.ts +109 -0
  1095. package/dist/pc/sandbox/types.d.ts.map +1 -0
  1096. package/dist/pc/sandbox/types.js +26 -0
  1097. package/dist/pc/sandbox/types.js.map +1 -0
  1098. package/dist/pc/types.d.ts +84 -0
  1099. package/dist/pc/types.d.ts.map +1 -0
  1100. package/dist/pc/types.js +7 -0
  1101. package/dist/pc/types.js.map +1 -0
  1102. package/dist/policy/Evidence.d.ts +30 -0
  1103. package/dist/policy/Evidence.d.ts.map +1 -0
  1104. package/dist/policy/Evidence.js +134 -0
  1105. package/dist/policy/Evidence.js.map +1 -0
  1106. package/dist/policy/PolicyEngine.d.ts +34 -0
  1107. package/dist/policy/PolicyEngine.d.ts.map +1 -0
  1108. package/dist/policy/PolicyEngine.js +219 -0
  1109. package/dist/policy/PolicyEngine.js.map +1 -0
  1110. package/dist/policy/PolicyStore.d.ts +36 -0
  1111. package/dist/policy/PolicyStore.d.ts.map +1 -0
  1112. package/dist/policy/PolicyStore.js +160 -0
  1113. package/dist/policy/PolicyStore.js.map +1 -0
  1114. package/dist/policy/RiskCalculator.d.ts +20 -0
  1115. package/dist/policy/RiskCalculator.d.ts.map +1 -0
  1116. package/dist/policy/RiskCalculator.js +64 -0
  1117. package/dist/policy/RiskCalculator.js.map +1 -0
  1118. package/dist/policy/default-policies.d.ts +13 -0
  1119. package/dist/policy/default-policies.d.ts.map +1 -0
  1120. package/dist/policy/default-policies.js +99 -0
  1121. package/dist/policy/default-policies.js.map +1 -0
  1122. package/dist/policy/index.d.ts +11 -0
  1123. package/dist/policy/index.d.ts.map +1 -0
  1124. package/dist/policy/index.js +10 -0
  1125. package/dist/policy/index.js.map +1 -0
  1126. package/dist/policy/policy.test.d.ts +5 -0
  1127. package/dist/policy/policy.test.d.ts.map +1 -0
  1128. package/dist/policy/policy.test.js +628 -0
  1129. package/dist/policy/policy.test.js.map +1 -0
  1130. package/dist/policy/types.d.ts +71 -0
  1131. package/dist/policy/types.d.ts.map +1 -0
  1132. package/dist/policy/types.js +18 -0
  1133. package/dist/policy/types.js.map +1 -0
  1134. package/dist/router/ModelARouter.d.ts +79 -0
  1135. package/dist/router/ModelARouter.d.ts.map +1 -0
  1136. package/dist/router/ModelARouter.js +325 -0
  1137. package/dist/router/ModelARouter.js.map +1 -0
  1138. package/dist/router/ModelARouter.test.d.ts +6 -0
  1139. package/dist/router/ModelARouter.test.d.ts.map +1 -0
  1140. package/dist/router/ModelARouter.test.js +100 -0
  1141. package/dist/router/ModelARouter.test.js.map +1 -0
  1142. package/dist/router/MultiChannelRouter.d.ts +54 -0
  1143. package/dist/router/MultiChannelRouter.d.ts.map +1 -0
  1144. package/dist/router/MultiChannelRouter.js +138 -0
  1145. package/dist/router/MultiChannelRouter.js.map +1 -0
  1146. package/dist/router/RouteRegistry.d.ts +23 -0
  1147. package/dist/router/RouteRegistry.d.ts.map +1 -0
  1148. package/dist/router/RouteRegistry.js +42 -0
  1149. package/dist/router/RouteRegistry.js.map +1 -0
  1150. package/dist/router/browser/BrowserAgent.d.ts +30 -0
  1151. package/dist/router/browser/BrowserAgent.d.ts.map +1 -0
  1152. package/dist/router/browser/BrowserAgent.js +232 -0
  1153. package/dist/router/browser/BrowserAgent.js.map +1 -0
  1154. package/dist/router/browser/BrowserManager.d.ts +36 -0
  1155. package/dist/router/browser/BrowserManager.d.ts.map +1 -0
  1156. package/dist/router/browser/BrowserManager.js +106 -0
  1157. package/dist/router/browser/BrowserManager.js.map +1 -0
  1158. package/dist/router/browser/BrowserPool.d.ts +37 -0
  1159. package/dist/router/browser/BrowserPool.d.ts.map +1 -0
  1160. package/dist/router/browser/BrowserPool.js +114 -0
  1161. package/dist/router/browser/BrowserPool.js.map +1 -0
  1162. package/dist/router/handlers/GitOpsHandler.d.ts +24 -0
  1163. package/dist/router/handlers/GitOpsHandler.d.ts.map +1 -0
  1164. package/dist/router/handlers/GitOpsHandler.js +66 -0
  1165. package/dist/router/handlers/GitOpsHandler.js.map +1 -0
  1166. package/dist/router/index.d.ts +22 -0
  1167. package/dist/router/index.d.ts.map +1 -0
  1168. package/dist/router/index.js +29 -0
  1169. package/dist/router/index.js.map +1 -0
  1170. package/dist/router/index.test.d.ts +2 -0
  1171. package/dist/router/index.test.d.ts.map +1 -0
  1172. package/dist/router/index.test.js +78 -0
  1173. package/dist/router/index.test.js.map +1 -0
  1174. package/dist/router/notifications/NotificationManager.d.ts +37 -0
  1175. package/dist/router/notifications/NotificationManager.d.ts.map +1 -0
  1176. package/dist/router/notifications/NotificationManager.js +118 -0
  1177. package/dist/router/notifications/NotificationManager.js.map +1 -0
  1178. package/dist/router/planner/TaskExecutor.d.ts +48 -0
  1179. package/dist/router/planner/TaskExecutor.d.ts.map +1 -0
  1180. package/dist/router/planner/TaskExecutor.js +160 -0
  1181. package/dist/router/planner/TaskExecutor.js.map +1 -0
  1182. package/dist/router/planner/TaskExecutor.test.d.ts +6 -0
  1183. package/dist/router/planner/TaskExecutor.test.d.ts.map +1 -0
  1184. package/dist/router/planner/TaskExecutor.test.js +121 -0
  1185. package/dist/router/planner/TaskExecutor.test.js.map +1 -0
  1186. package/dist/router/planner/TaskPlanner.d.ts +37 -0
  1187. package/dist/router/planner/TaskPlanner.d.ts.map +1 -0
  1188. package/dist/router/planner/TaskPlanner.js +176 -0
  1189. package/dist/router/planner/TaskPlanner.js.map +1 -0
  1190. package/dist/router/planner/TaskPlanner.test.d.ts +6 -0
  1191. package/dist/router/planner/TaskPlanner.test.d.ts.map +1 -0
  1192. package/dist/router/planner/TaskPlanner.test.js +119 -0
  1193. package/dist/router/planner/TaskPlanner.test.js.map +1 -0
  1194. package/dist/router/qa/TelegramQABridge.d.ts +37 -0
  1195. package/dist/router/qa/TelegramQABridge.d.ts.map +1 -0
  1196. package/dist/router/qa/TelegramQABridge.js +147 -0
  1197. package/dist/router/qa/TelegramQABridge.js.map +1 -0
  1198. package/dist/router/qa/TelegramQABridge.test.d.ts +6 -0
  1199. package/dist/router/qa/TelegramQABridge.test.d.ts.map +1 -0
  1200. package/dist/router/qa/TelegramQABridge.test.js +143 -0
  1201. package/dist/router/qa/TelegramQABridge.test.js.map +1 -0
  1202. package/dist/router/resolvers/RepoResolver.d.ts +29 -0
  1203. package/dist/router/resolvers/RepoResolver.d.ts.map +1 -0
  1204. package/dist/router/resolvers/RepoResolver.js +105 -0
  1205. package/dist/router/resolvers/RepoResolver.js.map +1 -0
  1206. package/dist/router/resolvers/RepoResolver.test.d.ts +6 -0
  1207. package/dist/router/resolvers/RepoResolver.test.d.ts.map +1 -0
  1208. package/dist/router/resolvers/RepoResolver.test.js +92 -0
  1209. package/dist/router/resolvers/RepoResolver.test.js.map +1 -0
  1210. package/dist/router/routes/BaseRoute.d.ts +22 -0
  1211. package/dist/router/routes/BaseRoute.d.ts.map +1 -0
  1212. package/dist/router/routes/BaseRoute.js +55 -0
  1213. package/dist/router/routes/BaseRoute.js.map +1 -0
  1214. package/dist/router/routes/BrowseRoute.d.ts +21 -0
  1215. package/dist/router/routes/BrowseRoute.d.ts.map +1 -0
  1216. package/dist/router/routes/BrowseRoute.js +121 -0
  1217. package/dist/router/routes/BrowseRoute.js.map +1 -0
  1218. package/dist/router/routes/CompositeRoute.d.ts +28 -0
  1219. package/dist/router/routes/CompositeRoute.d.ts.map +1 -0
  1220. package/dist/router/routes/CompositeRoute.js +125 -0
  1221. package/dist/router/routes/CompositeRoute.js.map +1 -0
  1222. package/dist/router/routes/CompositeRoute.test.d.ts +6 -0
  1223. package/dist/router/routes/CompositeRoute.test.d.ts.map +1 -0
  1224. package/dist/router/routes/CompositeRoute.test.js +82 -0
  1225. package/dist/router/routes/CompositeRoute.test.js.map +1 -0
  1226. package/dist/router/routes/DevRoute.d.ts +26 -0
  1227. package/dist/router/routes/DevRoute.d.ts.map +1 -0
  1228. package/dist/router/routes/DevRoute.js +118 -0
  1229. package/dist/router/routes/DevRoute.js.map +1 -0
  1230. package/dist/router/routes/GoogleRoute.d.ts +46 -0
  1231. package/dist/router/routes/GoogleRoute.d.ts.map +1 -0
  1232. package/dist/router/routes/GoogleRoute.js +293 -0
  1233. package/dist/router/routes/GoogleRoute.js.map +1 -0
  1234. package/dist/router/routes/GoogleRoute.test.d.ts +6 -0
  1235. package/dist/router/routes/GoogleRoute.test.d.ts.map +1 -0
  1236. package/dist/router/routes/GoogleRoute.test.js +171 -0
  1237. package/dist/router/routes/GoogleRoute.test.js.map +1 -0
  1238. package/dist/router/routes/MonitorRoute.d.ts +25 -0
  1239. package/dist/router/routes/MonitorRoute.d.ts.map +1 -0
  1240. package/dist/router/routes/MonitorRoute.js +112 -0
  1241. package/dist/router/routes/MonitorRoute.js.map +1 -0
  1242. package/dist/router/routes/MonitorRoute.test.d.ts +6 -0
  1243. package/dist/router/routes/MonitorRoute.test.d.ts.map +1 -0
  1244. package/dist/router/routes/MonitorRoute.test.js +97 -0
  1245. package/dist/router/routes/MonitorRoute.test.js.map +1 -0
  1246. package/dist/router/routes/ResearchRoute.d.ts +25 -0
  1247. package/dist/router/routes/ResearchRoute.d.ts.map +1 -0
  1248. package/dist/router/routes/ResearchRoute.js +113 -0
  1249. package/dist/router/routes/ResearchRoute.js.map +1 -0
  1250. package/dist/router/routes/ResearchRoute.test.d.ts +6 -0
  1251. package/dist/router/routes/ResearchRoute.test.d.ts.map +1 -0
  1252. package/dist/router/routes/ResearchRoute.test.js +104 -0
  1253. package/dist/router/routes/ResearchRoute.test.js.map +1 -0
  1254. package/dist/router/routes/UtilityRoute.d.ts +32 -0
  1255. package/dist/router/routes/UtilityRoute.d.ts.map +1 -0
  1256. package/dist/router/routes/UtilityRoute.js +144 -0
  1257. package/dist/router/routes/UtilityRoute.js.map +1 -0
  1258. package/dist/router/routes/UtilityRoute.test.d.ts +6 -0
  1259. package/dist/router/routes/UtilityRoute.test.d.ts.map +1 -0
  1260. package/dist/router/routes/UtilityRoute.test.js +134 -0
  1261. package/dist/router/routes/UtilityRoute.test.js.map +1 -0
  1262. package/dist/router/services/BookmarkService.d.ts +34 -0
  1263. package/dist/router/services/BookmarkService.d.ts.map +1 -0
  1264. package/dist/router/services/BookmarkService.js +86 -0
  1265. package/dist/router/services/BookmarkService.js.map +1 -0
  1266. package/dist/router/services/BookmarkService.test.d.ts +6 -0
  1267. package/dist/router/services/BookmarkService.test.d.ts.map +1 -0
  1268. package/dist/router/services/BookmarkService.test.js +82 -0
  1269. package/dist/router/services/BookmarkService.test.js.map +1 -0
  1270. package/dist/router/services/CalendarService.d.ts +30 -0
  1271. package/dist/router/services/CalendarService.d.ts.map +1 -0
  1272. package/dist/router/services/CalendarService.js +168 -0
  1273. package/dist/router/services/CalendarService.js.map +1 -0
  1274. package/dist/router/services/CalendarService.test.d.ts +6 -0
  1275. package/dist/router/services/CalendarService.test.d.ts.map +1 -0
  1276. package/dist/router/services/CalendarService.test.js +107 -0
  1277. package/dist/router/services/CalendarService.test.js.map +1 -0
  1278. package/dist/router/services/ContentSummarizer.d.ts +32 -0
  1279. package/dist/router/services/ContentSummarizer.d.ts.map +1 -0
  1280. package/dist/router/services/ContentSummarizer.js +108 -0
  1281. package/dist/router/services/ContentSummarizer.js.map +1 -0
  1282. package/dist/router/services/ContentSummarizer.test.d.ts +6 -0
  1283. package/dist/router/services/ContentSummarizer.test.d.ts.map +1 -0
  1284. package/dist/router/services/ContentSummarizer.test.js +82 -0
  1285. package/dist/router/services/ContentSummarizer.test.js.map +1 -0
  1286. package/dist/router/services/DailyReportGenerator.d.ts +34 -0
  1287. package/dist/router/services/DailyReportGenerator.d.ts.map +1 -0
  1288. package/dist/router/services/DailyReportGenerator.js +110 -0
  1289. package/dist/router/services/DailyReportGenerator.js.map +1 -0
  1290. package/dist/router/services/DocumentGenerator.d.ts +20 -0
  1291. package/dist/router/services/DocumentGenerator.d.ts.map +1 -0
  1292. package/dist/router/services/DocumentGenerator.js +34 -0
  1293. package/dist/router/services/DocumentGenerator.js.map +1 -0
  1294. package/dist/router/services/DriveService.d.ts +29 -0
  1295. package/dist/router/services/DriveService.d.ts.map +1 -0
  1296. package/dist/router/services/DriveService.js +176 -0
  1297. package/dist/router/services/DriveService.js.map +1 -0
  1298. package/dist/router/services/DriveService.test.d.ts +6 -0
  1299. package/dist/router/services/DriveService.test.d.ts.map +1 -0
  1300. package/dist/router/services/DriveService.test.js +83 -0
  1301. package/dist/router/services/DriveService.test.js.map +1 -0
  1302. package/dist/router/services/FileAnalyzer.d.ts +26 -0
  1303. package/dist/router/services/FileAnalyzer.d.ts.map +1 -0
  1304. package/dist/router/services/FileAnalyzer.js +82 -0
  1305. package/dist/router/services/FileAnalyzer.js.map +1 -0
  1306. package/dist/router/services/GitHubMonitor.d.ts +38 -0
  1307. package/dist/router/services/GitHubMonitor.d.ts.map +1 -0
  1308. package/dist/router/services/GitHubMonitor.js +82 -0
  1309. package/dist/router/services/GitHubMonitor.js.map +1 -0
  1310. package/dist/router/services/GitHubMonitor.test.d.ts +6 -0
  1311. package/dist/router/services/GitHubMonitor.test.d.ts.map +1 -0
  1312. package/dist/router/services/GitHubMonitor.test.js +103 -0
  1313. package/dist/router/services/GitHubMonitor.test.js.map +1 -0
  1314. package/dist/router/services/GmailService.d.ts +28 -0
  1315. package/dist/router/services/GmailService.d.ts.map +1 -0
  1316. package/dist/router/services/GmailService.js +169 -0
  1317. package/dist/router/services/GmailService.js.map +1 -0
  1318. package/dist/router/services/GmailService.test.d.ts +6 -0
  1319. package/dist/router/services/GmailService.test.d.ts.map +1 -0
  1320. package/dist/router/services/GmailService.test.js +113 -0
  1321. package/dist/router/services/GmailService.test.js.map +1 -0
  1322. package/dist/router/services/GoogleAuthManager.d.ts +31 -0
  1323. package/dist/router/services/GoogleAuthManager.d.ts.map +1 -0
  1324. package/dist/router/services/GoogleAuthManager.js +219 -0
  1325. package/dist/router/services/GoogleAuthManager.js.map +1 -0
  1326. package/dist/router/services/GoogleAuthManager.test.d.ts +6 -0
  1327. package/dist/router/services/GoogleAuthManager.test.d.ts.map +1 -0
  1328. package/dist/router/services/GoogleAuthManager.test.js +153 -0
  1329. package/dist/router/services/GoogleAuthManager.test.js.map +1 -0
  1330. package/dist/router/services/ImageGenerator.d.ts +20 -0
  1331. package/dist/router/services/ImageGenerator.d.ts.map +1 -0
  1332. package/dist/router/services/ImageGenerator.js +41 -0
  1333. package/dist/router/services/ImageGenerator.js.map +1 -0
  1334. package/dist/router/services/NoteService.d.ts +36 -0
  1335. package/dist/router/services/NoteService.d.ts.map +1 -0
  1336. package/dist/router/services/NoteService.js +125 -0
  1337. package/dist/router/services/NoteService.js.map +1 -0
  1338. package/dist/router/services/NoteService.test.d.ts +6 -0
  1339. package/dist/router/services/NoteService.test.d.ts.map +1 -0
  1340. package/dist/router/services/NoteService.test.js +90 -0
  1341. package/dist/router/services/NoteService.test.js.map +1 -0
  1342. package/dist/router/services/ProgressReporter.d.ts +32 -0
  1343. package/dist/router/services/ProgressReporter.d.ts.map +1 -0
  1344. package/dist/router/services/ProgressReporter.js +81 -0
  1345. package/dist/router/services/ProgressReporter.js.map +1 -0
  1346. package/dist/router/services/SchedulerEngine.d.ts +55 -0
  1347. package/dist/router/services/SchedulerEngine.d.ts.map +1 -0
  1348. package/dist/router/services/SchedulerEngine.js +215 -0
  1349. package/dist/router/services/SchedulerEngine.js.map +1 -0
  1350. package/dist/router/services/SchedulerEngine.test.d.ts +6 -0
  1351. package/dist/router/services/SchedulerEngine.test.d.ts.map +1 -0
  1352. package/dist/router/services/SchedulerEngine.test.js +102 -0
  1353. package/dist/router/services/SchedulerEngine.test.js.map +1 -0
  1354. package/dist/router/services/ScreenshotService.d.ts +22 -0
  1355. package/dist/router/services/ScreenshotService.d.ts.map +1 -0
  1356. package/dist/router/services/ScreenshotService.js +39 -0
  1357. package/dist/router/services/ScreenshotService.js.map +1 -0
  1358. package/dist/router/services/SheetsService.d.ts +27 -0
  1359. package/dist/router/services/SheetsService.d.ts.map +1 -0
  1360. package/dist/router/services/SheetsService.js +91 -0
  1361. package/dist/router/services/SheetsService.js.map +1 -0
  1362. package/dist/router/services/SheetsService.test.d.ts +6 -0
  1363. package/dist/router/services/SheetsService.test.d.ts.map +1 -0
  1364. package/dist/router/services/SheetsService.test.js +86 -0
  1365. package/dist/router/services/SheetsService.test.js.map +1 -0
  1366. package/dist/router/services/TranslationService.d.ts +21 -0
  1367. package/dist/router/services/TranslationService.d.ts.map +1 -0
  1368. package/dist/router/services/TranslationService.js +76 -0
  1369. package/dist/router/services/TranslationService.js.map +1 -0
  1370. package/dist/router/services/TranslationService.test.d.ts +6 -0
  1371. package/dist/router/services/TranslationService.test.d.ts.map +1 -0
  1372. package/dist/router/services/TranslationService.test.js +61 -0
  1373. package/dist/router/services/TranslationService.test.js.map +1 -0
  1374. package/dist/router/services/WebSearchService.d.ts +24 -0
  1375. package/dist/router/services/WebSearchService.d.ts.map +1 -0
  1376. package/dist/router/services/WebSearchService.js +78 -0
  1377. package/dist/router/services/WebSearchService.js.map +1 -0
  1378. package/dist/router/services/WebSearchService.test.d.ts +6 -0
  1379. package/dist/router/services/WebSearchService.test.d.ts.map +1 -0
  1380. package/dist/router/services/WebSearchService.test.js +75 -0
  1381. package/dist/router/services/WebSearchService.test.js.map +1 -0
  1382. package/dist/router/services/YouTubeService.d.ts +30 -0
  1383. package/dist/router/services/YouTubeService.d.ts.map +1 -0
  1384. package/dist/router/services/YouTubeService.js +145 -0
  1385. package/dist/router/services/YouTubeService.js.map +1 -0
  1386. package/dist/router/services/YouTubeService.test.d.ts +6 -0
  1387. package/dist/router/services/YouTubeService.test.d.ts.map +1 -0
  1388. package/dist/router/services/YouTubeService.test.js +128 -0
  1389. package/dist/router/services/YouTubeService.test.js.map +1 -0
  1390. package/dist/router/services/google-types.d.ts +222 -0
  1391. package/dist/router/services/google-types.d.ts.map +1 -0
  1392. package/dist/router/services/google-types.js +6 -0
  1393. package/dist/router/services/google-types.js.map +1 -0
  1394. package/dist/router/sessions/DevSessionManager.d.ts +39 -0
  1395. package/dist/router/sessions/DevSessionManager.d.ts.map +1 -0
  1396. package/dist/router/sessions/DevSessionManager.js +151 -0
  1397. package/dist/router/sessions/DevSessionManager.js.map +1 -0
  1398. package/dist/router/types.d.ts +117 -0
  1399. package/dist/router/types.d.ts.map +1 -0
  1400. package/dist/router/types.js +25 -0
  1401. package/dist/router/types.js.map +1 -0
  1402. package/dist/sync/ConflictResolver.d.ts +29 -0
  1403. package/dist/sync/ConflictResolver.d.ts.map +1 -0
  1404. package/dist/sync/ConflictResolver.js +106 -0
  1405. package/dist/sync/ConflictResolver.js.map +1 -0
  1406. package/dist/sync/DataSerializer.d.ts +33 -0
  1407. package/dist/sync/DataSerializer.d.ts.map +1 -0
  1408. package/dist/sync/DataSerializer.js +207 -0
  1409. package/dist/sync/DataSerializer.js.map +1 -0
  1410. package/dist/sync/DeviceManager.d.ts +31 -0
  1411. package/dist/sync/DeviceManager.d.ts.map +1 -0
  1412. package/dist/sync/DeviceManager.js +141 -0
  1413. package/dist/sync/DeviceManager.js.map +1 -0
  1414. package/dist/sync/SyncEngine.d.ts +56 -0
  1415. package/dist/sync/SyncEngine.d.ts.map +1 -0
  1416. package/dist/sync/SyncEngine.js +172 -0
  1417. package/dist/sync/SyncEngine.js.map +1 -0
  1418. package/dist/sync/SyncStore.d.ts +46 -0
  1419. package/dist/sync/SyncStore.d.ts.map +1 -0
  1420. package/dist/sync/SyncStore.js +219 -0
  1421. package/dist/sync/SyncStore.js.map +1 -0
  1422. package/dist/sync/index.d.ts +12 -0
  1423. package/dist/sync/index.d.ts.map +1 -0
  1424. package/dist/sync/index.js +11 -0
  1425. package/dist/sync/index.js.map +1 -0
  1426. package/dist/sync/sync.test.d.ts +5 -0
  1427. package/dist/sync/sync.test.d.ts.map +1 -0
  1428. package/dist/sync/sync.test.js +416 -0
  1429. package/dist/sync/sync.test.js.map +1 -0
  1430. package/dist/sync/types.d.ts +80 -0
  1431. package/dist/sync/types.d.ts.map +1 -0
  1432. package/dist/sync/types.js +12 -0
  1433. package/dist/sync/types.js.map +1 -0
  1434. package/dist/tools/browser/index.d.ts +47 -0
  1435. package/dist/tools/browser/index.d.ts.map +1 -0
  1436. package/dist/tools/browser/index.js +413 -0
  1437. package/dist/tools/browser/index.js.map +1 -0
  1438. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  1439. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  1440. package/dist/tools/google/index.d.ts +84 -0
  1441. package/dist/tools/google/index.d.ts.map +1 -0
  1442. package/dist/tools/google/index.js +508 -0
  1443. package/dist/tools/google/index.js.map +1 -0
  1444. package/dist/tools/integration/index.d.ts +24 -0
  1445. package/dist/tools/integration/index.d.ts.map +1 -0
  1446. package/dist/tools/integration/index.js +223 -0
  1447. package/dist/tools/integration/index.js.map +1 -0
  1448. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  1449. package/dist/tools/memory/getMemoryGraph.js +12 -12
  1450. package/dist/tools/memory/getSessionContext.js +9 -9
  1451. package/dist/tools/memory/linkMemories.js +14 -14
  1452. package/dist/tools/memory/listMemories.js +4 -4
  1453. package/dist/tools/memory/recallMemory.js +4 -4
  1454. package/dist/tools/memory/saveMemory.js +4 -4
  1455. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  1456. package/dist/tools/sandbox/index.d.ts +25 -0
  1457. package/dist/tools/sandbox/index.d.ts.map +1 -0
  1458. package/dist/tools/sandbox/index.js +255 -0
  1459. package/dist/tools/sandbox/index.js.map +1 -0
  1460. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  1461. package/dist/tools/semantic/astGrep.d.ts +2 -0
  1462. package/dist/tools/semantic/astGrep.d.ts.map +1 -1
  1463. package/dist/tools/semantic/astGrep.js +61 -35
  1464. package/dist/tools/semantic/astGrep.js.map +1 -1
  1465. package/dist/tools/semantic/astGrep.test.js +15 -7
  1466. package/dist/tools/semantic/astGrep.test.js.map +1 -1
  1467. package/dist/tools/spec/prdParser.test.js +171 -171
  1468. package/dist/tools/spec/specGenerator.js +169 -169
  1469. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  1470. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  1471. package/dist/tools/vision/index.d.ts +45 -0
  1472. package/dist/tools/vision/index.d.ts.map +1 -0
  1473. package/dist/tools/vision/index.js +328 -0
  1474. package/dist/tools/vision/index.js.map +1 -0
  1475. package/dist/tools/voice/index.d.ts +24 -0
  1476. package/dist/tools/voice/index.d.ts.map +1 -0
  1477. package/dist/tools/voice/index.js +204 -0
  1478. package/dist/tools/voice/index.js.map +1 -0
  1479. package/dist/types/tool.d.ts +64 -0
  1480. package/dist/types/tool.d.ts.map +1 -0
  1481. package/dist/types/tool.js +3 -0
  1482. package/dist/types/tool.js.map +1 -0
  1483. package/hooks/hooks.json +137 -137
  1484. package/hooks/scripts/code-check.js +70 -70
  1485. package/hooks/scripts/context-save.js +200 -200
  1486. package/hooks/scripts/hud-status.js +291 -291
  1487. package/hooks/scripts/keyword-detector.js +214 -214
  1488. package/hooks/scripts/llm-orchestrate.js +646 -511
  1489. package/hooks/scripts/post-edit.js +32 -32
  1490. package/hooks/scripts/pre-tool-guard.js +125 -125
  1491. package/hooks/scripts/prompt-dispatcher.js +185 -185
  1492. package/hooks/scripts/sentinel-guard.js +104 -104
  1493. package/hooks/scripts/session-start.js +106 -106
  1494. package/hooks/scripts/stop-notify.js +209 -209
  1495. package/hooks/scripts/utils.js +100 -100
  1496. package/languages/csharp-unity.md +515 -515
  1497. package/languages/gdscript-godot.md +470 -470
  1498. package/languages/ruby-rails.md +489 -489
  1499. package/languages/typescript-angular.md +433 -433
  1500. package/languages/typescript-astro.md +416 -416
  1501. package/languages/typescript-electron.md +406 -406
  1502. package/languages/typescript-nestjs.md +524 -524
  1503. package/languages/typescript-svelte.md +407 -407
  1504. package/languages/typescript-tauri.md +365 -365
  1505. package/package.json +121 -119
  1506. package/skills/brand-assets/SKILL.md +138 -138
  1507. package/skills/commerce-patterns/SKILL.md +361 -361
  1508. package/skills/commit-push-pr/SKILL.md +118 -118
  1509. package/skills/context7-usage/SKILL.md +105 -105
  1510. package/skills/e2e-commerce/SKILL.md +304 -304
  1511. package/skills/frontend-design/SKILL.md +92 -92
  1512. package/skills/git-worktree/SKILL.md +184 -184
  1513. package/skills/handoff/SKILL.md +101 -101
  1514. package/skills/priority-todos/SKILL.md +242 -242
  1515. package/skills/seo-checklist/SKILL.md +244 -244
  1516. package/skills/techdebt/SKILL.md +122 -122
  1517. package/skills/tool-fallback/SKILL.md +193 -193
  1518. package/skills/typescript-advanced-types/SKILL.md +720 -720
  1519. package/skills/ui-ux-pro-max/SKILL.md +386 -386
  1520. package/skills/vercel-react-best-practices/SKILL.md +304 -304
  1521. package/vibe/config.json +29 -29
  1522. package/vibe/constitution.md +227 -227
  1523. package/vibe/rules/principles/communication-guide.md +98 -98
  1524. package/vibe/rules/principles/development-philosophy.md +52 -52
  1525. package/vibe/rules/principles/quick-start.md +102 -102
  1526. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  1527. package/vibe/rules/quality/checklist.md +276 -276
  1528. package/vibe/rules/quality/performance.md +236 -236
  1529. package/vibe/rules/quality/testing-strategy.md +440 -440
  1530. package/vibe/rules/standards/anti-patterns.md +541 -541
  1531. package/vibe/rules/standards/code-structure.md +291 -291
  1532. package/vibe/rules/standards/complexity-metrics.md +313 -313
  1533. package/vibe/rules/standards/git-workflow.md +237 -237
  1534. package/vibe/rules/standards/naming-conventions.md +198 -198
  1535. package/vibe/rules/standards/security.md +305 -305
  1536. package/vibe/rules/writing/document-style.md +74 -74
  1537. package/vibe/setup.sh +31 -31
  1538. package/vibe/templates/constitution-template.md +252 -252
  1539. package/vibe/templates/contract-backend-template.md +526 -526
  1540. package/vibe/templates/contract-frontend-template.md +599 -599
  1541. package/vibe/templates/feature-template.md +96 -96
  1542. package/vibe/templates/spec-template.md +221 -221
  1543. package/vibe/ui-ux-data/charts.csv +26 -26
  1544. package/vibe/ui-ux-data/colors.csv +97 -97
  1545. package/vibe/ui-ux-data/icons.csv +101 -101
  1546. package/vibe/ui-ux-data/landing.csv +31 -31
  1547. package/vibe/ui-ux-data/products.csv +96 -96
  1548. package/vibe/ui-ux-data/react-performance.csv +45 -45
  1549. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  1550. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  1551. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  1552. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  1553. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  1554. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  1555. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  1556. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  1557. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  1558. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  1559. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  1560. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  1561. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  1562. package/vibe/ui-ux-data/styles.csv +68 -68
  1563. package/vibe/ui-ux-data/typography.csv +57 -57
  1564. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  1565. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  1566. package/vibe/ui-ux-data/version.json +31 -31
  1567. package/vibe/ui-ux-data/web-interface.csv +31 -31
@@ -0,0 +1,88 @@
1
+ /**
2
+ * RefLocator — Ref ID → Playwright Locator 변환
3
+ *
4
+ * "e1" → `page.getByRole(role, { name, exact: true })` 변환.
5
+ * nth 처리 (동일 role+name 중복 시), stale ref 감지.
6
+ */
7
+ export class RefLocator {
8
+ /**
9
+ * ref ID를 Playwright Locator로 변환
10
+ *
11
+ * @param page - 대상 페이지
12
+ * @param ref - ref ID (e.g., "e1", "e3")
13
+ * @param state - 현재 페이지 상태 (refs + snapshotVersion)
14
+ * @returns Playwright Locator
15
+ * @throws REF_NOT_FOUND | REF_STALE
16
+ */
17
+ resolve(page, ref, state) {
18
+ const normalizedRef = this.normalizeRef(ref);
19
+ const roleRef = state.roleRefs[normalizedRef];
20
+ if (!roleRef) {
21
+ throw this.createRefError('REF_NOT_FOUND', `Ref "${normalizedRef}" not found. Available refs: ${this.listAvailableRefs(state.roleRefs)}`);
22
+ }
23
+ return this.buildLocator(page, roleRef);
24
+ }
25
+ /**
26
+ * 여러 ref를 한번에 해석
27
+ */
28
+ resolveAll(page, refs, state) {
29
+ const locators = new Map();
30
+ for (const ref of refs) {
31
+ locators.set(ref, this.resolve(page, ref, state));
32
+ }
33
+ return locators;
34
+ }
35
+ /**
36
+ * ref 형식 정규화: "@e1", "ref=e1", "e1" → "e1"
37
+ */
38
+ normalizeRef(ref) {
39
+ if (ref.startsWith('@'))
40
+ return ref.slice(1);
41
+ if (ref.startsWith('ref='))
42
+ return ref.slice(4);
43
+ return ref;
44
+ }
45
+ /**
46
+ * ref가 stale인지 확인 (현재 snapshotVersion과 비교)
47
+ */
48
+ isStale(refSnapshotVersion, currentSnapshotVersion) {
49
+ return refSnapshotVersion !== currentSnapshotVersion;
50
+ }
51
+ // ──────────────────────────────────────────────────────────
52
+ // Private
53
+ // ──────────────────────────────────────────────────────────
54
+ /** RoleRef → Playwright Locator 빌드 */
55
+ buildLocator(page, roleRef) {
56
+ const { role, name, nth } = roleRef;
57
+ let locator;
58
+ if (name !== undefined) {
59
+ locator = page.getByRole(role, {
60
+ name,
61
+ exact: true,
62
+ });
63
+ }
64
+ else {
65
+ locator = page.getByRole(role);
66
+ }
67
+ if (nth !== undefined) {
68
+ locator = locator.nth(nth);
69
+ }
70
+ return locator;
71
+ }
72
+ /** 사용 가능한 ref ID 목록 (에러 메시지용) */
73
+ listAvailableRefs(refs) {
74
+ const entries = Object.entries(refs).slice(0, 10);
75
+ const list = entries.map(([id, r]) => `${id}(${r.role}${r.name ? ` "${r.name}"` : ''})`);
76
+ if (Object.keys(refs).length > 10)
77
+ list.push('...');
78
+ return list.join(', ') || '(none)';
79
+ }
80
+ /** 구조화된 ref 에러 생성 */
81
+ createRefError(code, message) {
82
+ const error = new Error(message);
83
+ error.error = code;
84
+ error.message = message;
85
+ return error;
86
+ }
87
+ }
88
+ //# sourceMappingURL=RefLocator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefLocator.js","sourceRoot":"","sources":["../../../src/pc/browser/RefLocator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,OAAO,UAAU;IACrB;;;;;;;;OAQG;IACH,OAAO,CAAC,IAAU,EAAE,GAAW,EAAE,KAAgB;QAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,EACvC,QAAQ,aAAa,gCAAgC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnG,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAU,EAAE,IAAc,EAAE,KAAgB;QACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAmB,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,GAAW;QACtB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;OAEG;IACH,OAAO,CACL,kBAA0B,EAC1B,sBAA8B;QAE9B,OAAO,kBAAkB,KAAK,sBAAsB,CAAC;IACvD,CAAC;IAED,6DAA6D;IAC7D,UAAU;IACV,6DAA6D;IAE7D,sCAAsC;IAC9B,YAAY,CAAC,IAAU,EAAE,OAAgB;QAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAEpC,IAAI,OAAgB,CAAC;QACrB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAwC,EAAE;gBACjE,IAAI;gBACJ,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAwC,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,iCAAiC;IACzB,iBAAiB,CAAC,IAAgB;QACxC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACzF,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;IACrC,CAAC;IAED,qBAAqB;IACb,cAAc,CAAC,IAA2B,EAAE,OAAe;QACjE,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAyB,CAAC;QACzD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;QACnB,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * RoleSnapshotManager — ARIA Snapshot → Role Ref 변환
3
+ *
4
+ * Playwright `page._snapshotForAI()` 호출 → 접근성 트리를 role ref (e1, e2, ...)로 변환.
5
+ * Content-checksum 기반 변경 감지, snapshotVersion 관리.
6
+ */
7
+ import type { Page } from 'playwright';
8
+ import type { SnapshotOptions, SnapshotResult } from './types.js';
9
+ export declare class RoleSnapshotManager {
10
+ private versionCounter;
11
+ /** 페이지 ARIA 스냅샷 수집 + Role Ref 생성 */
12
+ snapshot(page: Page, options?: SnapshotOptions): Promise<SnapshotResult>;
13
+ /** 원시 ARIA 스냅샷 캡처 */
14
+ private captureAriaSnapshot;
15
+ /** ARIA 스냅샷 텍스트를 파싱하여 Role Ref 맵 생성 */
16
+ buildSnapshot(rawSnapshot: string, options?: SnapshotOptions): SnapshotResult;
17
+ /** 현재 스냅샷 버전 */
18
+ get currentVersion(): number;
19
+ /** ARIA 스냅샷 라인 파싱 */
20
+ private parseLine;
21
+ }
22
+ //# sourceMappingURL=RoleSnapshotManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleSnapshotManager.d.ts","sourceRoot":"","sources":["../../../src/pc/browser/RoleSnapshotManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,KAAK,EAGV,eAAe,EACf,cAAc,EACf,MAAM,YAAY,CAAC;AA0CpB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,cAAc,CAAK;IAE3B,oCAAoC;IAC9B,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,cAAc,CAAC;IAKlF,qBAAqB;YACP,mBAAmB;IASjC,uCAAuC;IACvC,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,cAAc;IAmFjF,gBAAgB;IAChB,IAAI,cAAc,IAAI,MAAM,CAE3B;IAMD,qBAAqB;IACrB,OAAO,CAAC,SAAS;CAmBlB"}
@@ -0,0 +1,143 @@
1
+ /**
2
+ * RoleSnapshotManager — ARIA Snapshot → Role Ref 변환
3
+ *
4
+ * Playwright `page._snapshotForAI()` 호출 → 접근성 트리를 role ref (e1, e2, ...)로 변환.
5
+ * Content-checksum 기반 변경 감지, snapshotVersion 관리.
6
+ */
7
+ import * as crypto from 'node:crypto';
8
+ import { INTERACTIVE_ROLES, CONTENT_ROLES, STRUCTURAL_ROLES } from './types.js';
9
+ /** role:name 중복 추적 */
10
+ class RoleNameTracker {
11
+ counts = new Map();
12
+ assignments = new Map();
13
+ /** 발생 횟수 기록, 인덱스 반환 */
14
+ track(role, name) {
15
+ const key = `${role}:${name ?? ''}`;
16
+ const idx = this.counts.get(key) ?? 0;
17
+ this.counts.set(key, idx + 1);
18
+ const idxList = this.assignments.get(key) ?? [];
19
+ idxList.push(idx);
20
+ this.assignments.set(key, idxList);
21
+ return idx;
22
+ }
23
+ /** 중복이 있는 항목만 nth를 유지 (단일 항목은 nth 제거) */
24
+ hasDuplicates(role, name) {
25
+ const key = `${role}:${name ?? ''}`;
26
+ return (this.counts.get(key) ?? 0) > 1;
27
+ }
28
+ }
29
+ export class RoleSnapshotManager {
30
+ versionCounter = 0;
31
+ /** 페이지 ARIA 스냅샷 수집 + Role Ref 생성 */
32
+ async snapshot(page, options = {}) {
33
+ const rawSnapshot = await this.captureAriaSnapshot(page);
34
+ return this.buildSnapshot(rawSnapshot, options);
35
+ }
36
+ /** 원시 ARIA 스냅샷 캡처 */
37
+ async captureAriaSnapshot(page) {
38
+ // Playwright 1.58+ `_snapshotForAI()` API 사용
39
+ const snapshotFn = page._snapshotForAI;
40
+ if (typeof snapshotFn !== 'function') {
41
+ throw new Error('Playwright _snapshotForAI() not available. Requires Playwright 1.58+');
42
+ }
43
+ return snapshotFn.call(page);
44
+ }
45
+ /** ARIA 스냅샷 텍스트를 파싱하여 Role Ref 맵 생성 */
46
+ buildSnapshot(rawSnapshot, options = {}) {
47
+ this.versionCounter += 1;
48
+ const tracker = new RoleNameTracker();
49
+ const refs = {};
50
+ let refCounter = 0;
51
+ let interactiveCount = 0;
52
+ let totalCount = 0;
53
+ const lines = rawSnapshot.split('\n');
54
+ const outputLines = [];
55
+ // Pass 1: 모든 요소 카운트 (중복 추적)
56
+ const preTracker = new RoleNameTracker();
57
+ for (const line of lines) {
58
+ const parsed = this.parseLine(line);
59
+ if (!parsed)
60
+ continue;
61
+ preTracker.track(parsed.role, parsed.name);
62
+ }
63
+ // Pass 2: ref 할당 + 출력 생성
64
+ for (const line of lines) {
65
+ const parsed = this.parseLine(line);
66
+ if (!parsed) {
67
+ if (!options.compact)
68
+ outputLines.push(line);
69
+ continue;
70
+ }
71
+ totalCount++;
72
+ const { role, name, indent, rest } = parsed;
73
+ // maxDepth 체크
74
+ if (options.maxDepth !== undefined) {
75
+ const depth = indent.length / 2;
76
+ if (depth > options.maxDepth)
77
+ continue;
78
+ }
79
+ const isInteractive = INTERACTIVE_ROLES.has(role);
80
+ const isContent = CONTENT_ROLES.has(role);
81
+ const isStructural = STRUCTURAL_ROLES.has(role);
82
+ // interactive 필터
83
+ if (options.interactive && !isInteractive) {
84
+ if (!isStructural)
85
+ outputLines.push(line);
86
+ continue;
87
+ }
88
+ // compact: 구조 요소 제거
89
+ if (options.compact && isStructural)
90
+ continue;
91
+ // Ref 할당 조건: interactive 또는 이름 있는 content
92
+ const shouldAssignRef = isInteractive || (isContent && name !== undefined);
93
+ if (shouldAssignRef) {
94
+ refCounter++;
95
+ const refId = `e${refCounter}`;
96
+ if (isInteractive)
97
+ interactiveCount++;
98
+ const nth = preTracker.hasDuplicates(role, name)
99
+ ? tracker.track(role, name)
100
+ : undefined;
101
+ refs[refId] = { role, name, ...(nth !== undefined ? { nth } : {}) };
102
+ // 출력에 ref ID 주석 추가
103
+ outputLines.push(`${indent}[${refId}] ${role}${name ? ` "${name}"` : ''}${rest}`);
104
+ }
105
+ else {
106
+ outputLines.push(line);
107
+ }
108
+ }
109
+ const tree = outputLines.join('\n');
110
+ const checksum = crypto.createHash('md5').update(tree).digest('hex');
111
+ return {
112
+ tree,
113
+ refs,
114
+ snapshotVersion: this.versionCounter,
115
+ checksum,
116
+ interactiveCount,
117
+ totalCount,
118
+ };
119
+ }
120
+ /** 현재 스냅샷 버전 */
121
+ get currentVersion() {
122
+ return this.versionCounter;
123
+ }
124
+ // ──────────────────────────────────────────────────────────
125
+ // Private
126
+ // ──────────────────────────────────────────────────────────
127
+ /** ARIA 스냅샷 라인 파싱 */
128
+ parseLine(line) {
129
+ // Playwright ARIA snapshot 포맷: " - role "name": additional"
130
+ // 또는: " - role: additional"
131
+ const match = line.match(/^(\s*)- (\w+)(?:\s+"([^"]*)")?(.*)$/);
132
+ if (!match)
133
+ return null;
134
+ const [, indent, role, name, rest] = match;
135
+ return {
136
+ role,
137
+ name: name || undefined,
138
+ indent,
139
+ rest: rest || '',
140
+ };
141
+ }
142
+ }
143
+ //# sourceMappingURL=RoleSnapshotManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleSnapshotManager.js","sourceRoot":"","sources":["../../../src/pc/browser/RoleSnapshotManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * RoleSnapshotManager Unit Tests
3
+ *
4
+ * ARIA 스냅샷 파싱, Ref 생성, 변경 감지.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=RoleSnapshotManager.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleSnapshotManager.test.d.ts","sourceRoot":"","sources":["../../../src/pc/browser/RoleSnapshotManager.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,152 @@
1
+ /**
2
+ * RoleSnapshotManager Unit Tests
3
+ *
4
+ * ARIA 스냅샷 파싱, Ref 생성, 변경 감지.
5
+ */
6
+ import { describe, it, expect } from 'vitest';
7
+ import { RoleSnapshotManager } from './RoleSnapshotManager.js';
8
+ const SAMPLE_SNAPSHOT = `- main "Google"
9
+ - navigation "Main"
10
+ - link "Gmail"
11
+ - link "Images"
12
+ - searchbox "Search"
13
+ - button "Google Search"
14
+ - button "I'm Feeling Lucky"
15
+ - group
16
+ - link "Privacy"
17
+ - link "Terms"`;
18
+ const SNAPSHOT_WITH_DUPLICATES = `- main
19
+ - button "Submit"
20
+ - button "Submit"
21
+ - button "Cancel"
22
+ - textbox "Name"
23
+ - textbox "Email"`;
24
+ // ============================================================================
25
+ // Scenario 1: ARIA Snapshot 수집 — Ref 생성 검증
26
+ // ============================================================================
27
+ describe('RoleSnapshotManager: Ref Generation', () => {
28
+ it('should generate sequential ref IDs (e1, e2, ...)', () => {
29
+ const manager = new RoleSnapshotManager();
30
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
31
+ expect(Object.keys(result.refs).length).toBeGreaterThan(0);
32
+ expect(result.refs.e1).toBeDefined();
33
+ expect(result.refs.e2).toBeDefined();
34
+ });
35
+ it('should assign refs to interactive elements', () => {
36
+ const manager = new RoleSnapshotManager();
37
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
38
+ // Search for link, searchbox, button refs
39
+ const roles = Object.values(result.refs).map(r => r.role);
40
+ expect(roles).toContain('link');
41
+ expect(roles).toContain('searchbox');
42
+ expect(roles).toContain('button');
43
+ });
44
+ it('should assign refs to named content elements', () => {
45
+ const manager = new RoleSnapshotManager();
46
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
47
+ // "main" with name "Google" should have ref
48
+ const mainRef = Object.values(result.refs).find(r => r.role === 'main' && r.name === 'Google');
49
+ expect(mainRef).toBeDefined();
50
+ });
51
+ it('should include role and name in ref', () => {
52
+ const manager = new RoleSnapshotManager();
53
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
54
+ const searchRef = Object.values(result.refs).find(r => r.role === 'searchbox');
55
+ expect(searchRef).toBeDefined();
56
+ expect(searchRef.name).toBe('Search');
57
+ });
58
+ });
59
+ // ============================================================================
60
+ // Duplicate Handling
61
+ // ============================================================================
62
+ describe('RoleSnapshotManager: Duplicate Handling', () => {
63
+ it('should assign nth for duplicate role+name pairs', () => {
64
+ const manager = new RoleSnapshotManager();
65
+ const result = manager.buildSnapshot(SNAPSHOT_WITH_DUPLICATES);
66
+ // Two "Submit" buttons should have nth
67
+ const submitRefs = Object.values(result.refs)
68
+ .filter(r => r.role === 'button' && r.name === 'Submit');
69
+ expect(submitRefs.length).toBe(2);
70
+ expect(submitRefs[0].nth).toBe(0);
71
+ expect(submitRefs[1].nth).toBe(1);
72
+ });
73
+ it('should not assign nth for unique elements', () => {
74
+ const manager = new RoleSnapshotManager();
75
+ const result = manager.buildSnapshot(SNAPSHOT_WITH_DUPLICATES);
76
+ const cancelRef = Object.values(result.refs)
77
+ .find(r => r.role === 'button' && r.name === 'Cancel');
78
+ expect(cancelRef).toBeDefined();
79
+ expect(cancelRef.nth).toBeUndefined();
80
+ });
81
+ });
82
+ // ============================================================================
83
+ // Snapshot Options
84
+ // ============================================================================
85
+ describe('RoleSnapshotManager: Options', () => {
86
+ it('should filter to interactive-only elements', () => {
87
+ const manager = new RoleSnapshotManager();
88
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT, { interactive: true });
89
+ // Only interactive roles should have refs
90
+ const roles = Object.values(result.refs).map(r => r.role);
91
+ for (const role of roles) {
92
+ expect(['link', 'searchbox', 'button', 'textbox', 'checkbox', 'radio',
93
+ 'combobox', 'listbox', 'menuitem', 'option', 'slider', 'switch',
94
+ 'tab', 'treeitem']).toContain(role);
95
+ }
96
+ });
97
+ it('should count interactive and total elements', () => {
98
+ const manager = new RoleSnapshotManager();
99
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
100
+ expect(result.interactiveCount).toBeGreaterThan(0);
101
+ expect(result.totalCount).toBeGreaterThan(result.interactiveCount);
102
+ });
103
+ });
104
+ // ============================================================================
105
+ // Snapshot Versioning
106
+ // ============================================================================
107
+ describe('RoleSnapshotManager: Versioning', () => {
108
+ it('should increment version with each snapshot', () => {
109
+ const manager = new RoleSnapshotManager();
110
+ const result1 = manager.buildSnapshot(SAMPLE_SNAPSHOT);
111
+ const result2 = manager.buildSnapshot(SAMPLE_SNAPSHOT);
112
+ expect(result2.snapshotVersion).toBe(result1.snapshotVersion + 1);
113
+ });
114
+ it('should generate content checksum', () => {
115
+ const manager = new RoleSnapshotManager();
116
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
117
+ expect(result.checksum).toMatch(/^[a-f0-9]{32}$/);
118
+ });
119
+ it('should generate same checksum for same content', () => {
120
+ const manager1 = new RoleSnapshotManager();
121
+ const manager2 = new RoleSnapshotManager();
122
+ const result1 = manager1.buildSnapshot(SAMPLE_SNAPSHOT);
123
+ const result2 = manager2.buildSnapshot(SAMPLE_SNAPSHOT);
124
+ expect(result1.checksum).toBe(result2.checksum);
125
+ });
126
+ it('should generate different checksum for different content', () => {
127
+ const manager = new RoleSnapshotManager();
128
+ const result1 = manager.buildSnapshot(SAMPLE_SNAPSHOT);
129
+ const result2 = manager.buildSnapshot(SNAPSHOT_WITH_DUPLICATES);
130
+ expect(result1.checksum).not.toBe(result2.checksum);
131
+ });
132
+ });
133
+ // ============================================================================
134
+ // Tree Output
135
+ // ============================================================================
136
+ describe('RoleSnapshotManager: Tree Output', () => {
137
+ it('should include ref IDs in tree output', () => {
138
+ const manager = new RoleSnapshotManager();
139
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
140
+ expect(result.tree).toContain('[e1]');
141
+ expect(result.tree).toContain('[e2]');
142
+ });
143
+ it('should preserve indentation in tree', () => {
144
+ const manager = new RoleSnapshotManager();
145
+ const result = manager.buildSnapshot(SAMPLE_SNAPSHOT);
146
+ // Should have indented lines
147
+ const lines = result.tree.split('\n');
148
+ const hasIndented = lines.some(l => l.startsWith(' '));
149
+ expect(hasIndented).toBe(true);
150
+ });
151
+ });
152
+ //# sourceMappingURL=RoleSnapshotManager.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleSnapshotManager.test.js","sourceRoot":"","sources":["../../../src/pc/browser/RoleSnapshotManager.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,eAAe,GAAG;;;;;;;;;mBASL,CAAC;AAEpB,MAAM,wBAAwB,GAAG;;;;;oBAKb,CAAC;AAErB,+EAA+E;AAC/E,2CAA2C;AAC3C,+EAA+E;AAE/E,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,0CAA0C;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,4CAA4C;QAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAC/F,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAC/E,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,CAAC,SAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAE/D,uCAAuC;QACvC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;aAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAE3D,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAE/D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;aACzC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAEzD,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QAChC,MAAM,CAAC,SAAU,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;IAC5C,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7E,0CAA0C;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO;gBACnE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;gBAC/D,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAE1C,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEvD,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAE3C,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAExD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAEhE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEtD,6BAA6B;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Browser Security Tests
3
+ *
4
+ * SSRF URL 차단, 경로 순회 차단, CDP 토큰 검증.
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=Security.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Security.test.d.ts","sourceRoot":"","sources":["../../../src/pc/browser/Security.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Browser Security Tests
3
+ *
4
+ * SSRF URL 차단, 경로 순회 차단, CDP 토큰 검증.
5
+ */
6
+ import { describe, it, expect } from 'vitest';
7
+ import * as path from 'node:path';
8
+ import { ALLOWED_SCHEMES, BLOCKED_HOSTNAMES, BLOCKED_IP_PATTERNS } from './types.js';
9
+ import { RefLocator } from './RefLocator.js';
10
+ // ============================================================================
11
+ // [P1] SSRF URL Validation
12
+ // ============================================================================
13
+ describe('Security: SSRF URL Blocking', () => {
14
+ const testUrl = (url) => {
15
+ let schemeSafe = true;
16
+ let ipSafe = true;
17
+ try {
18
+ const parsed = new URL(url);
19
+ schemeSafe = ALLOWED_SCHEMES.has(parsed.protocol);
20
+ const hostname = parsed.hostname;
21
+ ipSafe = !BLOCKED_IP_PATTERNS.some(pattern => pattern.test(hostname));
22
+ }
23
+ catch {
24
+ schemeSafe = false;
25
+ }
26
+ return { scheme: schemeSafe, ip: ipSafe };
27
+ };
28
+ it('should block file: URLs', () => {
29
+ const result = testUrl('file:///etc/passwd');
30
+ expect(result.scheme).toBe(false);
31
+ });
32
+ it('should block javascript: URLs', () => {
33
+ const result = testUrl('javascript:alert(1)');
34
+ expect(result.scheme).toBe(false);
35
+ });
36
+ it('should block data: URLs', () => {
37
+ const result = testUrl('data:text/html,<h1>XSS</h1>');
38
+ expect(result.scheme).toBe(false);
39
+ });
40
+ it('should block AWS metadata endpoint', () => {
41
+ const result = testUrl('http://169.254.169.254/latest/meta-data/');
42
+ expect(result.ip).toBe(false);
43
+ });
44
+ it('should block localhost', () => {
45
+ const result = testUrl('http://127.0.0.1:8080');
46
+ expect(result.ip).toBe(false);
47
+ });
48
+ it('should block internal networks', () => {
49
+ expect(testUrl('http://10.0.0.1').ip).toBe(false);
50
+ expect(testUrl('http://172.16.0.1').ip).toBe(false);
51
+ expect(testUrl('http://192.168.1.1').ip).toBe(false);
52
+ });
53
+ it('should allow public URLs', () => {
54
+ const result = testUrl('https://google.com');
55
+ expect(result.scheme).toBe(true);
56
+ expect(result.ip).toBe(true);
57
+ });
58
+ it('should handle invalid URLs gracefully', () => {
59
+ const result = testUrl('not-a-url');
60
+ expect(result.scheme).toBe(false);
61
+ });
62
+ it('should block IPv4-mapped IPv6 loopback', () => {
63
+ expect(BLOCKED_IP_PATTERNS.some(p => p.test('::ffff:127.0.0.1'))).toBe(true);
64
+ });
65
+ it('should block IPv4-mapped IPv6 private ranges', () => {
66
+ expect(BLOCKED_IP_PATTERNS.some(p => p.test('::ffff:10.0.0.1'))).toBe(true);
67
+ expect(BLOCKED_IP_PATTERNS.some(p => p.test('::ffff:192.168.1.1'))).toBe(true);
68
+ expect(BLOCKED_IP_PATTERNS.some(p => p.test('::ffff:169.254.169.254'))).toBe(true);
69
+ });
70
+ });
71
+ // ============================================================================
72
+ // [P1] Hostname Blocking (DNS Rebinding Prevention)
73
+ // ============================================================================
74
+ describe('Security: Hostname Blocking', () => {
75
+ it('should block localhost', () => {
76
+ expect(BLOCKED_HOSTNAMES.has('localhost')).toBe(true);
77
+ });
78
+ it('should block localhost.localdomain', () => {
79
+ expect(BLOCKED_HOSTNAMES.has('localhost.localdomain')).toBe(true);
80
+ });
81
+ it('should block 0.0.0.0', () => {
82
+ expect(BLOCKED_HOSTNAMES.has('0.0.0.0')).toBe(true);
83
+ });
84
+ it('should not block public hostnames', () => {
85
+ expect(BLOCKED_HOSTNAMES.has('google.com')).toBe(false);
86
+ expect(BLOCKED_HOSTNAMES.has('github.com')).toBe(false);
87
+ });
88
+ });
89
+ // ============================================================================
90
+ // [P2] Screenshot Path Traversal Prevention
91
+ // ============================================================================
92
+ describe('Security: Path Traversal Prevention', () => {
93
+ const isPathSafe = (baseDir, tenantId) => {
94
+ const safePath = path.resolve(baseDir, tenantId);
95
+ return safePath.startsWith(path.resolve(baseDir));
96
+ };
97
+ it('should allow normal tenant IDs', () => {
98
+ expect(isPathSafe('/tmp/screenshots', 'user-123')).toBe(true);
99
+ expect(isPathSafe('/tmp/screenshots', 'tenant-abc')).toBe(true);
100
+ });
101
+ it('should block directory traversal attempts', () => {
102
+ expect(isPathSafe('/tmp/screenshots', '../../../etc')).toBe(false);
103
+ expect(isPathSafe('/tmp/screenshots', '../../.ssh')).toBe(false);
104
+ });
105
+ it('should block absolute path injection', () => {
106
+ // On Windows, path.resolve handles this differently
107
+ const base = '/tmp/screenshots';
108
+ const safe = path.resolve(base, '/etc/passwd');
109
+ expect(safe.startsWith(path.resolve(base))).toBe(false);
110
+ });
111
+ });
112
+ // ============================================================================
113
+ // [P1] Stale Ref Detection
114
+ // ============================================================================
115
+ describe('Security: Stale Ref Detection', () => {
116
+ const locator = new RefLocator();
117
+ it('should detect version mismatch as stale', () => {
118
+ expect(locator.isStale(1, 2)).toBe(true);
119
+ expect(locator.isStale(5, 10)).toBe(true);
120
+ });
121
+ it('should not flag same version as stale', () => {
122
+ expect(locator.isStale(1, 1)).toBe(false);
123
+ expect(locator.isStale(42, 42)).toBe(false);
124
+ });
125
+ });
126
+ // ============================================================================
127
+ // [P1] Ref Not Found Handling
128
+ // ============================================================================
129
+ describe('Security: Ref Not Found', () => {
130
+ const locator = new RefLocator();
131
+ const emptyState = {
132
+ roleRefs: {},
133
+ snapshotVersion: 1,
134
+ };
135
+ const stateWithRefs = {
136
+ roleRefs: {
137
+ e1: { role: 'button', name: 'Submit' },
138
+ e2: { role: 'textbox', name: 'Email' },
139
+ },
140
+ snapshotVersion: 1,
141
+ };
142
+ it('should throw REF_NOT_FOUND for missing ref', () => {
143
+ // Cannot call resolve without a real Page object,
144
+ // but we can test the normalizeRef function
145
+ expect(locator.normalizeRef('e1')).toBe('e1');
146
+ expect(locator.normalizeRef('@e1')).toBe('e1');
147
+ expect(locator.normalizeRef('ref=e1')).toBe('e1');
148
+ });
149
+ it('should normalize different ref formats', () => {
150
+ expect(locator.normalizeRef('e5')).toBe('e5');
151
+ expect(locator.normalizeRef('@e5')).toBe('e5');
152
+ expect(locator.normalizeRef('ref=e5')).toBe('e5');
153
+ });
154
+ });
155
+ // ============================================================================
156
+ // [P1] CDP Port Binding (localhost only)
157
+ // ============================================================================
158
+ describe('Security: CDP Configuration', () => {
159
+ it('should use localhost for local CDP', () => {
160
+ // Verify the CDP URL format
161
+ const cdpUrl = 'http://127.0.0.1:9222';
162
+ const url = new URL(cdpUrl);
163
+ expect(url.hostname).toBe('127.0.0.1');
164
+ });
165
+ it('should not use external-facing IPs', () => {
166
+ const localOnly = ['127.0.0.1', 'localhost', '::1'];
167
+ const cdpHost = '127.0.0.1';
168
+ expect(localOnly.includes(cdpHost)).toBe(true);
169
+ });
170
+ });
171
+ //# sourceMappingURL=Security.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Security.test.js","sourceRoot":"","sources":["../../../src/pc/browser/Security.test.ts"],"names":[],"mappings":"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"}