@lotagate/cli 0.1.25 → 0.1.27

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 (256) hide show
  1. package/README.md +5 -4
  2. package/bin/lotagate.mjs +50 -8
  3. package/dist/application/agent/agent-constants.d.ts +6 -0
  4. package/dist/application/agent/agent-constants.js +1 -0
  5. package/dist/application/agent/agent-session-store-registry.d.ts +16 -0
  6. package/dist/application/agent/agent-session-store-registry.js +1 -0
  7. package/dist/application/agent/agent-session-store.d.ts +4 -0
  8. package/dist/application/agent/agent-session-store.js +5 -5
  9. package/dist/application/agent/bounded-text-accumulator.d.ts +15 -0
  10. package/dist/application/agent/bounded-text-accumulator.js +1 -0
  11. package/dist/application/agent/capability-profile.d.ts +0 -38
  12. package/dist/application/agent/capability-profile.js +0 -1
  13. package/dist/application/agent/cli-agent-execution-service.d.ts +23 -13
  14. package/dist/application/agent/cli-agent-execution-service.js +1 -1
  15. package/dist/application/agent/cli-agent-preparation-cache.d.ts +39 -0
  16. package/dist/application/agent/cli-agent-preparation-cache.js +1 -0
  17. package/dist/application/agent/context-compaction.d.ts +1 -0
  18. package/dist/application/agent/context-compaction.js +7 -6
  19. package/dist/application/agent/context-token-cache.d.ts +21 -0
  20. package/dist/application/agent/context-token-cache.js +4 -0
  21. package/dist/application/agent/context-usage-service.d.ts +52 -0
  22. package/dist/application/agent/context-usage-service.js +1 -0
  23. package/dist/application/agent/continuation-checkpoint.d.ts +15 -0
  24. package/dist/application/agent/continuation-checkpoint.js +2 -0
  25. package/dist/application/agent/interactive-agent-guidance.d.ts +3 -3
  26. package/dist/application/agent/interactive-agent-guidance.js +2 -2
  27. package/dist/application/chat/pending-attachment-store.d.ts +5 -2
  28. package/dist/application/chat/pending-attachment-store.js +1 -1
  29. package/dist/application/commands/application-command-executor.js +2 -2
  30. package/dist/application/commands/cli-command-services.d.ts +1 -1
  31. package/dist/application/commands/cli-command-services.js +31 -31
  32. package/dist/application/commands/command-catalog.js +1 -1
  33. package/dist/application/commands/goal-command-handlers.js +6 -6
  34. package/dist/application/commands/media-command-handlers.js +7 -6
  35. package/dist/application/commands/memory-command-handler.d.ts +1 -1
  36. package/dist/application/commands/memory-command-handler.js +11 -11
  37. package/dist/application/commands/runtime-command-handlers.js +11 -11
  38. package/dist/application/extensions/plugin-contribution-registry.js +1 -1
  39. package/dist/application/intent/completion-gate.d.ts +2 -5
  40. package/dist/application/intent/completion-gate.js +1 -1
  41. package/dist/application/intent/evidence-ledger.d.ts +2 -1
  42. package/dist/application/intent/evidence-recording-tool-executor.js +1 -1
  43. package/dist/application/intent/intent-compiler.js +2 -2
  44. package/dist/application/lifecycle/operation-registry.d.ts +11 -0
  45. package/dist/application/lifecycle/operation-registry.js +1 -0
  46. package/dist/application/memory/memory-extractor.js +2 -2
  47. package/dist/application/model/cached-model-catalog.d.ts +7 -1
  48. package/dist/application/model/cached-model-catalog.js +1 -1
  49. package/dist/application/model/model-catalog-service.js +1 -1
  50. package/dist/application/model/model-context-window.js +1 -1
  51. package/dist/application/model/model-response-retry.d.ts +7 -1
  52. package/dist/application/model/model-response-retry.js +1 -1
  53. package/dist/application/orchestration/cli-subagent-service.d.ts +4 -0
  54. package/dist/application/orchestration/cli-subagent-service.js +3 -3
  55. package/dist/application/orchestration/cli-turn-event-projector.js +1 -1
  56. package/dist/application/orchestration/cli-turn-events.d.ts +0 -7
  57. package/dist/application/orchestration/goal-input.d.ts +1 -1
  58. package/dist/application/orchestration/goal-input.js +1 -1
  59. package/dist/application/orchestration/headless-agent-turn.d.ts +1 -0
  60. package/dist/application/orchestration/headless-agent-turn.js +3 -3
  61. package/dist/application/orchestration/orchestration-constants.d.ts +3 -0
  62. package/dist/application/orchestration/orchestration-constants.js +1 -0
  63. package/dist/application/orchestration/subagent-handoff.js +3 -3
  64. package/dist/application/project-intelligence/project-intelligence-constants.d.ts +56 -0
  65. package/dist/application/project-intelligence/project-intelligence-constants.js +1 -0
  66. package/dist/application/project-intelligence/project-intelligence-service.js +1 -1
  67. package/dist/application/protocol/browser-host-tool-executor.d.ts +13 -3
  68. package/dist/application/protocol/browser-host-tool-executor.js +2 -2
  69. package/dist/application/protocol/computer-host-tool-executor.d.ts +3 -0
  70. package/dist/application/protocol/computer-host-tool-executor.js +2 -2
  71. package/dist/application/protocol/desktop-agent-command.d.ts +2 -2
  72. package/dist/application/protocol/desktop-agent-command.js +1 -3
  73. package/dist/application/protocol/desktop-agent-contracts.d.ts +34 -0
  74. package/dist/application/protocol/desktop-agent-contracts.js +1 -0
  75. package/dist/application/protocol/desktop-agent-helpers.d.ts +5 -0
  76. package/dist/application/protocol/desktop-agent-helpers.js +1 -0
  77. package/dist/application/protocol/desktop-agent-request-parser.d.ts +31 -6
  78. package/dist/application/protocol/desktop-agent-request-parser.js +1 -1
  79. package/dist/application/protocol/desktop-approval-broker.d.ts +14 -4
  80. package/dist/application/protocol/desktop-approval-broker.js +1 -1
  81. package/dist/application/protocol/desktop-attachment-store.d.ts +19 -2
  82. package/dist/application/protocol/desktop-attachment-store.js +1 -1
  83. package/dist/application/protocol/desktop-execution-policy.d.ts +2 -0
  84. package/dist/application/protocol/desktop-execution-policy.js +1 -1
  85. package/dist/application/protocol/desktop-host-bridge.d.ts +33 -0
  86. package/dist/application/protocol/desktop-host-bridge.js +1 -0
  87. package/dist/application/protocol/desktop-host-capabilities.d.ts +12 -0
  88. package/dist/application/protocol/desktop-host-capabilities.js +1 -0
  89. package/dist/application/protocol/desktop-host-tool-executor.d.ts +15 -2
  90. package/dist/application/protocol/desktop-host-tool-executor.js +2 -2
  91. package/dist/application/protocol/desktop-intent-event-writer.js +1 -1
  92. package/dist/application/protocol/desktop-protocol-helpers.js +1 -1
  93. package/dist/application/protocol/desktop-title-generator.d.ts +5 -0
  94. package/dist/application/protocol/desktop-title-generator.js +3 -0
  95. package/dist/application/protocol/json-line-writer.d.ts +24 -2
  96. package/dist/application/protocol/json-line-writer.js +2 -2
  97. package/dist/application/protocol/jsonl-agent-command.d.ts +1 -1
  98. package/dist/application/protocol/jsonl-agent-command.js +2 -2
  99. package/dist/application/protocol/jsonl-protocol.d.ts +1 -1
  100. package/dist/application/protocol/jsonl-protocol.js +2 -2
  101. package/dist/application/security/desktop-tool-scope-policy.js +1 -1
  102. package/dist/application/security/tool-action-risk-analyzer.js +1 -1
  103. package/dist/application/security/tool-approval-service.d.ts +9 -3
  104. package/dist/application/security/tool-approval-service.js +1 -1
  105. package/dist/application/security/tool-policy-registry.d.ts +20 -0
  106. package/dist/application/security/tool-policy-registry.js +1 -0
  107. package/dist/application/security/tool-risk-classifier.d.ts +2 -1
  108. package/dist/application/security/tool-risk-classifier.js +1 -1
  109. package/dist/application/security/workspace-permission-policy.js +1 -1
  110. package/dist/application/workspace/session-execution-workspace.d.ts +2 -2
  111. package/dist/application/workspace/session-execution-workspace.js +3 -3
  112. package/dist/application/workspace/workspace-constants.d.ts +17 -0
  113. package/dist/application/workspace/workspace-constants.js +1 -0
  114. package/dist/application/workspace/workspace-file-index.d.ts +2 -3
  115. package/dist/application/workspace/workspace-file-index.js +1 -1
  116. package/dist/application/workspace/workspace-instruction-loader.js +1 -1
  117. package/dist/bootstrap/composition-root.d.ts +1 -0
  118. package/dist/bootstrap/runtime-factory.d.ts +5 -0
  119. package/dist/bootstrap/runtime-factory.js +1 -1
  120. package/dist/domain/auth/auth-profile.d.ts +1 -0
  121. package/dist/domain/auth/auth-profile.js +1 -1
  122. package/dist/domain/errors/cli-error.js +1 -1
  123. package/dist/domain/extensions/extension-constants.d.ts +1 -0
  124. package/dist/domain/extensions/extension-constants.js +1 -0
  125. package/dist/domain/extensions/host-tool-plugin-ids.d.ts +0 -4
  126. package/dist/domain/extensions/host-tool-plugin-ids.js +1 -1
  127. package/dist/domain/extensions/plugin-manifest.js +1 -1
  128. package/dist/domain/intent/intent-contract.d.ts +0 -8
  129. package/dist/domain/intent/intent-contract.js +1 -1
  130. package/dist/domain/media/gateway-media-contract.js +1 -1
  131. package/dist/domain/media/media-constants.d.ts +3 -0
  132. package/dist/domain/media/media-constants.js +1 -0
  133. package/dist/domain/media/media-execution-policy.js +1 -1
  134. package/dist/domain/memory/memory-constants.d.ts +3 -0
  135. package/dist/domain/memory/memory-constants.js +1 -0
  136. package/dist/domain/memory/memory-search.js +2 -2
  137. package/dist/domain/orchestration/goal.d.ts +0 -1
  138. package/dist/domain/orchestration/goal.js +1 -1
  139. package/dist/domain/orchestration/work-plan.d.ts +0 -62
  140. package/dist/domain/orchestration/work-plan.js +0 -1
  141. package/dist/domain/runtime/assistant-stream-text.d.ts +11 -0
  142. package/dist/domain/runtime/assistant-stream-text.js +1 -0
  143. package/dist/domain/runtime/gateway-request-budget.d.ts +19 -0
  144. package/dist/domain/runtime/gateway-request-budget.js +1 -0
  145. package/dist/domain/runtime/resource-limits.d.ts +26 -0
  146. package/dist/domain/runtime/resource-limits.js +1 -1
  147. package/dist/domain/session/attachment.d.ts +2 -0
  148. package/dist/domain/workspace/workspace-settings.d.ts +2 -0
  149. package/dist/domain/workspace/workspace-settings.js +1 -1
  150. package/dist/infrastructure/agent-sdk/model-response-metrics.d.ts +7 -0
  151. package/dist/infrastructure/agent-sdk/model-response-metrics.js +1 -0
  152. package/dist/infrastructure/agent-sdk/model-tool-name-mapper.js +1 -1
  153. package/dist/infrastructure/agent-sdk/sdk-constants.d.ts +2 -0
  154. package/dist/infrastructure/agent-sdk/sdk-constants.js +1 -0
  155. package/dist/infrastructure/agent-sdk/tool-calling-model-client.js +1 -1
  156. package/dist/infrastructure/cache/cache-policy.d.ts +2 -0
  157. package/dist/infrastructure/cache/cache-policy.js +1 -1
  158. package/dist/infrastructure/cache/file-cache-store.d.ts +13 -0
  159. package/dist/infrastructure/cache/file-cache-store.js +2 -2
  160. package/dist/infrastructure/clipboard/clipboard-adapter-factory.js +1 -1
  161. package/dist/infrastructure/clipboard/clipboard-constants.d.ts +1 -0
  162. package/dist/infrastructure/clipboard/clipboard-constants.js +1 -0
  163. package/dist/infrastructure/clipboard/clipboard-process.d.ts +20 -0
  164. package/dist/infrastructure/clipboard/clipboard-process.js +1 -0
  165. package/dist/infrastructure/clipboard/clipboard-text-adapter-factory.js +1 -1
  166. package/dist/infrastructure/clipboard/image-normalizer.js +1 -1
  167. package/dist/infrastructure/clipboard/windows-clipboard-adapter.js +1 -1
  168. package/dist/infrastructure/clipboard/windows-clipboard-text-adapter.js +1 -1
  169. package/dist/infrastructure/credentials/encrypted-file-credential-store.js +2 -2
  170. package/dist/infrastructure/credentials/secret-input.d.ts +1 -1
  171. package/dist/infrastructure/credentials/secret-input.js +3 -3
  172. package/dist/infrastructure/extensions/extensions-constants.d.ts +6 -0
  173. package/dist/infrastructure/extensions/extensions-constants.js +1 -0
  174. package/dist/infrastructure/extensions/mcp-runtime.d.ts +9 -0
  175. package/dist/infrastructure/extensions/mcp-runtime.js +1 -1
  176. package/dist/infrastructure/extensions/plugin-agent-discovery.d.ts +3 -1
  177. package/dist/infrastructure/extensions/plugin-agent-discovery.js +1 -1
  178. package/dist/infrastructure/extensions/plugin-manager.js +2 -2
  179. package/dist/infrastructure/extensions/skill-manager.js +2 -2
  180. package/dist/infrastructure/extensions/skill-tool-executor.d.ts +3 -1
  181. package/dist/infrastructure/extensions/skill-tool-executor.js +2 -2
  182. package/dist/infrastructure/filesystem/atomic-file-store.d.ts +11 -0
  183. package/dist/infrastructure/filesystem/atomic-file-store.js +1 -1
  184. package/dist/infrastructure/filesystem/filesystem-constants.d.ts +8 -0
  185. package/dist/infrastructure/filesystem/filesystem-constants.js +1 -0
  186. package/dist/infrastructure/filesystem/local-filesystem-tool-executor.d.ts +3 -0
  187. package/dist/infrastructure/filesystem/local-filesystem-tool-executor.js +3 -3
  188. package/dist/infrastructure/logging/daily-rotating-file-writer.d.ts +1 -1
  189. package/dist/infrastructure/logging/daily-rotating-file-writer.js +2 -2
  190. package/dist/infrastructure/logging/log-redactor.js +1 -1
  191. package/dist/infrastructure/logging/logging-constants.d.ts +3 -0
  192. package/dist/infrastructure/logging/logging-constants.js +1 -0
  193. package/dist/infrastructure/logging/structured-logger.d.ts +1 -1
  194. package/dist/infrastructure/logging/structured-logger.js +2 -2
  195. package/dist/infrastructure/observability/tool-execution-logger.d.ts +11 -0
  196. package/dist/infrastructure/observability/tool-execution-logger.js +1 -0
  197. package/dist/infrastructure/platform/host-platform.d.ts +2 -0
  198. package/dist/infrastructure/platform/host-platform.js +1 -1
  199. package/dist/infrastructure/platform/host-process.d.ts +3 -1
  200. package/dist/infrastructure/platform/host-process.js +1 -1
  201. package/dist/infrastructure/platform/platform-constants.d.ts +4 -0
  202. package/dist/infrastructure/platform/platform-constants.js +1 -0
  203. package/dist/infrastructure/platform/process-identity.d.ts +8 -0
  204. package/dist/infrastructure/platform/process-identity.js +1 -0
  205. package/dist/infrastructure/platform/read-only-executable.d.ts +2 -1
  206. package/dist/infrastructure/platform/read-only-executable.js +1 -1
  207. package/dist/infrastructure/sdk/lotagate-client-factory.js +1 -1
  208. package/dist/infrastructure/sdk/sdk-media-gateway-client.d.ts +4 -0
  209. package/dist/infrastructure/sdk/sdk-media-gateway-client.js +1 -1
  210. package/dist/infrastructure/sessions/file-session-store.d.ts +11 -0
  211. package/dist/infrastructure/sessions/file-session-store.js +4 -4
  212. package/dist/infrastructure/sessions/session-constants.d.ts +3 -0
  213. package/dist/infrastructure/sessions/session-constants.js +1 -0
  214. package/dist/infrastructure/sessions/session-index.js +3 -3
  215. package/dist/infrastructure/sessions/session-journal-health.d.ts +7 -0
  216. package/dist/infrastructure/sessions/session-journal-health.js +1 -0
  217. package/dist/infrastructure/shell/shell-tool-executor.d.ts +5 -1
  218. package/dist/infrastructure/shell/shell-tool-executor.js +2 -2
  219. package/dist/infrastructure/tokens/tiktoken-token-estimator.js +1 -1
  220. package/dist/infrastructure/tokens/token-constants.d.ts +1 -0
  221. package/dist/infrastructure/tokens/token-constants.js +1 -0
  222. package/dist/infrastructure/workspace/workspace-settings-store.d.ts +1 -0
  223. package/dist/infrastructure/workspace/workspace-settings-store.js +4 -4
  224. package/dist/main.js +3 -3
  225. package/dist/ports/media-gateway-client.d.ts +6 -0
  226. package/dist/ports/session-store.d.ts +1 -0
  227. package/dist/presentation/tui/ink/components/composer.js +4 -4
  228. package/dist/presentation/tui/ink/components/transcript.d.ts +1 -0
  229. package/dist/presentation/tui/ink/components/transcript.js +5 -5
  230. package/dist/presentation/tui/ink/tui-bridge.d.ts +2 -2
  231. package/dist/presentation/tui/ink/tui-bridge.js +1 -1
  232. package/dist/presentation/tui/tui-agent-turn-controller.d.ts +45 -0
  233. package/dist/presentation/tui/tui-agent-turn-controller.js +1 -0
  234. package/dist/presentation/tui/tui-application-contract.d.ts +1 -0
  235. package/dist/presentation/tui/tui-application.d.ts +3 -4
  236. package/dist/presentation/tui/tui-application.js +3 -3
  237. package/dist/presentation/tui/tui-clipboard-paste-handlers.d.ts +2 -2
  238. package/dist/presentation/tui/tui-clipboard-paste-handlers.js +1 -1
  239. package/dist/presentation/tui/tui-command-executor.js +3 -3
  240. package/dist/presentation/tui/tui-context-compaction.d.ts +4 -1
  241. package/dist/presentation/tui/tui-context-compaction.js +1 -1
  242. package/dist/presentation/tui/tui-context-service.d.ts +2 -34
  243. package/dist/presentation/tui/tui-context-service.js +1 -2
  244. package/dist/presentation/tui/tui-initial-model.js +1 -1
  245. package/dist/presentation/tui/tui-tool-approval.d.ts +1 -1
  246. package/dist/presentation/tui/tui-tool-approval.js +1 -1
  247. package/dist/version.d.ts +1 -1
  248. package/dist/version.js +1 -1
  249. package/native-targets.mjs +1 -1
  250. package/package.json +9 -10
  251. package/scripts/install-native.mjs +5 -13
  252. package/bin/lotagate.exe +0 -1
  253. package/dist/application/protocol/document-host-tool-definitions.d.ts +0 -4
  254. package/dist/application/protocol/document-host-tool-definitions.js +0 -1
  255. package/dist/application/protocol/document-host-tool-executor.d.ts +0 -49
  256. package/dist/application/protocol/document-host-tool-executor.js +0 -2
