@agenthippo-ai/agenthippo 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/LICENSE +21 -0
  2. package/bin/agenthippo.js +2 -0
  3. package/out/agentpack/github.js +547 -0
  4. package/out/agentpack/index.js +66 -0
  5. package/out/agentpack/install.js +297 -0
  6. package/out/agentpack/manager.js +441 -0
  7. package/out/agentpack/manifest.js +135 -0
  8. package/out/agentpack/paths.js +475 -0
  9. package/out/agentpack/publish.js +248 -0
  10. package/out/agentpack/stores.js +554 -0
  11. package/out/agentpack/types.js +5 -0
  12. package/out/analytics/dashboard/artifactManager.js +439 -0
  13. package/out/analytics/dashboard/fleetDisplayUtils.js +159 -0
  14. package/out/analytics/dashboard/fleetOrchestrator.js +142 -0
  15. package/out/analytics/dashboard/fleetRegistry.js +79 -0
  16. package/out/analytics/dashboard/fleetRowDefaults.js +87 -0
  17. package/out/analytics/dashboard/fleetScriptAdapter.js +146 -0
  18. package/out/analytics/dashboard/fleetStatusUtils.js +30 -0
  19. package/out/analytics/dashboard/fleetTitleUtils.js +68 -0
  20. package/out/analytics/dashboard/fleetTypes.js +29 -0
  21. package/out/analytics/dashboard/index.js +17 -0
  22. package/out/analytics/dashboard/indexingService.js +422 -0
  23. package/out/analytics/dashboard/localFleetAdapter.js +222 -0
  24. package/out/analytics/dashboard/performanceMonitor.js +76 -0
  25. package/out/analytics/dashboard/processManager.js +209 -0
  26. package/out/analytics/dashboard/provider.js +3885 -0
  27. package/out/analytics/dashboard/queryRunner.js +994 -0
  28. package/out/analytics/dashboard/refreshPolicy.js +16 -0
  29. package/out/analytics/dashboard/scheduledFleetFingerprint.js +22 -0
  30. package/out/analytics/dashboard/scheduledFleetStorage.js +241 -0
  31. package/out/analytics/dashboard/scheduledFleetUtils.js +22 -0
  32. package/out/analytics/dashboard/sessionEventFleetStats.js +118 -0
  33. package/out/analytics/dashboard/sessionJsonlFleet.js +204 -0
  34. package/out/analytics/dashboard/teamViewDiscovery.js +106 -0
  35. package/out/analytics/dashboard/viewsConfigMerge.js +221 -0
  36. package/out/analytics/dashboard/webview/analytics-panel.html +155 -0
  37. package/out/analytics/dashboard/webview/codicon.ttf +0 -0
  38. package/out/analytics/dashboard/webview/index.html +78 -0
  39. package/out/analytics/dashboard/webview/panel.js +2295 -0
  40. package/out/analytics/dashboard/webview/runtime-bridge.js +82 -0
  41. package/out/analytics/dashboard/webview/styles.css +1009 -0
  42. package/out/analytics/lifecycle.js +43 -0
  43. package/out/analytics/service.js +1279 -0
  44. package/out/analytics/sessionEvents.js +231 -0
  45. package/out/auth/bootstrapApply.js +72 -0
  46. package/out/auth/brokerClient.js +126 -0
  47. package/out/auth/callbackUri.js +59 -0
  48. package/out/auth/callbackUriParse.js +59 -0
  49. package/out/auth/githubStoreGate.js +70 -0
  50. package/out/auth/loopbackAuthServer.js +165 -0
  51. package/out/auth/pkce.js +9 -0
  52. package/out/auth/provider.js +239 -0
  53. package/out/auth/sessionStore.js +193 -0
  54. package/out/auth/signInFlow.js +182 -0
  55. package/out/auth/types.js +12 -0
  56. package/out/auth-broker/config.js +62 -0
  57. package/out/auth-broker/jwt.js +105 -0
  58. package/out/auth-broker/pkce.js +57 -0
  59. package/out/auth-broker/server.js +539 -0
  60. package/out/auth-broker/store.js +273 -0
  61. package/out/base-prompts/gateway/openclaw-starter.json5 +144 -0
  62. package/out/base-prompts/gateway/slack-socket-mode-minimal.manifest.json +44 -0
  63. package/out/base-prompts/mcp-servers/.mcp.json +13 -0
  64. package/out/base-prompts/mcp-servers/langfuse-analytics/README.md +142 -0
  65. package/out/base-prompts/mcp-servers/langfuse-analytics/mcp.json +13 -0
  66. package/out/base-prompts/mcp-servers/langfuse-analytics/package-lock.json +1192 -0
  67. package/out/base-prompts/mcp-servers/langfuse-analytics/package.json +23 -0
  68. package/out/base-prompts/mcp-servers/langfuse-analytics/scripts/run-with-env.sh +12 -0
  69. package/out/base-prompts/mcp-servers/langfuse-analytics/scripts/sdk-test.js +102 -0
  70. package/out/base-prompts/mcp-servers/langfuse-analytics/scripts/simple-test.js +137 -0
  71. package/out/base-prompts/mcp-servers/langfuse-analytics/scripts/test-client.js +118 -0
  72. package/out/base-prompts/mcp-servers/langfuse-analytics/scripts/test-server.js +209 -0
  73. package/out/base-prompts/mcp-servers/langfuse-analytics/src/client.ts +431 -0
  74. package/out/base-prompts/mcp-servers/langfuse-analytics/src/index.ts +270 -0
  75. package/out/base-prompts/mcp-servers/langfuse-analytics/tsconfig.json +18 -0
  76. package/out/base-prompts/rules/AGENTS.md +204 -0
  77. package/out/base-prompts/skills/agent-browser/SKILL.md +102 -0
  78. package/out/base-prompts/skills/agent-builder/SKILL.md +73 -0
  79. package/out/base-prompts/skills/agent-builder/references/agent-pack.md +63 -0
  80. package/out/base-prompts/skills/agent-builder/references/crewai.md +66 -0
  81. package/out/base-prompts/skills/agent-builder/references/langchain.md +60 -0
  82. package/out/base-prompts/skills/agent-builder/references/raw-sdk.md +73 -0
  83. package/out/base-prompts/skills/agent-engine-creator/SKILL.md +586 -0
  84. package/out/base-prompts/skills/agent-engine-installer/SKILL.md +106 -0
  85. package/out/base-prompts/skills/agent-engine-installer/scripts/install-engine.mjs +259 -0
  86. package/out/base-prompts/skills/agent-engine-installer/scripts/install-engine.ps1 +189 -0
  87. package/out/base-prompts/skills/agenthippo-cli/SKILL.md +69 -0
  88. package/out/base-prompts/skills/agenthippo-cli/scripts/install.sh +63 -0
  89. package/out/base-prompts/skills/agentpack-creator/SKILL.md +375 -0
  90. package/out/base-prompts/skills/agentpack-creator/references/agent-templates.md +261 -0
  91. package/out/base-prompts/skills/agentpack-creator/references/agents-md-guide.md +195 -0
  92. package/out/base-prompts/skills/agentpack-creator/scripts/init_pack.py +391 -0
  93. package/out/base-prompts/skills/agentpack-creator/scripts/init_pack_test.py +294 -0
  94. package/out/base-prompts/skills/agentpack-testbench/SKILL.md +135 -0
  95. package/out/base-prompts/skills/algorithmic-art/LICENSE.txt +202 -0
  96. package/out/base-prompts/skills/algorithmic-art/SKILL.md +405 -0
  97. package/out/base-prompts/skills/algorithmic-art/templates/generator_template.js +223 -0
  98. package/out/base-prompts/skills/algorithmic-art/templates/viewer.html +599 -0
  99. package/out/base-prompts/skills/debug-agent/SKILL.md +83 -0
  100. package/out/base-prompts/skills/desktop-automation/SKILL.md +166 -0
  101. package/out/base-prompts/skills/desktop-automation/references/agenthippo-ui-recipes.md +441 -0
  102. package/out/base-prompts/skills/desktop-automation/scripts/windows-desktop-uia.psm1 +280 -0
  103. package/out/base-prompts/skills/docx/LICENSE.txt +30 -0
  104. package/out/base-prompts/skills/docx/SKILL.md +197 -0
  105. package/out/base-prompts/skills/docx/docx-js.md +350 -0
  106. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  107. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  108. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  109. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  110. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  111. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  112. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  113. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  114. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  115. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  116. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  117. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  118. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  119. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  120. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  121. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  122. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  123. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  124. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  125. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  126. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  127. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  128. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  129. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  130. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  131. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  132. package/out/base-prompts/skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  133. package/out/base-prompts/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  134. package/out/base-prompts/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  135. package/out/base-prompts/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  136. package/out/base-prompts/skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  137. package/out/base-prompts/skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  138. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  139. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  140. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  141. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  142. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  143. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  144. package/out/base-prompts/skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  145. package/out/base-prompts/skills/docx/ooxml/scripts/pack.py +159 -0
  146. package/out/base-prompts/skills/docx/ooxml/scripts/unpack.py +29 -0
  147. package/out/base-prompts/skills/docx/ooxml/scripts/validate.py +69 -0
  148. package/out/base-prompts/skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  149. package/out/base-prompts/skills/docx/ooxml/scripts/validation/base.py +951 -0
  150. package/out/base-prompts/skills/docx/ooxml/scripts/validation/docx.py +274 -0
  151. package/out/base-prompts/skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  152. package/out/base-prompts/skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  153. package/out/base-prompts/skills/docx/ooxml.md +610 -0
  154. package/out/base-prompts/skills/docx/scripts/__init__.py +1 -0
  155. package/out/base-prompts/skills/docx/scripts/document.py +1276 -0
  156. package/out/base-prompts/skills/docx/scripts/templates/comments.xml +3 -0
  157. package/out/base-prompts/skills/docx/scripts/templates/commentsExtended.xml +3 -0
  158. package/out/base-prompts/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  159. package/out/base-prompts/skills/docx/scripts/templates/commentsIds.xml +3 -0
  160. package/out/base-prompts/skills/docx/scripts/templates/people.xml +3 -0
  161. package/out/base-prompts/skills/docx/scripts/utilities.py +374 -0
  162. package/out/base-prompts/skills/gateway-outbound/SKILL.md +136 -0
  163. package/out/base-prompts/skills/mcp-builder/LICENSE.txt +202 -0
  164. package/out/base-prompts/skills/mcp-builder/SKILL.md +328 -0
  165. package/out/base-prompts/skills/mcp-builder/reference/evaluation.md +602 -0
  166. package/out/base-prompts/skills/mcp-builder/reference/mcp_best_practices.md +249 -0
  167. package/out/base-prompts/skills/mcp-builder/reference/node_mcp_server.md +970 -0
  168. package/out/base-prompts/skills/mcp-builder/reference/python_mcp_server.md +719 -0
  169. package/out/base-prompts/skills/mcp-builder/scripts/connections.py +151 -0
  170. package/out/base-prompts/skills/mcp-builder/scripts/evaluation.py +373 -0
  171. package/out/base-prompts/skills/mcp-builder/scripts/example_evaluation.xml +22 -0
  172. package/out/base-prompts/skills/mcp-builder/scripts/requirements.txt +2 -0
  173. package/out/base-prompts/skills/openclaw/SKILL.md +406 -0
  174. package/out/base-prompts/skills/openclaw/scripts/run-smoke.sh +61 -0
  175. package/out/base-prompts/skills/pdf/LICENSE.txt +30 -0
  176. package/out/base-prompts/skills/pdf/SKILL.md +294 -0
  177. package/out/base-prompts/skills/pdf/forms.md +205 -0
  178. package/out/base-prompts/skills/pdf/reference.md +612 -0
  179. package/out/base-prompts/skills/pdf/scripts/check_bounding_boxes.py +70 -0
  180. package/out/base-prompts/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  181. package/out/base-prompts/skills/pdf/scripts/check_fillable_fields.py +12 -0
  182. package/out/base-prompts/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  183. package/out/base-prompts/skills/pdf/scripts/create_validation_image.py +41 -0
  184. package/out/base-prompts/skills/pdf/scripts/extract_form_field_info.py +152 -0
  185. package/out/base-prompts/skills/pdf/scripts/fill_fillable_fields.py +114 -0
  186. package/out/base-prompts/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  187. package/out/base-prompts/skills/pptx/LICENSE.txt +30 -0
  188. package/out/base-prompts/skills/pptx/SKILL.md +484 -0
  189. package/out/base-prompts/skills/pptx/html2pptx.md +625 -0
  190. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  191. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  192. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  193. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  194. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  195. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  196. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  197. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  198. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  199. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  200. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  201. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  202. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  203. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  204. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  205. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  206. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  207. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  208. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  209. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  210. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  211. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  212. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  213. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  214. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  215. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  216. package/out/base-prompts/skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  217. package/out/base-prompts/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  218. package/out/base-prompts/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  219. package/out/base-prompts/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  220. package/out/base-prompts/skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  221. package/out/base-prompts/skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  222. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  223. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  224. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  225. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  226. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  227. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  228. package/out/base-prompts/skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  229. package/out/base-prompts/skills/pptx/ooxml/scripts/pack.py +159 -0
  230. package/out/base-prompts/skills/pptx/ooxml/scripts/unpack.py +29 -0
  231. package/out/base-prompts/skills/pptx/ooxml/scripts/validate.py +69 -0
  232. package/out/base-prompts/skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  233. package/out/base-prompts/skills/pptx/ooxml/scripts/validation/base.py +951 -0
  234. package/out/base-prompts/skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  235. package/out/base-prompts/skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  236. package/out/base-prompts/skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  237. package/out/base-prompts/skills/pptx/ooxml.md +427 -0
  238. package/out/base-prompts/skills/pptx/scripts/html2pptx.js +984 -0
  239. package/out/base-prompts/skills/pptx/scripts/inventory.py +1020 -0
  240. package/out/base-prompts/skills/pptx/scripts/rearrange.py +231 -0
  241. package/out/base-prompts/skills/pptx/scripts/replace.py +385 -0
  242. package/out/base-prompts/skills/pptx/scripts/thumbnail.py +450 -0
  243. package/out/base-prompts/skills/prompt-lab/SKILL.md +149 -0
  244. package/out/base-prompts/skills/prompt-lab/scripts/query-analytics.sh +2551 -0
  245. package/out/base-prompts/skills/skill-creator/LICENSE.txt +202 -0
  246. package/out/base-prompts/skills/skill-creator/SKILL.md +371 -0
  247. package/out/base-prompts/skills/skill-creator/references/output-patterns.md +82 -0
  248. package/out/base-prompts/skills/skill-creator/references/workflows.md +28 -0
  249. package/out/base-prompts/skills/skill-creator/scripts/init_skill.py +303 -0
  250. package/out/base-prompts/skills/skill-creator/scripts/package_skill.py +110 -0
  251. package/out/base-prompts/skills/skill-creator/scripts/quick_validate.py +95 -0
  252. package/out/base-prompts/skills/skill-installer/SKILL.md +251 -0
  253. package/out/base-prompts/skills/skill-installer/references/store-api.md +219 -0
  254. package/out/base-prompts/skills/spotlight-dashboard/SKILL.md +83 -0
  255. package/out/base-prompts/skills/spotlight-insights/SKILL.md +101 -0
  256. package/out/base-prompts/skills/spotlight-optimize/SKILL.md +93 -0
  257. package/out/base-prompts/skills/spotlight-optimize/scripts/query-analytics.sh +2551 -0
  258. package/out/base-prompts/skills/spotlight-query/SKILL.md +314 -0
  259. package/out/base-prompts/skills/spotlight-query/references/otel-schema.md +163 -0
  260. package/out/base-prompts/skills/spotlight-query/scripts/query-analytics.sh +2551 -0
  261. package/out/base-prompts/skills/spotlight-query/scripts/query-analytics.test.sh +744 -0
  262. package/out/base-prompts/skills/spotlight-query/scripts/test-fixtures/analytics/sessions/sess-test-1.jsonl +14 -0
  263. package/out/base-prompts/skills/spotlight-query/scripts/test-fixtures/analytics/traces/.duckdb-index.json +7 -0
  264. package/out/base-prompts/skills/spotlight-query/scripts/test-fixtures/analytics/traces/sample.jsonl +5 -0
  265. package/out/base-prompts/skills/spotlight-report/SKILL.md +86 -0
  266. package/out/base-prompts/skills/spotlight-visualize/SKILL.md +92 -0
  267. package/out/base-prompts/skills/spotlight-visualize/scripts/query-analytics.sh +2551 -0
  268. package/out/base-prompts/skills/xlsx/LICENSE.txt +30 -0
  269. package/out/base-prompts/skills/xlsx/SKILL.md +289 -0
  270. package/out/base-prompts/skills/xlsx/recalc.py +178 -0
  271. package/out/branding.js +23 -0
  272. package/out/cli/commands/anywhere.js +66 -0
  273. package/out/cli/commands/ask.js +243 -0
  274. package/out/cli/commands/auth-broker.js +24 -0
  275. package/out/cli/commands/auth.js +219 -0
  276. package/out/cli/commands/chat.js +354 -0
  277. package/out/cli/commands/deploy.js +223 -0
  278. package/out/cli/commands/gateway.js +160 -0
  279. package/out/cli/commands/pack.js +220 -0
  280. package/out/cli/commands/probe-custom-engine.js +82 -0
  281. package/out/cli/commands/serve.js +583 -0
  282. package/out/cli/commands/store.js +919 -0
  283. package/out/cli/credential-context.js +113 -0
  284. package/out/cli/deploy-init.js +2087 -0
  285. package/out/cli/deps.js +238 -0
  286. package/out/cli/index.js +390 -0
  287. package/out/cli/pack-loader.js +376 -0
  288. package/out/cli/run-custom-engine-runner.js +318 -0
  289. package/out/cli/runtime.js +409 -0
  290. package/out/cli/serve-hardening.js +325 -0
  291. package/out/cli/state-sync.js +135 -0
  292. package/out/cli/utils.js +220 -0
  293. package/out/cli/vscode-shim.js +86 -0
  294. package/out/engines/base.js +159 -0
  295. package/out/engines/claude.js +1215 -0
  296. package/out/engines/codex.js +759 -0
  297. package/out/engines/custom.js +632 -0
  298. package/out/engines/customEngineIpc.js +95 -0
  299. package/out/engines/customEngineRunnerEmbed.js +107 -0
  300. package/out/engines/customRegistry.js +274 -0
  301. package/out/engines/embeddedCustomEngineRunner.generated.js +9 -0
  302. package/out/engines/engineApiKey.js +138 -0
  303. package/out/engines/factory.js +45 -0
  304. package/out/engines/install.js +372 -0
  305. package/out/engines/persistentEngineWorker.js +320 -0
  306. package/out/engines/publish.js +341 -0
  307. package/out/engines/types.js +17 -0
  308. package/out/examples/run-headless-repl.js +291 -0
  309. package/out/examples/run-headless.js +187 -0
  310. package/out/extension.js +4472 -0
  311. package/out/gateway/bridge.js +805 -0
  312. package/out/gateway/cli-agent-id.js +36 -0
  313. package/out/gateway/client.js +303 -0
  314. package/out/gateway/client.test.js +395 -0
  315. package/out/gateway/gateway-scope-errors.js +14 -0
  316. package/out/gateway/gatewayBackup.js +76 -0
  317. package/out/gateway/gatewayRouteIndex.js +371 -0
  318. package/out/gateway/gatewaySessionStore.js +243 -0
  319. package/out/gateway/index.js +31 -0
  320. package/out/gateway/lifecycle.js +3056 -0
  321. package/out/gateway/openclaw-channel-routing.js +317 -0
  322. package/out/gateway/outboundHandles.js +373 -0
  323. package/out/gateway/outboundPaths.js +72 -0
  324. package/out/gateway/outboundSend.js +254 -0
  325. package/out/gateway/protocol.js +48 -0
  326. package/out/gateway/resetMappings.js +52 -0
  327. package/out/gateway/service.js +1244 -0
  328. package/out/gateway/sessionRouting.js +77 -0
  329. package/out/headless/index.js +505 -0
  330. package/out/headless/sync.js +473 -0
  331. package/out/mcp/publish.js +143 -0
  332. package/out/mcp.js +597 -0
  333. package/out/permissions.js +108 -0
  334. package/out/permissions.mapping.yaml +68 -0
  335. package/out/registry/index.js +332 -0
  336. package/out/remote/handleRemoteChat.js +122 -0
  337. package/out/remote/remotePackStatusBar.js +103 -0
  338. package/out/remote/serveClient.js +216 -0
  339. package/out/remoteSkills.js +191 -0
  340. package/out/runtime/index.js +32 -0
  341. package/out/runtime/interfaces/config-provider.js +32 -0
  342. package/out/runtime/interfaces/edit-tracker.js +22 -0
  343. package/out/runtime/interfaces/index.js +29 -0
  344. package/out/runtime/interfaces/logger.js +40 -0
  345. package/out/runtime/interfaces/permission-handler.js +66 -0
  346. package/out/runtime/interfaces/session-store.js +342 -0
  347. package/out/runtime/vscode/index.js +20 -0
  348. package/out/runtime/vscode/vscode-config-provider.js +77 -0
  349. package/out/runtime/vscode/vscode-edit-tracker.js +120 -0
  350. package/out/runtime/vscode/vscode-logger.js +30 -0
  351. package/out/runtime/vscode/vscode-permission-handler.js +72 -0
  352. package/out/runtime/vscode/vscode-session-store.js +22 -0
  353. package/out/scripts/agentide-litellm.ps1 +501 -0
  354. package/out/scripts/agentide-litellm.sh +700 -0
  355. package/out/scripts/agentide_litellm_hooks_v1.py +604 -0
  356. package/out/scripts/analytics/agent-fleet-widget.js +954 -0
  357. package/out/scripts/analytics/agentide-litellm-otel.config.yaml +160 -0
  358. package/out/scripts/analytics/default-seed-scripts.json +12 -0
  359. package/out/scripts/analytics/duckdbLocator.js +29 -0
  360. package/out/scripts/analytics/fleet-local-adapter.js +246 -0
  361. package/out/scripts/analytics/fleet-workflow.sh +263 -0
  362. package/out/scripts/analytics/generate-default-charts.py +685 -0
  363. package/out/scripts/analytics/hotspot-analysis-widget.js +909 -0
  364. package/out/scripts/analytics/index-traces.py +1394 -0
  365. package/out/scripts/analytics/install-analytics.sh +286 -0
  366. package/out/scripts/analytics/live-fleet-4-collector.cjs +315 -0
  367. package/out/scripts/analytics/live-fleet-4-daemon.mjs +134 -0
  368. package/out/scripts/analytics/live-fleet-4-widget.cjs +433 -0
  369. package/out/scripts/analytics/otel-collector.yaml +55 -0
  370. package/out/scripts/analytics/query-analytics.ps1 +396 -0
  371. package/out/scripts/analytics/query-analytics.sh +2551 -0
  372. package/out/scripts/analytics/session-comparison-widget.js +1468 -0
  373. package/out/scripts/analytics/session-timeline-widget.js +2137 -0
  374. package/out/scripts/analytics/setup-analytics.ps1 +432 -0
  375. package/out/scripts/analytics/setup-analytics.sh +854 -0
  376. package/out/scripts/analytics/start-analytics.ps1 +169 -0
  377. package/out/scripts/analytics/start-analytics.sh +323 -0
  378. package/out/scripts/analytics/token-cost-flamegraph-widget.js +954 -0
  379. package/out/scripts/analytics/token-cost-trend-widget.js +1062 -0
  380. package/out/scripts/analytics/workflows-collector.cjs +315 -0
  381. package/out/scripts/analytics/workflows-daemon.mjs +186 -0
  382. package/out/scripts/analytics/workflows-widget.cjs +433 -0
  383. package/out/scripts/analytics/wow-model-widget.js +191 -0
  384. package/out/scripts/gateway/Dockerfile.serve +45 -0
  385. package/out/scripts/gateway/docker-serve.sh +248 -0
  386. package/out/scripts/gateway/setup-gateway-server.ps1 +953 -0
  387. package/out/scripts/gateway/setup-gateway-server.sh +935 -0
  388. package/out/scripts/gateway/setup-gateway.ps1 +1813 -0
  389. package/out/scripts/gateway/setup-gateway.sh +1541 -0
  390. package/out/scripts/setup-cli.ps1 +86 -0
  391. package/out/scripts/setup-cli.sh +117 -0
  392. package/out/scripts/tools-manifest.json +83 -0
  393. package/out/scripts/vendor-tools.mjs +234 -0
  394. package/out/session.js +272 -0
  395. package/out/shared/agentEngines.js +170 -0
  396. package/out/shared/index.js +109 -0
  397. package/out/shared/models.js +235 -0
  398. package/out/shared/providers.js +202 -0
  399. package/out/skills/publish.js +178 -0
  400. package/out/spotlight/install.js +339 -0
  401. package/out/spotlight/publish.js +544 -0
  402. package/out/spotlight/yaml.js +31 -0
  403. package/out/store/github/setup.js +235 -0
  404. package/out/store/github/templates/build-index.ts +339 -0
  405. package/out/store/github/templates/build-index.yml +97 -0
  406. package/out/store/github/templates/package.json +11 -0
  407. package/out/store/index.js +755 -0
  408. package/out/store/oramaIndex.js +884 -0
  409. package/out/store/shared.js +241 -0
  410. package/out/sync.js +1827 -0
  411. package/out/terminalLogger.js +358 -0
  412. package/out/test/agentEnvFile.test.js +97 -0
  413. package/out/test/agentYaml.test.js +373 -0
  414. package/out/test/agentpack.test.js +639 -0
  415. package/out/test/analytics-lifecycle.test.js +174 -0
  416. package/out/test/analytics.test.js +524 -0
  417. package/out/test/auth-bootstrapApply.test.js +102 -0
  418. package/out/test/auth-broker.test.js +434 -0
  419. package/out/test/auth-callback.test.js +62 -0
  420. package/out/test/branding.test.js +229 -0
  421. package/out/test/cli-agent-id.test.js +55 -0
  422. package/out/test/credential-context.test.js +105 -0
  423. package/out/test/customEngineInstall.test.js +100 -0
  424. package/out/test/customRegistry.test.js +122 -0
  425. package/out/test/deploy-init.test.js +532 -0
  426. package/out/test/deps-auto-install.test.js +81 -0
  427. package/out/test/engine-integration.test.js +297 -0
  428. package/out/test/enginePaths.test.js +195 -0
  429. package/out/test/enginePublish.test.js +82 -0
  430. package/out/test/fleetDisplayUtils.test.js +96 -0
  431. package/out/test/gateway-client.test.js +381 -0
  432. package/out/test/gateway-lifecycle.test.js +608 -0
  433. package/out/test/gateway-outbound.test.js +531 -0
  434. package/out/test/gateway-reset-mappings.test.js +221 -0
  435. package/out/test/gateway-route-index.test.js +235 -0
  436. package/out/test/gateway-session-routing.test.js +47 -0
  437. package/out/test/gateway-session-store.test.js +216 -0
  438. package/out/test/github.test.js +232 -0
  439. package/out/test/headless-sync.test.js +279 -0
  440. package/out/test/helpers/manifest-fixtures.js +27 -0
  441. package/out/test/mcp-obo.test.js +82 -0
  442. package/out/test/mcp.test.js +307 -0
  443. package/out/test/openclaw-channel-routing.test.js +191 -0
  444. package/out/test/pathSafety.test.js +63 -0
  445. package/out/test/permissions.test.js +175 -0
  446. package/out/test/persistent-engine-worker.test.js +220 -0
  447. package/out/test/refreshPolicy.test.js +60 -0
  448. package/out/test/registry.test.js +351 -0
  449. package/out/test/runtime.test.js +349 -0
  450. package/out/test/scheduledFleetStorage.test.js +72 -0
  451. package/out/test/serve-hardening.test.js +192 -0
  452. package/out/test/serveClient.test.js +173 -0
  453. package/out/test/sessionJsonlFleet.test.js +78 -0
  454. package/out/test/shared.test.js +173 -0
  455. package/out/test/skills-mcp.test.js +299 -0
  456. package/out/test/spotlightPublish.test.js +299 -0
  457. package/out/test/spotlightYaml.test.js +58 -0
  458. package/out/test/state-sync-peer.test.js +74 -0
  459. package/out/test/store.test.js +331 -0
  460. package/out/test/stores.test.js +504 -0
  461. package/out/test/sync-switch.test.js +251 -0
  462. package/out/test/teamViewDiscovery.test.js +90 -0
  463. package/out/test/toolPath.test.js +120 -0
  464. package/out/test/utils.test.js +308 -0
  465. package/out/test/viewsConfigMerge.test.js +180 -0
  466. package/out/test/windows-command-line.test.js +75 -0
  467. package/out/utils/agentEnvFile.js +131 -0
  468. package/out/utils/binary.js +175 -0
  469. package/out/utils/index.js +37 -0
  470. package/out/utils/network.js +74 -0
  471. package/out/utils/pathSafety.js +60 -0
  472. package/out/utils/paths.js +116 -0
  473. package/out/utils/pid.js +180 -0
  474. package/out/utils/pythonRunner.js +258 -0
  475. package/out/utils/resolveNodeBinary.js +168 -0
  476. package/out/utils/toolPath.js +83 -0
  477. package/out/utils/windowsCommandLine.js +29 -0
  478. package/out/utils.js +915 -0
  479. package/out/workspaceFolders.js +59 -0
  480. package/package.json +41 -0
