xonecode 0.2.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. package/README.md +49 -7
  2. package/THIRD_PARTY_NOTICES.md +128 -0
  3. package/apps/web/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  4. package/apps/web/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  5. package/apps/web/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  6. package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  7. package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  8. package/apps/web/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  9. package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  10. package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  11. package/apps/web/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  12. package/apps/web/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  13. package/apps/web/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  14. package/apps/web/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  15. package/apps/web/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  16. package/apps/web/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  17. package/apps/web/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  18. package/apps/web/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  19. package/apps/web/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  20. package/apps/web/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  21. package/apps/web/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  22. package/apps/web/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  23. package/apps/web/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  24. package/apps/web/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  25. package/apps/web/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  26. package/apps/web/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  27. package/apps/web/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  28. package/apps/web/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  29. package/apps/web/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  30. package/apps/web/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  31. package/apps/web/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  32. package/apps/web/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  33. package/apps/web/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  34. package/apps/web/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  35. package/apps/web/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  36. package/apps/web/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  37. package/apps/web/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  38. package/apps/web/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  39. package/apps/web/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  40. package/apps/web/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  41. package/apps/web/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  42. package/apps/web/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  43. package/apps/web/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  44. package/apps/web/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  45. package/apps/web/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  46. package/apps/web/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  47. package/apps/web/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  48. package/apps/web/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  49. package/apps/web/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  50. package/apps/web/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  51. package/apps/web/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  52. package/apps/web/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  53. package/apps/web/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  54. package/apps/web/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  55. package/apps/web/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  56. package/apps/web/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  57. package/apps/web/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  58. package/apps/web/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  59. package/apps/web/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  60. package/apps/web/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  61. package/apps/web/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  62. package/apps/web/dist/assets/c-BIGW1oBm.js +1 -0
  63. package/apps/web/dist/assets/cpp-DddhVWhK.js +1 -0
  64. package/apps/web/dist/assets/csharp-DSvCPggb.js +1 -0
  65. package/apps/web/dist/assets/css-CLj8gQPS.js +1 -0
  66. package/apps/web/dist/assets/go-C27-OAKa.js +1 -0
  67. package/apps/web/dist/assets/html-CfGypltT.js +1 -0
  68. package/apps/web/dist/assets/index-BB3SamhR.css +1 -0
  69. package/apps/web/dist/assets/index-CFYAoHdw.js +477 -0
  70. package/apps/web/dist/assets/ini-BEwlwnbL.js +1 -0
  71. package/apps/web/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
  72. package/apps/web/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
  73. package/apps/web/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
  74. package/apps/web/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
  75. package/apps/web/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  76. package/apps/web/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  77. package/apps/web/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  78. package/apps/web/dist/assets/java-CylS5w8V.js +1 -0
  79. package/apps/web/dist/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2 +0 -0
  80. package/apps/web/dist/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2 +0 -0
  81. package/apps/web/dist/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2 +0 -0
  82. package/apps/web/dist/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2 +0 -0
  83. package/apps/web/dist/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2 +0 -0
  84. package/apps/web/dist/assets/kotlin-BdnUsdx6.js +1 -0
  85. package/apps/web/dist/assets/less-B1dDrJ26.js +1 -0
  86. package/apps/web/dist/assets/lua-BaeVxFsk.js +1 -0
  87. package/apps/web/dist/assets/markdown-Cvjx9yec.js +1 -0
  88. package/apps/web/dist/assets/mdx-Cmh6b_Ma.js +1 -0
  89. package/apps/web/dist/assets/php-D_2--9WK.js +1 -0
  90. package/apps/web/dist/assets/python-B6aJPvgy.js +1 -0
  91. package/apps/web/dist/assets/ruby-DSHSDbk1.js +1 -0
  92. package/apps/web/dist/assets/rust-B1yitclQ.js +1 -0
  93. package/apps/web/dist/assets/scss-D5BDwBP9.js +1 -0
  94. package/apps/web/dist/assets/sql-CRqJ_cUM.js +1 -0
  95. package/apps/web/dist/assets/swift-C2oV4EkX.js +1 -0
  96. package/apps/web/dist/assets/toml-vGWfd6FD.js +1 -0
  97. package/apps/web/dist/assets/xml-sdJ4AIDG.js +1 -0
  98. package/apps/web/dist/assets/yaml-Buea-lGh.js +1 -0
  99. package/apps/web/dist/iconos/xonecode.png +0 -0
  100. package/apps/web/dist/index.html +20 -0
  101. package/dist/agent/agentesEnDisco.js +539 -0
  102. package/dist/agent/agentesEnDisco.js.map +1 -0
  103. package/dist/agent/arbolDeProyecto.js +245 -0
  104. package/dist/agent/arbolDeProyecto.js.map +1 -0
  105. package/dist/agent/artefactosEnDisco.js +139 -0
  106. package/dist/agent/artefactosEnDisco.js.map +1 -0
  107. package/dist/agent/aumentador.js +175 -0
  108. package/dist/agent/aumentador.js.map +1 -0
  109. package/dist/agent/authEnDisco.js +76 -1
  110. package/dist/agent/authEnDisco.js.map +1 -1
  111. package/dist/agent/busquedaRegex.js +92 -0
  112. package/dist/agent/busquedaRegex.js.map +1 -0
  113. package/dist/agent/catalogoModelos.js +345 -0
  114. package/dist/agent/catalogoModelos.js.map +1 -0
  115. package/dist/agent/checkpointer.js +127 -0
  116. package/dist/agent/checkpointer.js.map +1 -0
  117. package/dist/agent/cloudstudioClient.js +194 -0
  118. package/dist/agent/cloudstudioClient.js.map +1 -0
  119. package/dist/agent/cloudstudioMcp.js +722 -0
  120. package/dist/agent/cloudstudioMcp.js.map +1 -0
  121. package/dist/agent/configEnDisco.js +309 -11
  122. package/dist/agent/configEnDisco.js.map +1 -1
  123. package/dist/agent/consumoExterno.js +99 -0
  124. package/dist/agent/consumoExterno.js.map +1 -0
  125. package/dist/agent/descarga.js +149 -0
  126. package/dist/agent/descarga.js.map +1 -0
  127. package/dist/agent/diagnosticoDeTools.js +51 -0
  128. package/dist/agent/diagnosticoDeTools.js.map +1 -0
  129. package/dist/agent/dispositivosEnMaquina.js +596 -0
  130. package/dist/agent/dispositivosEnMaquina.js.map +1 -0
  131. package/dist/agent/escrituraDeCodex.js +134 -0
  132. package/dist/agent/escrituraDeCodex.js.map +1 -0
  133. package/dist/agent/escrituraDeOpencode.js +80 -0
  134. package/dist/agent/escrituraDeOpencode.js.map +1 -0
  135. package/dist/agent/escrituraExterna.js +742 -0
  136. package/dist/agent/escrituraExterna.js.map +1 -0
  137. package/dist/agent/gemini.js +81 -0
  138. package/dist/agent/gemini.js.map +1 -0
  139. package/dist/agent/git.js +83 -0
  140. package/dist/agent/git.js.map +1 -0
  141. package/dist/agent/gitSync.js +441 -0
  142. package/dist/agent/gitSync.js.map +1 -0
  143. package/dist/agent/hotswap.js +448 -0
  144. package/dist/agent/hotswap.js.map +1 -0
  145. package/dist/agent/instalacionEnMaquina.js +252 -0
  146. package/dist/agent/instalacionEnMaquina.js.map +1 -0
  147. package/dist/agent/instantanea.js +7 -10
  148. package/dist/agent/instantanea.js.map +1 -1
  149. package/dist/agent/interrupts.js +11 -2
  150. package/dist/agent/interrupts.js.map +1 -1
  151. package/dist/agent/juezDeTarea.js +345 -0
  152. package/dist/agent/juezDeTarea.js.map +1 -0
  153. package/dist/agent/lanzamientoEnMaquina.js +377 -0
  154. package/dist/agent/lanzamientoEnMaquina.js.map +1 -0
  155. package/dist/agent/manifiesto.js +59 -0
  156. package/dist/agent/manifiesto.js.map +1 -0
  157. package/dist/agent/memoriaDeProyecto.js +60 -0
  158. package/dist/agent/memoriaDeProyecto.js.map +1 -0
  159. package/dist/agent/modelos.js +105 -17
  160. package/dist/agent/modelos.js.map +1 -1
  161. package/dist/agent/modelosDeMotor.js +204 -0
  162. package/dist/agent/modelosDeMotor.js.map +1 -0
  163. package/dist/agent/paqueteDelProyecto.js +181 -0
  164. package/dist/agent/paqueteDelProyecto.js.map +1 -0
  165. package/dist/agent/perfiles.js +92 -31
  166. package/dist/agent/perfiles.js.map +1 -1
  167. package/dist/agent/persona.js +40 -0
  168. package/dist/agent/persona.js.map +1 -0
  169. package/dist/agent/procesosEnMaquina.js +204 -0
  170. package/dist/agent/procesosEnMaquina.js.map +1 -0
  171. package/dist/agent/proyecto.js +311 -13
  172. package/dist/agent/proyecto.js.map +1 -1
  173. package/dist/agent/puente.js +63 -6
  174. package/dist/agent/puente.js.map +1 -1
  175. package/dist/agent/resumenDeContexto.js +30 -0
  176. package/dist/agent/resumenDeContexto.js.map +1 -0
  177. package/dist/agent/resumenDeTool.js +64 -18
  178. package/dist/agent/resumenDeTool.js.map +1 -1
  179. package/dist/agent/sesionGit.js +481 -0
  180. package/dist/agent/sesionGit.js.map +1 -0
  181. package/dist/agent/settingsEnDisco.js +189 -0
  182. package/dist/agent/settingsEnDisco.js.map +1 -0
  183. package/dist/agent/subagenteCodex.js +368 -0
  184. package/dist/agent/subagenteCodex.js.map +1 -0
  185. package/dist/agent/subagenteExterno.js +423 -0
  186. package/dist/agent/subagenteExterno.js.map +1 -0
  187. package/dist/agent/subagenteOpencode.js +389 -0
  188. package/dist/agent/subagenteOpencode.js.map +1 -0
  189. package/dist/agent/subida.js +202 -0
  190. package/dist/agent/subida.js.map +1 -0
  191. package/dist/agent/tareasEnDisco.js +466 -0
  192. package/dist/agent/tareasEnDisco.js.map +1 -0
  193. package/dist/agent/turnoReal.js +663 -50
  194. package/dist/agent/turnoReal.js.map +1 -1
  195. package/dist/agent/versionEnDisco.js +48 -0
  196. package/dist/agent/versionEnDisco.js.map +1 -0
  197. package/dist/agent/xoneAgent.js +290 -49
  198. package/dist/agent/xoneAgent.js.map +1 -1
  199. package/dist/agent/zip.js +52 -0
  200. package/dist/agent/zip.js.map +1 -0
  201. package/dist/cli/acuseDeModelo.js +30 -0
  202. package/dist/cli/acuseDeModelo.js.map +1 -0
  203. package/dist/cli/aprobar.js +55 -2
  204. package/dist/cli/aprobar.js.map +1 -1
  205. package/dist/cli/config.js +9 -13
  206. package/dist/cli/config.js.map +1 -1
  207. package/dist/cli/consola.js +750 -19
  208. package/dist/cli/consola.js.map +1 -1
  209. package/dist/cli/main.js +740 -81
  210. package/dist/cli/main.js.map +1 -1
  211. package/dist/cli/markdown.js +188 -2
  212. package/dist/cli/markdown.js.map +1 -1
  213. package/dist/cli/run.js +32 -4
  214. package/dist/cli/run.js.map +1 -1
  215. package/dist/cli/stdio.js +46 -19
  216. package/dist/cli/stdio.js.map +1 -1
  217. package/dist/cli/tema.js +96 -8
  218. package/dist/cli/tema.js.map +1 -1
  219. package/dist/cli/tokens.js +29 -0
  220. package/dist/cli/tokens.js.map +1 -0
  221. package/dist/cli/tui/app.js +171 -0
  222. package/dist/cli/tui/app.js.map +1 -0
  223. package/dist/cli/tui/aprobarTui.js +80 -0
  224. package/dist/cli/tui/aprobarTui.js.map +1 -0
  225. package/dist/cli/tui/barra.js +37 -0
  226. package/dist/cli/tui/barra.js.map +1 -0
  227. package/dist/cli/tui/correrTui.js +478 -0
  228. package/dist/cli/tui/correrTui.js.map +1 -0
  229. package/dist/cli/tui/entrada.js +166 -0
  230. package/dist/cli/tui/entrada.js.map +1 -0
  231. package/dist/cli/tui/filas.js +24 -0
  232. package/dist/cli/tui/filas.js.map +1 -0
  233. package/dist/cli/tui/logo.js +49 -0
  234. package/dist/cli/tui/logo.js.map +1 -0
  235. package/dist/cli/tui/pielTui.js +14 -0
  236. package/dist/cli/tui/pielTui.js.map +1 -0
  237. package/dist/cli/tui/raton.js +126 -0
  238. package/dist/cli/tui/raton.js.map +1 -0
  239. package/dist/cli/tui/sidebar.js +86 -0
  240. package/dist/cli/tui/sidebar.js.map +1 -0
  241. package/dist/cli/tui/store.js +143 -0
  242. package/dist/cli/tui/store.js.map +1 -0
  243. package/dist/cli/tui/tarjeta.js +19 -0
  244. package/dist/cli/tui/tarjeta.js.map +1 -0
  245. package/dist/cli/tui/temaInk.js +114 -0
  246. package/dist/cli/tui/temaInk.js.map +1 -0
  247. package/dist/cli/tui/transcript.js +254 -0
  248. package/dist/cli/tui/transcript.js.map +1 -0
  249. package/dist/cli/wizardInicial.js +240 -0
  250. package/dist/cli/wizardInicial.js.map +1 -0
  251. package/dist/core/actos.js +113 -0
  252. package/dist/core/actos.js.map +1 -0
  253. package/dist/core/adjuntos.js +97 -0
  254. package/dist/core/adjuntos.js.map +1 -0
  255. package/dist/core/agentes.js +227 -0
  256. package/dist/core/agentes.js.map +1 -0
  257. package/dist/core/artefactos.js +149 -0
  258. package/dist/core/artefactos.js.map +1 -0
  259. package/dist/core/cloudstudio.js +7 -0
  260. package/dist/core/cloudstudio.js.map +1 -0
  261. package/dist/core/config.js +212 -5
  262. package/dist/core/config.js.map +1 -1
  263. package/dist/core/contextos.js +53 -1
  264. package/dist/core/contextos.js.map +1 -1
  265. package/dist/core/descargas.js +106 -0
  266. package/dist/core/descargas.js.map +1 -0
  267. package/dist/core/descriptoresDeApp.js +279 -0
  268. package/dist/core/descriptoresDeApp.js.map +1 -0
  269. package/dist/core/dispositivos.js +466 -0
  270. package/dist/core/dispositivos.js.map +1 -0
  271. package/dist/core/entrega.js +141 -0
  272. package/dist/core/entrega.js.map +1 -0
  273. package/dist/core/entrelazar.js +90 -0
  274. package/dist/core/entrelazar.js.map +1 -0
  275. package/dist/core/esqueleto.js +10 -0
  276. package/dist/core/esqueleto.js.map +1 -1
  277. package/dist/core/modelos.js +235 -3
  278. package/dist/core/modelos.js.map +1 -1
  279. package/dist/core/notify.js +27 -9
  280. package/dist/core/notify.js.map +1 -1
  281. package/dist/core/planDeSubida.js +127 -0
  282. package/dist/core/planDeSubida.js.map +1 -0
  283. package/dist/core/ports.js +189 -1
  284. package/dist/core/ports.js.map +1 -1
  285. package/dist/core/puedeLanzarse.js +239 -0
  286. package/dist/core/puedeLanzarse.js.map +1 -0
  287. package/dist/core/rutaVirtual.js +42 -0
  288. package/dist/core/rutaVirtual.js.map +1 -0
  289. package/dist/core/settings.js +246 -0
  290. package/dist/core/settings.js.map +1 -0
  291. package/dist/core/tareas.js +230 -0
  292. package/dist/core/tareas.js.map +1 -0
  293. package/dist/core/textos.js +36 -0
  294. package/dist/core/textos.js.map +1 -0
  295. package/dist/core/turno.js +70 -10
  296. package/dist/core/turno.js.map +1 -1
  297. package/dist/core/version.js +31 -0
  298. package/dist/core/version.js.map +1 -0
  299. package/dist/vendor/tokenTracking.js +22 -1
  300. package/dist/vendor/tokenTracking.js.map +1 -1
  301. package/dist/web/servidor/arranque.js +3964 -0
  302. package/dist/web/servidor/arranque.js.map +1 -0
  303. package/dist/web/servidor/consolaDeTarea.js +161 -0
  304. package/dist/web/servidor/consolaDeTarea.js.map +1 -0
  305. package/dist/web/servidor/consolaWeb.js +389 -0
  306. package/dist/web/servidor/consolaWeb.js.map +1 -0
  307. package/dist/web/servidor/corredorDeTareas.js +1119 -0
  308. package/dist/web/servidor/corredorDeTareas.js.map +1 -0
  309. package/dist/web/servidor/pielWeb.js +269 -0
  310. package/dist/web/servidor/pielWeb.js.map +1 -0
  311. package/dist/web/servidor/servidor.js +257 -0
  312. package/dist/web/servidor/servidor.js.map +1 -0
  313. package/dist/web/servidor/sesiones.js +440 -0
  314. package/dist/web/servidor/sesiones.js.map +1 -0
  315. package/dist/web/servidor/transporte.js +169 -0
  316. package/dist/web/servidor/transporte.js.map +1 -0
  317. package/dist/web/servidor/vestibulo.js +1276 -0
  318. package/dist/web/servidor/vestibulo.js.map +1 -0
  319. package/package.json +30 -8
  320. package/skills/archify/LICENSE +22 -0
  321. package/skills/archify/SKILL.md +109 -0
  322. package/skills/archify/THIRD_PARTY_NOTICES.md +56 -0
  323. package/skills/archify/assets/template.html +14787 -0
  324. package/skills/archify/bin/archify.mjs +1990 -0
  325. package/skills/archify/bin/open-artifact.mjs +86 -0
  326. package/skills/archify/bin/preview.mjs +648 -0
  327. package/skills/archify/bin/visual-check.mjs +829 -0
  328. package/skills/archify/brand-marks/README.md +31 -0
  329. package/skills/archify/brand-marks/catalog.json +131 -0
  330. package/skills/archify/delta/architecture-delta.mjs +1214 -0
  331. package/skills/archify/examples/agent-run.lifecycle.json +71 -0
  332. package/skills/archify/examples/agent-tool-call.workflow.json +94 -0
  333. package/skills/archify/examples/async-job-roundtrip.sequence.json +61 -0
  334. package/skills/archify/examples/brand-aware-delivery.architecture.json +47 -0
  335. package/skills/archify/examples/cache-miss-request.sequence.json +81 -0
  336. package/skills/archify/examples/checkout-platform.base.architecture.json +31 -0
  337. package/skills/archify/examples/checkout-platform.head.architecture.json +31 -0
  338. package/skills/archify/examples/dataflow-product-analytics.html +14898 -0
  339. package/skills/archify/examples/deployment-release.lifecycle.json +49 -0
  340. package/skills/archify/examples/event-stream.dataflow.json +57 -0
  341. package/skills/archify/examples/incident-response.workflow.json +64 -0
  342. package/skills/archify/examples/lifecycle-agent-run.html +14847 -0
  343. package/skills/archify/examples/product-analytics.dataflow.json +76 -0
  344. package/skills/archify/examples/production-deployment.architecture.json +71 -0
  345. package/skills/archify/examples/release-delivery.workflow.json +62 -0
  346. package/skills/archify/examples/sequence-cache-miss-request.html +14913 -0
  347. package/skills/archify/examples/web-app-rendered.html +14862 -0
  348. package/skills/archify/examples/web-app.architecture.json +46 -0
  349. package/skills/archify/examples/workflow-agent-tool-call-rendered.html +14904 -0
  350. package/skills/archify/migrations/workflow-v2.mjs +279 -0
  351. package/skills/archify/package.json +17 -0
  352. package/skills/archify/recipes/scenarios.mjs +391 -0
  353. package/skills/archify/references/authoring-contract.md +198 -0
  354. package/skills/archify/references/brand-marks.md +69 -0
  355. package/skills/archify/references/delivery-contract.md +116 -0
  356. package/skills/archify/references/viewer-runtime.md +45 -0
  357. package/skills/archify/renderers/architecture/grid.mjs +62 -0
  358. package/skills/archify/renderers/architecture/render-architecture.mjs +1078 -0
  359. package/skills/archify/renderers/dataflow/README.md +104 -0
  360. package/skills/archify/renderers/dataflow/render-dataflow.mjs +483 -0
  361. package/skills/archify/renderers/lifecycle/README.md +115 -0
  362. package/skills/archify/renderers/lifecycle/render-lifecycle.mjs +561 -0
  363. package/skills/archify/renderers/sequence/README.md +114 -0
  364. package/skills/archify/renderers/sequence/render-sequence.mjs +453 -0
  365. package/skills/archify/renderers/shared/brand-marks.mjs +563 -0
  366. package/skills/archify/renderers/shared/cli.mjs +218 -0
  367. package/skills/archify/renderers/shared/desktop-readability.mjs +26 -0
  368. package/skills/archify/renderers/shared/diagnostics.mjs +127 -0
  369. package/skills/archify/renderers/shared/engineering-profiles.mjs +157 -0
  370. package/skills/archify/renderers/shared/generated-brand-marks.mjs +2003 -0
  371. package/skills/archify/renderers/shared/generated-validators.mjs +13 -0
  372. package/skills/archify/renderers/shared/geometry.mjs +1423 -0
  373. package/skills/archify/renderers/shared/i18n.mjs +594 -0
  374. package/skills/archify/renderers/shared/layout-report.mjs +40 -0
  375. package/skills/archify/renderers/shared/legend.mjs +217 -0
  376. package/skills/archify/renderers/shared/output-path.mjs +321 -0
  377. package/skills/archify/renderers/shared/repository-evidence.mjs +235 -0
  378. package/skills/archify/renderers/shared/text-fit.mjs +49 -0
  379. package/skills/archify/renderers/shared/utils.mjs +232 -0
  380. package/skills/archify/renderers/shared/validator.mjs +86 -0
  381. package/skills/archify/renderers/workflow/README.md +223 -0
  382. package/skills/archify/renderers/workflow/render-workflow.mjs +35 -0
  383. package/skills/archify/renderers/workflow/workflow-compiler.mjs +4400 -0
  384. package/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +144 -0
  385. package/skills/archify/schemas/README.md +211 -0
  386. package/skills/archify/schemas/architecture.schema.json +176 -0
  387. package/skills/archify/schemas/common.schema.json +115 -0
  388. package/skills/archify/schemas/dataflow.schema.json +243 -0
  389. package/skills/archify/schemas/lifecycle.schema.json +266 -0
  390. package/skills/archify/schemas/sequence.schema.json +223 -0
  391. package/skills/archify/schemas/workflow.schema.json +428 -0
  392. package/skills/archify/scripts/check-render-output.mjs +835 -0
  393. package/skills/archify/scripts/check-update.mjs +1667 -0
  394. package/skills/archify/scripts/render-examples.mjs +26 -0
  395. package/skills/archify/scripts/update-contract.mjs +182 -0
  396. package/skills/archify/skill-release.json +10 -0
  397. package/skills/artifacts-builder/SKILL.md +120 -0
  398. package/skills/artifacts-builder/reference/diagramas.md +123 -0
  399. package/skills/artifacts-builder/reference/estilo.md +123 -0
  400. package/skills/artifacts-builder/reference/exportar-pdf.md +56 -0
  401. package/skills/artifacts-builder/reference/graficas.md +22 -0
  402. package/skills/artifacts-builder/scripts/bundle_artifact.py +109 -0
  403. package/skills/artifacts-builder/scripts/validate_artifact.py +345 -0
  404. package/skills/xone-hotswap/SKILL.md +185 -0
  405. package/skills/xone-hotswap/references/comandos.md +706 -0
  406. package/skills/xone-hotswap/references/conexion-y-despliegue.md +226 -0