@@ -1 +0,0 @@
1
- const k=["pdf","pptx","excel","docs"],t={path:n("Workspace-relative or absolute document path."),handleId:n("Document handle returned by the open tool."),outputPath:n("Optional workspace-relative output path.")},m=[a("pdf.open","Open a PDF document and return a governed document handle.",{path:t.path},["path"]),a("pdf.create","Create a new PDF document at the requested path.",{path:t.path,title:n("Optional document title.")},["path"]),a("pdf.inspect","Inspect PDF metadata and page count.",{handleId:t.handleId},["handleId"]),a("pdf.validate","Validate the PDF signature and readable structure.",{path:t.path},["path"]),a("pdf.readText","Extract bounded text from selected PDF pages.",{handleId:t.handleId,pages:o("Optional zero-based page numbers.")},["handleId"]),a("pdf.render","Render selected PDF pages to image artifacts.",{handleId:t.handleId,pages:o("Optional zero-based page numbers."),outputPath:t.outputPath},["handleId"]),a("pdf.extractTables","Extract table-like text from selected PDF pages.",{handleId:t.handleId,pages:o("Optional zero-based page numbers.")},["handleId"]),a("pdf.recognizeText","Recognize text from selected PDF pages with bounded line metadata.",{handleId:t.handleId,pages:o("Optional zero-based page numbers."),language:n("Optional BCP-47 OCR language tag.")},["handleId"]),a("pdf.search","Search PDF text and return bounded page matches.",{handleId:t.handleId,query:n("Text to find."),pages:o("Optional zero-based page numbers."),maxResults:d("Maximum matches to return.")},["handleId","query"]),a("pdf.extractImages","Extract embedded PDF images to a workspace directory.",{handleId:t.handleId,outputPath:t.outputPath,pages:o("Optional zero-based page numbers.")},["handleId","outputPath"]),a("pdf.manageBookmarks","Read or update PDF outline bookmarks.",{handleId:t.handleId,operation:l(["list","add","update","delete"],"Bookmark operation."),bookmark:i("Bookmark definition for add, update, or delete.")},["handleId","operation"]),a("pdf.extractLinks","Extract links from selected PDF pages.",{handleId:t.handleId,pages:o("Optional zero-based page numbers.")},["handleId"]),a("pdf.extractAnnotations","Extract annotations from a PDF.",{handleId:t.handleId,pages:o("Optional zero-based page numbers.")},["handleId"]),a("pdf.manageAttachments","List, extract, attach, or remove PDF file attachments.",{handleId:t.handleId,operation:l(["list","extract","attach","delete"],"Attachment operation."),outputPath:t.outputPath,sourcePath:t.path,name:n("Attachment name.")},["handleId","operation"]),a("pdf.flattenForms","Flatten PDF form fields into page content.",{handleId:t.handleId,outputPath:t.outputPath},["handleId"]),a("pdf.optimize","Optimize a PDF into a separate output artifact.",{handleId:t.handleId,outputPath:t.outputPath,options:i("Optimization options.")},["handleId","outputPath"]),a("pdf.addPageNumbers","Add page numbers to a PDF into a separate output artifact.",{handleId:t.handleId,outputPath:t.outputPath,options:i("Page number placement and formatting options.")},["handleId","outputPath"]),a("pdf.insertPages","Insert pages from another PDF before a page index.",{handleId:t.handleId,sourcePath:t.path,beforePage:d("Zero-based insertion page.")},["handleId","sourcePath","beforePage"]),a("pdf.deletePages","Delete selected pages from a PDF.",{handleId:t.handleId,pages:o("Zero-based page numbers.")},["handleId","pages"]),a("pdf.reorderPages","Reorder all PDF pages using a zero-based permutation.",{handleId:t.handleId,order:o("Complete zero-based page permutation.")},["handleId","order"]),a("pdf.rotatePages","Rotate selected PDF pages.",{handleId:t.handleId,pages:o("Zero-based page numbers."),degrees:l(["90","180","270"],"Clockwise rotation.")},["handleId","pages","degrees"]),a("pdf.merge","Merge PDFs into a new output document.",{paths:h("Input PDF paths."),outputPath:t.outputPath},["paths","outputPath"]),a("pdf.split","Split selected PDF pages into a new output document.",{handleId:t.handleId,pages:o("Zero-based page numbers."),outputPath:t.outputPath},["handleId","pages","outputPath"]),a("pdf.addText","Add positioned text to a PDF page.",{handleId:t.handleId,page:d("Zero-based page number."),text:n("Text to add."),x:d("Horizontal PDF coordinate."),y:d("Vertical PDF coordinate.")},["handleId","page","text","x","y"]),a("pdf.addImage","Add an image to a PDF page.",{handleId:t.handleId,page:d("Zero-based page number."),imagePath:t.path,x:d("Horizontal PDF coordinate."),y:d("Vertical PDF coordinate."),width:d("Image width."),height:d("Image height.")},["handleId","page","imagePath","x","y","width","height"]),a("pdf.annotate","Add a PDF annotation.",{handleId:t.handleId,page:d("Zero-based page number."),text:n("Annotation text."),x:d("Horizontal PDF coordinate."),y:d("Vertical PDF coordinate.")},["handleId","page","text","x","y"]),a("pdf.readForm","Read PDF form fields.",{handleId:t.handleId},["handleId"]),a("pdf.fillForm","Fill PDF form fields.",{handleId:t.handleId,values:i("Field names and values.")},["handleId","values"]),a("pdf.redact","Redact selected rectangular areas in a PDF.",{handleId:t.handleId,areas:x("Page and rectangle definitions.")},["handleId","areas"]),a("pdf.save","Save changes to an opened PDF document.",{handleId:t.handleId,outputPath:t.outputPath},["handleId"]),a("pdf.close","Close an opened PDF document handle.",{handleId:t.handleId},["handleId"])],g=u("pptx","slide",[["duplicateSlide","Duplicate a presentation slide."],["importSlides","Import slides from another presentation."],["arrangeElements","Align, distribute, group, or reorder slide elements."],["findReplace","Find and replace text across presentation slides."],["extractText","Extract bounded text from selected presentation slides."],["manageMedia","List, insert, update, or delete presentation media."],["manageHyperlinks","List, set, or clear presentation hyperlinks."],["manageTransitions","Inspect or update slide transitions."],["manageLayouts","List or apply presentation slide layouts."],["readSlide","Read slide text and element metadata."],["addSlide","Add a slide."],["deleteSlide","Delete a slide."],["reorderSlides","Reorder slides."],["updateSlide","Update slide metadata."],["addElement","Add a slide element."],["updateElement","Update a slide element."],["deleteElement","Delete a slide element."],["setTheme","Set the presentation theme."],["setNotes","Set speaker notes."],["render","Render slides to image artifacts."],["exportPdf","Export the presentation as PDF."]]),I=u("excel","range",[["find","Find text or values in a workbook."],["manageNamedRange","Create, inspect, update, or delete a workbook named range."],["setDataValidation","Set or clear data validation on a worksheet range."],["managePivotTable","Create, refresh, inspect, or delete a pivot table."],["readFormulas","Read formulas and calculated values from a worksheet range."],["manageConditionalFormatting","List, set, or clear conditional formatting rules."],["manageSheetView","Inspect or update worksheet view settings."],["manageComments","List, add, update, or delete cell comments."],["manageProtection","Inspect, protect, or unprotect workbook or worksheet protection."],["readRange","Read a worksheet range."],["writeRange","Write values to a worksheet range."],["clearRange","Clear a worksheet range."],["addSheet","Add a worksheet."],["updateSheet","Rename or update a worksheet."],["deleteSheet","Delete a worksheet."],["editRows","Insert or delete worksheet rows."],["editColumns","Insert or delete worksheet columns."],["formatRange","Format a worksheet range."],["manageTable","Create or update a table."],["manageChart","Create or update a chart."],["sortRange","Sort a worksheet range."],["filterRange","Apply or clear a worksheet filter."],["recalculate","Recalculate workbook formulas."],["render","Render a worksheet to an image artifact."],["importCsv","Import CSV data into a worksheet."],["exportCsv","Export a worksheet as CSV."],["exportPdf","Export a workbook or worksheet as PDF."]]),f=u("docs","content",[["manageTable","Create, inspect, update, or delete a document table."],["manageImage","Insert, inspect, update, or delete a document image."],["fillTemplate","Fill tagged document content controls from structured values."],["updateFields","Update document fields."],["inspectStructure","Read document paragraphs, headings, tables, and sections."],["manageBookmarks","List, add, update, or delete document bookmarks."],["manageHyperlinks","List, add, update, or delete document hyperlinks."],["manageLists","Inspect or apply document list formatting."],["manageFootnotes","List, add, or delete document footnotes."],["readContent","Read document content and structure."],["insertContent","Insert content at a document position."],["updateContent","Update a document range."],["deleteContent","Delete a document range."],["findReplace","Find and replace document text."],["setStyles","Apply document styles."],["setSection","Update section settings."],["setHeaderFooter","Update a header or footer."],["manageComments","Create or update document comments."],["manageRevisions","Inspect or manage document revisions."],["render","Render document pages to image artifacts."],["exportPdf","Export the document as PDF."]]),F=[...m,...g,...I,...f];function u(e,s,p){return[a(`${e}.open`,`Open a ${e.toUpperCase()} document and return a governed document handle.`,{path:t.path},["path"]),a(`${e}.create`,`Create a new ${e.toUpperCase()} document at the requested path.`,{path:t.path,title:n("Optional document title.")},["path"]),a(`${e}.inspect`,`Inspect ${e.toUpperCase()} metadata.`,{handleId:t.handleId},["handleId"]),a(`${e}.validate`,`Validate ${e.toUpperCase()} structure.`,{path:t.path},["path"]),...p.map(([r,c])=>a(`${e}.${r}`,c,P(e,r,s),b(r))),a(`${e}.save`,`Save changes to an opened ${e.toUpperCase()} document.`,{handleId:t.handleId,outputPath:t.outputPath},["handleId"]),a(`${e}.close`,`Close an opened ${e.toUpperCase()} document handle.`,{handleId:t.handleId},["handleId"])]}function P(e,s,p){const r={handleId:t.handleId,outputPath:t.outputPath,sourcePath:t.path,sheet:n("Worksheet name."),sheetName:n("New worksheet name."),slide:d("Zero-based slide number."),pages:o("Optional zero-based item indexes."),range:n(`Target ${p} reference.`),start:d("Document character start."),end:d("Document character end."),find:n("Text to find."),replace:n("Replacement text."),content:n("Text or serialized content."),text:n("Text value."),values:i("Structured values."),options:i("Format-specific options."),operation:n("Format-specific operation."),name:n("Named item identifier."),formula:n("Formula or source expression."),formula1:n("Primary validation formula."),formula2:n("Secondary validation formula."),index:d("Zero-based item index."),position:d("Zero-based destination position."),elementIds:h("Element identifiers."),alignment:l(["left","center","right","top","middle","bottom"],"Alignment operation."),distribution:l(["horizontal","vertical"],"Distribution direction."),imagePath:t.path,mediaPath:t.path,width:d("Width in document units."),height:d("Height in document units."),altText:n("Alternative text."),tableName:n("Table or pivot table name."),sourceRange:n("Source worksheet range."),query:n("Search query."),maxResults:d("Maximum result count."),rowStart:d("Zero-based first row."),rowCount:d("Maximum rows."),columnStart:d("Zero-based first column."),columnCount:d("Maximum columns."),bookmark:i("Bookmark definition."),property:n("Property name."),expected:n("Expected value."),level:d("List or outline level."),target:n("Bookmark, hyperlink, or list target."),address:n("Hyperlink destination."),password:n("Protection password when required."),kind:n("Protection target kind."),style:n("Document style name."),listType:l(["bullet","number"],"List type."),effect:d("PowerPoint transition effect code.")};return e==="pptx"&&(r.elementId=n("Slide element identifier.")),r}function b(e){return e==="readSlide"?["handleId","slide"]:e==="readRange"||e==="writeRange"||e==="clearRange"||e==="formatRange"?["handleId","range"]:e==="duplicateSlide"?["handleId","slide"]:e==="importSlides"?["handleId","sourcePath"]:e==="arrangeElements"?["handleId","slide","elementIds","operation"]:e==="findReplace"?["handleId","find","replace"]:e==="find"?["handleId","query"]:e==="setDataValidation"?["handleId","range","operation"]:e==="manageNamedRange"||e==="setDataValidation"||e==="managePivotTable"||e==="manageTable"||e==="manageImage"?["handleId","operation"]:e==="fillTemplate"?["handleId","values"]:e==="updateFields"?["handleId"]:e==="extractText"?["handleId"]:e==="readFormulas"?["handleId","range"]:e==="manageMedia"||e==="manageHyperlinks"||e==="manageTransitions"||e==="manageLayouts"||e==="manageConditionalFormatting"||e==="manageSheetView"||e==="manageComments"||e==="manageProtection"||e==="manageBookmarks"||e==="manageLists"||e==="manageFootnotes"||e==="inspectStructure"?["handleId","operation"]:e==="exportCsv"||e==="exportPdf"||e==="render"?["handleId"]:["handleId"]}function a(e,s,p,r){return{type:"function",function:{name:e,description:s,parameters:{type:"object",properties:p,required:r,additionalProperties:!1}}}}function n(e){return{type:"string",description:e}}function d(e){return{type:"number",description:e}}function l(e,s){return{type:"string",enum:[...e],description:s}}function o(e){return{type:"array",items:{type:"integer"},description:e}}function h(e){return{type:"array",items:{type:"string"},description:e}}function i(e){return{type:"object",additionalProperties:!0,description:e}}function x(e){return{type:"array",items:{type:"object",additionalProperties:!0},description:e}}export{k as DOCUMENT_FORMATS,F as DOCUMENT_TOOL_DEFINITIONS};
@@ -1,49 +0,0 @@
1
- import type { ToolDefinition } from '@lotagate/sdk';
2
- import type { ToolExecutionContext, ToolExecutor, ToolInfo, ToolResult } from '@lotagate/agent-sdk';
3
- import type { ToolActivityObserver } from '../../ports/tool-activity.js';
4
- import { type DocumentFormat } from './document-host-tool-definitions.js';
5
- export type DocumentHostTool = 'document';
6
- export interface DocumentHostRequest {
7
- version: 1;
8
- type: 'host.request';
9
- requestId: string;
10
- tool: DocumentHostTool;
11
- sessionId: string;
12
- runId: string;
13
- action: string;
14
- params: Record<string, unknown>;
15
- executionBoundary: 'host';
16
- hostFallback: 'deny';
17
- projectRoot?: string;
18
- executionCwd?: string;
19
- executionWorkspaceId?: string;
20
- }
21
- export interface DocumentHostResponse {
22
- version: 1;
23
- type: 'host.response';
24
- requestId: string;
25
- tool: DocumentHostTool;
26
- ok: boolean;
27
- result?: unknown;
28
- error?: {
29
- code: string;
30
- category: string;
31
- message: string;
32
- retryable: boolean;
33
- };
34
- }
35
- export type DocumentHostInvoker = (request: DocumentHostRequest, signal?: AbortSignal) => Promise<DocumentHostResponse>;
36
- export declare function documentToolDefinitions(): readonly ToolDefinition[];
37
- export declare function documentToolDefinitionsForFormats(formats: readonly DocumentFormat[]): readonly ToolDefinition[];
38
- export declare class DocumentHostToolExecutor implements ToolExecutor {
39
- private readonly options;
40
- private readonly definitions;
41
- constructor(options: {
42
- request: DocumentHostInvoker;
43
- formats?: readonly DocumentFormat[];
44
- onActivity?: ToolActivityObserver;
45
- });
46
- listTools(): readonly ToolDefinition[];
47
- getToolInfo(toolName: string): ToolInfo | undefined;
48
- execute(toolName: string, input: Record<string, unknown>, context: ToolExecutionContext): Promise<ToolResult>;
49
- }
@@ -1,2 +0,0 @@
1
- import{randomUUID as a}from"node:crypto";import{DOCUMENT_TOOL_DEFINITIONS as i}from"./document-host-tool-definitions.js";function l(){return i}function c(o){const e=new Set(o.map(r=>`${r}.`));return i.filter(r=>[...e].some(t=>u(r)?.startsWith(t)===!0))}class p{options;definitions;constructor(e){this.options=e,this.definitions=e.formats===void 0?i:c(e.formats)}listTools(){return this.definitions}getToolInfo(e){if(!this.definitions.some(t=>u(t)===e))return;const r=/\.(?:open|inspect|validate|readText|readSlide|readRange|readContent|extractTables|recognizeText|search|extractImages|extractLinks|extractAnnotations|readForm|find|readFormulas|inspectStructure|manageRevisions)$/u.test(e);return{toolName:e,source:"custom",executorId:"desktop-document-host",metadata:{risk:r?"read":"unknown"}}}async execute(e,r,t){if(!this.definitions.some(n=>u(n)===e))return{content:`Unknown document tool: ${e}`,isError:!0};const s=this.options.onActivity?.start({key:`${t.runId}:${e}`,toolName:e,source:"custom",label:e.replace(/\./u," ")});try{const n=await this.options.request({version:1,type:"host.request",requestId:a(),tool:"document",sessionId:t.sessionId,runId:t.runId,action:e,params:r,executionBoundary:"host",hostFallback:"deny",...t.workspaceRoot===void 0?{}:{projectRoot:t.workspaceRoot},...t.cwd===void 0?{}:{executionCwd:t.cwd}},t.signal);return n.ok?(s?.complete(!1),{content:d(n.result,t.maxResultBytes),isError:!1,metadata:{document:!0}}):(s?.complete(!0),{content:n.error?.message??"Desktop rejected the document action.",isError:!0,metadata:{code:n.error?.code??"DOCUMENT_HOST_ERROR",retryable:n.error?.retryable??!1}})}catch(n){return s?.complete(!0),{content:n instanceof Error?n.message:"Document host request failed.",isError:!0}}}}function u(o){return"function"in o?o.function.name:void 0}function d(o,e){const r=typeof o=="string"?o:JSON.stringify(o??null);return Buffer.byteLength(r,"utf8")<=e?r:`${r.slice(0,Math.max(0,e-12))}
2
- [truncated]`}export{p as DocumentHostToolExecutor,l as documentToolDefinitions,c as documentToolDefinitionsForFormats};