@webskill/chatbot 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (492) hide show
  1. package/README.md +141 -0
  2. package/dist/1c-Ol9PZ6qo.js +106 -0
  3. package/dist/abap-BPSJPIgj.js +49 -0
  4. package/dist/abnf-D0BFxVgo.js +90 -0
  5. package/dist/abnf-bBppUkG9.js +55 -0
  6. package/dist/accesslog-Dn9o7ulp.js +107 -0
  7. package/dist/actionscript-D8diOsqZ.js +99 -0
  8. package/dist/actionscript-DbKRhXQ0.js +27 -0
  9. package/dist/ada-2HceEzW4.js +27 -0
  10. package/dist/ada-D12AxSm3.js +116 -0
  11. package/dist/agda-CFKulfm-.js +35 -0
  12. package/dist/al-BephVruQ.js +30 -0
  13. package/dist/angelscript-BvL7ocfM.js +100 -0
  14. package/dist/antlr4-vb9rrA0O.js +72 -0
  15. package/dist/apache-D2u3ExHM.js +73 -0
  16. package/dist/apacheconf-A824OW4m.js +53 -0
  17. package/dist/apex-C0PtYFGW.js +75 -0
  18. package/dist/apl--y8UJpQX.js +44 -0
  19. package/dist/applescript-CUvZM-Da.js +25 -0
  20. package/dist/applescript-Du_gvVC2.js +134 -0
  21. package/dist/aql-Dgv0SELr.js +58 -0
  22. package/dist/arcade-D9a_xSSB.js +127 -0
  23. package/dist/arduino-CFEhwFVx.js +389 -0
  24. package/dist/arduino-ChCZAyCM.js +21 -0
  25. package/dist/arff-CqocPnyE.js +22 -0
  26. package/dist/armasm-Csvvzoh3.js +54 -0
  27. package/dist/armasm-D-aW_xRY.js +71 -0
  28. package/dist/arturo-BNv4BwTT.js +93 -0
  29. package/dist/asciidoc-BqBFVMZa.js +177 -0
  30. package/dist/asciidoc-DIgueV5Z.js +206 -0
  31. package/dist/asm6502-BBL1b2rm.js +41 -0
  32. package/dist/asmatmel-XbBRhc8b.js +53 -0
  33. package/dist/aspectj-CGsigJA7.js +146 -0
  34. package/dist/aspnet-BrsQPoMV.js +53 -0
  35. package/dist/autohotkey-BUiiDmJm.js +45 -0
  36. package/dist/autohotkey-BipzdrsK.js +60 -0
  37. package/dist/autoit-CYMA0m_y.js +139 -0
  38. package/dist/autoit-Cz-elVYJ.js +39 -0
  39. package/dist/avisynth-DMCKcoud.js +128 -0
  40. package/dist/avrasm-D_QpYGXU.js +52 -0
  41. package/dist/avro-idl-D648BLU1.js +51 -0
  42. package/dist/awk-BhCmk5Qr.js +64 -0
  43. package/dist/awk-Di_UhIvW.js +40 -0
  44. package/dist/axapta-Bx7DNXYD.js +165 -0
  45. package/dist/bash-BGvyf32s.js +194 -0
  46. package/dist/bash-Do0cfmaU.js +134 -0
  47. package/dist/basic-B1qL7Eg-.js +44 -0
  48. package/dist/basic-DLk7zVoz.js +30 -0
  49. package/dist/batch-CYi3sOZ3.js +95 -0
  50. package/dist/bbcode-BwzBuE9Y.js +31 -0
  51. package/dist/bbj-_oJSbcsY.js +31 -0
  52. package/dist/bicep-BoQNA9HB.js +70 -0
  53. package/dist/birb-tHMwg2K3.js +30 -0
  54. package/dist/bison-BiBFaYLw.js +45 -0
  55. package/dist/bnf-B9mtolDW.js +33 -0
  56. package/dist/bnf-CFEhb3Bz.js +26 -0
  57. package/dist/bqn-Cn-NR812.js +75 -0
  58. package/dist/brainfuck-D6Uj7Wgf.js +32 -0
  59. package/dist/brainfuck-WD-GT3He.js +42 -0
  60. package/dist/brightscript-DXndsJy0.js +55 -0
  61. package/dist/bro-wNwhmzkS.js +37 -0
  62. package/dist/bsl-0zUHuFhp.js +48 -0
  63. package/dist/c-BA8PP4xp.js +224 -0
  64. package/dist/c-CS0S7Hsb.js +74 -0
  65. package/dist/c-like-Bv10vGl1.js +389 -0
  66. package/dist/cal-Cbw-rvwY.js +76 -0
  67. package/dist/capnproto-DDLpBuTk.js +55 -0
  68. package/dist/ceylon-2xgEKZCy.js +64 -0
  69. package/dist/cfscript-BZkFq5td.js +45 -0
  70. package/dist/chaiscript-CFkArqVM.js +62 -0
  71. package/dist/chatbot.css +2545 -0
  72. package/dist/cil-BFN0k4o1.js +30 -0
  73. package/dist/cilkc-CV-iYFmJ.js +20 -0
  74. package/dist/cilkcpp-ZRq5zIUM.js +21 -0
  75. package/dist/clean-C7lfkw75.js +29 -0
  76. package/dist/clike-BvmU1AL7.js +41 -0
  77. package/dist/clojure-BKM12ttT.js +42 -0
  78. package/dist/clojure-Ccn_Mkjj.js +111 -0
  79. package/dist/clojure-repl-C8V5hiMv.js +23 -0
  80. package/dist/cmake-B8E3FBzT.js +39 -0
  81. package/dist/cmake-Cdi3-CyW.js +28 -0
  82. package/dist/cobol-BpxG2424.js +57 -0
  83. package/dist/coffeescript-DYxKI72B.js +297 -0
  84. package/dist/coffeescript-DoyGyxrE.js +81 -0
  85. package/dist/concurnas-C4USQ-7G.js +71 -0
  86. package/dist/cooklang-HIWZvfsC.js +130 -0
  87. package/dist/coq-B_5iojXP.js +31 -0
  88. package/dist/coq-DrnCBTBE.js +53 -0
  89. package/dist/cos-CEeGZtWS.js +83 -0
  90. package/dist/cpp-Bt_M0ejb.js +82 -0
  91. package/dist/cpp-C368mKg-.js +370 -0
  92. package/dist/crmsh-Bt-25pma.js +86 -0
  93. package/dist/crystal-BTPDFDkd.js +260 -0
  94. package/dist/crystal-Bvp6pk_w.js +64 -0
  95. package/dist/csharp-ha-Vb1Oy.js +367 -0
  96. package/dist/csharp-iSWtQEXl.js +301 -0
  97. package/dist/cshtml-DC91Qnfw.js +107 -0
  98. package/dist/csp-BFJkxLlp.js +63 -0
  99. package/dist/csp-dqz05oql.js +30 -0
  100. package/dist/css-Q6-w6BPM.js +69 -0
  101. package/dist/css-Xf8T8gBf.js +548 -0
  102. package/dist/css-extras-DKikefnB.js +106 -0
  103. package/dist/csv-C1RPSPSV.js +16 -0
  104. package/dist/cue-B1ngjCsf.js +73 -0
  105. package/dist/cypher-CNAqBGSd.js +41 -0
  106. package/dist/d--XifVhSg.js +55 -0
  107. package/dist/d-CfWXCczD.js +189 -0
  108. package/dist/dart-B5RqNhq7.js +160 -0
  109. package/dist/dart-yPrM71Z8.js +70 -0
  110. package/dist/dataweave-CnMVPL5R.js +49 -0
  111. package/dist/dax-qj2PhkVy.js +39 -0
  112. package/dist/delphi-CzPddypc.js +98 -0
  113. package/dist/dhall-D8w3EE_p.js +64 -0
  114. package/dist/diff-C0GclY3n.js +53 -0
  115. package/dist/diff-DOeJfE73.js +76 -0
  116. package/dist/django-BEI7xlp6.js +65 -0
  117. package/dist/django-CvTljHWX.js +49 -0
  118. package/dist/dns-Cp5DngSi.js +33 -0
  119. package/dist/dns-zone-file-CzjHLEtI.js +39 -0
  120. package/dist/docker-WzvyXnQv.js +97 -0
  121. package/dist/dockerfile-BhLJUrvI.js +32 -0
  122. package/dist/dos-nXUDd5Po.js +45 -0
  123. package/dist/dot-BVsWNPa1.js +80 -0
  124. package/dist/dsconfig-BjIvUdaB.js +61 -0
  125. package/dist/dts-lcJkHkmg.js +121 -0
  126. package/dist/dust-BkJl_C0B.js +39 -0
  127. package/dist/ebnf-5ijXtXwI.js +46 -0
  128. package/dist/ebnf-BBrI9K2I.js +32 -0
  129. package/dist/editorconfig-DVBnsBb6.js +35 -0
  130. package/dist/eiffel-2J7b2DcB.js +36 -0
  131. package/dist/ejs-CP4kAXYf.js +37 -0
  132. package/dist/elixir-CpC0hC7i.js +93 -0
  133. package/dist/elixir-DgMJkXsA.js +223 -0
  134. package/dist/elm-B74Bk5cn.js +38 -0
  135. package/dist/elm-DDVumTG7.js +87 -0
  136. package/dist/erb-BkIFRb4T.js +37 -0
  137. package/dist/erb-CTt4UcM1.js +23 -0
  138. package/dist/erlang-3FNJE57q.js +52 -0
  139. package/dist/erlang-C58xuYIJ.js +170 -0
  140. package/dist/erlang-repl-BpgJ1Xxr.js +66 -0
  141. package/dist/etlua-BG31uqQg.js +35 -0
  142. package/dist/excel-DdXdUjKf.js +54 -0
  143. package/dist/excel-formula-Byfdh1KC.js +64 -0
  144. package/dist/factor-pxAxDtUC.js +820 -0
  145. package/dist/false-Co0CrV7Q.js +42 -0
  146. package/dist/firestore-security-rules-scD08OTG.js +45 -0
  147. package/dist/fix-D_79Llrz.js +36 -0
  148. package/dist/flix--VbqUjYc.js +46 -0
  149. package/dist/flow-zZJ_3F-N.js +36 -0
  150. package/dist/fortran-D7HwEup2.js +84 -0
  151. package/dist/fortran-DYbVoxyC.js +42 -0
  152. package/dist/fsharp-DX49LloV.js +81 -0
  153. package/dist/fsharp-DbZMl8Dv.js +62 -0
  154. package/dist/ftl-pgH8LIHL.js +101 -0
  155. package/dist/gams-DFWqlk55.js +166 -0
  156. package/dist/gap-BDxcAyiz.js +55 -0
  157. package/dist/gauss-DSBaIKd4.js +173 -0
  158. package/dist/gcode-BPLED46Q.js +27 -0
  159. package/dist/gcode-Bq5Y8rtM.js +71 -0
  160. package/dist/gdscript-By8Svd7v.js +31 -0
  161. package/dist/gedcom-CquwXdPw.js +36 -0
  162. package/dist/gettext-B1OyNTe2.js +54 -0
  163. package/dist/gherkin-BWl1aynt.js +91 -0
  164. package/dist/gherkin-DEGWoM5n.js +47 -0
  165. package/dist/git-Bjdl4gPc.js +24 -0
  166. package/dist/glsl-Caft6w8K.js +31 -0
  167. package/dist/glsl-X0AWORVL.js +16 -0
  168. package/dist/gml-D6CHuP4X.js +28 -0
  169. package/dist/gml-WTbq0w1K.js +22 -0
  170. package/dist/gn-Bmk-DXJ0.js +55 -0
  171. package/dist/go-On4UPj8j.js +58 -0
  172. package/dist/go-l0rBbtyj.js +36 -0
  173. package/dist/go-module-CXBkxC1u.js +34 -0
  174. package/dist/golo-jBTrl-pb.js +27 -0
  175. package/dist/gradle-BD0xP8L2.js +66 -0
  176. package/dist/gradle-BvJEPLCP.js +24 -0
  177. package/dist/graphql-C9JoiNGl.js +178 -0
  178. package/dist/groovy-BDKJCVqJ.js +134 -0
  179. package/dist/groovy-C9IvQhOU.js +66 -0
  180. package/dist/haml-Bl-0saj7.js +102 -0
  181. package/dist/haml-DTsOZCFy.js +142 -0
  182. package/dist/handlebars-CgUpx0AJ.js +237 -0
  183. package/dist/handlebars-DxHgnodb.js +49 -0
  184. package/dist/haskell-BFcEKjsB.js +129 -0
  185. package/dist/haskell-DDqg24-B.js +58 -0
  186. package/dist/haxe-8i2RVBfX.js +139 -0
  187. package/dist/haxe-BE8mJYBU.js +80 -0
  188. package/dist/hcl-DtLVjWTj.js +66 -0
  189. package/dist/hlsl-Drjm86qZ.js +21 -0
  190. package/dist/hoon-DOfqILFd.js +26 -0
  191. package/dist/hpkp-CyoH9wLF.js +25 -0
  192. package/dist/hsp-i7GzEpsD.js +51 -0
  193. package/dist/hsts-TEUkgO0_.js +25 -0
  194. package/dist/htmlbars-DXfSuinO.js +243 -0
  195. package/dist/http-BqI_d45x.js +102 -0
  196. package/dist/http-Cx72__Yy.js +131 -0
  197. package/dist/hy-QLZU_M0S.js +97 -0
  198. package/dist/ichigojam-BOGB8zsN.js +25 -0
  199. package/dist/icon-JYljK4QF.js +32 -0
  200. package/dist/icu-message-format-CpcYbRvH.js +137 -0
  201. package/dist/idris-BJ4tgRDj.js +26 -0
  202. package/dist/iecst-xg-F-Ri2.js +38 -0
  203. package/dist/ignore-CsQzbDOY.js +36 -0
  204. package/dist/index.d.ts +1232 -0
  205. package/dist/index.js +55163 -0
  206. package/dist/inform7-2kF6dSmN.js +51 -0
  207. package/dist/inform7-W_PX01bK.js +66 -0
  208. package/dist/ini-CyhAKGSk.js +50 -0
  209. package/dist/ini-DxNsJv_F.js +136 -0
  210. package/dist/io-BX86W2Nr.js +34 -0
  211. package/dist/irpf90-Cz4ovG4d.js +77 -0
  212. package/dist/isbl-DYgyJfqJ.js +118 -0
  213. package/dist/j-Dl0F3m91.js +38 -0
  214. package/dist/java-BMhVo9mR.js +144 -0
  215. package/dist/java-RT4sGLV2.js +116 -0
  216. package/dist/javadoc-K6-poHdT.js +84 -0
  217. package/dist/javadoclike-DV682eaV.js +74 -0
  218. package/dist/javascript-BJ-LeMcK.js +126 -0
  219. package/dist/javascript-DZR3s47P.js +471 -0
  220. package/dist/javastacktrace-e_iWBHj3.js +103 -0
  221. package/dist/jboss-cli-BfGB9_g3.js +52 -0
  222. package/dist/jexl-C6H3SnN0.js +26 -0
  223. package/dist/jolie-D1pm4AdS.js +53 -0
  224. package/dist/jq-J4RdKnWn.js +71 -0
  225. package/dist/js-extras-DBfQswmg.js +119 -0
  226. package/dist/js-templates-Bma-myhs.js +264 -0
  227. package/dist/jsdoc-DAHVa1K-.js +78 -0
  228. package/dist/json-BOcU6nei.js +40 -0
  229. package/dist/json-GDytwSqH.js +49 -0
  230. package/dist/json5-Dldp7b9R.js +32 -0
  231. package/dist/jsonp-_VvPg4Sq.js +17 -0
  232. package/dist/jsstacktrace-BGl-gflq.js +49 -0
  233. package/dist/jsx-D2Jv0wvt.js +103 -0
  234. package/dist/julia-B3lI6_fR.js +37 -0
  235. package/dist/julia-CKih7L-u.js +359 -0
  236. package/dist/julia-repl-Cop0XHfd.js +24 -0
  237. package/dist/keepalived-z62NV0IY.js +52 -0
  238. package/dist/keyman-2Zq7Lmix.js +50 -0
  239. package/dist/kotlin-IK_BsfjS.js +217 -0
  240. package/dist/kotlin-Za8DfsXK.js +83 -0
  241. package/dist/kumir-wWKTT1Tn.js +95 -0
  242. package/dist/kusto-K-lfyykQ.js +45 -0
  243. package/dist/lasso-BQ0d-ec4.js +132 -0
  244. package/dist/latex-CbDOwO4M.js +56 -0
  245. package/dist/latex-hQ09OoNB.js +235 -0
  246. package/dist/latte-Dw4wWumk.js +69 -0
  247. package/dist/ldif-D3E6SGvP.js +43 -0
  248. package/dist/leaf-C7QaLHlz.js +45 -0
  249. package/dist/less-O6umudeD.js +577 -0
  250. package/dist/less-YYlzhbKi.js +42 -0
  251. package/dist/lilypond-BQrWvE8c.js +76 -0
  252. package/dist/linker-script-Bv92-EWY.js +37 -0
  253. package/dist/liquid-kagG2ycL.js +72 -0
  254. package/dist/lisp-BwjhhF3k.js +125 -0
  255. package/dist/lisp-eQ3hWweO.js +179 -0
  256. package/dist/livecodeserver-Bcw7s4ld.js +92 -0
  257. package/dist/livescript-Dx6f2sjw.js +89 -0
  258. package/dist/livescript-n4ABWPt3.js +314 -0
  259. package/dist/llvm-BY-qrH6s.js +98 -0
  260. package/dist/llvm-ChekYxKh.js +31 -0
  261. package/dist/log-D1Lo4xuI.js +108 -0
  262. package/dist/lolcode-BwGaELZC.js +59 -0
  263. package/dist/lsl-BooQQpjX.js +61 -0
  264. package/dist/lua-CJnCvaiN.js +27 -0
  265. package/dist/lua-DvtsJ-jt.js +54 -0
  266. package/dist/magma-B85RjyUD.js +41 -0
  267. package/dist/makefile-CqtqULKU.js +68 -0
  268. package/dist/makefile-D6p-QrRH.js +39 -0
  269. package/dist/markdown-CDKMB1D7.js +206 -0
  270. package/dist/markup-D2NSmoAx.js +176 -0
  271. package/dist/markup-templating-Ds-CZFSA.js +96 -0
  272. package/dist/mata-Dhxcvo2e.js +52 -0
  273. package/dist/mathematica-D886cK7E.js +6748 -0
  274. package/dist/matlab-Bb98H89V.js +77 -0
  275. package/dist/matlab-hmhitwOg.js +24 -0
  276. package/dist/maxima-D0eE_Dtc.js +44 -0
  277. package/dist/maxscript-f6eA-aNI.js +64 -0
  278. package/dist/mel-BJ5B6sMY.js +30 -0
  279. package/dist/mel-nLuPdSf3.js +56 -0
  280. package/dist/mercury-C62CCPyQ.js +68 -0
  281. package/dist/mermaid-DQ_crCJ7.js +102 -0
  282. package/dist/metafont-CzK4NvN0.js +95 -0
  283. package/dist/mipsasm-DeMR5-YF.js +59 -0
  284. package/dist/mizar-CtA-pMOR.js +16 -0
  285. package/dist/mizar-DuBSAjNN.js +24 -0
  286. package/dist/mojolicious-D2SpJiH-.js +33 -0
  287. package/dist/mongodb-D904geno.js +294 -0
  288. package/dist/monkey-MrC338O0.js +64 -0
  289. package/dist/monkey-sxg32Zkq.js +40 -0
  290. package/dist/moonscript-b57HPxdw.js +56 -0
  291. package/dist/moonscript-w9bBVWSA.js +108 -0
  292. package/dist/n1ql-C96arvJp.js +33 -0
  293. package/dist/n1ql-DRmjD5Dx.js +48 -0
  294. package/dist/n4js-B0G1BP6w.js +21 -0
  295. package/dist/nand2tetris-hdl-BlZue0BE.js +21 -0
  296. package/dist/naniscript-DA6Nu-1R.js +159 -0
  297. package/dist/nasm-CIk3Maz7.js +36 -0
  298. package/dist/neon-COQc3WnN.js +52 -0
  299. package/dist/nevod-BYmtc0a2.js +132 -0
  300. package/dist/nginx-CkGcwumj.js +60 -0
  301. package/dist/nginx-DHrAxYcc.js +109 -0
  302. package/dist/nim-BLfhCij5.js +43 -0
  303. package/dist/nim-DhziuES8.js +55 -0
  304. package/dist/nix-CaLYae8R.js +56 -0
  305. package/dist/nix-DEDwHRSe.js +42 -0
  306. package/dist/node-repl-By_FH_Mf.js +26 -0
  307. package/dist/nsis-Bg3KzNC4.js +95 -0
  308. package/dist/nsis-CFkyRB_F.js +42 -0
  309. package/dist/objectivec-CmlLljpc.js +88 -0
  310. package/dist/objectivec-DiDoNwgS.js +25 -0
  311. package/dist/ocaml-GsU0rnxx.js +58 -0
  312. package/dist/ocaml-pvUnnUZt.js +58 -0
  313. package/dist/odin-BL970IAo.js +89 -0
  314. package/dist/opencl-oLMSxXOb.js +56 -0
  315. package/dist/openqasm-BCXxEzkz.js +30 -0
  316. package/dist/openscad-MI1WtN4e.js +72 -0
  317. package/dist/oxygene-CGz_hbo_.js +74 -0
  318. package/dist/oz-BIEkjqaK.js +37 -0
  319. package/dist/parigp-DFe_jQ_0.js +57 -0
  320. package/dist/parser-D8bUDSMy.js +81 -0
  321. package/dist/parser3-BtcxMqRE.js +46 -0
  322. package/dist/pascal-Zk9Hdh8x.js +63 -0
  323. package/dist/pascaligo-DlFj9gb7.js +76 -0
  324. package/dist/pcaxis-BpZTiG1_.js +64 -0
  325. package/dist/peoplecode-BvNlpzn4.js +46 -0
  326. package/dist/perl-D3TeFX3f.js +91 -0
  327. package/dist/perl-DV1WGcgP.js +459 -0
  328. package/dist/pf-Bw6YW8GL.js +35 -0
  329. package/dist/pgsql-DQnMJJhr.js +201 -0
  330. package/dist/php-BxQ7YaUd.js +298 -0
  331. package/dist/php-Cx_aOYzh.js +170 -0
  332. package/dist/php-extras-Cv31MyHh.js +29 -0
  333. package/dist/php-template-CFgAyXVG.js +49 -0
  334. package/dist/phpdoc-euK_46wV.js +33 -0
  335. package/dist/plaintext-BLTGGZjz.js +16 -0
  336. package/dist/plant-uml-Celo7hWa.js +94 -0
  337. package/dist/plsql-BMooi3eI.js +27 -0
  338. package/dist/pony-Bi3ts_x4.js +66 -0
  339. package/dist/powerquery-BB0neDs8.js +64 -0
  340. package/dist/powershell-Cp8VIeP5.js +210 -0
  341. package/dist/powershell-DPXfEh-N.js +50 -0
  342. package/dist/processing-C2gXKHmX.js +27 -0
  343. package/dist/processing-DifMMTC4.js +27 -0
  344. package/dist/profile-D4l4kotj.js +44 -0
  345. package/dist/prolog-K5CXWNqv.js +68 -0
  346. package/dist/prolog-jXnGSoER.js +27 -0
  347. package/dist/promql-B7tjImXR.js +91 -0
  348. package/dist/properties-Ye-hyWt3.js +70 -0
  349. package/dist/properties-tZhjkzqv.js +25 -0
  350. package/dist/protobuf-CFMuPFrb.js +43 -0
  351. package/dist/protobuf-CtuLNTgo.js +49 -0
  352. package/dist/psl-CtcmRY88.js +45 -0
  353. package/dist/pug-DZuWukpE.js +181 -0
  354. package/dist/puppet-Bbx71Wmu.js +91 -0
  355. package/dist/puppet-DWNpvtV0.js +109 -0
  356. package/dist/pure-Bu8y9uqf.js +84 -0
  357. package/dist/purebasic-CrbZ5tkq.js +48 -0
  358. package/dist/purebasic-DXeoj54G.js +68 -0
  359. package/dist/purescript-DEmt8FwY.js +33 -0
  360. package/dist/python-B_JMVOcZ.js +72 -0
  361. package/dist/python-D4vn1uqn.js +364 -0
  362. package/dist/python-repl-Byh0otOf.js +25 -0
  363. package/dist/q-CKXvfs03.js +27 -0
  364. package/dist/q-Clh6z-st.js +51 -0
  365. package/dist/qml-7YQvVjZV.js +159 -0
  366. package/dist/qml-DJbzw6kj.js +73 -0
  367. package/dist/qore-BhVfCXhu.js +34 -0
  368. package/dist/qsharp-DuDOe5Uc.js +115 -0
  369. package/dist/r-DYPUJFxX.js +29 -0
  370. package/dist/r-xHPskriK.js +164 -0
  371. package/dist/racket-CpODvyno.js +25 -0
  372. package/dist/reason-hsgArTvF.js +36 -0
  373. package/dist/reasonml-CbjAE68o.js +250 -0
  374. package/dist/regex-2mVRU0vI.js +95 -0
  375. package/dist/rego-D-V3VB8C.js +37 -0
  376. package/dist/renpy-aW3v6IgL.js +31 -0
  377. package/dist/rescript-CWaXnGHS.js +69 -0
  378. package/dist/rest-3fUpY2PO.js +162 -0
  379. package/dist/rib-CL2NFDmg.js +22 -0
  380. package/dist/rip-B6YYwony.js +41 -0
  381. package/dist/roboconf-0Rlei8gQ.js +59 -0
  382. package/dist/roboconf-IXUuBa8p.js +39 -0
  383. package/dist/robotframework-BF9E-Oq9.js +93 -0
  384. package/dist/rolldown-runtime-DZ8SGSJo.js +46 -0
  385. package/dist/routeros-C-AWVQjj.js +115 -0
  386. package/dist/rsl-DMuV0iZO.js +40 -0
  387. package/dist/ruby-B8TWD6ep.js +175 -0
  388. package/dist/ruby-Y4gGIG3V.js +262 -0
  389. package/dist/ruleslanguage-BktxDuZ-.js +32 -0
  390. package/dist/rust-DwYwyKSC.js +86 -0
  391. package/dist/rust-NN7KgEj6.js +106 -0
  392. package/dist/sas-B1HEHqVJ.js +52 -0
  393. package/dist/sas-smX4XTMW.js +305 -0
  394. package/dist/sass-C7gSyJgV.js +65 -0
  395. package/dist/scala-B-Qmrms2.js +121 -0
  396. package/dist/scala-DjG8SNwu.js +61 -0
  397. package/dist/scheme-B4kNWGag.js +90 -0
  398. package/dist/scheme-DJqOei9g.js +123 -0
  399. package/dist/scilab-CWFPBszJ.js +51 -0
  400. package/dist/scss-BNucVCwH.js +521 -0
  401. package/dist/scss-DUnVt122.js +70 -0
  402. package/dist/shell-B5PfXmNL.js +24 -0
  403. package/dist/shell-session-DPhnV0Ol.js +54 -0
  404. package/dist/smali-2GrwCIpm.js +119 -0
  405. package/dist/smali-8R0QXZ1X.js +84 -0
  406. package/dist/smalltalk-B22GLwys.js +57 -0
  407. package/dist/smalltalk-O6cEa_14.js +47 -0
  408. package/dist/smarty-Wq_5DAYj.js +118 -0
  409. package/dist/sml-CSXKPo20.js +58 -0
  410. package/dist/sml-D31kAWsT.js +55 -0
  411. package/dist/solidity-BX0gWWmL.js +30 -0
  412. package/dist/solution-file-CgB6LaL7.js +47 -0
  413. package/dist/soy-DcXj4tw-.js +86 -0
  414. package/dist/sparql-D0_2Fxvf.js +28 -0
  415. package/dist/splunk-spl-BV7tASCi.js +34 -0
  416. package/dist/sqf-BYrbmp09.js +77 -0
  417. package/dist/sqf-DDMLiWt_.js +45 -0
  418. package/dist/sql-DHCn-YZP.js +39 -0
  419. package/dist/sql-DuLQt3Do.js +656 -0
  420. package/dist/sql_more-C5b-5T7L.js +58 -0
  421. package/dist/squirrel-EsqR0JNY.js +51 -0
  422. package/dist/stan-BssIIRc4.js +60 -0
  423. package/dist/stan-CaMlw6vU.js +516 -0
  424. package/dist/stata-CqA7wg7c.js +38 -0
  425. package/dist/stata-Da4jTQPC.js +82 -0
  426. package/dist/step21-DvwfW_IY.js +55 -0
  427. package/dist/stylus-C9svphNf.js +132 -0
  428. package/dist/stylus-DvJwDpBW.js +552 -0
  429. package/dist/subunit-eIEQRjTD.js +40 -0
  430. package/dist/supercollider-D7qIEU9I.js +43 -0
  431. package/dist/swift-B_iuCH-N.js +106 -0
  432. package/dist/swift-D2JCuwOw.js +603 -0
  433. package/dist/systemd-7dRag1wn.js +58 -0
  434. package/dist/t4-cs-CZCr77ej.js +18 -0
  435. package/dist/t4-templating-8CSCnuNF.js +52 -0
  436. package/dist/t4-vb-DJLoxP6-.js +18 -0
  437. package/dist/taggerscript-DUgIsxmY.js +42 -0
  438. package/dist/tap-BrbYnFCE.js +36 -0
  439. package/dist/tap-CKwf9TXR.js +35 -0
  440. package/dist/tcl-Bu0LzhCS.js +78 -0
  441. package/dist/tcl-CLjFvMbO.js +55 -0
  442. package/dist/textile-CVDmKYP-.js +225 -0
  443. package/dist/thrift-2RQozBtH.js +42 -0
  444. package/dist/toml-51NMgcfs.js +55 -0
  445. package/dist/tp-CyHTvTrB.js +81 -0
  446. package/dist/tremor-x6QV0U7k.js +68 -0
  447. package/dist/tt2-DQEZxDDN.js +52 -0
  448. package/dist/turtle-BHrc5ZDj.js +55 -0
  449. package/dist/twig-6D_FmMc3.js +66 -0
  450. package/dist/twig-DKqqr-bJ.js +46 -0
  451. package/dist/typescript-DAau_Qyl.js +59 -0
  452. package/dist/typescript-VRQ57_wQ.js +543 -0
  453. package/dist/typoscript-DHP8Z-kM.js +68 -0
  454. package/dist/unrealscript-BpMIC14v.js +50 -0
  455. package/dist/uorazor-BCojFkBB.js +55 -0
  456. package/dist/uri-M2gkNRgb.js +82 -0
  457. package/dist/v-Ba5p0lq0.js +84 -0
  458. package/dist/vala-D3hq3MeR.js +46 -0
  459. package/dist/vala-DxoZQIIV.js +82 -0
  460. package/dist/vbnet-MuzuuWpL.js +32 -0
  461. package/dist/vbnet-Rq0E4ZR6.js +121 -0
  462. package/dist/vbscript-B7FWGi6x.js +74 -0
  463. package/dist/vbscript-html-I7g2pYpY.js +20 -0
  464. package/dist/velocity-BZ2VAtwT.js +75 -0
  465. package/dist/verilog-DEPPw4lO.js +33 -0
  466. package/dist/verilog-qzgb0TgN.js +57 -0
  467. package/dist/vhdl-B7y5aUAt.js +34 -0
  468. package/dist/vhdl-D3415_vm.js +41 -0
  469. package/dist/vim-B7TjZscD.js +22 -0
  470. package/dist/vim-CnJA9w_8.js +53 -0
  471. package/dist/visual-basic-Cm0hN-XS.js +38 -0
  472. package/dist/warpscript-DIGSvxt1.js +29 -0
  473. package/dist/wasm-DmfEOzK3.js +36 -0
  474. package/dist/web-idl-Cfp4jeUC.js +81 -0
  475. package/dist/wgsl-DZ2gPgxi.js +100 -0
  476. package/dist/wiki-S_gOOWds.js +78 -0
  477. package/dist/wolfram-DI0W_dps.js +43 -0
  478. package/dist/wren-DRByg6bM.js +75 -0
  479. package/dist/x86asm-D_CYdoi_.js +70 -0
  480. package/dist/xeora-BoP7XsiS.js +84 -0
  481. package/dist/xl-dSbpxWTw.js +70 -0
  482. package/dist/xml-Bx1rhJem.js +220 -0
  483. package/dist/xml-doc-gUAATbC1.js +42 -0
  484. package/dist/xojo-DsgNc5p9.js +30 -0
  485. package/dist/xquery-Bc1R9nUG.js +129 -0
  486. package/dist/xquery-Bih1YSSU.js +120 -0
  487. package/dist/yaml-C888tCbJ.js +92 -0
  488. package/dist/yaml-sXJydZ-C.js +155 -0
  489. package/dist/yang-BPvrq4K7.js +30 -0
  490. package/dist/zephir-DLtCQJhr.js +80 -0
  491. package/dist/zig-XkIsWF4D.js +76 -0
  492. package/package.json +84 -0