package/README.md CHANGED
@@ -7,11 +7,15 @@ XOne es una plataforma propietaria de apps móviles nativas: se programa con XML
7
7
  `.xne`), JavaScript ES5 y un CSS propio. **No es desarrollo web** — no existe el DOM, ni
8
8
  `async/await` en el runtime, ni ningún framework tipo React.
9
9
 
10
+ `xonecode` a secas abre la **consola web** en el navegador: se eligen entorno y proyecto, se
11
+ baja la copia local y se trabaja desde ahí. `xonecode --cli` da la consola de terminal de
12
+ siempre, que es la que se ve aquí abajo.
13
+
10
14
  ```
11
- $ cd MiApp && xonecode
15
+ $ cd MiApp && xonecode --cli
12
16
 
13
17
  xonecode · MiApp (7 colls) · ollama/glm-5.3-flash:cloud · 0 tokens
14
- 13 comandos: /ayuda /config /describe /doctor /verify /modelo … /salir
18
+ 17 comandos: /ayuda /config /describe /doctor /verify /modelo /modelos /sync … /salir
15
19
 
16
20
  ─ MiApp (7 colls) · ollama/glm-5.3-flash:cloud · 0 tokens · /ayuda
17
21
  ❯ ¿qué colecciones tiene este proyecto?
@@ -27,31 +31,50 @@ El proyecto tiene 9 colecciones repartidas en 7 ficheros .xne: …
27
31
 
28
32
  | | |
29
33
  |---|---|
30
- | Consola interactiva | prompt, barra de estado, 13 comandos de barra, autocompletado con Tab |
34
+ | Consola web | la de omisión: servidor http en loopback con token, transcript por SSE, aprobación con diff, alta de entorno y proyecto |
35
+ | Consola interactiva | con `--cli`: stdio o TUI (Ink) con paneles, barra de estado, 17 comandos de barra, autocompletado con Tab |
31
36
  | Un disparo | `xonecode run "…"` — pipeable, para tuberías y CI |
32
37
  | Aprobación humana | el agente **para y pregunta** antes de escribir; sin un sí explícito, rechaza |
33
38
  | Verificador real | `xone-simulator` sobre el proyecto, con `/verify` y `xonecode verify` |
34
39
  | Multi-proveedor | Gemini, OpenAI, Anthropic y **Ollama local**, con modelo por papel |
35
40
  | Diagnóstico sin coste | `describe`, `doctor` y `config` no gastan una llamada al modelo |
41
+ | CloudStudio | copia local del proyecto, registrada en git (`refs/remotes/cloudstudio/<rama>`); `/sync` baja y sube |
36
42
 
37
43
  Lo que **todavía no hay**, y conviene saber antes de fiarse:
38
44
 
39
45
  - **Nadie verifica lo que el agente escribe.** El verificador existe y funciona, pero no
40
46
  corre dentro del turno: la consola te lo avisa en cada uno. Hay que lanzar `/verify`.
41
47
  - **No hay lazo** de plan → ejecuta → verifica → juzga → repara, con presupuestos.
42
- - **No usa los servidores MCP de XOne Studio**: el proyecto tiene que estar en disco.
43
- - **No hay TUI con paneles**; la consola es stdio.
48
+ - **La subida a CloudStudio es siempre interactiva.** El hueco de política para que el
49
+ juez la autorice solo cuando el trabajo está terminado (verificador en verde, árbol
50
+ limpio, nada pendiente de aprobar) está declarado, pero el juez todavía no existe.
44
51
 
45
52
  ## Instalación
46
53
 
47
54
  Requiere **Node ≥ 20** y, para verificar, [`xone-linter`](https://www.npmjs.com/package/xone-linter)
48
55
  (que instala el binario `xone-simulator`).
49
56
 
57
+ Para descargar y ejecutar la consola sin instalación global:
58
+
59
+ ```sh
60
+ npx xonecode
61
+ ```
62
+
63
+ `npx` instala el paquete en su caché y lo ejecuta. Para tener el comando disponible
64
+ directamente en la terminal:
65
+
66
+ ```sh
67
+ npm install -g xonecode
68
+ xonecode
69
+ ```
70
+
71
+ Para desarrollar desde el código fuente:
72
+
50
73
  ```sh
