@besales/mcp 0.48.0 → 1.0.0-beta.4

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 (604) hide show
  1. package/README.md +117 -163
  2. package/README.onprem.ru.md +35 -0
  3. package/bin/besales-mcp-http.js +9 -0
  4. package/bin/besales-onprem.mjs +19 -0
  5. package/dist/auth/connection-store.d.ts +3 -1
  6. package/dist/auth/connection-store.js +9 -3
  7. package/dist/auth/connection-store.js.map +1 -1
  8. package/dist/auth/oauth-client.d.ts +20 -27
  9. package/dist/auth/oauth-client.js +31 -23
  10. package/dist/auth/oauth-client.js.map +1 -1
  11. package/dist/auth/session-workspace.d.ts +1 -0
  12. package/dist/auth/session-workspace.js +10 -1
  13. package/dist/auth/session-workspace.js.map +1 -1
  14. package/dist/auth/token-storage.js +4 -1
  15. package/dist/auth/token-storage.js.map +1 -1
  16. package/dist/cli.d.ts +1 -0
  17. package/dist/cli.js +80 -19
  18. package/dist/cli.js.map +1 -1
  19. package/dist/constants/crm-catalog.d.ts +2 -0
  20. package/dist/constants/crm-catalog.js +3 -0
  21. package/dist/constants/crm-catalog.js.map +1 -0
  22. package/dist/http/api-client.d.ts +54 -7
  23. package/dist/http/api-client.js +132 -66
  24. package/dist/http/api-client.js.map +1 -1
  25. package/dist/http/feedback-document-error.d.ts +26 -0
  26. package/dist/http/feedback-document-error.js +22 -0
  27. package/dist/http/feedback-document-error.js.map +1 -0
  28. package/dist/http-server.d.ts +15 -0
  29. package/dist/http-server.js +378 -0
  30. package/dist/http-server.js.map +1 -0
  31. package/dist/instructions/server-instructions.d.ts +1 -1
  32. package/dist/instructions/server-instructions.js +6 -3
  33. package/dist/instructions/server-instructions.js.map +1 -1
  34. package/dist/network/constants.d.ts +25 -0
  35. package/dist/network/constants.js +26 -0
  36. package/dist/network/constants.js.map +1 -0
  37. package/dist/network/failed-verifications.d.ts +10 -0
  38. package/dist/network/failed-verifications.js +37 -0
  39. package/dist/network/failed-verifications.js.map +1 -0
  40. package/dist/network/http-test-fixture.d.ts +3 -0
  41. package/dist/network/http-test-fixture.js +86 -0
  42. package/dist/network/http-test-fixture.js.map +1 -0
  43. package/dist/network/known-keys.d.ts +10 -0
  44. package/dist/network/known-keys.js +38 -0
  45. package/dist/network/known-keys.js.map +1 -0
  46. package/dist/network/memory-credentials.d.ts +11 -0
  47. package/dist/network/memory-credentials.js +24 -0
  48. package/dist/network/memory-credentials.js.map +1 -0
  49. package/dist/network/rate-limit.d.ts +23 -0
  50. package/dist/network/rate-limit.js +62 -0
  51. package/dist/network/rate-limit.js.map +1 -0
  52. package/dist/network/rejected-keys.d.ts +9 -0
  53. package/dist/network/rejected-keys.js +39 -0
  54. package/dist/network/rejected-keys.js.map +1 -0
  55. package/dist/network/request-work.d.ts +8 -0
  56. package/dist/network/request-work.js +20 -0
  57. package/dist/network/request-work.js.map +1 -0
  58. package/dist/network/successful-keys.d.ts +17 -0
  59. package/dist/network/successful-keys.js +47 -0
  60. package/dist/network/successful-keys.js.map +1 -0
  61. package/dist/resources/concepts/external-execution.md +3 -1
  62. package/dist/resources/concepts/feedback-sheets.md +21 -12
  63. package/dist/resources/concepts/icp.md +8 -1
  64. package/dist/resources/concepts/sandbox.md +15 -6
  65. package/dist/resources/concepts/triggers.md +43 -0
  66. package/dist/resources/concepts/workbook-classification.md +104 -50
  67. package/dist/resources/docs/agent-behavior.md +51 -382
  68. package/dist/resources/docs/campaigns.md +9 -16
  69. package/dist/resources/docs/crm-integration.md +39 -523
  70. package/dist/resources/docs/files-and-uploads.md +23 -286
  71. package/dist/resources/docs/follow-up.md +47 -12
  72. package/dist/resources/docs/knowledge-base.md +52 -521
  73. package/dist/resources/docs/pipeline-builder.md +26 -216
  74. package/dist/resources/docs/pipeline-settings-deep.md +27 -220
  75. package/dist/resources/docs/platforms.md +149 -519
  76. package/dist/resources/docs/prompt-anatomy.md +39 -285
  77. package/dist/resources/docs/routing.md +8 -16
  78. package/dist/resources/docs/trigger-actions.md +40 -24
  79. package/dist/resources/docs/variables.md +8 -12
  80. package/dist/resources/operator-edit.contract.d.ts +7 -0
  81. package/dist/resources/operator-edit.contract.js +8 -0
  82. package/dist/resources/operator-edit.contract.js.map +1 -0
  83. package/dist/resources/registry.js +20 -4
  84. package/dist/resources/registry.js.map +1 -1
  85. package/dist/resources/workflows/audit-dialogues.md +23 -12
  86. package/dist/resources/workflows/compare-models.md +6 -6
  87. package/dist/resources/workflows/connect-crm-from-scratch.md +15 -12
  88. package/dist/resources/workflows/connect-datasource-from-scratch.md +5 -4
  89. package/dist/resources/workflows/extract-from-document.md +8 -6
  90. package/dist/resources/workflows/operator-edit.md +15 -0
  91. package/dist/resources/workflows/platform-setup-from-scratch.md +59 -70
  92. package/dist/resources/workflows/production-readiness-check.md +25 -15
  93. package/dist/schemas/mcp-tools.json +12389 -6657
  94. package/dist/schemas/voice-actions-api.contract.json +248 -0
  95. package/dist/shared/constants/broadcast-reason.constants.d.ts +2 -0
  96. package/dist/shared/constants/broadcast-reason.constants.js +47 -0
  97. package/dist/shared/constants/broadcast-reason.constants.js.map +1 -0
  98. package/dist/shared/constants/crm-stage-pool.constants.d.ts +2 -0
  99. package/dist/shared/constants/crm-stage-pool.constants.js +3 -0
  100. package/dist/shared/constants/crm-stage-pool.constants.js.map +1 -0
  101. package/dist/shared/constants/followup-note.constants.d.ts +3 -0
  102. package/dist/shared/constants/followup-note.constants.js +4 -0
  103. package/dist/shared/constants/followup-note.constants.js.map +1 -0
  104. package/dist/shared/constants/followup-session.constants.d.ts +2 -0
  105. package/dist/shared/constants/followup-session.constants.js +3 -0
  106. package/dist/shared/constants/followup-session.constants.js.map +1 -0
  107. package/dist/shared/constants/funnel-analytics.constants.d.ts +2 -0
  108. package/dist/shared/constants/funnel-analytics.constants.js +3 -0
  109. package/dist/shared/constants/funnel-analytics.constants.js.map +1 -0
  110. package/dist/shared/constants/message-filter.constants.d.ts +7 -0
  111. package/dist/shared/constants/message-filter.constants.js +8 -0
  112. package/dist/shared/constants/message-filter.constants.js.map +1 -0
  113. package/dist/shared/utils/trigger-repeat-mapping.d.ts +72 -0
  114. package/dist/shared/utils/trigger-repeat-mapping.js +53 -0
  115. package/dist/shared/utils/trigger-repeat-mapping.js.map +1 -0
  116. package/dist/skills/besales-dialogue-audit/SKILL.md +31 -20
  117. package/dist/tasks/task-state-store.js +5 -0
  118. package/dist/tasks/task-state-store.js.map +1 -1
  119. package/dist/tools/annotations.js +4 -3
  120. package/dist/tools/annotations.js.map +1 -1
  121. package/dist/tools/definitions/agent-design.d.ts +81 -24
  122. package/dist/tools/definitions/agent-design.js +246 -90
  123. package/dist/tools/definitions/agent-design.js.map +1 -1
  124. package/dist/tools/definitions/agent-model-notice.d.ts +5 -0
  125. package/dist/tools/definitions/agent-model-notice.js +31 -0
  126. package/dist/tools/definitions/agent-model-notice.js.map +1 -0
  127. package/dist/tools/definitions/agent-models.d.ts +5 -0
  128. package/dist/tools/definitions/agent-models.js +26 -0
  129. package/dist/tools/definitions/agent-models.js.map +1 -0
  130. package/dist/tools/definitions/agent-settings.d.ts +85 -0
  131. package/dist/tools/definitions/agent-settings.js +187 -0
  132. package/dist/tools/definitions/agent-settings.js.map +1 -0
  133. package/dist/tools/definitions/ai-costs.d.ts +12 -0
  134. package/dist/tools/definitions/ai-costs.js +142 -0
  135. package/dist/tools/definitions/ai-costs.js.map +1 -0
  136. package/dist/tools/definitions/api-tool-request.d.ts +15 -0
  137. package/dist/tools/definitions/api-tool-request.js +2 -0
  138. package/dist/tools/definitions/api-tool-request.js.map +1 -0
  139. package/dist/tools/definitions/behavior-shipped-form.d.ts +182 -0
  140. package/dist/tools/definitions/behavior-shipped-form.js +185 -0
  141. package/dist/tools/definitions/behavior-shipped-form.js.map +1 -0
  142. package/dist/tools/definitions/broadcast-alerts.d.ts +6 -0
  143. package/dist/tools/definitions/broadcast-alerts.js +72 -0
  144. package/dist/tools/definitions/broadcast-alerts.js.map +1 -0
  145. package/dist/tools/definitions/broadcast-analytics.d.ts +102 -18
  146. package/dist/tools/definitions/broadcast-analytics.js +732 -431
  147. package/dist/tools/definitions/broadcast-analytics.js.map +1 -1
  148. package/dist/tools/definitions/broadcast-scheduler.d.ts +10 -13
  149. package/dist/tools/definitions/broadcast-scheduler.js +196 -154
  150. package/dist/tools/definitions/broadcast-scheduler.js.map +1 -1
  151. package/dist/tools/definitions/call-operator-task.schema.d.ts +11 -0
  152. package/dist/tools/definitions/call-operator-task.schema.js +30 -0
  153. package/dist/tools/definitions/call-operator-task.schema.js.map +1 -0
  154. package/dist/tools/definitions/contacts.d.ts +3 -0
  155. package/dist/tools/definitions/contacts.js +57 -31
  156. package/dist/tools/definitions/contacts.js.map +1 -1
  157. package/dist/tools/definitions/crm-platform.d.ts +29 -39
  158. package/dist/tools/definitions/crm-platform.js +249 -352
  159. package/dist/tools/definitions/crm-platform.js.map +1 -1
  160. package/dist/tools/definitions/crm-stage-pool.messages.d.ts +39 -0
  161. package/dist/tools/definitions/crm-stage-pool.messages.js +43 -0
  162. package/dist/tools/definitions/crm-stage-pool.messages.js.map +1 -0
  163. package/dist/tools/definitions/crm-stage-pool.schema.d.ts +64 -0
  164. package/dist/tools/definitions/crm-stage-pool.schema.js +109 -0
  165. package/dist/tools/definitions/crm-stage-pool.schema.js.map +1 -0
  166. package/dist/tools/definitions/custom-reports.d.ts +12 -0
  167. package/dist/tools/definitions/custom-reports.js +68 -0
  168. package/dist/tools/definitions/custom-reports.js.map +1 -0
  169. package/dist/tools/definitions/datasource.d.ts +2 -1
  170. package/dist/tools/definitions/datasource.js +28 -13
  171. package/dist/tools/definitions/datasource.js.map +1 -1
  172. package/dist/tools/definitions/dialog-review-findings-response.d.ts +14 -0
  173. package/dist/tools/definitions/dialog-review-findings-response.js +23 -0
  174. package/dist/tools/definitions/dialog-review-findings-response.js.map +1 -0
  175. package/dist/tools/definitions/dialog-review-safe-response.d.ts +5 -0
  176. package/dist/tools/definitions/dialog-review-safe-response.js +152 -0
  177. package/dist/tools/definitions/dialog-review-safe-response.js.map +1 -0
  178. package/dist/tools/definitions/dialog-review.d.ts +49 -0
  179. package/dist/tools/definitions/dialog-review.js +383 -0
  180. package/dist/tools/definitions/dialog-review.js.map +1 -0
  181. package/dist/tools/definitions/dialogue-analysis.d.ts +46 -0
  182. package/dist/tools/definitions/dialogue-analysis.js +170 -0
  183. package/dist/tools/definitions/dialogue-analysis.js.map +1 -0
  184. package/dist/tools/definitions/dialogue-audit-agent-scope.d.ts +7 -0
  185. package/dist/tools/definitions/dialogue-audit-agent-scope.js +41 -0
  186. package/dist/tools/definitions/dialogue-audit-agent-scope.js.map +1 -0
  187. package/dist/tools/definitions/dialogue-audit-alias.d.ts +67 -0
  188. package/dist/tools/definitions/dialogue-audit-alias.js +559 -0
  189. package/dist/tools/definitions/dialogue-audit-alias.js.map +1 -0
  190. package/dist/tools/definitions/dialogue-export.d.ts +7 -1
  191. package/dist/tools/definitions/dialogue-export.js +89 -32
  192. package/dist/tools/definitions/dialogue-export.js.map +1 -1
  193. package/dist/tools/definitions/dialogue-followup-state.d.ts +9 -0
  194. package/dist/tools/definitions/dialogue-followup-state.js +69 -0
  195. package/dist/tools/definitions/dialogue-followup-state.js.map +1 -0
  196. package/dist/tools/definitions/dialogue-reprocess.d.ts +5 -0
  197. package/dist/tools/definitions/dialogue-reprocess.js +107 -0
  198. package/dist/tools/definitions/dialogue-reprocess.js.map +1 -0
  199. package/dist/tools/definitions/edit-version-transport.test-fixtures.d.ts +13 -0
  200. package/dist/tools/definitions/edit-version-transport.test-fixtures.js +292 -0
  201. package/dist/tools/definitions/edit-version-transport.test-fixtures.js.map +1 -0
  202. package/dist/tools/definitions/edit-version.d.ts +5 -0
  203. package/dist/tools/definitions/edit-version.js +20 -0
  204. package/dist/tools/definitions/edit-version.js.map +1 -0
  205. package/dist/tools/definitions/external-api-channels.js +17 -15
  206. package/dist/tools/definitions/external-api-channels.js.map +1 -1
  207. package/dist/tools/definitions/feedback-document-access.d.ts +16 -0
  208. package/dist/tools/definitions/feedback-document-access.js +63 -0
  209. package/dist/tools/definitions/feedback-document-access.js.map +1 -0
  210. package/dist/tools/definitions/fixtures/shipped-setup-status.d.ts +3 -0
  211. package/dist/tools/definitions/fixtures/shipped-setup-status.js +9 -0
  212. package/dist/tools/definitions/fixtures/shipped-setup-status.js.map +1 -0
  213. package/dist/tools/definitions/follow-up-config.d.ts +79 -0
  214. package/dist/tools/definitions/follow-up-config.js +258 -0
  215. package/dist/tools/definitions/follow-up-config.js.map +1 -0
  216. package/dist/tools/definitions/follow-up-funnel-test.d.ts +4 -3
  217. package/dist/tools/definitions/follow-up-funnel-test.js +65 -52
  218. package/dist/tools/definitions/follow-up-funnel-test.js.map +1 -1
  219. package/dist/tools/definitions/follow-up-promotion-instructions.d.ts +2 -0
  220. package/dist/tools/definitions/follow-up-promotion-instructions.js +7 -0
  221. package/dist/tools/definitions/follow-up-promotion-instructions.js.map +1 -0
  222. package/dist/tools/definitions/follow-up-setup.d.ts +4 -28
  223. package/dist/tools/definitions/follow-up-setup.js +20 -87
  224. package/dist/tools/definitions/follow-up-setup.js.map +1 -1
  225. package/dist/tools/definitions/follow-up.d.ts +20 -122
  226. package/dist/tools/definitions/follow-up.js +200 -357
  227. package/dist/tools/definitions/follow-up.js.map +1 -1
  228. package/dist/tools/definitions/followup-getcourse-compat.d.ts +29 -0
  229. package/dist/tools/definitions/followup-getcourse-compat.js +62 -0
  230. package/dist/tools/definitions/followup-getcourse-compat.js.map +1 -0
  231. package/dist/tools/definitions/followup-sequence-config.schema.d.ts +10 -0
  232. package/dist/tools/definitions/followup-sequence-config.schema.js +14 -0
  233. package/dist/tools/definitions/followup-sequence-config.schema.js.map +1 -0
  234. package/dist/tools/definitions/funnel-analytics.d.ts +18 -0
  235. package/dist/tools/definitions/funnel-analytics.js +150 -0
  236. package/dist/tools/definitions/funnel-analytics.js.map +1 -0
  237. package/dist/tools/definitions/getcourse-anchor-refresh.d.ts +5 -9
  238. package/dist/tools/definitions/getcourse-anchor-refresh.js +26 -31
  239. package/dist/tools/definitions/getcourse-anchor-refresh.js.map +1 -1
  240. package/dist/tools/definitions/getcourse-cold-outbound-settings.d.ts +46 -0
  241. package/dist/tools/definitions/getcourse-cold-outbound-settings.js +37 -0
  242. package/dist/tools/definitions/getcourse-cold-outbound-settings.js.map +1 -0
  243. package/dist/tools/definitions/getcourse-cold-welcome.d.ts +14 -29
  244. package/dist/tools/definitions/getcourse-cold-welcome.js +190 -253
  245. package/dist/tools/definitions/getcourse-cold-welcome.js.map +1 -1
  246. package/dist/tools/definitions/getcourse-wave-welcome.messages.d.ts +10 -0
  247. package/dist/tools/definitions/getcourse-wave-welcome.messages.js +17 -0
  248. package/dist/tools/definitions/getcourse-wave-welcome.messages.js.map +1 -0
  249. package/dist/tools/definitions/help.js.map +1 -1
  250. package/dist/tools/definitions/icp-import-source.d.ts +75 -0
  251. package/dist/tools/definitions/icp-import-source.js +88 -0
  252. package/dist/tools/definitions/icp-import-source.js.map +1 -0
  253. package/dist/tools/definitions/inbound-analytics.d.ts +13 -0
  254. package/dist/tools/definitions/inbound-analytics.js +55 -0
  255. package/dist/tools/definitions/inbound-analytics.js.map +1 -0
  256. package/dist/tools/definitions/instagram-comment.templates.d.ts +19 -0
  257. package/dist/tools/definitions/instagram-comment.templates.js +34 -0
  258. package/dist/tools/definitions/instagram-comment.templates.js.map +1 -0
  259. package/dist/tools/definitions/instagram-settings-compat.d.ts +33 -0
  260. package/dist/tools/definitions/instagram-settings-compat.js +7 -0
  261. package/dist/tools/definitions/instagram-settings-compat.js.map +1 -0
  262. package/dist/tools/definitions/knowledge-chunking.d.ts +42 -0
  263. package/dist/tools/definitions/knowledge-chunking.js +83 -0
  264. package/dist/tools/definitions/knowledge-chunking.js.map +1 -0
  265. package/dist/tools/definitions/knowledge-space-search-fields.d.ts +12 -0
  266. package/dist/tools/definitions/knowledge-space-search-fields.js +30 -0
  267. package/dist/tools/definitions/knowledge-space-search-fields.js.map +1 -0
  268. package/dist/tools/definitions/knowledge.d.ts +24 -14
  269. package/dist/tools/definitions/knowledge.js +342 -233
  270. package/dist/tools/definitions/knowledge.js.map +1 -1
  271. package/dist/tools/definitions/legacy-trigger-repeat.d.ts +17 -0
  272. package/dist/tools/definitions/legacy-trigger-repeat.js +53 -0
  273. package/dist/tools/definitions/legacy-trigger-repeat.js.map +1 -0
  274. package/dist/tools/definitions/link-tracking.d.ts +8 -0
  275. package/dist/tools/definitions/link-tracking.js +141 -38
  276. package/dist/tools/definitions/link-tracking.js.map +1 -1
  277. package/dist/tools/definitions/mailing-variant-content.d.ts +75 -0
  278. package/dist/tools/definitions/mailing-variant-content.js +73 -0
  279. package/dist/tools/definitions/mailing-variant-content.js.map +1 -0
  280. package/dist/tools/definitions/model-comparison.d.ts +2 -1
  281. package/dist/tools/definitions/model-comparison.js +4 -5
  282. package/dist/tools/definitions/model-comparison.js.map +1 -1
  283. package/dist/tools/definitions/money-currency.d.ts +5 -0
  284. package/dist/tools/definitions/money-currency.js +10 -0
  285. package/dist/tools/definitions/money-currency.js.map +1 -0
  286. package/dist/tools/definitions/operator-workflow.d.ts +5 -5
  287. package/dist/tools/definitions/operator-workflow.js +80 -27
  288. package/dist/tools/definitions/operator-workflow.js.map +1 -1
  289. package/dist/tools/definitions/platform-funnel-analytics.d.ts +42 -0
  290. package/dist/tools/definitions/platform-funnel-analytics.js +72 -0
  291. package/dist/tools/definitions/platform-funnel-analytics.js.map +1 -0
  292. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.d.ts +42 -0
  293. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.js +51 -0
  294. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.js.map +1 -0
  295. package/dist/tools/definitions/platform-settings-limits.d.ts +5 -0
  296. package/dist/tools/definitions/platform-settings-limits.js +6 -0
  297. package/dist/tools/definitions/platform-settings-limits.js.map +1 -0
  298. package/dist/tools/definitions/platform-settings-shipped-form.d.ts +37 -0
  299. package/dist/tools/definitions/platform-settings-shipped-form.js +310 -0
  300. package/dist/tools/definitions/platform-settings-shipped-form.js.map +1 -0
  301. package/dist/tools/definitions/platform-settings-update.d.ts +300 -0
  302. package/dist/tools/definitions/platform-settings-update.js +134 -0
  303. package/dist/tools/definitions/platform-settings-update.js.map +1 -0
  304. package/dist/tools/definitions/{getcourse-wave.d.ts → platform-setup-wave.d.ts} +75 -6
  305. package/dist/tools/definitions/platform-setup-wave.js +1079 -0
  306. package/dist/tools/definitions/platform-setup-wave.js.map +1 -0
  307. package/dist/tools/definitions/platform-setup.d.ts +697 -224
  308. package/dist/tools/definitions/platform-setup.js +313 -752
  309. package/dist/tools/definitions/platform-setup.js.map +1 -1
  310. package/dist/tools/definitions/platform-widget-page-rules.schema.d.ts +10 -0
  311. package/dist/tools/definitions/platform-widget-page-rules.schema.js +7 -0
  312. package/dist/tools/definitions/platform-widget-page-rules.schema.js.map +1 -0
  313. package/dist/tools/definitions/prompt-authoring.constants.d.ts +2 -0
  314. package/dist/tools/definitions/prompt-authoring.constants.js +3 -0
  315. package/dist/tools/definitions/prompt-authoring.constants.js.map +1 -0
  316. package/dist/tools/definitions/prompt-batch-controls.d.ts +5 -0
  317. package/dist/tools/definitions/prompt-batch-controls.js +40 -0
  318. package/dist/tools/definitions/prompt-batch-controls.js.map +1 -0
  319. package/dist/tools/definitions/prompt-draft-authoring.d.ts +5 -0
  320. package/dist/tools/definitions/prompt-draft-authoring.js +24 -0
  321. package/dist/tools/definitions/prompt-draft-authoring.js.map +1 -0
  322. package/dist/tools/definitions/prompt-text-projection.d.ts +11 -0
  323. package/dist/tools/definitions/prompt-text-projection.js +62 -0
  324. package/dist/tools/definitions/prompt-text-projection.js.map +1 -0
  325. package/dist/tools/definitions/reviewer-paid.d.ts +19 -0
  326. package/dist/tools/definitions/reviewer-paid.js +115 -0
  327. package/dist/tools/definitions/reviewer-paid.js.map +1 -0
  328. package/dist/tools/definitions/routing-condition-projection.d.ts +31 -0
  329. package/dist/tools/definitions/routing-condition-projection.js +97 -0
  330. package/dist/tools/definitions/routing-condition-projection.js.map +1 -0
  331. package/dist/tools/definitions/schedule-selection-hints.d.ts +3 -0
  332. package/dist/tools/definitions/schedule-selection-hints.js +42 -0
  333. package/dist/tools/definitions/schedule-selection-hints.js.map +1 -0
  334. package/dist/tools/definitions/{scheduled-tasks.d.ts → scheduled-task-alias.d.ts} +12 -10
  335. package/dist/tools/definitions/scheduled-task-alias.js +207 -0
  336. package/dist/tools/definitions/scheduled-task-alias.js.map +1 -0
  337. package/dist/tools/definitions/session.js +3 -3
  338. package/dist/tools/definitions/session.js.map +1 -1
  339. package/dist/tools/definitions/setup-init-operation.schema.d.ts +2 -0
  340. package/dist/tools/definitions/setup-init-operation.schema.js +6 -0
  341. package/dist/tools/definitions/setup-init-operation.schema.js.map +1 -0
  342. package/dist/tools/definitions/shared-input.helpers.d.ts +51 -0
  343. package/dist/tools/definitions/shared-input.helpers.js +323 -0
  344. package/dist/tools/definitions/shared-input.helpers.js.map +1 -0
  345. package/dist/tools/definitions/shared.d.ts +401 -307
  346. package/dist/tools/definitions/shared.js +430 -652
  347. package/dist/tools/definitions/shared.js.map +1 -1
  348. package/dist/tools/definitions/shipped-output-names.d.ts +19 -0
  349. package/dist/tools/definitions/shipped-output-names.js +123 -0
  350. package/dist/tools/definitions/shipped-output-names.js.map +1 -0
  351. package/dist/tools/definitions/task-state.d.ts +4 -4
  352. package/dist/tools/definitions/task-state.js +2 -1
  353. package/dist/tools/definitions/task-state.js.map +1 -1
  354. package/dist/tools/definitions/telegram-personal-capacity.d.ts +4 -0
  355. package/dist/tools/definitions/telegram-personal-capacity.js +18 -0
  356. package/dist/tools/definitions/telegram-personal-capacity.js.map +1 -0
  357. package/dist/tools/definitions/telegram-personal-management.d.ts +34 -0
  358. package/dist/tools/definitions/telegram-personal-management.js +139 -0
  359. package/dist/tools/definitions/telegram-personal-management.js.map +1 -0
  360. package/dist/tools/definitions/telegram-personal-restrictions.d.ts +19 -0
  361. package/dist/tools/definitions/telegram-personal-restrictions.js +109 -0
  362. package/dist/tools/definitions/telegram-personal-restrictions.js.map +1 -0
  363. package/dist/tools/definitions/telegram-pool-policy.d.ts +8 -0
  364. package/dist/tools/definitions/telegram-pool-policy.js +56 -0
  365. package/dist/tools/definitions/telegram-pool-policy.js.map +1 -0
  366. package/dist/tools/definitions/touch-history-alias.d.ts +4 -0
  367. package/dist/tools/definitions/touch-history-alias.js +99 -0
  368. package/dist/tools/definitions/touch-history-alias.js.map +1 -0
  369. package/dist/tools/definitions/trigger-action-item.schema.d.ts +254 -0
  370. package/dist/tools/definitions/trigger-action-item.schema.js +121 -0
  371. package/dist/tools/definitions/trigger-action-item.schema.js.map +1 -0
  372. package/dist/tools/definitions/trigger-argument.schema.d.ts +14 -0
  373. package/dist/tools/definitions/trigger-argument.schema.js +23 -0
  374. package/dist/tools/definitions/trigger-argument.schema.js.map +1 -0
  375. package/dist/tools/definitions/trigger-claim-alias.d.ts +10 -0
  376. package/dist/tools/definitions/trigger-claim-alias.js +90 -0
  377. package/dist/tools/definitions/trigger-claim-alias.js.map +1 -0
  378. package/dist/tools/definitions/trigger-echo-projection.d.ts +1 -0
  379. package/dist/tools/definitions/trigger-echo-projection.js +41 -0
  380. package/dist/tools/definitions/trigger-echo-projection.js.map +1 -0
  381. package/dist/tools/definitions/trigger-upsert.tool.d.ts +41 -0
  382. package/dist/tools/definitions/trigger-upsert.tool.js +159 -0
  383. package/dist/tools/definitions/trigger-upsert.tool.js.map +1 -0
  384. package/dist/tools/definitions/v15-port-descriptions.d.ts +11 -0
  385. package/dist/tools/definitions/v15-port-descriptions.js +30 -0
  386. package/dist/tools/definitions/v15-port-descriptions.js.map +1 -0
  387. package/dist/tools/definitions/variables.d.ts +44 -0
  388. package/dist/tools/definitions/variables.js +310 -0
  389. package/dist/tools/definitions/variables.js.map +1 -0
  390. package/dist/tools/definitions/voice-action-input.d.ts +9 -0
  391. package/dist/tools/definitions/voice-action-input.js +141 -0
  392. package/dist/tools/definitions/voice-action-input.js.map +1 -0
  393. package/dist/tools/definitions/widget-customization-compat.d.ts +51 -0
  394. package/dist/tools/definitions/widget-customization-compat.js +23 -0
  395. package/dist/tools/definitions/widget-customization-compat.js.map +1 -0
  396. package/dist/tools/definitions.d.ts +1134 -617
  397. package/dist/tools/definitions.js +63 -27
  398. package/dist/tools/definitions.js.map +1 -1
  399. package/dist/tools/description-localization.js +3 -2
  400. package/dist/tools/description-localization.js.map +1 -1
  401. package/dist/tools/follow-up-request.d.ts +19 -0
  402. package/dist/tools/follow-up-request.js +81 -0
  403. package/dist/tools/follow-up-request.js.map +1 -0
  404. package/dist/tools/followup-revision.d.ts +4 -0
  405. package/dist/tools/followup-revision.js +29 -0
  406. package/dist/tools/followup-revision.js.map +1 -0
  407. package/dist/tools/incomplete-list.js +4 -0
  408. package/dist/tools/incomplete-list.js.map +1 -1
  409. package/dist/tools/inventory.js +47 -11
  410. package/dist/tools/inventory.js.map +1 -1
  411. package/dist/tools/operation-recovery.d.ts +4 -0
  412. package/dist/tools/operation-recovery.js +33 -0
  413. package/dist/tools/operation-recovery.js.map +1 -0
  414. package/dist/tools/registry-mapping-primary.cases.d.ts +2 -0
  415. package/dist/tools/registry-mapping-primary.cases.js +765 -0
  416. package/dist/tools/registry-mapping-primary.cases.js.map +1 -0
  417. package/dist/tools/registry-mapping-secondary.cases.d.ts +2 -0
  418. package/dist/tools/registry-mapping-secondary.cases.js +626 -0
  419. package/dist/tools/registry-mapping-secondary.cases.js.map +1 -0
  420. package/dist/tools/registry-mapping.cases.d.ts +8 -0
  421. package/dist/tools/registry-mapping.cases.js +170 -0
  422. package/dist/tools/registry-mapping.cases.js.map +1 -0
  423. package/dist/tools/registry-test-fixtures.d.ts +50 -0
  424. package/dist/tools/registry-test-fixtures.js +120 -0
  425. package/dist/tools/registry-test-fixtures.js.map +1 -0
  426. package/dist/tools/registry.d.ts +2 -0
  427. package/dist/tools/registry.js +84 -52
  428. package/dist/tools/registry.js.map +1 -1
  429. package/dist/tools/result.d.ts +1 -0
  430. package/dist/tools/result.js +90 -22
  431. package/dist/tools/result.js.map +1 -1
  432. package/dist/tools/toolsets.d.ts +16 -0
  433. package/dist/tools/toolsets.js +25 -1
  434. package/dist/tools/toolsets.js.map +1 -1
  435. package/dist/types/api-contract.gen.d.ts +131892 -22453
  436. package/dist/utils/credential-signatures.d.ts +3 -0
  437. package/dist/utils/credential-signatures.js +10 -0
  438. package/dist/utils/credential-signatures.js.map +1 -0
  439. package/dist/utils/data-source-column-name.d.ts +10 -0
  440. package/dist/utils/data-source-column-name.js +36 -0
  441. package/dist/utils/data-source-column-name.js.map +1 -0
  442. package/dist/utils/logger.d.ts +1 -0
  443. package/dist/utils/logger.js +32 -8
  444. package/dist/utils/logger.js.map +1 -1
  445. package/dist/utils/secret-read-boundary.d.ts +2 -0
  446. package/dist/utils/secret-read-boundary.js +88 -0
  447. package/dist/utils/secret-read-boundary.js.map +1 -0
  448. package/dist/utils/setup-secrets.d.ts +4 -0
  449. package/dist/utils/setup-secrets.js +40 -0
  450. package/dist/utils/setup-secrets.js.map +1 -0
  451. package/docs/agent-models.md +9 -0
  452. package/docs/agent-usage-guide.full.ru.md +1 -4
  453. package/docs/analytics-contract.md +67 -0
  454. package/docs/async-operation-lifecycle.md +10 -3
  455. package/docs/connect.ru.md +144 -4
  456. package/docs/contact-company-profile.md +17 -0
  457. package/docs/contact-recommendations.md +7 -0
  458. package/docs/crm-stage-pool.md +73 -0
  459. package/docs/customer-data.md +61 -0
  460. package/docs/dialogue-reprocess.md +37 -0
  461. package/docs/edit-versions.md +36 -0
  462. package/docs/failure-semantics.md +17 -9
  463. package/docs/help-navigation.md +15 -42
  464. package/docs/host-compatibility-matrix.md +72 -93
  465. package/docs/host-setup.md +33 -35
  466. package/docs/invariants/public-api-and-contracts.md +16 -0
  467. package/docs/legacy-action-settings.md +21 -0
  468. package/docs/main-transfer-dependencies.md +38 -0
  469. package/docs/mcp2-parity.md +50 -0
  470. package/docs/modules/analytics.md +79 -0
  471. package/docs/modules/besales-mcp.md +144 -0
  472. package/docs/modules/dialog-review-report.md +38 -0
  473. package/docs/modules/dialogue-followup-adapters.md +39 -0
  474. package/docs/modules/message-reactions.md +17 -0
  475. package/docs/modules/network-mode.md +284 -0
  476. package/docs/modules/prompt-batch-and-dialogue-controls.md +69 -0
  477. package/docs/pii-policy.md +21 -16
  478. package/docs/response-size-budget.md +197 -7
  479. package/docs/secret-read-boundary.md +102 -0
  480. package/docs/task-state.md +7 -2
  481. package/docs/telegram-personal-management.md +50 -0
  482. package/docs/telegram-personal-restrictions.md +87 -0
  483. package/docs/telegram-pool-policy.md +19 -0
  484. package/docs/tool-effects.md +15 -9
  485. package/docs/tool-surface.md +205 -4
  486. package/docs/voice-actions-and-inbox.md +95 -0
  487. package/docs/wazzup-instagram-comments.md +26 -0
  488. package/package.json +17 -10
  489. package/scripts/api-source-loader.spec.mjs +40 -0
  490. package/scripts/audit-bridge-controls.mjs +129 -0
  491. package/scripts/audit-revert-mutants.mjs +107 -0
  492. package/scripts/bridge-api-input.spec.mjs +98 -0
  493. package/scripts/bridge-controls-mutants.mjs +130 -0
  494. package/scripts/brx3-shipped-refusals.spec.mjs +149 -0
  495. package/scripts/brx4-ledger-payload.spec.mjs +127 -0
  496. package/scripts/build-onprem.mjs +108 -0
  497. package/scripts/connect-clients.sh +141 -0
  498. package/scripts/connect-scopes.mjs +166 -0
  499. package/scripts/connect-scopes.spec.mjs +83 -0
  500. package/scripts/emit-personal-link-carrier.mjs +31 -0
  501. package/scripts/emit-setup-init-schemas.mjs +24 -0
  502. package/scripts/emit-tool-routes.mjs +878 -0
  503. package/scripts/emit-tool-routes.spec.mjs +300 -0
  504. package/scripts/followup-registry.spec.mjs +107 -0
  505. package/scripts/generate-crm-rotation-contract.mjs +98 -0
  506. package/scripts/generate-followup-session-contract.mjs +16 -0
  507. package/scripts/getcourse-text-source.spec.mjs +110 -0
  508. package/scripts/icp-import-verification/mutate.cjs +70 -0
  509. package/scripts/import-secret-read-contract.mjs +53 -0
  510. package/scripts/install-claude-desktop.js +1 -1
  511. package/scripts/lag-decisions.mjs +37 -0
  512. package/scripts/lag-decisions.spec.mjs +87 -0
  513. package/scripts/lag-open-task-owners.mjs +46 -0
  514. package/scripts/lag-open-task-owners.spec.mjs +78 -0
  515. package/scripts/lag-payload.mjs +10 -0
  516. package/scripts/legacy-action-lag.spec.mjs +22 -0
  517. package/scripts/legacy-field-refusal.shipped.spec.mjs +99 -0
  518. package/scripts/mcpcompat-handler.mjs +34 -0
  519. package/scripts/mcpcompat-loader.mjs +36 -0
  520. package/scripts/mcpcompat-typescript.mjs +3 -0
  521. package/scripts/platform-settings-shipped-parity.spec.mjs +89 -0
  522. package/scripts/prbr-round1-recheck.spec.mjs +605 -0
  523. package/scripts/prbr-shipped-compatibility.spec.mjs +276 -0
  524. package/scripts/publish-mcp-registry.mjs +98 -0
  525. package/scripts/publish-mcp-registry.spec.mjs +68 -0
  526. package/scripts/record-scheduled-task-call.mjs +26 -0
  527. package/scripts/refusal-probe.mjs +17 -0
  528. package/scripts/refusal-probe.spec.mjs +29 -0
  529. package/scripts/registry-diff.mjs +502 -0
  530. package/scripts/registry-diff.spec.mjs +787 -0
  531. package/scripts/request-query.mjs +43 -0
  532. package/scripts/request-query.spec.mjs +82 -0
  533. package/scripts/route-lag.mjs +23 -0
  534. package/scripts/route-lag.spec.mjs +30 -0
  535. package/scripts/sample-args.mjs +174 -0
  536. package/scripts/sample-args.spec.mjs +160 -0
  537. package/scripts/shipped-definitions.mjs +197 -0
  538. package/scripts/shipped-definitions.spec.mjs +57 -0
  539. package/scripts/shipped-inputs.spec.mjs +136 -0
  540. package/scripts/shipped-recordings.spec.mjs +19 -0
  541. package/scripts/shipped-ref.d.mts +5 -0
  542. package/scripts/shipped-ref.mjs +20 -0
  543. package/scripts/shipped-ref.spec.mjs +59 -0
  544. package/scripts/shipped-registry.mjs +107 -0
  545. package/scripts/shipped-sample-candidates.mjs +69 -0
  546. package/scripts/shipped-sample-candidates.spec.mjs +117 -0
  547. package/scripts/shipped-sample.mjs +871 -0
  548. package/scripts/shipped-sample.spec.mjs +451 -0
  549. package/scripts/sync-agent-model-schemas.mjs +72 -0
  550. package/scripts/sync-api-contracts.mjs +85 -0
  551. package/scripts/sync-api-contracts.spec.mjs +144 -0
  552. package/scripts/sync-contract-ledger-schemas.mjs +161 -0
  553. package/scripts/sync-crm-stage-pool-schema.mjs +85 -0
  554. package/scripts/sync-prompt-draft-schema.mjs +92 -0
  555. package/scripts/sync-route-map.mjs +94 -0
  556. package/scripts/sync-schema-descriptions.mjs +25 -0
  557. package/scripts/sync-tool-inventory.mjs +27 -0
  558. package/scripts/sync-trigger-argument-schema.mjs +97 -0
  559. package/scripts/sync-trigger-argument-schema.spec.mjs +91 -0
  560. package/scripts/sync-trigger-event-schema.mjs +20 -0
  561. package/scripts/sync-trigger-repeat-mapping.mjs +12 -0
  562. package/scripts/sync-trigger-task-schema.mjs +45 -0
  563. package/scripts/sync-voice-actions-contract.mjs +67 -0
  564. package/scripts/sync-voice-actions-tools.mjs +97 -0
  565. package/scripts/sync-wave-id-schemas.mjs +55 -0
  566. package/scripts/telegram-personal-confirmation-mutants.mjs +74 -0
  567. package/scripts/tool-input-schemas.mjs +46 -0
  568. package/scripts/tool-input-schemas.spec.mjs +50 -0
  569. package/scripts/verify-followup-adapters.mjs +235 -0
  570. package/scripts/verify-secret-read-import.mjs +84 -0
  571. package/scripts/verify-secret-read-mutants.mjs +143 -0
  572. package/dist/tools/definitions/analytics.d.ts +0 -40
  573. package/dist/tools/definitions/analytics.js +0 -233
  574. package/dist/tools/definitions/analytics.js.map +0 -1
  575. package/dist/tools/definitions/broadcast-mailing-variants.d.ts +0 -41
  576. package/dist/tools/definitions/broadcast-mailing-variants.js +0 -194
  577. package/dist/tools/definitions/broadcast-mailing-variants.js.map +0 -1
  578. package/dist/tools/definitions/dialogue-audit.d.ts +0 -38
  579. package/dist/tools/definitions/dialogue-audit.js +0 -292
  580. package/dist/tools/definitions/dialogue-audit.js.map +0 -1
  581. package/dist/tools/definitions/getcourse-wave.js +0 -519
  582. package/dist/tools/definitions/getcourse-wave.js.map +0 -1
  583. package/dist/tools/definitions/operational-overview.d.ts +0 -3
  584. package/dist/tools/definitions/operational-overview.js +0 -23
  585. package/dist/tools/definitions/operational-overview.js.map +0 -1
  586. package/dist/tools/definitions/scheduled-tasks.js +0 -173
  587. package/dist/tools/definitions/scheduled-tasks.js.map +0 -1
  588. package/dist/tools/definitions/trigger-contact-claims.d.ts +0 -7
  589. package/dist/tools/definitions/trigger-contact-claims.js +0 -60
  590. package/dist/tools/definitions/trigger-contact-claims.js.map +0 -1
  591. package/dist/tools/registry-mapping-cases-core.d.ts +0 -38
  592. package/dist/tools/registry-mapping-cases-core.js +0 -963
  593. package/dist/tools/registry-mapping-cases-core.js.map +0 -1
  594. package/dist/tools/registry-mapping-cases-platform.d.ts +0 -2
  595. package/dist/tools/registry-mapping-cases-platform.js +0 -1052
  596. package/dist/tools/registry-mapping-cases-platform.js.map +0 -1
  597. package/dist/tools/trigger-action-config.d.ts +0 -49
  598. package/dist/tools/trigger-action-config.js +0 -171
  599. package/dist/tools/trigger-action-config.js.map +0 -1
  600. package/docs/evals/model-behavior-scorecard.md +0 -80
  601. package/docs/operation-coverage.md +0 -114
  602. package/scripts/mock-credentials.js +0 -77
  603. package/scripts/model-eval-server.js +0 -213
  604. package/scripts/run-model-eval.js +0 -447