@@ -0,0 +1,371 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) AgentHippo.ai. All rights reserved.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.GATEWAY_ROUTE_INDEX_FILENAME = void 0;
40
+ exports._resetGatewayRouteIndexLocksForTest = _resetGatewayRouteIndexLocksForTest;
41
+ exports.buildRouteIndexKey = buildRouteIndexKey;
42
+ exports.getGatewayRouteIndexPath = getGatewayRouteIndexPath;
43
+ exports.getAgentGatewayStatePath = getAgentGatewayStatePath;
44
+ exports.readGatewayRouteIndex = readGatewayRouteIndex;
45
+ exports.readAgentGatewayState = readAgentGatewayState;
46
+ exports.setDefaultPublishedSessionId = setDefaultPublishedSessionId;
47
+ exports.getDefaultPublishedSessionId = getDefaultPublishedSessionId;
48
+ exports.clearDefaultPublishedSessionId = clearDefaultPublishedSessionId;
49
+ exports.tryClaimDefaultPublishedSessionId = tryClaimDefaultPublishedSessionId;
50
+ exports.setRouteSessionMapping = setRouteSessionMapping;
51
+ exports.getRouteSessionMapping = getRouteSessionMapping;
52
+ exports.removeRouteSessionMappingsForSession = removeRouteSessionMappingsForSession;
53
+ exports.backupAndClearAgentRouteIndex = backupAndClearAgentRouteIndex;
54
+ exports.backupAndClearAgentDefault = backupAndClearAgentDefault;
55
+ exports.resolveInboundSessionId = resolveInboundSessionId;
56
+ const fs_1 = require("fs");
57
+ const path = __importStar(require("path"));
58
+ const branding_js_1 = require("../branding.js");
59
+ const gatewayBackup_js_1 = require("./gatewayBackup.js");
60
+ const bridge_js_1 = require("./bridge.js");
61
+ const gatewaySessionStore_js_1 = require("./gatewaySessionStore.js");
62
+ const ROUTE_INDEX_VERSION = 1;
63
+ const AGENT_STATE_VERSION = 1;
64
+ exports.GATEWAY_ROUTE_INDEX_FILENAME = 'route-index.json';
65
+ const indexMutationQueues = new Map();
66
+ function withMutationLock(key, fn) {
67
+ const prev = indexMutationQueues.get(key) ?? Promise.resolve();
68
+ const run = prev.then(() => fn());
69
+ indexMutationQueues.set(key, run.catch(() => undefined));
70
+ return run;
71
+ }
72
+ /** @internal */
73
+ function _resetGatewayRouteIndexLocksForTest() {
74
+ indexMutationQueues.clear();
75
+ }
76
+ function buildRouteIndexKey(agentId, routeKey) {
77
+ return `${agentId}::${routeKey.trim()}`;
78
+ }
79
+ function getGatewayRouteIndexPath(workspaceRoot) {
80
+ return path.join(workspaceRoot, branding_js_1.AGENTIDE_DIR_NAME, 'gateway', exports.GATEWAY_ROUTE_INDEX_FILENAME);
81
+ }
82
+ function getAgentGatewayStatePath(workspaceRoot, agentId) {
83
+ const safeAgent = agentId.replace(/[<>:"/\\|?*\x00-\x1F]/g, '_').slice(0, 120) || 'agent';
84
+ return path.join(workspaceRoot, branding_js_1.AGENTIDE_DIR_NAME, 'gateway', 'agents', `${safeAgent}.json`);
85
+ }
86
+ function emptyRouteIndex() {
87
+ return {
88
+ version: ROUTE_INDEX_VERSION,
89
+ byRoute: {},
90
+ updatedAt: new Date().toISOString(),
91
+ };
92
+ }
93
+ async function readGatewayRouteIndex(workspaceRoot) {
94
+ const filePath = getGatewayRouteIndexPath(workspaceRoot);
95
+ try {
96
+ const raw = await fs_1.promises.readFile(filePath, 'utf8');
97
+ const parsed = JSON.parse(raw);
98
+ if (parsed?.version !== ROUTE_INDEX_VERSION || !parsed.byRoute) {
99
+ return emptyRouteIndex();
100
+ }
101
+ return parsed;
102
+ }
103
+ catch (err) {
104
+ const code = err && typeof err === 'object' && 'code' in err ? String(err.code) : '';
105
+ if (code === 'ENOENT') {
106
+ return emptyRouteIndex();
107
+ }
108
+ throw err;
109
+ }
110
+ }
111
+ async function writeGatewayRouteIndex(workspaceRoot, index) {
112
+ const filePath = getGatewayRouteIndexPath(workspaceRoot);
113
+ await fs_1.promises.mkdir(path.dirname(filePath), { recursive: true });
114
+ const next = {
115
+ ...index,
116
+ version: ROUTE_INDEX_VERSION,
117
+ updatedAt: new Date().toISOString(),
118
+ };
119
+ await fs_1.promises.writeFile(filePath, `${JSON.stringify(next, null, 2)}\n`, 'utf8');
120
+ }
121
+ async function readAgentGatewayState(workspaceRoot, agentId) {
122
+ const filePath = getAgentGatewayStatePath(workspaceRoot, agentId);
123
+ try {
124
+ const raw = await fs_1.promises.readFile(filePath, 'utf8');
125
+ const parsed = JSON.parse(raw);
126
+ if (parsed?.version !== AGENT_STATE_VERSION || parsed.agentId !== agentId) {
127
+ return undefined;
128
+ }
129
+ return parsed;
130
+ }
131
+ catch (err) {
132
+ const code = err && typeof err === 'object' && 'code' in err ? String(err.code) : '';
133
+ if (code === 'ENOENT') {
134
+ return undefined;
135
+ }
136
+ throw err;
137
+ }
138
+ }
139
+ async function setDefaultPublishedSessionId(workspaceRoot, agentId, sessionId) {
140
+ const filePath = getAgentGatewayStatePath(workspaceRoot, agentId);
141
+ // Locked read-modify-write so concurrent default-session mutations (clear/claim) don't clobber
142
+ // each other; shares the file-path lock key with clear/tryClaim.
143
+ await withMutationLock(filePath, async () => {
144
+ await fs_1.promises.mkdir(path.dirname(filePath), { recursive: true });
145
+ const existing = (await readAgentGatewayState(workspaceRoot, agentId)) ?? {
146
+ version: AGENT_STATE_VERSION,
147
+ agentId,
148
+ updatedAt: new Date().toISOString(),
149
+ };
150
+ await fs_1.promises.writeFile(filePath, `${JSON.stringify({
151
+ ...existing,
152
+ version: AGENT_STATE_VERSION,
153
+ agentId,
154
+ defaultPublishedSessionId: sessionId,
155
+ updatedAt: new Date().toISOString(),
156
+ }, null, 2)}\n`, 'utf8');
157
+ });
158
+ }
159
+ async function getDefaultPublishedSessionId(workspaceRoot, agentId) {
160
+ const state = await readAgentGatewayState(workspaceRoot, agentId);
161
+ return state?.defaultPublishedSessionId?.trim() || undefined;
162
+ }
163
+ /**
164
+ * Release the agent's default-published session.
165
+ * The default is a one-shot claim: once an unmatched inbound route binds to it, it is cleared so
166
+ * the next new route opens a fresh chat instead of piling onto the same one.
167
+ * Pass `expectedSessionId` to only clear when the default still points at that session (avoids
168
+ * clobbering a newer default set by a concurrent publish). Returns true if a value was cleared.
169
+ */
170
+ async function clearDefaultPublishedSessionId(workspaceRoot, agentId, expectedSessionId) {
171
+ const filePath = getAgentGatewayStatePath(workspaceRoot, agentId);
172
+ // Locked read-modify-write: the `expectedSessionId` compare must be atomic with the write,
173
+ // otherwise a concurrent publish/claim on the same agent file can be clobbered. Shares the
174
+ // file-path lock key with tryClaim/set so all default-session mutations serialize.
175
+ return withMutationLock(filePath, async () => {
176
+ const existing = await readAgentGatewayState(workspaceRoot, agentId);
177
+ const current = existing?.defaultPublishedSessionId?.trim();
178
+ if (!current) {
179
+ return false;
180
+ }
181
+ if (expectedSessionId && current !== expectedSessionId.trim()) {
182
+ return false;
183
+ }
184
+ await fs_1.promises.mkdir(path.dirname(filePath), { recursive: true });
185
+ await fs_1.promises.writeFile(filePath, `${JSON.stringify({
186
+ version: AGENT_STATE_VERSION,
187
+ agentId,
188
+ updatedAt: new Date().toISOString(),
189
+ }, null, 2)}\n`, 'utf8');
190
+ return true;
191
+ });
192
+ }
193
+ /**
194
+ * Atomically claim the agent's default published session: return its id and release it in the
195
+ * same locked step, so only the *first* unmatched inbound can bind to it. Concurrent or bursted
196
+ * inbound from other channels (e.g. a Slack backlog flushed on reconnect) get `undefined` and must
197
+ * open their own per-channel chat instead of all collapsing onto the default. Returns undefined
198
+ * when no default is set.
199
+ */
200
+ async function tryClaimDefaultPublishedSessionId(workspaceRoot, agentId) {
201
+ const filePath = getAgentGatewayStatePath(workspaceRoot, agentId);
202
+ return withMutationLock(filePath, async () => {
203
+ const existing = await readAgentGatewayState(workspaceRoot, agentId);
204
+ const current = existing?.defaultPublishedSessionId?.trim();
205
+ if (!current) {
206
+ return undefined;
207
+ }
208
+ await fs_1.promises.mkdir(path.dirname(filePath), { recursive: true });
209
+ await fs_1.promises.writeFile(filePath, `${JSON.stringify({
210
+ version: AGENT_STATE_VERSION,
211
+ agentId,
212
+ updatedAt: new Date().toISOString(),
213
+ }, null, 2)}\n`, 'utf8');
214
+ return current;
215
+ });
216
+ }
217
+ async function setRouteSessionMapping(workspaceRoot, agentId, routeKey, sessionId) {
218
+ const rk = routeKey.trim();
219
+ const sid = sessionId.trim();
220
+ if (!rk || !sid) {
221
+ return;
222
+ }
223
+ const lockKey = getGatewayRouteIndexPath(workspaceRoot);
224
+ await withMutationLock(lockKey, async () => {
225
+ const index = await readGatewayRouteIndex(workspaceRoot);
226
+ index.byRoute[buildRouteIndexKey(agentId, rk)] = sid;
227
+ await writeGatewayRouteIndex(workspaceRoot, index);
228
+ });
229
+ }
230
+ async function getRouteSessionMapping(workspaceRoot, agentId, routeKey) {
231
+ const rk = routeKey?.trim();
232
+ if (!rk) {
233
+ return undefined;
234
+ }
235
+ const index = await readGatewayRouteIndex(workspaceRoot);
236
+ return index.byRoute[buildRouteIndexKey(agentId, rk)];
237
+ }
238
+ /** Remove every route → session mapping that points at `sessionId` for this agent. Returns the removed route keys (base, agent prefix stripped). */
239
+ async function removeRouteSessionMappingsForSession(workspaceRoot, agentId, sessionId) {
240
+ const sid = sessionId.trim();
241
+ if (!sid) {
242
+ return [];
243
+ }
244
+ const prefix = `${agentId}::`;
245
+ const lockKey = getGatewayRouteIndexPath(workspaceRoot);
246
+ return withMutationLock(lockKey, async () => {
247
+ const index = await readGatewayRouteIndex(workspaceRoot);
248
+ const removed = [];
249
+ for (const [key, mappedSid] of Object.entries(index.byRoute)) {
250
+ if (mappedSid === sid && key.startsWith(prefix)) {
251
+ removed.push(key.slice(prefix.length));
252
+ delete index.byRoute[key];
253
+ }
254
+ }
255
+ if (removed.length > 0) {
256
+ await writeGatewayRouteIndex(workspaceRoot, index);
257
+ }
258
+ return removed;
259
+ });
260
+ }
261
+ /**
262
+ * Back up `route-index.json` to a timestamped `.bk` sibling, then rewrite it with this agent's
263
+ * `${agentId}::*` entries removed (other agents preserved). No-op (and no backup) when the agent
264
+ * has no entries. Returns the removed route keys and the distinct session ids they pointed at so
265
+ * callers can clear the matching per-session outbound stores.
266
+ */
267
+ async function backupAndClearAgentRouteIndex(workspaceRoot, agentId, ts = (0, gatewayBackup_js_1.backupTimestamp)()) {
268
+ const filePath = getGatewayRouteIndexPath(workspaceRoot);
269
+ const prefix = `${agentId}::`;
270
+ return withMutationLock(filePath, async () => {
271
+ const index = await readGatewayRouteIndex(workspaceRoot);
272
+ const removedRouteKeys = [];
273
+ const removedSessionIds = new Set();
274
+ for (const [key, sid] of Object.entries(index.byRoute)) {
275
+ if (key.startsWith(prefix)) {
276
+ removedRouteKeys.push(key.slice(prefix.length));
277
+ if (sid) {
278
+ removedSessionIds.add(sid);
279
+ }
280
+ delete index.byRoute[key];
281
+ }
282
+ }
283
+ if (removedRouteKeys.length === 0) {
284
+ return { removedRouteKeys, removedSessionIds: [] };
285
+ }
286
+ // Snapshot the whole (multi-agent) file, then rewrite with the remaining agents' routes.
287
+ const backupPath = await (0, gatewayBackup_js_1.renameToBackup)(filePath, ts);
288
+ await writeGatewayRouteIndex(workspaceRoot, index);
289
+ return { removedRouteKeys, removedSessionIds: [...removedSessionIds], backupPath };
290
+ });
291
+ }
292
+ /**
293
+ * Back up `agents/<agentId>.json` to a `.bk` sibling (pure rename — the file holds only this
294
+ * agent's state). No-op when the file is absent or carries no default session.
295
+ */
296
+ async function backupAndClearAgentDefault(workspaceRoot, agentId, ts = (0, gatewayBackup_js_1.backupTimestamp)()) {
297
+ const filePath = getAgentGatewayStatePath(workspaceRoot, agentId);
298
+ // Shares the file-path lock key with set/clear/claim so default-session mutations serialize.
299
+ return withMutationLock(filePath, async () => {
300
+ const state = await readAgentGatewayState(workspaceRoot, agentId);
301
+ const defaultSessionId = state?.defaultPublishedSessionId?.trim() || undefined;
302
+ if (!defaultSessionId) {
303
+ return { hadDefault: false };
304
+ }
305
+ const backupPath = await (0, gatewayBackup_js_1.renameToBackup)(filePath, ts);
306
+ return { hadDefault: true, defaultSessionId, backupPath };
307
+ });
308
+ }
309
+ /**
310
+ * Resolve which AgentHippo session id should handle an inbound gateway message.
311
+ * Returns `sessionId: undefined` with `source: 'new'` when the caller should create a chat.
312
+ */
313
+ async function resolveInboundSessionId(input) {
314
+ const { workspaceRoot, agentId } = input;
315
+ const routeKey = input.routeKey?.trim();
316
+ const gatewaySessionKey = input.gatewaySessionKey?.trim() || routeKey;
317
+ const persistRouteKey = gatewaySessionKey || routeKey;
318
+ // 1. Route index (learned or peer-bound at publish)
319
+ if (routeKey) {
320
+ const fromIndex = await getRouteSessionMapping(workspaceRoot, agentId, routeKey);
321
+ if (fromIndex) {
322
+ return { sessionId: fromIndex, source: 'routeIndex', persistRouteKey };
323
+ }
324
+ }
325
+ if (gatewaySessionKey && gatewaySessionKey !== routeKey) {
326
+ const fromIndex = await getRouteSessionMapping(workspaceRoot, agentId, gatewaySessionKey);
327
+ if (fromIndex) {
328
+ return { sessionId: fromIndex, source: 'routeIndex', persistRouteKey: gatewaySessionKey };
329
+ }
330
+ }
331
+ // 2. CLI bind label — composite `::sid:` or `agent:<id>:<label>` tail.
332
+ // Channel/DM/thread route keys are peer identifiers, never CLI bind labels — skip the scan.
333
+ const isChannelKey = (0, bridge_js_1.looksLikeGatewayChannelRouteKey)(routeKey);
334
+ if (!isChannelKey) {
335
+ const compositeLabel = routeKey ? (0, bridge_js_1.parseIdeThreadIdFromCompositeRouteKey)(routeKey) : undefined;
336
+ if (compositeLabel) {
337
+ const byLabel = await (0, gatewaySessionStore_js_1.findPublishedSessionIdByBindLabel)(workspaceRoot, agentId, compositeLabel);
338
+ if (byLabel) {
339
+ return { sessionId: byLabel, source: 'bindLabel', persistRouteKey };
340
+ }
341
+ }
342
+ const gatewayBaseKey = routeKey && (0, bridge_js_1.isIdeThreadCompositeRouteKey)(routeKey)
343
+ ? routeKey.slice(0, routeKey.lastIndexOf('::sid:'))
344
+ : routeKey;
345
+ const cliLabelFromGatewayKey = gatewayBaseKey
346
+ ? (0, bridge_js_1.extractRouteLabelFromGatewaySessionKey)(gatewayBaseKey)
347
+ : undefined;
348
+ if (cliLabelFromGatewayKey) {
349
+ const byGatewayLabel = await (0, gatewaySessionStore_js_1.findPublishedSessionIdByBindLabel)(workspaceRoot, agentId, cliLabelFromGatewayKey);
350
+ if (byGatewayLabel) {
351
+ return { sessionId: byGatewayLabel, source: 'bindLabel', persistRouteKey };
352
+ }
353
+ }
354
+ if (input.gatewayWireSessionId?.trim()) {
355
+ const byWire = await (0, gatewaySessionStore_js_1.findPublishedSessionIdByBindLabel)(workspaceRoot, agentId, input.gatewayWireSessionId.trim());
356
+ if (byWire) {
357
+ return { sessionId: byWire, source: 'bindLabel', persistRouteKey };
358
+ }
359
+ }
360
+ // Composite CLI thread with no bind-label hit — isolate (do not fall through to default).
361
+ if (routeKey && (0, bridge_js_1.isIdeThreadCompositeRouteKey)(routeKey)) {
362
+ return { source: 'new', persistRouteKey };
363
+ }
364
+ }
365
+ // 3. Default published session for this agent
366
+ const defaultId = await getDefaultPublishedSessionId(workspaceRoot, agentId);
367
+ if (defaultId) {
368
+ return { sessionId: defaultId, source: 'defaultPublished', persistRouteKey };
369
+ }
370
+ return { source: 'new', persistRouteKey };
371
+ }
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) AgentHippo.ai. All rights reserved.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.GATEWAY_SESSION_FILENAME = void 0;
40
+ exports.normalizeInboundBindLabel = normalizeInboundBindLabel;
41
+ exports.inboundBindLabelsMatch = inboundBindLabelsMatch;
42
+ exports.shouldUpdateAgentDefaultOnGatewayPublish = shouldUpdateAgentDefaultOnGatewayPublish;
43
+ exports.mergeGatewaySessionKeyList = mergeGatewaySessionKeyList;
44
+ exports.getGatewaySessionFilePath = getGatewaySessionFilePath;
45
+ exports.readGatewaySessionRecord = readGatewaySessionRecord;
46
+ exports.writeGatewaySessionRecord = writeGatewaySessionRecord;
47
+ exports.isGatewaySessionRecordOrphaned = isGatewaySessionRecordOrphaned;
48
+ exports.deleteGatewaySessionRecord = deleteGatewaySessionRecord;
49
+ exports.detachGatewaySessionRoutes = detachGatewaySessionRoutes;
50
+ exports.clearGatewaySessionPublishedDefault = clearGatewaySessionPublishedDefault;
51
+ exports.appendGatewaySessionKey = appendGatewaySessionKey;
52
+ exports.updateGatewaySessionResource = updateGatewaySessionResource;
53
+ exports.findPublishedSessionIdByBindLabel = findPublishedSessionIdByBindLabel;
54
+ const fs_1 = require("fs");
55
+ const path = __importStar(require("path"));
56
+ const branding_js_1 = require("../branding.js");
57
+ const outboundPaths_js_1 = require("./outboundPaths.js");
58
+ exports.GATEWAY_SESSION_FILENAME = 'gateway-session.json';
59
+ const RECORD_VERSION = 1;
60
+ /** Map chat title / CLI `--session-id` to one comparable token. */
61
+ function normalizeInboundBindLabel(raw) {
62
+ let s = raw.trim().toLowerCase().replace(/\s+/g, '-');
63
+ s = s.replace(/-+/g, '-');
64
+ s = s.replace(/^-+|-+$/g, '');
65
+ return s;
66
+ }
67
+ function inboundBindLabelsMatch(a, b) {
68
+ return normalizeInboundBindLabel(a) === normalizeInboundBindLabel(b);
69
+ }
70
+ /** Peer-only publish updates route index but must not replace the agent default session. */
71
+ function shouldUpdateAgentDefaultOnGatewayPublish(mode) {
72
+ return mode === 'default';
73
+ }
74
+ /** Union of prior and new gateway session keys (idempotent republish / inbound learn). */
75
+ function mergeGatewaySessionKeyList(existing, ...candidates) {
76
+ const keys = new Set(existing.map((k) => k.trim()).filter((k) => k.length > 0));
77
+ for (const candidate of candidates) {
78
+ const trimmed = candidate?.trim();
79
+ if (trimmed) {
80
+ keys.add(trimmed);
81
+ }
82
+ }
83
+ return [...keys];
84
+ }
85
+ function getGatewaySessionFilePath(workspaceRoot, sessionId) {
86
+ const dirId = (0, outboundPaths_js_1.safeGatewaySessionDirId)(sessionId);
87
+ return path.join(workspaceRoot, branding_js_1.AGENTIDE_DIR_NAME, 'sessions', dirId, exports.GATEWAY_SESSION_FILENAME);
88
+ }
89
+ async function readGatewaySessionRecord(workspaceRoot, sessionId) {
90
+ const filePath = getGatewaySessionFilePath(workspaceRoot, sessionId);
91
+ try {
92
+ const raw = await fs_1.promises.readFile(filePath, 'utf8');
93
+ const parsed = JSON.parse(raw);
94
+ if (parsed?.version !== RECORD_VERSION || !parsed.sessionId) {
95
+ return undefined;
96
+ }
97
+ return parsed;
98
+ }
99
+ catch (err) {
100
+ const code = err && typeof err === 'object' && 'code' in err ? String(err.code) : '';
101
+ if (code === 'ENOENT') {
102
+ return undefined;
103
+ }
104
+ throw err;
105
+ }
106
+ }
107
+ async function writeGatewaySessionRecord(workspaceRoot, record) {
108
+ const filePath = getGatewaySessionFilePath(workspaceRoot, record.sessionId);
109
+ await fs_1.promises.mkdir(path.dirname(filePath), { recursive: true });
110
+ const next = {
111
+ ...record,
112
+ version: RECORD_VERSION,
113
+ updatedAt: new Date().toISOString(),
114
+ };
115
+ await fs_1.promises.writeFile(filePath, `${JSON.stringify(next, null, 2)}\n`, 'utf8');
116
+ }
117
+ /** True when a record holds no remaining gateway binding (safe to delete if also not the agent default). */
118
+ function isGatewaySessionRecordOrphaned(record) {
119
+ return record.gatewaySessionKeys.length === 0 && !record.published;
120
+ }
121
+ /** Delete a chat's gateway binding record. The chat itself (VS Code session storage) is untouched. */
122
+ async function deleteGatewaySessionRecord(workspaceRoot, sessionId) {
123
+ const filePath = getGatewaySessionFilePath(workspaceRoot, sessionId);
124
+ try {
125
+ await fs_1.promises.rm(filePath, { force: true });
126
+ }
127
+ catch {
128
+ // best-effort cleanup
129
+ }
130
+ }
131
+ /**
132
+ * Detach route keys from a chat after they were reassigned to another chat.
133
+ * Removes the keys from `gatewaySessionKeys` and clears `published` when its peer route was among
134
+ * them. Returns the updated record (or undefined if the chat had no record).
135
+ */
136
+ async function detachGatewaySessionRoutes(workspaceRoot, sessionId, routeKeys) {
137
+ const existing = await readGatewaySessionRecord(workspaceRoot, sessionId);
138
+ if (!existing) {
139
+ return undefined;
140
+ }
141
+ const targets = new Set(routeKeys.map((k) => k.trim()).filter((k) => k.length > 0));
142
+ if (targets.size === 0) {
143
+ return existing;
144
+ }
145
+ const gatewaySessionKeys = existing.gatewaySessionKeys.filter((k) => !targets.has(k.trim()));
146
+ const published = existing.published?.mode === 'peer' &&
147
+ existing.published.peerRoute &&
148
+ targets.has(existing.published.peerRoute.trim())
149
+ ? undefined
150
+ : existing.published;
151
+ if (gatewaySessionKeys.length === existing.gatewaySessionKeys.length && published === existing.published) {
152
+ return existing;
153
+ }
154
+ const next = { ...existing, gatewaySessionKeys, published };
155
+ await writeGatewaySessionRecord(workspaceRoot, next);
156
+ return next;
157
+ }
158
+ /**
159
+ * Clear a chat's `published` binding when it was the agent default that got reassigned away.
160
+ * Returns the updated record (or undefined if the chat had no record).
161
+ */
162
+ async function clearGatewaySessionPublishedDefault(workspaceRoot, sessionId) {
163
+ const existing = await readGatewaySessionRecord(workspaceRoot, sessionId);
164
+ if (!existing) {
165
+ return undefined;
166
+ }
167
+ if (existing.published?.mode !== 'default') {
168
+ return existing;
169
+ }
170
+ const next = { ...existing, published: undefined };
171
+ await writeGatewaySessionRecord(workspaceRoot, next);
172
+ return next;
173
+ }
174
+ async function appendGatewaySessionKey(workspaceRoot, sessionId, gatewaySessionKey) {
175
+ const key = gatewaySessionKey.trim();
176
+ if (!key) {
177
+ return;
178
+ }
179
+ const existing = await readGatewaySessionRecord(workspaceRoot, sessionId);
180
+ if (!existing) {
181
+ return;
182
+ }
183
+ if (existing.gatewaySessionKeys.includes(key)) {
184
+ return;
185
+ }
186
+ await writeGatewaySessionRecord(workspaceRoot, {
187
+ ...existing,
188
+ gatewaySessionKeys: [...existing.gatewaySessionKeys, key],
189
+ });
190
+ }
191
+ async function updateGatewaySessionResource(workspaceRoot, sessionId, vscodeSessionResource, chatMode) {
192
+ const existing = await readGatewaySessionRecord(workspaceRoot, sessionId);
193
+ if (!existing) {
194
+ return;
195
+ }
196
+ await writeGatewaySessionRecord(workspaceRoot, {
197
+ ...existing,
198
+ vscodeSessionResource,
199
+ chatMode: chatMode ?? existing.chatMode,
200
+ });
201
+ }
202
+ async function findPublishedSessionIdByBindLabel(workspaceRoot, agentId, label) {
203
+ const normalized = normalizeInboundBindLabel(label);
204
+ if (!normalized) {
205
+ return undefined;
206
+ }
207
+ const sessionsRoot = path.join(workspaceRoot, branding_js_1.AGENTIDE_DIR_NAME, 'sessions');
208
+ let entries;
209
+ try {
210
+ entries = await fs_1.promises.readdir(sessionsRoot);
211
+ }
212
+ catch (err) {
213
+ const code = err && typeof err === 'object' && 'code' in err ? String(err.code) : '';
214
+ if (code === 'ENOENT') {
215
+ return undefined;
216
+ }
217
+ throw err;
218
+ }
219
+ for (const dirName of entries) {
220
+ const filePath = path.join(sessionsRoot, dirName, exports.GATEWAY_SESSION_FILENAME);
221
+ let raw;
222
+ try {
223
+ raw = await fs_1.promises.readFile(filePath, 'utf8');
224
+ }
225
+ catch {
226
+ continue;
227
+ }
228
+ let parsed;
229
+ try {
230
+ parsed = JSON.parse(raw);
231
+ }
232
+ catch {
233
+ continue;
234
+ }
235
+ if (parsed.agentId !== agentId || !parsed.published?.bindLabel) {
236
+ continue;
237
+ }
238
+ if (inboundBindLabelsMatch(parsed.published.bindLabel, normalized)) {
239
+ return parsed.sessionId;
240
+ }
241
+ }
242
+ return undefined;
243
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) AgentHippo.ai. All rights reserved.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.AGENT_ANYWHERE_LABEL = exports.detectGateway = exports.GatewayLifecycleManager = exports.GatewayService = exports.PROTOCOL_VERSION = exports.GATEWAY_CLIENT_MODES = exports.GATEWAY_CLIENT_IDS = exports.GATEWAY_CLIENT_CAPS = exports.DEFAULT_GATEWAY_OPERATOR_SCOPES = exports.createAgentIDEGatewayClient = exports.GatewayClient = exports.createGatewayBridge = exports.GatewayBridge = void 0;
7
+ /* eslint-disable local/code-no-unexternalized-strings */
8
+ /**
9
+ * OpenClaw Gateway Integration
10
+ *
11
+ * This module provides integration with OpenClaw Gateway, allowing
12
+ * AgentIDE agents to receive messages from messaging channels.
13
+ */
14
+ var bridge_js_1 = require("./bridge.js");
15
+ Object.defineProperty(exports, "GatewayBridge", { enumerable: true, get: function () { return bridge_js_1.GatewayBridge; } });
16
+ Object.defineProperty(exports, "createGatewayBridge", { enumerable: true, get: function () { return bridge_js_1.createGatewayBridge; } });
17
+ var client_js_1 = require("./client.js");
18
+ Object.defineProperty(exports, "GatewayClient", { enumerable: true, get: function () { return client_js_1.GatewayClient; } });
19
+ Object.defineProperty(exports, "createAgentIDEGatewayClient", { enumerable: true, get: function () { return client_js_1.createAgentIDEGatewayClient; } });
20
+ var protocol_js_1 = require("./protocol.js");
21
+ Object.defineProperty(exports, "DEFAULT_GATEWAY_OPERATOR_SCOPES", { enumerable: true, get: function () { return protocol_js_1.DEFAULT_GATEWAY_OPERATOR_SCOPES; } });
22
+ Object.defineProperty(exports, "GATEWAY_CLIENT_CAPS", { enumerable: true, get: function () { return protocol_js_1.GATEWAY_CLIENT_CAPS; } });
23
+ Object.defineProperty(exports, "GATEWAY_CLIENT_IDS", { enumerable: true, get: function () { return protocol_js_1.GATEWAY_CLIENT_IDS; } });
24
+ Object.defineProperty(exports, "GATEWAY_CLIENT_MODES", { enumerable: true, get: function () { return protocol_js_1.GATEWAY_CLIENT_MODES; } });
25
+ Object.defineProperty(exports, "PROTOCOL_VERSION", { enumerable: true, get: function () { return protocol_js_1.PROTOCOL_VERSION; } });
26
+ var service_js_1 = require("./service.js");
27
+ Object.defineProperty(exports, "GatewayService", { enumerable: true, get: function () { return service_js_1.GatewayService; } });
28
+ var lifecycle_js_1 = require("./lifecycle.js");
29
+ Object.defineProperty(exports, "GatewayLifecycleManager", { enumerable: true, get: function () { return lifecycle_js_1.GatewayLifecycleManager; } });
30
+ Object.defineProperty(exports, "detectGateway", { enumerable: true, get: function () { return lifecycle_js_1.detectGateway; } });
31
+ Object.defineProperty(exports, "AGENT_ANYWHERE_LABEL", { enumerable: true, get: function () { return lifecycle_js_1.AGENT_ANYWHERE_LABEL; } });