51
74
  git clone https://github.com/sleiva/xonecode && cd xonecode
52
75
  npm install
53
76
  npm run build
54
- npm link # o: ln -sf "$PWD/dist/bin.js" ~/.local/bin/xonecode
77
+ npm link
55
78
  ```
56
79
 
57
80
  Comprueba que el entorno está listo, sin gastar nada:
@@ -68,6 +91,8 @@ Dos ficheros con dos ciclos de vida distintos, y **las claves nunca van en el pr
68
91
  | Fichero | Qué lleva |
69
92
  |---|---|
70
93
  | `<proyecto>/.xonecode/config.json` | modelos y proveedores. **Rechaza claves de API.** |
94
+ | `<proyecto>/.xonecode/memoria.md` | decisiones, convenciones y pendientes confirmados. El agente solo la ve como `/MEMORIA_PROYECTO.md`; escribirla pide aprobación. |
95
+ | `<proyecto>/.xonecode/conversation_history/` | historial técnico descargado al resumir contexto. Es interno: no se expone al agente ni se mezcla con la app. |
71
96
  | `~/.xonecode/config.json` | lo mismo, para todos los proyectos |
72
97
  | `~/.xonecode/auth.json` | las credenciales, con modo **0600**. Se escribe con `/provider <nombre>` |
73
98
 
@@ -84,6 +109,10 @@ Precedencia, y cada valor recuerda de dónde vino (`xonecode config` lo dice):
84
109
  --modelo-<papel> > --modelo > XONECODE_MODELO > proyecto > global > omisión
85
110
  ```