@@ -0,0 +1,254 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Элемент действия триггера в форме прежней версии: тип, порядок, «продолжать при ошибке» и конфиг смены стадии объявлены;
4
+ * конфиги прочих действий едут отдельными полями `<тип>Config` и разбираются сервером, поэтому остальные ключи
5
+ * пропускаются как есть. Без объявления фильтр аргументов описывал бы элемент «любым объектом», и опубликованные поля
6
+ * выглядели бы несуществующими для фильтра.
7
+ */
8
+ export declare const triggerSetupActionItemSchema: z.ZodPipe<z.ZodPipe<z.ZodObject<{
9
+ crmConfig: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodObject<{
10
+ extra: z.ZodOptional<z.ZodObject<{
11
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
12
+ }, z.core.$strict>>;
13
+ assign_responsible_operator_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
14
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
15
+ schema_version: z.ZodOptional<z.ZodLiteral<1>>;
16
+ step_type: z.ZodOptional<z.ZodLiteral<"CRM_MOVE_STAGE">>;
17
+ responsible_pool_applicable: z.ZodOptional<z.ZodBoolean>;
18
+ pipeline_external_id: z.ZodOptional<z.ZodString>;
19
+ status_external_id: z.ZodOptional<z.ZodString>;
20
+ note_template: z.ZodOptional<z.ZodString>;
21
+ statusId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
22
+ pipelineId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
23
+ pipelineCrmId: z.ZodOptional<z.ZodString>;
24
+ crmId: z.ZodOptional<z.ZodString>;
25
+ note: z.ZodOptional<z.ZodString>;
26
+ }, z.core.$strict>, z.ZodTransform<{
27
+ assign_responsible_operator_ids?: string[] | null | undefined;
28
+ assignResponsibleOperatorIds?: number[] | null | undefined;
29
+ schema_version?: 1 | undefined;
30
+ step_type?: "CRM_MOVE_STAGE" | undefined;
31
+ responsible_pool_applicable?: boolean | undefined;
32
+ pipeline_external_id?: string | undefined;
33
+ status_external_id?: string | undefined;
34
+ note_template?: string | undefined;
35
+ statusId?: string | number | undefined;
36
+ pipelineId?: string | number | undefined;
37
+ pipelineCrmId?: string | undefined;
38
+ crmId?: string | undefined;
39
+ note?: string | undefined;
40
+ }, {
41
+ extra?: {
42
+ assignResponsibleOperatorIds?: number[] | null | undefined;
43
+ } | undefined;
44
+ assign_responsible_operator_ids?: string[] | null | undefined;
45
+ assignResponsibleOperatorIds?: number[] | null | undefined;
46
+ schema_version?: 1 | undefined;
47
+ step_type?: "CRM_MOVE_STAGE" | undefined;
48
+ responsible_pool_applicable?: boolean | undefined;
49
+ pipeline_external_id?: string | undefined;
50
+ status_external_id?: string | undefined;
51
+ note_template?: string | undefined;
52
+ statusId?: string | number | undefined;
53
+ pipelineId?: string | number | undefined;
54
+ pipelineCrmId?: string | undefined;
55
+ crmId?: string | undefined;
56
+ note?: string | undefined;
57
+ }>>>>;
58
+ crmMoveStage: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodObject<{
59
+ extra: z.ZodOptional<z.ZodObject<{
60
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
61
+ }, z.core.$strict>>;
62
+ assign_responsible_operator_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
63
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
64
+ schema_version: z.ZodOptional<z.ZodLiteral<1>>;
65
+ step_type: z.ZodOptional<z.ZodLiteral<"CRM_MOVE_STAGE">>;
66
+ responsible_pool_applicable: z.ZodOptional<z.ZodBoolean>;
67
+ pipeline_external_id: z.ZodOptional<z.ZodString>;
68
+ status_external_id: z.ZodOptional<z.ZodString>;
69
+ note_template: z.ZodOptional<z.ZodString>;
70
+ statusId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
71
+ pipelineId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
72
+ pipelineCrmId: z.ZodOptional<z.ZodString>;
73
+ crmId: z.ZodOptional<z.ZodString>;
74
+ note: z.ZodOptional<z.ZodString>;
75
+ }, z.core.$strict>, z.ZodTransform<{
76
+ assign_responsible_operator_ids?: string[] | null | undefined;
77
+ assignResponsibleOperatorIds?: number[] | null | undefined;
78
+ schema_version?: 1 | undefined;
79
+ step_type?: "CRM_MOVE_STAGE" | undefined;
80
+ responsible_pool_applicable?: boolean | undefined;
81
+ pipeline_external_id?: string | undefined;
82
+ status_external_id?: string | undefined;
83
+ note_template?: string | undefined;
84
+ statusId?: string | number | undefined;
85
+ pipelineId?: string | number | undefined;
86
+ pipelineCrmId?: string | undefined;
87
+ crmId?: string | undefined;
88
+ note?: string | undefined;
89
+ }, {
90
+ extra?: {
91
+ assignResponsibleOperatorIds?: number[] | null | undefined;
92
+ } | undefined;
93
+ assign_responsible_operator_ids?: string[] | null | undefined;
94
+ assignResponsibleOperatorIds?: number[] | null | undefined;
95
+ schema_version?: 1 | undefined;
96
+ step_type?: "CRM_MOVE_STAGE" | undefined;
97
+ responsible_pool_applicable?: boolean | undefined;
98
+ pipeline_external_id?: string | undefined;
99
+ status_external_id?: string | undefined;
100
+ note_template?: string | undefined;
101
+ statusId?: string | number | undefined;
102
+ pipelineId?: string | number | undefined;
103
+ pipelineCrmId?: string | undefined;
104
+ crmId?: string | undefined;
105
+ note?: string | undefined;
106
+ }>>>>;
107
+ crmMoveStageConfig: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodObject<{
108
+ extra: z.ZodOptional<z.ZodObject<{
109
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
110
+ }, z.core.$strict>>;
111
+ assign_responsible_operator_ids: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>;
112
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
113
+ schema_version: z.ZodOptional<z.ZodLiteral<1>>;
114
+ step_type: z.ZodOptional<z.ZodLiteral<"CRM_MOVE_STAGE">>;
115
+ responsible_pool_applicable: z.ZodOptional<z.ZodBoolean>;
116
+ pipeline_external_id: z.ZodOptional<z.ZodString>;
117
+ status_external_id: z.ZodOptional<z.ZodString>;
118
+ note_template: z.ZodOptional<z.ZodString>;
119
+ statusId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
120
+ pipelineId: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
121
+ pipelineCrmId: z.ZodOptional<z.ZodString>;
122
+ crmId: z.ZodOptional<z.ZodString>;
123
+ note: z.ZodOptional<z.ZodString>;
124
+ }, z.core.$strict>, z.ZodTransform<{
125
+ assign_responsible_operator_ids?: string[] | null | undefined;
126
+ assignResponsibleOperatorIds?: number[] | null | undefined;
127
+ schema_version?: 1 | undefined;
128
+ step_type?: "CRM_MOVE_STAGE" | undefined;
129
+ responsible_pool_applicable?: boolean | undefined;
130
+ pipeline_external_id?: string | undefined;
131
+ status_external_id?: string | undefined;
132
+ note_template?: string | undefined;
133
+ statusId?: string | number | undefined;
134
+ pipelineId?: string | number | undefined;
135
+ pipelineCrmId?: string | undefined;
136
+ crmId?: string | undefined;
137
+ note?: string | undefined;
138
+ }, {
139
+ extra?: {
140
+ assignResponsibleOperatorIds?: number[] | null | undefined;
141
+ } | undefined;
142
+ assign_responsible_operator_ids?: string[] | null | undefined;
143
+ assignResponsibleOperatorIds?: number[] | null | undefined;
144
+ schema_version?: 1 | undefined;
145
+ step_type?: "CRM_MOVE_STAGE" | undefined;
146
+ responsible_pool_applicable?: boolean | undefined;
147
+ pipeline_external_id?: string | undefined;
148
+ status_external_id?: string | undefined;
149
+ note_template?: string | undefined;
150
+ statusId?: string | number | undefined;
151
+ pipelineId?: string | number | undefined;
152
+ pipelineCrmId?: string | undefined;
153
+ crmId?: string | undefined;
154
+ note?: string | undefined;
155
+ }>>>>;
156
+ callOperatorConfig: z.ZodOptional<z.ZodNullable<z.ZodObject<{
157
+ taskText: z.ZodOptional<z.ZodNullable<z.ZodString>>;
158
+ taskDueHours: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
159
+ }, z.core.$loose>>>;
160
+ getcourseCreateDealConfig: z.ZodOptional<z.ZodNullable<z.ZodObject<{
161
+ reuse_open_invoice: z.ZodOptional<z.ZodBoolean>;
162
+ open_invoice_age: z.ZodOptional<z.ZodEnum<{
163
+ ANY_AGE: "ANY_AGE";
164
+ WITHIN_MAX_AGE: "WITHIN_MAX_AGE";
165
+ }>>;
166
+ }, z.core.$loose>>>;
167
+ initiateOutboundCall: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>]>>;
168
+ initiateOutboundCallConfig: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>]>>;
169
+ transferCall: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>]>>;
170
+ transferCallConfig: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodType<unknown, unknown, z.core.$ZodTypeInternals<unknown, unknown>>]>>;
171
+ type: z.ZodOptional<z.ZodString>;
172
+ actionType: z.ZodOptional<z.ZodString>;
173
+ stepType: z.ZodOptional<z.ZodString>;
174
+ config: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodObject<{
175
+ task_text: z.ZodOptional<z.ZodUnknown>;
176
+ task_due_hours: z.ZodOptional<z.ZodUnknown>;
177
+ assign_responsible_operator_ids: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodString>>>]>>;
178
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>]>>;
179
+ extra: z.ZodOptional<z.ZodUnion<readonly [z.ZodUnknown, z.ZodObject<{
180
+ assignResponsibleOperatorIds: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodNumber>>>;
181
+ }, z.core.$strict>]>>;
182
+ }, z.core.$loose>]>>;
183
+ priority: z.ZodOptional<z.ZodNumber>;
184
+ isEnabled: z.ZodOptional<z.ZodBoolean>;
185
+ continueOnError: z.ZodOptional<z.ZodBoolean>;
186
+ }, z.core.$loose>, z.ZodTransform<Record<string, unknown>, {
187
+ [x: string]: unknown;
188
+ crmConfig?: {
189
+ assign_responsible_operator_ids?: string[] | null | undefined;
190
+ assignResponsibleOperatorIds?: number[] | null | undefined;
191
+ schema_version?: 1 | undefined;
192
+ step_type?: "CRM_MOVE_STAGE" | undefined;
193
+ responsible_pool_applicable?: boolean | undefined;
194
+ pipeline_external_id?: string | undefined;
195
+ status_external_id?: string | undefined;
196
+ note_template?: string | undefined;
197
+ statusId?: string | number | undefined;
198
+ pipelineId?: string | number | undefined;
199
+ pipelineCrmId?: string | undefined;
200
+ crmId?: string | undefined;
201
+ note?: string | undefined;
202
+ } | null | undefined;
203
+ crmMoveStage?: {
204
+ assign_responsible_operator_ids?: string[] | null | undefined;
205
+ assignResponsibleOperatorIds?: number[] | null | undefined;
206
+ schema_version?: 1 | undefined;
207
+ step_type?: "CRM_MOVE_STAGE" | undefined;
208
+ responsible_pool_applicable?: boolean | undefined;
209
+ pipeline_external_id?: string | undefined;
210
+ status_external_id?: string | undefined;
211
+ note_template?: string | undefined;
212
+ statusId?: string | number | undefined;
213
+ pipelineId?: string | number | undefined;
214
+ pipelineCrmId?: string | undefined;
215
+ crmId?: string | undefined;
216
+ note?: string | undefined;
217
+ } | null | undefined;
218
+ crmMoveStageConfig?: {
219
+ assign_responsible_operator_ids?: string[] | null | undefined;
220
+ assignResponsibleOperatorIds?: number[] | null | undefined;
221
+ schema_version?: 1 | undefined;
222
+ step_type?: "CRM_MOVE_STAGE" | undefined;
223
+ responsible_pool_applicable?: boolean | undefined;
224
+ pipeline_external_id?: string | undefined;
225
+ status_external_id?: string | undefined;
226
+ note_template?: string | undefined;
227
+ statusId?: string | number | undefined;
228
+ pipelineId?: string | number | undefined;
229
+ pipelineCrmId?: string | undefined;
230
+ crmId?: string | undefined;
231
+ note?: string | undefined;
232
+ } | null | undefined;
233
+ callOperatorConfig?: {
234
+ [x: string]: unknown;
235
+ taskText?: string | null | undefined;
236
+ taskDueHours?: number | null | undefined;
237
+ } | null | undefined;
238
+ getcourseCreateDealConfig?: {
239
+ [x: string]: unknown;
240
+ reuse_open_invoice?: boolean | undefined;
241
+ open_invoice_age?: "ANY_AGE" | "WITHIN_MAX_AGE" | undefined;
242
+ } | null | undefined;
243
+ initiateOutboundCall?: unknown;
244
+ initiateOutboundCallConfig?: unknown;
245
+ transferCall?: unknown;
246
+ transferCallConfig?: unknown;
247
+ type?: string | undefined;
248
+ actionType?: string | undefined;
249
+ stepType?: string | undefined;
250
+ config?: unknown;
251
+ priority?: number | undefined;
252
+ isEnabled?: boolean | undefined;
253
+ continueOnError?: boolean | undefined;
254
+ }>>, z.ZodTransform<unknown, Record<string, unknown>>>;
@@ -0,0 +1,121 @@
1
+ import { rejectConstantSummaryTarget } from './legacy-trigger-repeat.js';
2
+ import { z } from 'zod';
3
+ import { normalizeVoiceActionInput, voiceActionInputFields } from './voice-action-input.js';
4
+ import { anyObjectSchema } from './shared.js';
5
+ import { callOperatorConfigSchema, canonicalCallOperatorTaskSchema, } from './call-operator-task.schema.js';
6
+ import { crmStagePoolMessage } from './crm-stage-pool.messages.js';
7
+ import { crmMoveStageConfigSchema, isMoveStageAction, mapMoveStageAction, stageConfigContainers, stagePoolFields, stageExtraSchema, } from './crm-stage-pool.schema.js';
8
+ /**
9
+ * Элемент действия триггера в форме прежней версии: тип, порядок, «продолжать при ошибке» и конфиг смены стадии объявлены;
10
+ * конфиги прочих действий едут отдельными полями `<тип>Config` и разбираются сервером, поэтому остальные ключи
11
+ * пропускаются как есть. Без объявления фильтр аргументов описывал бы элемент «любым объектом», и опубликованные поля
12
+ * выглядели бы несуществующими для фильтра.
13
+ */
14
+ export const triggerSetupActionItemSchema = z
15
+ .object({
16
+ type: z.string().optional(),
17
+ actionType: z.string().optional(),
18
+ stepType: z.string().optional(),
19
+ // Общая оболочка сохраняет свободный JSON других действий; строгая проверка ниже выбирается по типу.
20
+ config: z
21
+ .union([
22
+ z.unknown(),
23
+ anyObjectSchema.extend({
24
+ task_text: z.unknown().optional(),
25
+ task_due_hours: z.unknown().optional(),
26
+ assign_responsible_operator_ids: z
27
+ .union([z.unknown(), stagePoolFields.assign_responsible_operator_ids])
28
+ .optional(),
29
+ assignResponsibleOperatorIds: z
30
+ .union([z.unknown(), stagePoolFields.assignResponsibleOperatorIds])
31
+ .optional(),
32
+ extra: z.union([z.unknown(), stageExtraSchema]).optional(),
33
+ }),
34
+ ])
35
+ .optional(),
36
+ priority: z.number().int().min(1).max(100).optional(),
37
+ isEnabled: z.boolean().optional(),
38
+ continueOnError: z.boolean().optional(),
39
+ ...voiceActionInputFields,
40
+ crmConfig: crmMoveStageConfigSchema.nullish(),
41
+ crmMoveStage: crmMoveStageConfigSchema.nullish(),
42
+ crmMoveStageConfig: crmMoveStageConfigSchema.nullish(),
43
+ callOperatorConfig: callOperatorConfigSchema.nullish(),
44
+ getcourseCreateDealConfig: z
45
+ .object({
46
+ reuse_open_invoice: z.boolean().optional(),
47
+ open_invoice_age: z
48
+ .enum(['WITHIN_MAX_AGE', 'ANY_AGE'])
49
+ .optional()
50
+ .describe('Срок давности счёта: не старше 14 суток по умолчанию (отсутствие ключа) или без срока (ANY_AGE).'),
51
+ })
52
+ .passthrough()
53
+ .nullable()
54
+ .optional(),
55
+ })
56
+ .passthrough()
57
+ .superRefine((action, context) => {
58
+ const normalized = normalizeVoiceActionInput(action, context);
59
+ if (normalized === z.NEVER)
60
+ return;
61
+ if (normalized === action)
62
+ for (const field of [
63
+ 'crmConfig',
64
+ 'crmMoveStage',
65
+ 'crmMoveStageConfig',
66
+ 'callOperatorConfig',
67
+ 'getcourseCreateDealConfig',
68
+ ])
69
+ if (action[field] === null)
70
+ context.addIssue({
71
+ code: 'custom',
72
+ path: [field],
73
+ message: 'Настройки действия должны быть объектом.',
74
+ });
75
+ if (action.config !== undefined &&
76
+ (action.config === null || typeof action.config !== 'object' || Array.isArray(action.config)))
77
+ context.addIssue({
78
+ code: 'custom',
79
+ path: ['config'],
80
+ message: 'Настройки действия должны быть объектом.',
81
+ });
82
+ rejectConstantSummaryTarget(action, context);
83
+ if (action.actionType === undefined &&
84
+ action.stepType === undefined &&
85
+ action.type === undefined &&
86
+ !isMoveStageAction(action))
87
+ context.addIssue({ code: 'custom', message: 'Укажи тип действия' });
88
+ if (isMoveStageAction(action)) {
89
+ const containers = stageConfigContainers.filter((key) => action[key] !== undefined);
90
+ if (containers.length > 1)
91
+ context.addIssue({
92
+ code: 'custom',
93
+ message: crmStagePoolMessage('conflict'),
94
+ });
95
+ if (action.config !== undefined) {
96
+ const parsed = crmMoveStageConfigSchema.safeParse(action.config);
97
+ if (!parsed.success)
98
+ for (const issue of parsed.error.issues)
99
+ context.addIssue({ ...issue, path: ['config', ...issue.path] });
100
+ }
101
+ }
102
+ if (['CALL_OPERATOR', 'callOperator'].includes(action.type ?? action.stepType ?? action.actionType ?? '') &&
103
+ action.config !== undefined) {
104
+ const parsed = canonicalCallOperatorTaskSchema.safeParse(action.config);
105
+ if (!parsed.success) {
106
+ for (const issue of parsed.error.issues)
107
+ context.addIssue({ ...issue, path: ['config', ...issue.path] });
108
+ }
109
+ }
110
+ // Ссылки редактора действуют только в интерактивной сессии человека.
111
+ for (const field of ['stepId', 'keepSecretFields'])
112
+ if (field in action)
113
+ context.addIssue({
114
+ code: 'custom',
115
+ path: [field],
116
+ message: 'Ссылки на сохранённые секреты доступны только человеку',
117
+ });
118
+ })
119
+ .transform(mapMoveStageAction)
120
+ .transform(normalizeVoiceActionInput);
121
+ //# sourceMappingURL=trigger-action-item.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-action-item.schema.js","sourceRoot":"","sources":["../../../src/tools/definitions/trigger-action-item.schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ /** Объявления значений из разговора: поле необязательное для отгруженных клиентов. */
3
+ export declare const triggerActionArgumentSchema: z.ZodObject<{
4
+ key: z.ZodOptional<z.ZodString>;
5
+ label: z.ZodString;
6
+ description: z.ZodString;
7
+ type: z.ZodEnum<{
8
+ TEXT: "TEXT";
9
+ BOOLEAN: "BOOLEAN";
10
+ DATETIME: "DATETIME";
11
+ NUMBER: "NUMBER";
12
+ }>;
13
+ required: z.ZodOptional<z.ZodBoolean>;
14
+ }, z.core.$strict>;
@@ -0,0 +1,23 @@
1
+ import { z } from 'zod';
2
+ /** Объявления значений из разговора: поле необязательное для отгруженных клиентов. */
3
+ export const triggerActionArgumentSchema = z
4
+ .object({
5
+ key: z
6
+ .string()
7
+ .regex(/^[a-z][a-z0-9_]{0,39}$/u)
8
+ .optional(),
9
+ label: z
10
+ .string()
11
+ .trim()
12
+ .min(1)
13
+ .refine((value) => [...value].length <= 100),
14
+ description: z
15
+ .string()
16
+ .trim()
17
+ .min(1)
18
+ .refine((value) => [...value].length <= 500),
19
+ type: z.enum(["TEXT", "NUMBER", "DATETIME", "BOOLEAN"]),
20
+ required: z.boolean().optional(),
21
+ })
22
+ .strict();
23
+ //# sourceMappingURL=trigger-argument.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-argument.schema.js","sourceRoot":"","sources":["../../../src/tools/definitions/trigger-argument.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,sFAAsF;AACtF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC;KACzC,MAAM,CAAC;IACN,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,KAAK,CAAC,yBAAyB,CAAC;SAChC,QAAQ,EAAE;IACb,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,CAAC;SACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC;IAC9C,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,CAAC;SACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACvD,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,MAAM,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const triggerClaimAliasTools: readonly [import("./shared.js").ToolDefinition<{
2
+ workspace_id?: string | undefined;
3
+ contact_id?: string | undefined;
4
+ chat_user_id?: string | undefined;
5
+ }>, import("./shared.js").ToolDefinition<{
6
+ conversation_id: string;
7
+ action_id: string;
8
+ workspace_id?: string | undefined;
9
+ explicit_confirmation?: true | undefined;
10
+ }>];
@@ -0,0 +1,90 @@
1
+ // Отгруженные имена заявок срабатывания одноразовых триггеров, вернувшиеся в ветку `v2`.
2
+ //
3
+ // ⛔ ЕДИНИЦА ПРАВА ИЗМЕНИЛАСЬ, и это ратифицированное решение, а не пробел. У прежней системы право
4
+ // сжигалось по КАНАЛУ навсегда, и ограничения «раз в переписку» там не было вовсе; у v2 право
5
+ // живёт в ПЕРЕПИСКЕ (ратификация владельца 2026-08-05, спека 24 помечает это «МЕНЯЕТ ПОВЕДЕНИЕ»).
6
+ // Следствие названо в подсказке: у человека, чья переписка переоткрывалась, держателей права
7
+ // столько же, сколько переписок, и снятие одного не снимает остальные.
8
+ import { z } from 'zod';
9
+ import { defineTool, uuidSchema, withInstructions } from './shared.js';
10
+ const UNIT_OF_RIGHT = [
11
+ '⛔ Право живёт в ПЕРЕПИСКЕ, а не в канале. У прежней версии оно сжигалось по каналу навсегда; здесь у контакта столько держателей права, сколько у него переписок, и снятие одного не снимает остальные.',
12
+ 'Строка выдачи несёт переписку, канал и её состояние: по ним видно, живая это переписка или закрытая.',
13
+ ];
14
+ export const triggerClaimAliasTools = [
15
+ defineTool({
16
+ name: 'besales_trigger_claim_list',
17
+ sideEffect: 'none',
18
+ closedWorld: true,
19
+ requiredFields: [],
20
+ defaultWorkspaceId: true,
21
+ schema: z
22
+ .object({
23
+ workspace_id: uuidSchema.optional(),
24
+ contact_id: uuidSchema.optional(),
25
+ chat_user_id: uuidSchema.optional(),
26
+ })
27
+ .strict()
28
+ .superRefine((input, context) => {
29
+ if (input.contact_id === undefined && input.chat_user_id === undefined) {
30
+ context.addIssue({ code: 'custom', path: ['contact_id'], message: 'Передайте contact_id или прежний chat_user_id' });
31
+ }
32
+ if (input.contact_id !== undefined && input.chat_user_id !== undefined && input.contact_id !== input.chat_user_id) {
33
+ context.addIssue({ code: 'custom', path: ['chat_user_id'], message: 'contact_id и chat_user_id адресуют разных людей' });
34
+ }
35
+ }),
36
+ createRequest: (input) => ({
37
+ method: 'GET',
38
+ path: `/contacts/${input.contact_id ?? input.chat_user_id}/burnt-actions`,
39
+ }),
40
+ enhanceResponse: (response) => withInstructions(response, [
41
+ 'Это отгруженное имя поверх маршрута v2. Единица прежней версии — карточка канала; у v2 её место занял КОНТАКТ, contact_id и прежнее имя chat_user_id принимаются как синонимы.',
42
+ ...UNIT_OF_RIGHT,
43
+ '⛔ Выдача собирается из ДВУХ источников: строк права (hold=GRANT) и ИДУЩИХ исполнений (hold=IN_FLIGHT). Второй обязателен: строка права пишется только на терминальном переходе, и без него инструмент отвечал бы «прав нет» ровно тогда, когда право занято.',
44
+ 'Выключенные действия и действия со снятой однократностью ВХОДЯТ в выдачу: право переживает выключение настройки, и спрятав такую строку, мы оставили бы «снимать нечего» при занятом праве.',
45
+ 'stillOneTime=false у ЧИТАЮЩЕГО действия — не ошибка: правило однократности к нему не применяется вовсе, и строка права у него ничего не держит.',
46
+ 'canReset=false означает ровно одно: право держит идущее исполнение. Причина временная — подождите, а не чините.',
47
+ 'truncated=true означает, что показано не всё: курсора у выдачи нет, как и у прежней версии.',
48
+ ]),
49
+ }),
50
+ defineTool({
51
+ name: 'besales_trigger_claim_reset',
52
+ sideEffect: 'write',
53
+ requiredFields: ['conversation_id', 'action_id'],
54
+ defaultWorkspaceId: true,
55
+ schema: z
56
+ .object({
57
+ workspace_id: uuidSchema.optional(),
58
+ conversation_id: uuidSchema,
59
+ action_id: uuidSchema,
60
+ /**
61
+ * ⛔ Подтверждение НЕОБЯЗАТЕЛЬНО, и это не ослабление проверки, а условие того, чтобы
62
+ * подтверждать было чем. Сервер без подтверждения отвечает отказом, ПЕРЕЧИСЛЯЮЩИМ, что
63
+ * именно действие сможет повторить. Требуя подтверждение схемой, инструмент делал этот
64
+ * отказ недостижимым в принципе: конструктор запроса всегда дописывал подтверждение, и
65
+ * единственный живой потребитель — мост — никогда не видел предмета подтверждения.
66
+ *
67
+ * Порядок: зови БЕЗ подтверждения, покажи человеку перечень, дождись его согласия и зови
68
+ * второй раз с `explicit_confirmation: true`. Значение по-прежнему пришпилено к истине —
69
+ * «подтверждаю: нет» подтверждением не бывает.
70
+ */
71
+ explicit_confirmation: z.literal(true).optional(),
72
+ })
73
+ .strict(),
74
+ createRequest: (input) => ({
75
+ method: 'DELETE',
76
+ path: `/conversations/${input.conversation_id}/burnt-actions/${input.action_id}` +
77
+ (input.explicit_confirmation === true ? '?confirm=true' : ''),
78
+ }),
79
+ enhanceResponse: (response) => withInstructions(response, [
80
+ '⚠️ Возвращённое право позволяет действию ПОВТОРИТЬ необратимое — запись в CRM, передачу диалога человеку, отправку сообщения. Зови только после явного подтверждения оператора.',
81
+ '⛔ Снимается право ОДНОЙ переписки. У прежней версии снятие освобождало канал целиком; здесь переписки независимы, и остальные держатели остаются.',
82
+ 'Строка права не удаляется, а помечается возвращённой: именно её существование не даёт проверке повтора уйти в журнал исполнений, который режется сроком хранения.',
83
+ '⛔ ПОРЯДОК ДВУХШАГОВЫЙ. Первый вызов делай БЕЗ explicit_confirmation: сервер откажет и перечислит СЛОВАМИ, что именно действие сможет повторить (repeatableEffects). Покажи человеку именно их, дождись согласия и зови второй раз с explicit_confirmation: true. Рядом лежат машинные имена шагов (repeatableStepTypes) — они для кода, а не для показа.',
84
+ 'Подтвердить, не увидев перечня, нельзя было бы осмысленно: «подтвердите» без предмета — это подтверждение вслепую.',
85
+ 'Отказ «право держит идущее исполнение» временный: подождите завершения. Отказ «право не занято» покрывает и «уже возвращено» — различить их нечем, поэтому успех не объявляется.',
86
+ 'Повторное срабатывание занимает право заново, и режим «один раз» не отменяется. ⚠️ Но «ровно одна попытка» обещать нельзя: если следующее исполнение права не займёт (действие только читает либо ни один его шаг не выполнился), пометка возврата остаётся, и попытки повторяются, пока одна не даст побочку.',
87
+ ]),
88
+ }),
89
+ ];
90
+ //# sourceMappingURL=trigger-claim-alias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-claim-alias.js","sourceRoot":"","sources":["../../../src/tools/definitions/trigger-claim-alias.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function withProjectedTriggerEcho(response: unknown): unknown;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Сжатие эха правки триггера.
3
+ *
4
+ * Сервер возвращает триггер ЦЕЛИКОМ — вместе со всеми шагами и условиями срабатывания. Это
5
+ * копия того, что вызывающий только что отправил, и весит она столько же: на канале триггеры
6
+ * правят десятками подряд, и каждый ответ уносит с собой ещё один экземпляр отправленного.
7
+ *
8
+ * ⚠️ Потолок ответа тут не помогает: один такой ответ до него не достаёт, он просто расходует
9
+ * контекст вызывающего раз за разом. Поэтому наружу уходят все скалярные поля (они дёшевы и
10
+ * среди них есть решённые СЕРВЕРОМ) и ЧИСЛА вместо двух тяжёлых массивов.
11
+ *
12
+ * ⛔ Функция обязана быть тотальной: она выполняется ПОСЛЕ состоявшейся записи, и исключение
13
+ * здесь стало бы приглашением повторить мутацию. Незнакомая форма возвращается как есть.
14
+ */
15
+ const HEAVY_ARRAYS = [
16
+ ['steps', 'actionsCount'],
17
+ ['activations', 'activationsCount'],
18
+ ];
19
+ function isRecord(value) {
20
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
21
+ }
22
+ export function withProjectedTriggerEcho(response) {
23
+ if (!isRecord(response) || !isRecord(response['trigger'])) {
24
+ return response;
25
+ }
26
+ const trigger = response['trigger'];
27
+ const projected = { ...trigger };
28
+ let changed = false;
29
+ for (const [arrayKey, countKey] of HEAVY_ARRAYS) {
30
+ const value = trigger[arrayKey];
31
+ if (!Array.isArray(value)) {
32
+ continue;
33
+ }
34
+ delete projected[arrayKey];
35
+ projected[countKey] = value.length;
36
+ changed = true;
37
+ }
38
+ // Ничего не сократили — не подменяем и объект: лишняя копия только запутала бы сравнение.
39
+ return changed ? { ...response, trigger: projected } : response;
40
+ }
41
+ //# sourceMappingURL=trigger-echo-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger-echo-projection.js","sourceRoot":"","sources":["../../../src/tools/definitions/trigger-echo-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,YAAY,GAAG;IACnB,CAAC,OAAO,EAAE,cAAc,CAAC;IACzB,CAAC,aAAa,EAAE,kBAAkB,CAAC;CAC3B,CAAC;AAEX,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAiB;IACxD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,SAAS,GAA4B,EAAE,GAAG,OAAO,EAAE,CAAC;IAC1D,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB,KAAK,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,SAAS;QACX,CAAC;QACD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC3B,SAAS,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QACnC,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAED,0FAA0F;IAC1F,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAClE,CAAC"}
@@ -0,0 +1,41 @@
1
+ export declare const eventTriggerDescription: string;
2
+ export declare const triggerUpsertTool: import("./shared.js").ToolDefinition<{
3
+ platform_id: string;
4
+ agent_id: string;
5
+ explicit_confirmation?: boolean | undefined;
6
+ confirmation_reason?: string | undefined;
7
+ arguments?: {
8
+ label: string;
9
+ description: string;
10
+ type: "TEXT" | "BOOLEAN" | "DATETIME" | "NUMBER";
11
+ key?: string | undefined;
12
+ required?: boolean | undefined;
13
+ }[] | undefined;
14
+ scope?: "ON_USER_MESSAGE" | undefined;
15
+ metadata?: {
16
+ [x: string]: unknown;
17
+ } | undefined;
18
+ actions?: unknown[] | undefined;
19
+ replace_actions?: boolean | undefined;
20
+ allow_repeated_calls?: boolean | undefined;
21
+ run_once_per_contact?: boolean | undefined;
22
+ trigger_id?: string | undefined;
23
+ trigger?: {
24
+ event: "AGENT_REPLY" | "CONTACT_MESSAGE" | "NEW_CONVERSATION" | "OPERATOR_REPLY";
25
+ condition?: {
26
+ schema_version: 1;
27
+ combinator: "AND" | "OR";
28
+ rules: {
29
+ [x: string]: unknown;
30
+ }[];
31
+ preset?: string | undefined;
32
+ } | undefined;
33
+ } | undefined;
34
+ name?: string | undefined;
35
+ condition?: string | undefined;
36
+ is_enabled?: boolean | undefined;
37
+ priority?: number | undefined;
38
+ stop_propagation?: boolean | undefined;
39
+ instagram_comment_kind?: "COMPLAINT" | null | undefined;
40
+ allow_repeat_in_conversation?: boolean | undefined;
41
+ }>;