@@ -0,0 +1,1232 @@
1
+ import { AgentLoopConfig, ApprovalScope, BridgeCapabilities, ExternalSkillProvider, ExternalToolSource, FileSystemProvider, InteractionRequest, InteractionResponse, LlmClient, NetworkPolicy, RenderBlock, RenderResultRequest, RunSnapshot, RunSnapshot as RunSnapshot$1, RuntimePhase, RuntimeRun, ScriptExecutor, TraceEvent, UiBridge, UiSurfaceActionRequest, UiSurfaceActionResponse, UiSurfaceDrafts, UiSurfaceEvent, UiSurfaceSnapshot } from "@webskill/sdk";
2
+ import { SandboxMode } from "@webskill/sdk/browser";
3
+ import { ReactBridgeState, SurfaceRegistry, UiSurfaceActionEvent } from "@webskill/sdk/ui-react";
4
+ import "@webskill/sdk/ui";
5
+ import "react";
6
+ import "react/jsx-runtime";
7
+ //#region ../ui-kit/src/i18n/types.d.ts
8
+ type Locale = 'zh' | 'en';
9
+ /** 单语言词条:key → 文案(支持 {name} 占位插值) */
10
+ type LocaleMessages = Record<string, string>;
11
+ /** 双语字典:zh/en 两个 locale 的键集必须一致(见 assertDictionaryComplete) */
12
+ interface Dictionary {
13
+ en: LocaleMessages;
14
+ zh: LocaleMessages;
15
+ }
16
+ type DictionaryKey<D extends Dictionary> = keyof D['en'] & string;
17
+ type InterpolationParams = Record<string, string | number>;
18
+ /** t(key, params?):查当前 locale 词条并做 {name} 插值 */
19
+ type TranslateFn<D extends Dictionary = Dictionary> = (key: DictionaryKey<D>, params?: InterpolationParams) => string;
20
+ //#endregion
21
+ //#region ../runtime/src/sandbox/bridgeProtocol.d.ts
22
+ /**
23
+ * 能力模式:true 直通 / false 关闭(TOOL_UNSUPPORTED)/ 'require-approval' 调用前强制授权
24
+ * (布尔语义与现状完全兼容)
25
+ */
26
+ type CapabilityMode = boolean | 'require-approval';
27
+ /** 授权粒度:'once-per-run'(默认,run 内同类能力批准一次)/ 'every-call'(每次调用都问) */
28
+ type ApprovalScope$1 = 'once-per-run' | 'every-call';
29
+ //#endregion
30
+ //#region ../runtime/src/sandbox/networkPolicy.d.ts
31
+ /**
32
+ * 网络策略类型 + 匹配逻辑(单一来源:browser worker 经函数字符串注入、
33
+ * node worker 直接 import,禁止各自重复实现)。
34
+ *
35
+ * 注意:isNetworkAllowed 会被 toString() 内嵌进浏览器 Worker bootstrap,
36
+ * 函数体必须自包含(不引用模块内其它符号),且不得使用模板字符串/反引号。
37
+ */
38
+ type NetworkPolicy$1 = 'deny-all' | 'allow-all' | {
39
+ allow: string[];
40
+ };
41
+ //#endregion
42
+ //#region ../ui-kit/src/runtime-config/types.d.ts
43
+ /**
44
+ * 运行环境配置模型(P2):console Configure Tab 编辑、chatbot ChatEngine 装配应用,
45
+ * 宿主经 RuntimeConfigStore 接线同一存储源(playground localStorage / 集成 OPFS 文件)。
46
+ * 默认值严格对齐 SDK(AgentLoop/InteractionPolicy/executor 缺省)。
47
+ */
48
+ interface RuntimeLoopConfig {
49
+ maxTurns: number;
50
+ totalTimeoutMs: number;
51
+ toolTimeoutMs: number;
52
+ temperature?: number;
53
+ toolResultMaxBytes: number;
54
+ maxHistoryMessages: number;
55
+ }
56
+ interface RuntimeInteractionConfig {
57
+ missingParams: 'user' | 'llm';
58
+ confirmations: 'required' | 'auto-approve';
59
+ interactionTimeoutMs: number;
60
+ approvalScope: ApprovalScope$1;
61
+ }
62
+ type RuntimeRouterStrategy = 'progressive' | 'full-disclosure';
63
+ /** 浏览器宿主执行器档位;Node 宿主的 in-process/worker/process 由宿主侧扩展展示 */
64
+ type RuntimeSandboxExecutor = 'auto' | 'blob-worker' | 'iframe-sandbox';
65
+ interface RuntimeSandboxConfig {
66
+ executor: RuntimeSandboxExecutor;
67
+ networkPolicy: NetworkPolicy$1;
68
+ capabilities: {
69
+ readReference: CapabilityMode;
70
+ writeArtifact: CapabilityMode;
71
+ confirm: CapabilityMode;
72
+ };
73
+ }
74
+ type RuntimeLlmProvider = 'openai-compatible' | 'anthropic' | 'google';
75
+ interface RuntimeLlmConfig {
76
+ provider: RuntimeLlmProvider;
77
+ baseUrl?: string;
78
+ apiKey?: string;
79
+ model: string;
80
+ requestTimeoutMs?: number;
81
+ }
82
+ interface RuntimeConfig {
83
+ loop: RuntimeLoopConfig;
84
+ interaction: RuntimeInteractionConfig;
85
+ router: {
86
+ strategy: RuntimeRouterStrategy;
87
+ };
88
+ streaming: boolean;
89
+ renderResult: boolean;
90
+ sandbox: RuntimeSandboxConfig;
91
+ llm: RuntimeLlmConfig;
92
+ }
93
+ interface RuntimeConfigStore {
94
+ /**
95
+ * Loads the runtime configuration. Implementations SHOULD return a complete
96
+ * RuntimeConfig; consumers wrap stores with `withRuntimeConfigDefaults` so partial
97
+ * or legacy data is normalized through `mergeRuntimeConfigDefaults` on the read
98
+ * path. Callers must not apply their own additional fallback merge.
99
+ */
100
+ load(): Promise<RuntimeConfig>;
101
+ save(config: RuntimeConfig): Promise<void>;
102
+ reset(): Promise<void>;
103
+ }
104
+ //#endregion
105
+ //#region src/core/types.d.ts
106
+ /**
107
+ * 交互渲染框架档位:native(React InteractionCard)/ a2ui(@a2ui/lit Lit 渲染)/
108
+ * openui(@openuidev/react-lang Renderer,ui-kit Library)/ vercel(payload 预览档,
109
+ * 展示 Vercel AI SDK 数据契约 JSON,非完整运行时)
110
+ */
111
+ type RendererKind = 'native' | 'a2ui' | 'openui' | 'vercel';
112
+ /** OpenAI 兼容端点配置(全部缺省时使用内置演示 LLM) */
113
+ interface LlmConfig {
114
+ baseUrl?: string;
115
+ apiKey?: string;
116
+ model?: string;
117
+ }
118
+ /** assistant 消息所属 run 的一次工具调用(终态:completed/failed) */
119
+ interface ChatToolCall {
120
+ callId: string;
121
+ name: string;
122
+ status: 'completed' | 'failed';
123
+ /** 参数摘要(JSON 截断 100 字符;trace 重放无 args 时留空,卡片展开详情有则显示) */
124
+ args?: string;
125
+ /** 执行耗时(trace completed/failed 回填;live 由 started→终态计时) */
126
+ durationMs?: number;
127
+ }
128
+ /** 已落盘的待发送附件(composer 附件适配器产出) */
129
+ interface ChatAttachmentInput {
130
+ id: string;
131
+ name: string;
132
+ contentType: string;
133
+ /** 相对 `attachmentsRoot` 的路径 */
134
+ path: string;
135
+ size: number;
136
+ }
137
+ /** 随消息持久化的附件元数据 */
138
+ interface ChatAttachmentMeta extends ChatAttachmentInput {
139
+ /** 注入模型的内容形态;text 以外的类型当前不接收(runtime 只收纯文本 prompt) */
140
+ kind: 'text';
141
+ }
142
+ interface ChatMessage {
143
+ id: string;
144
+ role: 'user' | 'assistant';
145
+ text: string;
146
+ ts: string;
147
+ /** user 消息携带的附件(旧会话文件无该字段) */
148
+ attachments?: ChatAttachmentMeta[];
149
+ /** assistant 消息所属 run */
150
+ runId?: string;
151
+ /** 该 run 激活的技能(消息底部 badges) */
152
+ activeSkillNames?: string[];
153
+ /** 该 run 的工具调用序列(思维链工具行;按 trace 顺序) */
154
+ toolCalls?: ChatToolCall[];
155
+ /**
156
+ * 该 run 的结果块(bridge.renderResult 的 blocks),随消息持久化。
157
+ * 当前 run 的块由 ResultBlocksPro 直读 bridge 渲染;历史消息按 blocks 逐条渲染(ResultBlockList)。
158
+ */
159
+ blocks?: RenderBlock[];
160
+ /** The completed generative UI surfaces emitted by this run, retained for history replay. */
161
+ surfaces?: UiSurfaceSnapshot[];
162
+ }
163
+ interface ChatSessionMeta {
164
+ id: string;
165
+ createdAt: string;
166
+ title?: string;
167
+ /** 归档会话:列表分区展示,不参与默认选中 */
168
+ archived?: boolean;
169
+ /** 用户已手动重命名:后续 send 不再用首条消息覆盖标题 */
170
+ titleLocked?: boolean;
171
+ }
172
+ type ChatEvent = {
173
+ type: 'run-started';
174
+ runId: string;
175
+ } | {
176
+ type: 'message-delta';
177
+ runId: string;
178
+ delta: string;
179
+ } | {
180
+ type: 'message-complete';
181
+ message: ChatMessage;
182
+ } | {
183
+ type: 'skill-activated';
184
+ runId: string;
185
+ skills: string[];
186
+ } | {
187
+ type: 'tool-started';
188
+ runId: string;
189
+ callId: string;
190
+ name: string;
191
+ args?: string;
192
+ } | {
193
+ type: 'tool-completed';
194
+ runId: string;
195
+ callId: string;
196
+ name: string;
197
+ args?: string;
198
+ } | {
199
+ type: 'tool-failed';
200
+ runId: string;
201
+ callId: string;
202
+ name: string;
203
+ args?: string;
204
+ } | {
205
+ type: 'run-completed';
206
+ runId: string;
207
+ status: 'completed' | 'failed' | 'cancelled';
208
+ output: string;
209
+ activeSkillNames: string[];
210
+ } | {
211
+ type: 'interaction-requested';
212
+ id: string;
213
+ requestType: InteractionRequest['type'];
214
+ } | {
215
+ type: 'interaction-resolved';
216
+ id: string;
217
+ requestType: InteractionRequest['type'];
218
+ cancelled?: boolean;
219
+ } | {
220
+ type: 'lifecycle';
221
+ runId: string;
222
+ phase: RuntimePhase;
223
+ at: number;
224
+ data?: Record<string, unknown>;
225
+ } | {
226
+ type: 'session-updated';
227
+ session: ChatSessionMeta;
228
+ } | {
229
+ type: 'warning';
230
+ message: string;
231
+ } | {
232
+ type: 'error';
233
+ message: string;
234
+ code?: string;
235
+ };
236
+ interface ChatbotConfig {
237
+ /** header 标题,默认 'WebSkill Chat' */
238
+ title?: string;
239
+ /** 输入框占位文本 */
240
+ placeholder?: string;
241
+ /** 会话/trace/artifact 存储根,默认 '/chat' */
242
+ chatRoot?: string;
243
+ /** 覆盖 LLM(缺省走 adapter.llmConfig → 内置演示 LLM 的选择链) */
244
+ llm?: LlmClient;
245
+ /** AgentLoop 调参(maxTurns、超时等) */
246
+ loopConfig?: AgentLoopConfig;
247
+ /**
248
+ * 运行环境配置存储(P2):装配时 load() 并应用 loop/interaction/router/streaming/
249
+ * renderResult/sandbox/llm 映射;与 console Configure Tab 共用同一 store(宿主接线)
250
+ */
251
+ runtimeConfig?: RuntimeConfigStore;
252
+ /** WelcomeScreen 快捷 prompt 覆盖(缺省用内置双语示例) */
253
+ quickPrompts?: string[];
254
+ /**
255
+ * 开启后模型多一个 `render_ui` 工具,可面向 AI Component Catalog 直接生成声明式 UI。
256
+ * 默认关:工具描述 + 入参 schema 约 14 KB,会计入每一次请求。
257
+ */
258
+ generativeUi?: boolean;
259
+ }
260
+ //#endregion
261
+ //#region src/core/hostAdapter.d.ts
262
+ /**
263
+ * 宿主装配口:chatbot 不感知环境(浏览器/Node),全部能力经此注入。
264
+ * 页面动态技能来源同时是外部工具来源与外部技能提供者(同一对象两个 port)。
265
+ */
266
+ interface ChatbotHostAdapter {
267
+ storage: FileSystemProvider;
268
+ skillRoots: string[];
269
+ llmConfig: {
270
+ load(): Promise<LlmConfig | undefined>;
271
+ save(config: LlmConfig): Promise<void>;
272
+ clear(): Promise<void>;
273
+ };
274
+ pageSkillSource?: ExternalToolSource & ExternalSkillProvider;
275
+ navigation: {
276
+ openConsole(): void;
277
+ /** 跳 console Traces 面板并定位该 run(v1.1;缺省时消息不渲染 View trace 入口) */
278
+ openConsoleTrace?(runId: string): void;
279
+ };
280
+ /** 缺省 BrowserWorkerScriptExecutor(@webskill/browser);Node 宿主可注入自己的执行器 */
281
+ executor?: ScriptExecutor;
282
+ }
283
+ //#endregion
284
+ //#region src/core/interactionBridge.d.ts
285
+ /**
286
+ * 探测 A2UI Lit 渲染器是否可用(@a2ui/lit 为 optional peer,未安装时 import 失败)。
287
+ * Appearance/设置区据此对 A2UI 档置灰;仅动态 import,不强依赖。
288
+ */
289
+ declare function probeA2uiAvailability(): Promise<boolean>;
290
+ /**
291
+ * 为 A2UI 挂载容器配置 Markdown 渲染(@a2ui/markdown-it,optional peer):
292
+ * 经 @lit/context 向 surface 子树注入 renderMarkdown(markdown-it + dompurify),
293
+ * 消除 "[MarkdownDirective] can't render markdown" 降级。
294
+ * 未安装时返回 false(宿主可据此保留产品化限制说明)。
295
+ */
296
+ declare function configureA2uiMarkdown(mount: HTMLElement): Promise<boolean>;
297
+ /**
298
+ * 探测 OpenUI 渲染器是否可用(@openuidev/react-lang 为 optional peer)。
299
+ * Appearance/设置区据此对 OpenUI 档置灰;仅动态 import,不强依赖。
300
+ */
301
+ declare function probeOpenUiAvailability(): Promise<boolean>;
302
+ /** openui 档一次待决交互(lang 文本由 react 层交给 @openuidev/react-lang Renderer 渲染) */
303
+ interface OpenUiSession {
304
+ request: InteractionRequest;
305
+ lang: string;
306
+ }
307
+ /**
308
+ * OpenUI 交互通道(core 层,不 import react):
309
+ * - request() 把 InteractionRequest 转成 openui-lang 文本并挂起,react 层
310
+ * (OpenUiInteraction)订阅 current 后动态加载 @openuidev/react-lang 渲染;
311
+ * - 动作事件经 handleAction → fromOpenUiAction(含 authorize Allow/Deny 语义)回传;
312
+ * - react 层初始化失败调 fail():挂起请求 reject(桥据此粘性降级 native)并记录原因;
313
+ * - attach/detach 标记渲染视图是否挂载(未挂载时桥直接降级 native,不悬挂请求)。
314
+ */
315
+ declare class OpenUiChannel {
316
+ #private;
317
+ /** React useSyncExternalStore 兼容订阅 */
318
+ subscribe: (listener: () => void) => (() => void);
319
+ get current(): OpenUiSession | undefined;
320
+ get isAttached(): boolean;
321
+ /** react 层初始化失败原因(未安装 @openuidev/react-lang 等);记录后粘性生效 */
322
+ get failure(): string | undefined;
323
+ attach(): void;
324
+ detach(): void;
325
+ request(input: InteractionRequest): Promise<InteractionResponse>;
326
+ /** runtime 交互超时/取消:以 cancelled resolve 挂起的 request(防悬挂 + 残留) */
327
+ cancel(id: string): void;
328
+ /** react 层 OpenUI 动作回传(fromOpenUiAction:Allow → value:true;Deny/Cancel → cancelled:true) */
329
+ handleAction(action: unknown): void;
330
+ /** react 层初始化失败:挂起请求 reject 并记录原因(桥读取后降级 native) */
331
+ fail(message: string): void;
332
+ }
333
+ interface CompositeUiBridgeDeps {
334
+ /** native 档交互 + streamingText/renderResult 数据源(始终生效;vercel 预览档也走它) */
335
+ reactBridge: ReactBridgeState;
336
+ getRenderer(): RendererKind;
337
+ /** a2ui 档交互容器(Chatbot ref 回调注入;未挂载时 a2ui 请求降级 native) */
338
+ getInteractionMount(): HTMLElement | undefined;
339
+ /** openui 档交互通道(引擎持有;react 层 OpenUiInteraction attach 后生效) */
340
+ getOpenUiChannel(): OpenUiChannel;
341
+ emit(event: ChatEvent): void;
342
+ }
343
+ /**
344
+ * 复合 UiBridge(P2/P3 渲染框架档):
345
+ * - streamingText / renderResult 始终委托 ReactBridgeState(结果块数据源不变);
346
+ * - 交互 request/cancel 按渲染档分发:native → ReactBridgeState(InteractionCard),
347
+ * a2ui → LitRendererBridge(@a2ui/lit,容器由 Chatbot 提供),
348
+ * openui → OpenUiChannel(@openuidev/react-lang Renderer 由 react 层装配),
349
+ * vercel → ReactBridgeState(payload 预览卡消费 bridge.pending,仅可取消);
350
+ * - 每次交互开始/结束发 interaction-requested/resolved 事件(UI 据此显隐 a2ui 容器);
351
+ * - a2ui/openui 初始化失败(optional peer 未安装等)降级 native + warning 事件,不阻断 run。
352
+ */
353
+ declare class CompositeUiBridge implements UiBridge {
354
+ #private;
355
+ constructor(deps: CompositeUiBridgeDeps);
356
+ /** 渲染档热切换:丢弃已建的 a2ui 桥与降级状态(新档立即生效,无需重装配 runtime) */
357
+ reset(): void;
358
+ request(input: InteractionRequest): Promise<InteractionResponse>;
359
+ /** runtime 交互超时/取消:按档委托(a2ui/openui 桥 cancel 会以 cancelled resolve 挂起的 request) */
360
+ cancel(id: string): void;
361
+ renderResult(input: RenderResultRequest): Promise<void>;
362
+ renderSurface(event: UiSurfaceEvent): Promise<void>;
363
+ requestSurfaceAction(input: UiSurfaceActionRequest): Promise<UiSurfaceActionResponse>;
364
+ cancelSurfaceAction(nonce: string): void;
365
+ onTextDelta(runId: string, delta: string): Promise<void>;
366
+ }
367
+ //#endregion
368
+ //#region src/core/chatEngine.d.ts
369
+ /** 默认沙箱执行器的构造参数(adapter.executor 未注入时;executorFactory 替换点可见同一形状) */
370
+ interface SandboxExecutorDeps {
371
+ fs: FileSystemProvider;
372
+ sandbox?: SandboxMode;
373
+ networkPolicy?: NetworkPolicy;
374
+ capabilities?: BridgeCapabilities;
375
+ approvalScope?: ApprovalScope;
376
+ uiBridge?: UiBridge;
377
+ }
378
+ interface ChatEngineOptions {
379
+ llm?: LlmClient;
380
+ loopConfig?: AgentLoopConfig;
381
+ chatRoot?: string;
382
+ /** 运行环境配置存储(P2):#ensureReady 装配时 load()(默认值兜底)并按映射应用 */
383
+ runtimeConfig?: RuntimeConfigStore;
384
+ /** 初始渲染框架档(默认 'native';运行中可 setRenderer 热切换) */
385
+ renderer?: RendererKind;
386
+ /** 注入 `render_ui` 工具,让模型面向 AI Component Catalog 生成声明式 UI */
387
+ generativeUi?: boolean;
388
+ /** 沙箱执行器替换点(测试注入 spy 断言构造参数;缺省 BrowserWorkerScriptExecutor) */
389
+ executorFactory?: (deps: SandboxExecutorDeps) => ScriptExecutor;
390
+ }
391
+ /**
392
+ * 对话框引擎:装配 WebSkillRuntime + 会话持久化 + 事件分发。
393
+ * llmConfig.load() 是异步的,runtime 在首次 send 前懒装配(#ensureReady)。
394
+ */
395
+ declare class ChatEngine {
396
+ #private;
397
+ readonly bridge: ReactBridgeState;
398
+ constructor(adapter: ChatbotHostAdapter, options?: ChatEngineOptions);
399
+ /** 当前渲染框架档 */
400
+ get renderer(): RendererKind;
401
+ /** 渲染框架热切换:复合桥按档分发,无需重装配 runtime(会话句柄保留) */
402
+ setRenderer(renderer: RendererKind): void;
403
+ /** a2ui 档交互容器注入(Chatbot ref 回调;卸载传 null) */
404
+ setInteractionMount(el: HTMLElement | null): void;
405
+ /** openui 档交互通道(Chatbot 的 OpenUiInteraction 订阅/attach;core 只产出 lang 文本) */
406
+ get openUiChannel(): OpenUiChannel;
407
+ /** 探测 @a2ui/lit 是否安装(Appearance/设置区 A2UI 档置灰判定) */
408
+ probeA2uiAvailability(): Promise<boolean>;
409
+ onEvent(listener: (event: ChatEvent) => void): () => void;
410
+ /**
411
+ * 配置源变更后调用(LLM 设置 / RuntimeConfigStore 内容变化):丢弃缓存的
412
+ * runtime/llm/会话句柄,下次 send 重新装配(RuntimeConfig 重新 load() 应用)
413
+ */
414
+ reloadConfig(): void;
415
+ /** 旧名保留(与 reloadConfig 同语义,向后兼容) */
416
+ reloadLlm(): void;
417
+ listSessions(): Promise<ChatSessionMeta[]>;
418
+ createSession(): Promise<ChatSessionMeta>;
419
+ selectSession(id: string): Promise<ChatMessage[]>;
420
+ deleteSession(id: string): Promise<void>;
421
+ /** 重命名会话:写入 title 并锁定(后续 send 不再用首条消息覆盖) */
422
+ renameSession(id: string, title: string): Promise<void>;
423
+ /** 归档会话(仅标记,消息与 trace 不动) */
424
+ archiveSession(id: string): Promise<void>;
425
+ /** 取消归档 */
426
+ unarchiveSession(id: string): Promise<void>;
427
+ /** 重发语义:取该 user 消息文本重新 send(assistant 应答新起一轮;不重写历史) */
428
+ retry(messageId: string): Promise<void>;
429
+ /**
430
+ * 编辑重发:截断该 user 消息(含自身)之后的持久化历史,再用新文本重跑一轮。
431
+ * runtime session 句柄自带的对话历史不受影响(与 retry 同口径)。
432
+ */
433
+ editAndResend(messageId: string, text: string): Promise<void>;
434
+ /** 从当前会话消息列表删除指定消息并持久化(消息不存在/无当前会话时静默跳过) */
435
+ deleteMessage(messageId: string): Promise<void>;
436
+ /**
437
+ * 驱动当前 session 的一轮 run。同 session 并发由 runtime session handle 内部
438
+ * 队列串行化(此处直接 await);UI 层应在 send 期间禁用输入。
439
+ * 附件正文按 `attachmentsRoot` 内的路径读回并拼进 prompt(runtime 只收纯文本)。
440
+ */
441
+ send(text: string, attachments?: readonly ChatAttachmentInput[]): Promise<void>;
442
+ /** 附件落盘根目录(composer 附件适配器写入,send 时读回) */
443
+ get attachmentsRoot(): string;
444
+ /** 取消进行中的 run(Composer Stop 按钮);run 未找到/已结束返回 false */
445
+ cancel(runId: string): boolean;
446
+ /** 列出可恢复的 interrupted run(InterruptedBanner 数据源) */
447
+ listInterrupted(): Promise<RunSnapshot$1[]>;
448
+ /**
449
+ * 恢复 interrupted run:等待中的交互重新进入 bridge.pending(UI 复用 InteractionForm),
450
+ * 完成后与 send 同路径(assistant 消息持久化 + run-completed + trace 落盘)。
451
+ */
452
+ resume(runId: string): Promise<void>;
453
+ }
454
+ //#endregion
455
+ //#region src/core/traceSink.d.ts
456
+ /**
457
+ * run trace 落盘格式:与 console 包的共享约定(两包零依赖,console 的
458
+ * createFsTraceSource(fs, chatRoot) 读同一位置),字段名不得擅自变更。
459
+ */
460
+ interface RunTraceFile {
461
+ runId: string;
462
+ sessionId: string;
463
+ startedAt: string;
464
+ endedAt?: string;
465
+ status: 'completed' | 'failed' | 'cancelled';
466
+ activeSkills: string[];
467
+ events: TraceEvent[];
468
+ }
469
+ /** 写 `<chatRoot>/traces/<runId>.json`;写失败降级 console.warn,不阻断对话 */
470
+ declare function writeRunTrace(fs: FileSystemProvider, chatRoot: string, run: RuntimeRun): Promise<void>;
471
+ //#endregion
472
+ //#region src/i18n.d.ts
473
+ /**
474
+ * chatbot 双语字典:全部 UI 文案的单一来源(英文为主,zh 条目齐全)。
475
+ * 特性区块(WelcomeScreen / SettingsDrawer 各节 / authorize 说明等)必须含
476
+ * title + description 双语条目——"会说话的 UI"的文案底座。
477
+ */
478
+ declare const chatbotDictionary: {
479
+ en: {
480
+ 'app.title': string;
481
+ 'header.sessions': string;
482
+ 'header.settings': string;
483
+ 'header.console': string;
484
+ 'session.title': string;
485
+ 'session.new': string;
486
+ 'session.searchPlaceholder': string;
487
+ 'session.empty': string;
488
+ 'session.delete': string;
489
+ 'welcome.title': string;
490
+ 'welcome.assistantTitle': string;
491
+ 'welcome.description': string;
492
+ 'welcome.capability.skills.title': string;
493
+ 'welcome.capability.skills.description': string;
494
+ 'welcome.capability.generativeUi.title': string;
495
+ 'welcome.capability.generativeUi.description': string;
496
+ 'welcome.capability.transparency.title': string;
497
+ 'welcome.capability.transparency.description': string;
498
+ 'welcome.quickPrompts': string;
499
+ 'welcome.prompt.1': string;
500
+ 'welcome.prompt.2': string;
501
+ 'welcome.prompt.3': string;
502
+ 'welcome.prompt.4': string;
503
+ 'message.copy': string;
504
+ 'message.copied': string;
505
+ 'message.retry': string;
506
+ 'message.delete': string;
507
+ 'message.viewTrace': string;
508
+ 'message.skillsUsed': string;
509
+ 'tool.summary.one': string;
510
+ 'tool.summary.other': string;
511
+ 'tool.status.running': string;
512
+ 'tool.status.completed': string;
513
+ 'tool.status.failed': string;
514
+ 'tool.duration': string;
515
+ 'tool.args': string;
516
+ 'cot.thinking': string;
517
+ 'cot.thought': string;
518
+ 'cot.summary': string;
519
+ 'cot.reasoning': string;
520
+ 'cot.working': string;
521
+ 'trace.title': string;
522
+ 'trace.skill': string;
523
+ 'trace.phase.route': string;
524
+ 'trace.phase.activate': string;
525
+ 'trace.phase.execute': string;
526
+ 'trace.phase.interact': string;
527
+ 'trace.phase.complete': string;
528
+ 'trace.phase.fail': string;
529
+ 'interaction.ask.title': string;
530
+ 'interaction.confirm.title': string;
531
+ 'interaction.form.title': string;
532
+ 'interaction.select.title': string;
533
+ 'interaction.authorize.title': string;
534
+ 'interaction.authorize.description': string;
535
+ 'interaction.authorize.capability': string;
536
+ 'interaction.authorize.details': string;
537
+ 'interaction.submit': string;
538
+ 'interaction.cancel': string;
539
+ 'interaction.confirm': string;
540
+ 'interaction.allow': string;
541
+ 'interaction.deny': string;
542
+ 'interaction.required': string;
543
+ 'result.artifacts': string;
544
+ 'result.download': string;
545
+ 'result.file': string;
546
+ 'status.aria': string;
547
+ 'status.route': string;
548
+ 'status.activate': string;
549
+ 'status.execute': string;
550
+ 'status.interact': string;
551
+ 'status.complete': string;
552
+ 'status.failed': string;
553
+ 'status.cancelled': string;
554
+ 'banner.interrupted': string;
555
+ 'banner.description': string;
556
+ 'banner.resume': string;
557
+ 'composer.placeholder': string;
558
+ 'composer.inputLabel': string;
559
+ 'composer.send': string;
560
+ 'composer.stop': string;
561
+ 'composer.attachments': string;
562
+ 'composer.addAttachment': string;
563
+ 'composer.removeAttachment': string;
564
+ 'settings.title': string;
565
+ 'settings.model.title': string;
566
+ 'settings.model.description': string;
567
+ 'settings.provider': string;
568
+ 'settings.providerNote': string;
569
+ 'settings.provider.openai-compatible': string;
570
+ 'settings.provider.anthropic': string;
571
+ 'settings.provider.google': string;
572
+ 'settings.provider.anthropic.note': string;
573
+ 'settings.provider.google.note': string;
574
+ 'settings.endpoint': string;
575
+ 'settings.apiKey': string;
576
+ 'settings.modelName': string;
577
+ 'settings.streaming': string;
578
+ 'settings.streamingNote': string;
579
+ 'settings.temperature': string;
580
+ 'settings.temperatureNote': string;
581
+ 'settings.test': string;
582
+ 'settings.testing': string;
583
+ 'settings.available': string;
584
+ 'settings.unavailable': string;
585
+ 'settings.streamingSupported': string;
586
+ 'settings.nonStreamingFallback': string;
587
+ 'settings.demoBadge': string;
588
+ 'settings.demoNote': string;
589
+ 'settings.save': string;
590
+ 'settings.clear': string;
591
+ 'settings.appearance.title': string;
592
+ 'settings.appearance.description': string;
593
+ 'settings.theme': string;
594
+ 'settings.theme.light': string;
595
+ 'settings.theme.dark': string;
596
+ 'settings.language': string;
597
+ 'settings.language.en': string;
598
+ 'settings.language.zh': string;
599
+ 'settings.renderer': string;
600
+ 'settings.renderer.description': string;
601
+ 'settings.renderer.native': string;
602
+ 'settings.renderer.a2ui': string;
603
+ 'settings.renderer.openui': string;
604
+ 'settings.renderer.vercel': string;
605
+ 'vercel.preview.title': string;
606
+ 'vercel.preview.badge': string;
607
+ 'vercel.preview.description': string;
608
+ 'error.title': string;
609
+ 'error.suggestion': string;
610
+ 'error.dismiss': string;
611
+ };
612
+ zh: {
613
+ 'app.title': string;
614
+ 'header.sessions': string;
615
+ 'header.settings': string;
616
+ 'header.console': string;
617
+ 'session.title': string;
618
+ 'session.new': string;
619
+ 'session.searchPlaceholder': string;
620
+ 'session.empty': string;
621
+ 'session.delete': string;
622
+ 'welcome.title': string;
623
+ 'welcome.assistantTitle': string;
624
+ 'welcome.description': string;
625
+ 'welcome.capability.skills.title': string;
626
+ 'welcome.capability.skills.description': string;
627
+ 'welcome.capability.generativeUi.title': string;
628
+ 'welcome.capability.generativeUi.description': string;
629
+ 'welcome.capability.transparency.title': string;
630
+ 'welcome.capability.transparency.description': string;
631
+ 'welcome.quickPrompts': string;
632
+ 'welcome.prompt.1': string;
633
+ 'welcome.prompt.2': string;
634
+ 'welcome.prompt.3': string;
635
+ 'welcome.prompt.4': string;
636
+ 'message.copy': string;
637
+ 'message.copied': string;
638
+ 'message.retry': string;
639
+ 'message.delete': string;
640
+ 'message.viewTrace': string;
641
+ 'message.skillsUsed': string;
642
+ 'tool.summary.one': string;
643
+ 'tool.summary.other': string;
644
+ 'tool.status.running': string;
645
+ 'tool.status.completed': string;
646
+ 'tool.status.failed': string;
647
+ 'tool.duration': string;
648
+ 'tool.args': string;
649
+ 'cot.thinking': string;
650
+ 'cot.thought': string;
651
+ 'cot.summary': string;
652
+ 'cot.reasoning': string;
653
+ 'cot.working': string;
654
+ 'trace.title': string;
655
+ 'trace.skill': string;
656
+ 'trace.phase.route': string;
657
+ 'trace.phase.activate': string;
658
+ 'trace.phase.execute': string;
659
+ 'trace.phase.interact': string;
660
+ 'trace.phase.complete': string;
661
+ 'trace.phase.fail': string;
662
+ 'interaction.ask.title': string;
663
+ 'interaction.confirm.title': string;
664
+ 'interaction.form.title': string;
665
+ 'interaction.select.title': string;
666
+ 'interaction.authorize.title': string;
667
+ 'interaction.authorize.description': string;
668
+ 'interaction.authorize.capability': string;
669
+ 'interaction.authorize.details': string;
670
+ 'interaction.submit': string;
671
+ 'interaction.cancel': string;
672
+ 'interaction.confirm': string;
673
+ 'interaction.allow': string;
674
+ 'interaction.deny': string;
675
+ 'interaction.required': string;
676
+ 'result.artifacts': string;
677
+ 'result.download': string;
678
+ 'result.file': string;
679
+ 'status.aria': string;
680
+ 'status.route': string;
681
+ 'status.activate': string;
682
+ 'status.execute': string;
683
+ 'status.interact': string;
684
+ 'status.complete': string;
685
+ 'status.failed': string;
686
+ 'status.cancelled': string;
687
+ 'banner.interrupted': string;
688
+ 'banner.description': string;
689
+ 'banner.resume': string;
690
+ 'composer.placeholder': string;
691
+ 'composer.inputLabel': string;
692
+ 'composer.send': string;
693
+ 'composer.stop': string;
694
+ 'composer.attachments': string;
695
+ 'composer.addAttachment': string;
696
+ 'composer.removeAttachment': string;
697
+ 'settings.title': string;
698
+ 'settings.model.title': string;
699
+ 'settings.model.description': string;
700
+ 'settings.provider': string;
701
+ 'settings.providerNote': string;
702
+ 'settings.provider.openai-compatible': string;
703
+ 'settings.provider.anthropic': string;
704
+ 'settings.provider.google': string;
705
+ 'settings.provider.anthropic.note': string;
706
+ 'settings.provider.google.note': string;
707
+ 'settings.endpoint': string;
708
+ 'settings.apiKey': string;
709
+ 'settings.modelName': string;
710
+ 'settings.streaming': string;
711
+ 'settings.streamingNote': string;
712
+ 'settings.temperature': string;
713
+ 'settings.temperatureNote': string;
714
+ 'settings.test': string;
715
+ 'settings.testing': string;
716
+ 'settings.available': string;
717
+ 'settings.unavailable': string;
718
+ 'settings.streamingSupported': string;
719
+ 'settings.nonStreamingFallback': string;
720
+ 'settings.demoBadge': string;
721
+ 'settings.demoNote': string;
722
+ 'settings.save': string;
723
+ 'settings.clear': string;
724
+ 'settings.appearance.title': string;
725
+ 'settings.appearance.description': string;
726
+ 'settings.theme': string;
727
+ 'settings.theme.light': string;
728
+ 'settings.theme.dark': string;
729
+ 'settings.language': string;
730
+ 'settings.language.en': string;
731
+ 'settings.language.zh': string;
732
+ 'settings.renderer': string;
733
+ 'settings.renderer.description': string;
734
+ 'settings.renderer.native': string;
735
+ 'settings.renderer.a2ui': string;
736
+ 'settings.renderer.openui': string;
737
+ 'settings.renderer.vercel': string;
738
+ 'vercel.preview.title': string;
739
+ 'vercel.preview.badge': string;
740
+ 'vercel.preview.description': string;
741
+ 'error.title': string;
742
+ 'error.suggestion': string;
743
+ 'error.dismiss': string;
744
+ };
745
+ };
746
+ /** chatbot 组件取文案:t('welcome.title') / t('tool.summary.other', { count: 3 }) */
747
+ declare const useT: () => TranslateFn<{
748
+ en: {
749
+ 'app.title': string;
750
+ 'header.sessions': string;
751
+ 'header.settings': string;
752
+ 'header.console': string;
753
+ 'session.title': string;
754
+ 'session.new': string;
755
+ 'session.searchPlaceholder': string;
756
+ 'session.empty': string;
757
+ 'session.delete': string;
758
+ 'welcome.title': string;
759
+ 'welcome.assistantTitle': string;
760
+ 'welcome.description': string;
761
+ 'welcome.capability.skills.title': string;
762
+ 'welcome.capability.skills.description': string;
763
+ 'welcome.capability.generativeUi.title': string;
764
+ 'welcome.capability.generativeUi.description': string;
765
+ 'welcome.capability.transparency.title': string;
766
+ 'welcome.capability.transparency.description': string;
767
+ 'welcome.quickPrompts': string;
768
+ 'welcome.prompt.1': string;
769
+ 'welcome.prompt.2': string;
770
+ 'welcome.prompt.3': string;
771
+ 'welcome.prompt.4': string;
772
+ 'message.copy': string;
773
+ 'message.copied': string;
774
+ 'message.retry': string;
775
+ 'message.delete': string;
776
+ 'message.viewTrace': string;
777
+ 'message.skillsUsed': string;
778
+ 'tool.summary.one': string;
779
+ 'tool.summary.other': string;
780
+ 'tool.status.running': string;
781
+ 'tool.status.completed': string;
782
+ 'tool.status.failed': string;
783
+ 'tool.duration': string;
784
+ 'tool.args': string;
785
+ 'cot.thinking': string;
786
+ 'cot.thought': string;
787
+ 'cot.summary': string;
788
+ 'cot.reasoning': string;
789
+ 'cot.working': string;
790
+ 'trace.title': string;
791
+ 'trace.skill': string;
792
+ 'trace.phase.route': string;
793
+ 'trace.phase.activate': string;
794
+ 'trace.phase.execute': string;
795
+ 'trace.phase.interact': string;
796
+ 'trace.phase.complete': string;
797
+ 'trace.phase.fail': string;
798
+ 'interaction.ask.title': string;
799
+ 'interaction.confirm.title': string;
800
+ 'interaction.form.title': string;
801
+ 'interaction.select.title': string;
802
+ 'interaction.authorize.title': string;
803
+ 'interaction.authorize.description': string;
804
+ 'interaction.authorize.capability': string;
805
+ 'interaction.authorize.details': string;
806
+ 'interaction.submit': string;
807
+ 'interaction.cancel': string;
808
+ 'interaction.confirm': string;
809
+ 'interaction.allow': string;
810
+ 'interaction.deny': string;
811
+ 'interaction.required': string;
812
+ 'result.artifacts': string;
813
+ 'result.download': string;
814
+ 'result.file': string;
815
+ 'status.aria': string;
816
+ 'status.route': string;
817
+ 'status.activate': string;
818
+ 'status.execute': string;
819
+ 'status.interact': string;
820
+ 'status.complete': string;
821
+ 'status.failed': string;
822
+ 'status.cancelled': string;
823
+ 'banner.interrupted': string;
824
+ 'banner.description': string;
825
+ 'banner.resume': string;
826
+ 'composer.placeholder': string;
827
+ 'composer.inputLabel': string;
828
+ 'composer.send': string;
829
+ 'composer.stop': string;
830
+ 'composer.attachments': string;
831
+ 'composer.addAttachment': string;
832
+ 'composer.removeAttachment': string;
833
+ 'settings.title': string;
834
+ 'settings.model.title': string;
835
+ 'settings.model.description': string;
836
+ 'settings.provider': string;
837
+ 'settings.providerNote': string;
838
+ 'settings.provider.openai-compatible': string;
839
+ 'settings.provider.anthropic': string;
840
+ 'settings.provider.google': string;
841
+ 'settings.provider.anthropic.note': string;
842
+ 'settings.provider.google.note': string;
843
+ 'settings.endpoint': string;
844
+ 'settings.apiKey': string;
845
+ 'settings.modelName': string;
846
+ 'settings.streaming': string;
847
+ 'settings.streamingNote': string;
848
+ 'settings.temperature': string;
849
+ 'settings.temperatureNote': string;
850
+ 'settings.test': string;
851
+ 'settings.testing': string;
852
+ 'settings.available': string;
853
+ 'settings.unavailable': string;
854
+ 'settings.streamingSupported': string;
855
+ 'settings.nonStreamingFallback': string;
856
+ 'settings.demoBadge': string;
857
+ 'settings.demoNote': string;
858
+ 'settings.save': string;
859
+ 'settings.clear': string;
860
+ 'settings.appearance.title': string;
861
+ 'settings.appearance.description': string;
862
+ 'settings.theme': string;
863
+ 'settings.theme.light': string;
864
+ 'settings.theme.dark': string;
865
+ 'settings.language': string;
866
+ 'settings.language.en': string;
867
+ 'settings.language.zh': string;
868
+ 'settings.renderer': string;
869
+ 'settings.renderer.description': string;
870
+ 'settings.renderer.native': string;
871
+ 'settings.renderer.a2ui': string;
872
+ 'settings.renderer.openui': string;
873
+ 'settings.renderer.vercel': string;
874
+ 'vercel.preview.title': string;
875
+ 'vercel.preview.badge': string;
876
+ 'vercel.preview.description': string;
877
+ 'error.title': string;
878
+ 'error.suggestion': string;
879
+ 'error.dismiss': string;
880
+ };
881
+ zh: {
882
+ 'app.title': string;
883
+ 'header.sessions': string;
884
+ 'header.settings': string;
885
+ 'header.console': string;
886
+ 'session.title': string;
887
+ 'session.new': string;
888
+ 'session.searchPlaceholder': string;
889
+ 'session.empty': string;
890
+ 'session.delete': string;
891
+ 'welcome.title': string;
892
+ 'welcome.assistantTitle': string;
893
+ 'welcome.description': string;
894
+ 'welcome.capability.skills.title': string;
895
+ 'welcome.capability.skills.description': string;
896
+ 'welcome.capability.generativeUi.title': string;
897
+ 'welcome.capability.generativeUi.description': string;
898
+ 'welcome.capability.transparency.title': string;
899
+ 'welcome.capability.transparency.description': string;
900
+ 'welcome.quickPrompts': string;
901
+ 'welcome.prompt.1': string;
902
+ 'welcome.prompt.2': string;
903
+ 'welcome.prompt.3': string;
904
+ 'welcome.prompt.4': string;
905
+ 'message.copy': string;
906
+ 'message.copied': string;
907
+ 'message.retry': string;
908
+ 'message.delete': string;
909
+ 'message.viewTrace': string;
910
+ 'message.skillsUsed': string;
911
+ 'tool.summary.one': string;
912
+ 'tool.summary.other': string;
913
+ 'tool.status.running': string;
914
+ 'tool.status.completed': string;
915
+ 'tool.status.failed': string;
916
+ 'tool.duration': string;
917
+ 'tool.args': string;
918
+ 'cot.thinking': string;
919
+ 'cot.thought': string;
920
+ 'cot.summary': string;
921
+ 'cot.reasoning': string;
922
+ 'cot.working': string;
923
+ 'trace.title': string;
924
+ 'trace.skill': string;
925
+ 'trace.phase.route': string;
926
+ 'trace.phase.activate': string;
927
+ 'trace.phase.execute': string;
928
+ 'trace.phase.interact': string;
929
+ 'trace.phase.complete': string;
930
+ 'trace.phase.fail': string;
931
+ 'interaction.ask.title': string;
932
+ 'interaction.confirm.title': string;
933
+ 'interaction.form.title': string;
934
+ 'interaction.select.title': string;
935
+ 'interaction.authorize.title': string;
936
+ 'interaction.authorize.description': string;
937
+ 'interaction.authorize.capability': string;
938
+ 'interaction.authorize.details': string;
939
+ 'interaction.submit': string;
940
+ 'interaction.cancel': string;
941
+ 'interaction.confirm': string;
942
+ 'interaction.allow': string;
943
+ 'interaction.deny': string;
944
+ 'interaction.required': string;
945
+ 'result.artifacts': string;
946
+ 'result.download': string;
947
+ 'result.file': string;
948
+ 'status.aria': string;
949
+ 'status.route': string;
950
+ 'status.activate': string;
951
+ 'status.execute': string;
952
+ 'status.interact': string;
953
+ 'status.complete': string;
954
+ 'status.failed': string;
955
+ 'status.cancelled': string;
956
+ 'banner.interrupted': string;
957
+ 'banner.description': string;
958
+ 'banner.resume': string;
959
+ 'composer.placeholder': string;
960
+ 'composer.inputLabel': string;
961
+ 'composer.send': string;
962
+ 'composer.stop': string;
963
+ 'composer.attachments': string;
964
+ 'composer.addAttachment': string;
965
+ 'composer.removeAttachment': string;
966
+ 'settings.title': string;
967
+ 'settings.model.title': string;
968
+ 'settings.model.description': string;
969
+ 'settings.provider': string;
970
+ 'settings.providerNote': string;
971
+ 'settings.provider.openai-compatible': string;
972
+ 'settings.provider.anthropic': string;
973
+ 'settings.provider.google': string;
974
+ 'settings.provider.anthropic.note': string;
975
+ 'settings.provider.google.note': string;
976
+ 'settings.endpoint': string;
977
+ 'settings.apiKey': string;
978
+ 'settings.modelName': string;
979
+ 'settings.streaming': string;
980
+ 'settings.streamingNote': string;
981
+ 'settings.temperature': string;
982
+ 'settings.temperatureNote': string;
983
+ 'settings.test': string;
984
+ 'settings.testing': string;
985
+ 'settings.available': string;
986
+ 'settings.unavailable': string;
987
+ 'settings.streamingSupported': string;
988
+ 'settings.nonStreamingFallback': string;
989
+ 'settings.demoBadge': string;
990
+ 'settings.demoNote': string;
991
+ 'settings.save': string;
992
+ 'settings.clear': string;
993
+ 'settings.appearance.title': string;
994
+ 'settings.appearance.description': string;
995
+ 'settings.theme': string;
996
+ 'settings.theme.light': string;
997
+ 'settings.theme.dark': string;
998
+ 'settings.language': string;
999
+ 'settings.language.en': string;
1000
+ 'settings.language.zh': string;
1001
+ 'settings.renderer': string;
1002
+ 'settings.renderer.description': string;
1003
+ 'settings.renderer.native': string;
1004
+ 'settings.renderer.a2ui': string;
1005
+ 'settings.renderer.openui': string;
1006
+ 'settings.renderer.vercel': string;
1007
+ 'vercel.preview.title': string;
1008
+ 'vercel.preview.badge': string;
1009
+ 'vercel.preview.description': string;
1010
+ 'error.title': string;
1011
+ 'error.suggestion': string;
1012
+ 'error.dismiss': string;
1013
+ };
1014
+ }>;
1015
+ //#endregion
1016
+ //#region src/react/appearance.d.ts
1017
+ /** chatbot 主题(根 div 挂 .dark 类生效) */
1018
+ type ChatTheme = 'light' | 'dark';
1019
+ /** SettingsDrawer 内切换外观时回调宿主持久化 */
1020
+ interface AppearanceChange {
1021
+ theme?: ChatTheme;
1022
+ locale?: Locale;
1023
+ /** 渲染框架档(native/a2ui);宿主持久化后经 Chatbot renderer prop 回注 */
1024
+ renderer?: RendererKind;
1025
+ }
1026
+ //#endregion
1027
+ //#region src/react/useChatLayout.d.ts
1028
+ /** 宿主可指定的布局档;auto 按容器尺寸判定 */
1029
+ type ChatLayout = 'auto' | 'fullscreen' | 'embedded';
1030
+ type ResolvedChatLayout = 'fullscreen' | 'embedded' | 'mobile';
1031
+ //#endregion
1032
+ //#region src/react/Chatbot.d.ts
1033
+ interface ChatbotProps {
1034
+ adapter: ChatbotHostAdapter;
1035
+ config?: ChatbotConfig;
1036
+ /** 界面语言(默认 'en';SettingsDrawer 内切换后经 onAppearanceChange 通知宿主) */
1037
+ locale?: Locale;
1038
+ /** 主题(默认 'light';'dark' 时根 div 挂 .dark 类) */
1039
+ theme?: ChatTheme;
1040
+ /** 交互渲染框架档(默认 'native';'a2ui' 需宿主安装 optional peer @a2ui/lit) */
1041
+ renderer?: RendererKind;
1042
+ /** Native custom surface 的显式 renderer/schema allowlist。 */
1043
+ surfaceRegistry?: SurfaceRegistry;
1044
+ /** 布局档(默认 'auto':按容器尺寸在 fullscreen / embedded / mobile 之间判定) */
1045
+ layout?: ChatLayout;
1046
+ onAppearanceChange?(next: AppearanceChange): void;
1047
+ }
1048
+ /**
1049
+ * ChatEngine owns message/session/runtime state while assistant-ui Base owns the
1050
+ * presentation shell and accessible thread primitives.
1051
+ */
1052
+ declare function Chatbot({ adapter, config, locale: localeProp, theme: themeProp, renderer: rendererProp, surfaceRegistry, layout, onAppearanceChange }: ChatbotProps): import("react").JSX.Element;
1053
+ //#endregion
1054
+ //#region src/react/A2uiSurfaceHost.d.ts
1055
+ interface A2uiSurfaceHostProps {
1056
+ bridge: ReactBridgeState;
1057
+ runId?: string;
1058
+ registry?: SurfaceRegistry;
1059
+ }
1060
+ interface A2uiSurfaceSnapshotHostProps {
1061
+ snapshots: readonly UiSurfaceSnapshot[];
1062
+ registry?: SurfaceRegistry;
1063
+ onAction?(event: UiSurfaceActionEvent): void;
1064
+ drafts?: UiSurfaceDrafts;
1065
+ onDraftChange?(event: {
1066
+ runId: string;
1067
+ surfaceId: string;
1068
+ value: Record<string, unknown>;
1069
+ }): void;
1070
+ }
1071
+ /** Renders persisted A2UI Basic Catalog surfaces and controlled WebSkill extensions without a live bridge. @experimental */
1072
+ declare function A2uiSurfaceSnapshotHost({ snapshots, registry, onAction, drafts, onDraftChange }: A2uiSurfaceSnapshotHostProps): import("react").JSX.Element | null;
1073
+ /** Renders A2UI Basic Catalog surfaces and controlled WebSkill extensions from live bridge snapshots. @experimental */
1074
+ declare function A2uiSurfaceHost({ bridge, runId, registry }: A2uiSurfaceHostProps): import("react").JSX.Element;
1075
+ //#endregion
1076
+ //#region src/react/SkillBadges.d.ts
1077
+ /** 消息底部展示该 run 激活的技能名徽章(无技能不渲染) */
1078
+ declare function SkillBadges({ skills }: {
1079
+ skills: string[];
1080
+ }): import("react").JSX.Element | null;
1081
+ //#endregion
1082
+ //#region src/react/InteractionCard.d.ts
1083
+ interface InteractionCardProps {
1084
+ bridge: ReactBridgeState;
1085
+ }
1086
+ /** 订阅 bridge.pending 渲染五类交互卡(ask/confirm/form/select/authorize,native) */
1087
+ declare function InteractionCard({ bridge }: InteractionCardProps): import("react").JSX.Element | null;
1088
+ //#endregion
1089
+ //#region src/react/OpenUiInteraction.d.ts
1090
+ interface OpenUiInteractionProps {
1091
+ channel: OpenUiChannel;
1092
+ }
1093
+ /**
1094
+ * openui 档交互视图:订阅 OpenUiChannel(core 产出 openui-lang 文本),动态加载
1095
+ * optional peer @openuidev/react-lang 的 Renderer 渲染;动作事件回传 channel.handleAction。
1096
+ * 模块加载失败 → channel.fail(桥粘性降级 native,InteractionCard 接管)。
1097
+ */
1098
+ declare function OpenUiInteraction({ channel }: OpenUiInteractionProps): import("react").JSX.Element | null;
1099
+ //#endregion
1100
+ //#region src/react/OpenUiSurfaceHost.d.ts
1101
+ interface OpenUiSurfaceHostProps {
1102
+ bridge: ReactBridgeState;
1103
+ runId?: string;
1104
+ registry?: SurfaceRegistry;
1105
+ }
1106
+ interface OpenUiSurfaceSnapshotHostProps {
1107
+ snapshots: readonly UiSurfaceSnapshot[];
1108
+ registry?: SurfaceRegistry;
1109
+ onAction?(event: UiSurfaceActionEvent): void;
1110
+ drafts?: UiSurfaceDrafts;
1111
+ onDraftChange?(event: {
1112
+ runId: string;
1113
+ surfaceId: string;
1114
+ value: Record<string, unknown>;
1115
+ }): void;
1116
+ }
1117
+ /** Renders persisted UiSurface snapshots through the OpenUI extension without a live bridge. @experimental */
1118
+ declare function OpenUiSurfaceSnapshotHost({ snapshots, registry, onAction, drafts, onDraftChange }: OpenUiSurfaceSnapshotHostProps): import("react").JSX.Element | null;
1119
+ /** Renders serializable UiSurface descriptors through an OpenUI library extension. @experimental */
1120
+ declare function OpenUiSurfaceHost({ bridge, runId, registry }: OpenUiSurfaceHostProps): import("react").JSX.Element;
1121
+ //#endregion
1122
+ //#region src/react/VercelPayloadPreview.d.ts
1123
+ interface VercelPayloadPreviewProps {
1124
+ bridge: ReactBridgeState;
1125
+ }
1126
+ /**
1127
+ * vercel 档(payload 预览):不渲染表单,展示 InteractionRequest 经 toVercelToolInvocation
1128
+ * 转换后的 Vercel AI SDK 数据契约 JSON 卡。仅提供 Cancel 结束交互(非完整运行时)。
1129
+ */
1130
+ declare function VercelPayloadPreview({ bridge }: VercelPayloadPreviewProps): import("react").JSX.Element | null;
1131
+ //#endregion
1132
+ //#region src/react/VercelSurfaceHost.d.ts
1133
+ interface VercelSurfaceHostProps {
1134
+ bridge: ReactBridgeState;
1135
+ runId?: string;
1136
+ registry?: SurfaceRegistry;
1137
+ }
1138
+ interface VercelSurfaceSnapshotHostProps {
1139
+ snapshots: readonly UiSurfaceSnapshot[];
1140
+ registry?: SurfaceRegistry;
1141
+ onAction?(event: UiSurfaceActionEvent): void;
1142
+ drafts?: UiSurfaceDrafts;
1143
+ onDraftChange?(event: {
1144
+ runId: string;
1145
+ surfaceId: string;
1146
+ value: Record<string, unknown>;
1147
+ }): void;
1148
+ }
1149
+ /** Renders persisted Vercel-compatible data parts without subscribing to a live bridge. @experimental */
1150
+ declare function VercelSurfaceSnapshotHost({ snapshots, registry, onAction, drafts, onDraftChange }: VercelSurfaceSnapshotHostProps): import("react").JSX.Element | null;
1151
+ /** Consumes Vercel-compatible surface data parts with a controlled React surface renderer. @experimental */
1152
+ declare function VercelSurfaceHost({ bridge, runId, registry }: VercelSurfaceHostProps): import("react").JSX.Element | null;
1153
+ //#endregion
1154
+ //#region src/react/ResultBlocksPro.d.ts
1155
+ /** 可下载文件描述(file 块与 artifact 统一成该形状) */
1156
+ interface DownloadableFile {
1157
+ path: string;
1158
+ /** 所属 run(artifact 存储路径 <chatRoot>/artifacts/<runId>/<path> 解析用) */
1159
+ runId?: string;
1160
+ mimeType?: string;
1161
+ size?: number;
1162
+ }
1163
+ interface ResultBlocksProProps {
1164
+ bridge: ReactBridgeState;
1165
+ /** 只在所属 run 仍活动时展示;完成结果块由 ChatMessage 历史承接。 */
1166
+ activeRunId?: string;
1167
+ /** 注入后 file 块 / artifact 渲染下载按钮(宿主负责读存储并触发浏览器下载) */
1168
+ onDownload?(file: DownloadableFile): void;
1169
+ }
1170
+ /** 按 blocks 直接渲染的形态(历史消息结果块;当前 run 走 ResultBlocksPro 的 bridge 路径) */
1171
+ interface ResultBlockListProps {
1172
+ blocks: RenderBlock[];
1173
+ /** 所属 run(file 块下载路径解析用) */
1174
+ runId: string;
1175
+ onDownload?(file: DownloadableFile): void;
1176
+ }
1177
+ /**
1178
+ * 结果块列表(AnimatePresence 逐块入场):markdown / json / table / chart / image / file。
1179
+ * 历史消息(ChatMessage.blocks)与当前 run(ResultBlocksPro)共用的渲染形态。
1180
+ */
1181
+ declare function ResultBlockList({ blocks, runId, onDownload }: ResultBlockListProps): import("react").JSX.Element;
1182
+ /**
1183
+ * run 完成结果块渐进挂载(AnimatePresence 逐块入场):
1184
+ * markdown / json / table / chart / image / file + artifact 下载卡。
1185
+ */
1186
+ declare function ResultBlocksPro({ bridge, activeRunId, onDownload }: ResultBlocksProProps): import("react").JSX.Element | null;
1187
+ //#endregion
1188
+ //#region src/react/InterruptedBanner.d.ts
1189
+ interface InterruptedBannerProps {
1190
+ engine: ChatEngine;
1191
+ /** 会话切换时重新检查(值变化即触发重新 listInterrupted) */
1192
+ sessionId?: string;
1193
+ }
1194
+ /**
1195
+ * 未完成对话提示条:挂载/会话切换时检查 interrupted 快照,非空则顶部 banner
1196
+ * + Resume(engine.resume 后等待中的表单重新进入 bridge.pending)。
1197
+ */
1198
+ declare function InterruptedBanner({ engine, sessionId }: InterruptedBannerProps): import("react").JSX.Element | null;
1199
+ //#endregion
1200
+ //#region src/react/SettingsDrawer.d.ts
1201
+ interface SettingsDrawerProps {
1202
+ open: boolean;
1203
+ llmConfig: ChatbotHostAdapter['llmConfig'];
1204
+ /**
1205
+ * 运行环境配置存储(P4-A):注入后表单读写 store 的 llm 段 + streaming + loop.temperature,
1206
+ * 保存后引擎 reloadConfig 装配生效;缺省回退 adapter.llmConfig 旧路径(仅 OpenAI 兼容)
1207
+ */
1208
+ runtimeConfig?: RuntimeConfigStore;
1209
+ theme: ChatTheme;
1210
+ locale: Locale;
1211
+ /** 当前渲染框架档(Appearance 区 Badge 展示;切换由宿主外观配置源完成) */
1212
+ renderer?: RendererKind;
1213
+ /** 主题/语言切换时回调(宿主借此持久化;内部 state 由 Chatbot 跟随) */
1214
+ onAppearanceChange?(next: AppearanceChange): void;
1215
+ /** 保存/清除成功后回调(Chatbot 借此触发 engine.reloadConfig) */
1216
+ onSaved(): void;
1217
+ onClose(): void;
1218
+ }
1219
+ /** 设置抽屉:LLM 配置(三协议供应商 / 能力探测 / Demo model 标识 / 流式与 temperature)+ 外观(主题/语言) */
1220
+ declare function SettingsDrawer({ open, llmConfig, runtimeConfig, theme, locale, renderer, onAppearanceChange, onSaved, onClose }: SettingsDrawerProps): import("react").JSX.Element;
1221
+ //#endregion
1222
+ //#region src/react/ErrorCard.d.ts
1223
+ interface ErrorCardProps {
1224
+ /** 稳定错误码(WebSkillError.code / RUN_FAILED;缺省不渲染徽章) */
1225
+ code?: string;
1226
+ message: string;
1227
+ onDismiss?(): void;
1228
+ }
1229
+ /** 结构化错误卡:错误码徽章 + 描述 + 建议(engine error 事件 / 失败 run) */
1230
+ declare function ErrorCard({ code, message, onDismiss }: ErrorCardProps): import("react").JSX.Element;
1231
+ //#endregion
1232
+ export { A2uiSurfaceHost, type A2uiSurfaceHostProps, A2uiSurfaceSnapshotHost, type A2uiSurfaceSnapshotHostProps, type AppearanceChange, type ChatAttachmentInput, type ChatAttachmentMeta, ChatEngine, type ChatEngineOptions, type ChatEvent, type ChatLayout, type ChatMessage, type ChatSessionMeta, type ChatTheme, type ChatToolCall, Chatbot, type ChatbotConfig, type ChatbotHostAdapter, type ChatbotProps, CompositeUiBridge, type CompositeUiBridgeDeps, type DownloadableFile, ErrorCard, type ErrorCardProps, InteractionCard, type InteractionCardProps, InterruptedBanner, type InterruptedBannerProps, type LlmConfig, type Locale, OpenUiChannel, OpenUiInteraction, type OpenUiInteractionProps, type OpenUiSession, OpenUiSurfaceHost, type OpenUiSurfaceHostProps, OpenUiSurfaceSnapshotHost, type OpenUiSurfaceSnapshotHostProps, type RendererKind, type ResolvedChatLayout, ResultBlockList, type ResultBlockListProps, ResultBlocksPro, type ResultBlocksProProps, type RunSnapshot, type RunTraceFile, type SandboxExecutorDeps, SettingsDrawer, type SettingsDrawerProps, SkillBadges, VercelPayloadPreview, type VercelPayloadPreviewProps, VercelSurfaceHost, type VercelSurfaceHostProps, VercelSurfaceSnapshotHost, type VercelSurfaceSnapshotHostProps, chatbotDictionary, configureA2uiMarkdown, probeA2uiAvailability, probeOpenUiAvailability, useT, writeRunTrace };