86
111
 
112
+ `/modelos <proveedor>` consulta el catálogo vivo del proveedor, filtra modelos de
113
+ conversación y permite guardar una selección global para `rapido`, `trabajo` o `afilado`.
114
+ Las claves siguen exclusivamente en `~/.xonecode/auth.json`; `/provider` solo las configura.
115
+
87
116
  Hay **tres papeles** porque el reparto es la palanca de coste: `rapido` corre en todos los
88
117
  turnos, `trabajo` desarrolla y `afilado` está reservado al juez. Por omisión, Ollama local.
89
118
 
@@ -93,7 +122,7 @@ Las decisiones que explican la forma del código. Ninguna es preferencia estéti
93
122
  salen de un fallo medido.
94
123
 
95
124
  **El motor de turno no sabe pintar.** `core/turno.ts` consume eventos de dominio y decide
96
- qué se cuenta; la consola de stdio y (en su día) la TUI son pieles. Así el turno se prueba
125
+ qué se cuenta; la consola de stdio y la TUI son pieles. Así el turno se prueba
97
126
  entero sin montar un renderizador.
98
127
 
99
128
  **Frontera de imports, y está probada.** `core/` es TypeScript puro: no importa langchain,
@@ -101,6 +130,13 @@ langgraph, deepagents, MCP, Ink ni React. Toda la suciedad del grafo vive en `ag
101
130
  un test que recorre los ficheros de `core/` y falla si aparece un import prohibido — una
102
131
  convención que nadie verifica dura dos semanas.
103
132
 
133
+ **La TUI es una piel, y su frontera también está probada.** Ink y React viven SOLO en
134
+ `src/cli/tui/`: otro test recorre `src/` y falla si un import de ink o react se cuela fuera
135
+ — el mismo truco. Y el lazo de comandos es UNO: la TUI no lo duplica, se lo inyectan, así
136
+ que `/config` llama a la misma función con stdio y con la TUI. La TUI monta por omisión solo
137
+ con un terminal de verdad en ambos lados; cualquier tubería cae al stdio de siempre, y por
138
+ eso los pipes y CI siguen viendo la salida byte-idéntica de siempre.
139
+
104
140
  **Todo lo caro entra por un puerto, con su doble al lado.** Consecuencia buscada: la suite
105
141
  entera corre **sin API, sin red y sin el simulador**.
106
142
 
@@ -150,9 +186,13 @@ El 2 es deliberado: un turno que se quedó esperando un permiso que nadie dio **
150
186
  ```sh
151
187
  npm run typecheck # tsc --noEmit
152
188
  npm test # la suite entera, sin red ni claves
189
+ npm run build:web # solo el cliente web (vite) — `npm run build` ya lo incluye
153
190
  ./bin/xonecode … # corre el TypeScript con tsx: siempre el código actual
154
191
  ```
155
192
 
193
+ La consola web necesita el build del cliente en `apps/web/dist`. Sin él, `xonecode` dice
194
+ «falta el build del cliente» y sale con **70** (fallo del entorno, no del proyecto).
195
+
156
196
  `npm test` no puede necesitar una clave ni una conexión. Si un cambio lo rompe, está mal el
157
197
  cambio, no el test.
158
198
 
@@ -161,6 +201,8 @@ copiaron en vez de publicarse aparte porque son 290 líneas y no merecen un paqu
161
201
 
162
202
  ## Más
163
203
 
204
+ - [`docs/DECISIONES.md`](docs/DECISIONES.md) — el porqué medido de cada decisión, párrafo
205
+ por párrafo: lo que vivía en `CLAUDE.md` hasta que ese fichero volvió a ser solo el mapa
164
206
  - [`docs/COMO-PROBARLO.md`](docs/COMO-PROBARLO.md) — la guía de pruebas, paso a paso
165
207
  - [`docs/PROBLEMA.md`](docs/PROBLEMA.md) — el enunciado del que salió el diseño
166
208
  - [`docs/SEGUNDA-OPINION-K3.md`](docs/SEGUNDA-OPINION-K3.md) — una segunda opinión
@@ -0,0 +1,128 @@
1
+ # Avisos de terceros
2
+
3
+ ## deepseek-harness (estilos de `apps/web/estilos/`)
4
+
5
+ Los seis ficheros CSS de `apps/web/estilos/` (`base.css`, `corner-shape.css`,
6
+ `design-platform.css`, `gradient-shadow-text.css`, `scrollbar.css`, `shiki.css`) están
7
+ tomados, sin cambios en su contenido, de:
8
+
9
+ deepseek-harness — packages/client/ui-theme/src/styles/
10
+
11
+ Cada fichero lleva su propia cabecera de atribución. No se ha copiado ningún logo,
12
+ wordmark ni otro activo de marca de DeepSeek — solo tokens de diseño (variables CSS
13
+ `--dsw-*`, sin renombrar todavía: ver comentario en `apps/web/estilos/`) y reglas CSS.
14
+
15
+ Licencia del proyecto de origen (MIT):
16
+
17
+ ```
18
+ MIT License
19
+
20
+ Copyright (c) 2026 DeepSeek
21
+
22
+ Permission is hereby granted, free of charge, to any person obtaining a copy
23
+ of this software and associated documentation files (the "Software"), to deal
24
+ in the Software without restriction, including without limitation the rights
25
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
26
+ copies of the Software, and to permit persons to whom the Software is
27
+ furnished to do so, subject to the following conditions:
28
+
29
+ The above copyright notice and this permission notice shall be included in all
30
+ copies or substantial portions of the Software.
31
+
32
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
33
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
34
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
35
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
36
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
37
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
38
+ SOFTWARE.
39
+ ```
40
+
41
+ ## deepseek-harness (CSS de componentes de `apps/web/estilos/`)
42
+
43
+ Además de las hojas de tokens de la sección anterior, `apps/web/estilos/` lleva el CSS de
44
+ COMPONENTES de deepseek, para que la consola web use el mismo CSS y recolorearla sea
45
+ cambiar valores de token en un sitio en vez de editar componentes. Cada fichero lleva su
46
+ propia cabecera de atribución, que dice si es copia entera o RECORTE y —cuando es
47
+ recorte— qué se dejó fuera y por qué.
48
+
49
+ | fichero en `apps/web/estilos/` | origen (`packages/client/…`) | paquete | licencia | líneas copiadas |
50
+ |---|---|---|---|---|
51
+ | `AppFrame.module.css` | `ui-layout/src/client/AppFrame.module.css` | `@deepseek-ai/dsh-client-ui-layout` | MIT | 119 (entero) |
52
+ | `SidebarRoot.module.css` | `ui-sidebar/src/client/SidebarRoot.module.css` | `@deepseek-ai/dsh-client-ui-sidebar` | MIT | 359 (entero) |
53
+ | `ConversationRoot.module.css` | `ui-conversation/src/client/skeleton/ConversationRoot.module.css` | `@deepseek-ai/dsh-client-ui-conversation` | MIT | 238 de 452 (recorte) |
54
+ | `ChatView.module.css` | `ui-chat/src/client/chat/ChatView.module.css` | `@deepseek-ai/dsh-client-ui-chat` | MIT | 58 de 223 (recorte) |
55
+ | `WorkspaceBrowser.module.css` | `ui-workspace/src/client/rows/WorkspaceBrowser.module.css` | `@deepseek-ai/dsh-client-ui-workspace` | MIT | 138 de 505 (recorte) |
56
+ | `Rows.module.css` | `ui-workspace/src/client/rows/Rows.module.css` | `@deepseek-ai/dsh-client-ui-workspace` | MIT | 179 de 368 (recorte) |
57
+ | `SettingsRoot.module.css` | `ui-settings-general/src/client/SettingsRoot.module.css` | `@deepseek-ai/dsh-client-ui-settings-general` | MIT | 57 de 236 (recorte) |
58
+ | `AgentPresetLabel.module.css` | `ui-agent-preset/src/client/AgentPresetLabel.module.css` | `@deepseek-ai/dsh-client-ui-agent-preset` | MIT | 22 de 23 (recorte) |
59
+
60
+ La licencia es MIT en los OCHO casos, declarada por el `package.json` de cada paquete en
61
+ el árbol de fuentes (`"license": "MIT"`, versión `0.1.2-rc.1`). Es la misma MIT que ya
62
+ está transcrita en la primera sección de este fichero; no se repite.
63
+
64
+ **Ojo con la sección siguiente**: el paquete de npm `@deepseek-ai/dsh-client-ui-primitives`
65
+ que este repo INSTALA declara BSD-3-Clause, no MIT. Los CSS de arriba vienen del árbol de
66
+ FUENTES; el paquete instalado es otra cosa y va bajo otra licencia. Se dejan las dos
67
+ constancias por separado a propósito, y no una que cubra las dos.
68
+
69
+ **Nada de marca.** Ninguna de estas hojas trae un activo de marca: son reglas de
70
+ geometría y color por token. `SidebarRoot.module.css` da la geometría de las ranuras
71
+ `.brand`/`.brandName`, y quien las ocupa aquí es el nombre de xonecode; `.brandMark`
72
+ —donde el original monta su `FishLogo`— se queda vacía.
73
+
74
+ **Una línea que NO se copió, y es un hallazgo.** `AgentPresetLabel.module.css` declara
75
+ `background: var(--dsw-alias-fill-tsp-secondary)`, y ese alias no está definido en NINGÚN
76
+ CSS de deepseek-harness (comprobado con `grep -rn -- "--dsw-alias-fill-tsp-secondary:"
77
+ --include='*.css'` sobre el árbol entero: cero resultados). Un alias que no existe
78
+ resuelve a transparente sin dar error. Se copia la hoja sin esa declaración, en vez de
79
+ inventarle un relleno que el original nunca pinta.
80
+
81
+ ## deepseek-harness (paquete `@deepseek-ai/dsh-client-ui-primitives`)
82
+
83
+ `apps/web` instala `@deepseek-ai/dsh-client-ui-primitives@0.0.1-rc.1` (npm) para
84
+ `MarkdownText` (Chat) y `ConnectionBanner`, en vez de la combinación `marked` +
85
+ `dompurify` de la Task 13 (Task 13b).
86
+
87
+ Corrección sobre el encargo de la tarea: pedía documentarlo como MIT «igual que el CSS»
88
+ de más arriba, pero el propio `package.json` del paquete instalado declara
89
+ `"license": "BSD-3-Clause"`, y el fichero `LICENSE` que trae el tarball es, en efecto,
90
+ BSD de 3 cláusulas — no MIT. Los seis CSS de la sección de arriba y este paquete de npm
91
+ vienen del mismo repositorio (`deepseek-harness`) pero bajo licencias DISTINTAS; se deja
92
+ constancia aquí en vez de copiar el aviso equivocado.
93
+
94
+ Licencia real del paquete (BSD 3-Clause), tomada de su `LICENSE`:
95
+
96
+ ```
97
+ BSD 3-Clause License
98
+
99
+ Copyright (c) 2026, DeepSeek
100
+
101
+ Redistribution and use in source and binary forms, with or without
102
+ modification, are permitted provided that the following conditions are met:
103
+
104
+ 1. Redistributions of source code must retain the above copyright notice, this
105
+ list of conditions and the following disclaimer.
106
+
107
+ 2. Redistributions in binary form must reproduce the above copyright notice,
108
+ this list of conditions and the following disclaimer in the documentation
109
+ and/or other materials provided with the distribution.
110
+
111
+ 3. Neither the name of the copyright holder nor the names of its
112
+ contributors may be used to endorse or promote products derived from
113
+ this software without specific prior written permission.
114
+
115
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
116
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
117
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
118
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
119
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
120
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
121
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
122
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
123
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
124
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
125
+ ```
126
+
127
+ Ningún logo ni wordmark de DeepSeek se usa: `FishLogo` y `BrandWordmark`, que el paquete
128
+ exporta, no se importan en ningún fichero de este repositorio (XOne no es DeepSeek).