@mymuse/cli 0.0.0-stage → 1.0.40

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 (485) hide show
  1. package/LICENSE.md +12 -0
  2. package/README.md +625 -2
  3. package/bin/dscode.exe +12 -0
  4. package/bin/stt/requirements.txt +32 -0
  5. package/bin/stt/stt_server.py +619 -0
  6. package/bin/tts/requirements.txt +21 -0
  7. package/bin/tts/tts_server.py +404 -0
  8. package/cli-wrapper.cjs +109 -0
  9. package/install.cjs +177 -0
  10. package/llms.txt +88 -0
  11. package/package.json +56 -4
  12. package/scripts/figure/compose.py +363 -0
  13. package/scripts/figure/replay-shots.mjs +205 -0
  14. package/web/dist/assets/AssistantsView-BiUiWjhF.js +1 -0
  15. package/web/dist/assets/AutomationView-Dcf_yNaI.js +1 -0
  16. package/web/dist/assets/ChannelConfigView-BLnxsMGm.js +8 -0
  17. package/web/dist/assets/ConnectorsView-CX3E6X6c.js +1 -0
  18. package/web/dist/assets/DesignSystemView--x-P-lpD.js +1 -0
  19. package/web/dist/assets/Drawer-CjAgqH3B.js +1 -0
  20. package/web/dist/assets/FileTreeView-Chb_fzTK.js +11 -0
  21. package/web/dist/assets/HookConfigView-EafYlWdN.js +1 -0
  22. package/web/dist/assets/InputArea-BbHslX7b.js +50 -0
  23. package/web/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  24. package/web/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  25. package/web/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  26. package/web/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  27. package/web/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  28. package/web/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  29. package/web/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  30. package/web/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  31. package/web/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  32. package/web/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  33. package/web/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  34. package/web/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  35. package/web/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  36. package/web/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  37. package/web/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  38. package/web/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  39. package/web/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  40. package/web/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  41. package/web/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  42. package/web/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  43. package/web/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  44. package/web/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  45. package/web/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  46. package/web/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  47. package/web/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  48. package/web/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  49. package/web/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  50. package/web/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  51. package/web/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  52. package/web/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  53. package/web/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  54. package/web/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  55. package/web/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  56. package/web/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  57. package/web/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  58. package/web/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  59. package/web/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  60. package/web/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  61. package/web/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  62. package/web/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  63. package/web/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  64. package/web/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  65. package/web/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  66. package/web/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  67. package/web/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  68. package/web/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  69. package/web/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  70. package/web/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  71. package/web/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  72. package/web/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  73. package/web/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  74. package/web/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  75. package/web/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  76. package/web/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  77. package/web/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  78. package/web/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  79. package/web/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  80. package/web/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  81. package/web/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  82. package/web/dist/assets/ModelsView-CGN5Nljr.js +1 -0
  83. package/web/dist/assets/PluginsView-CDiJgvI8.js +2 -0
  84. package/web/dist/assets/ProjectsView-C5Usmwqy.js +1 -0
  85. package/web/dist/assets/SessionGrid-BGpz0-op.css +1 -0
  86. package/web/dist/assets/SessionGrid-Drxg0r_u.js +4 -0
  87. package/web/dist/assets/SettingsModal-Cmts6aBG.js +10 -0
  88. package/web/dist/assets/Skeleton-Dsk6B0U3.js +1 -0
  89. package/web/dist/assets/SkillsView-TEDR_3XX.js +1 -0
  90. package/web/dist/assets/TemplatesTab-DtN5Kdgh.js +1 -0
  91. package/web/dist/assets/ToolsView-VukZnIt1.js +1 -0
  92. package/web/dist/assets/VizCardsSkeleton-C_GaEfXd.js +1 -0
  93. package/web/dist/assets/abap-BdImnpbu.js +1 -0
  94. package/web/dist/assets/abnfDiagram-YUKMZFIV-BIFw6B_N.js +1 -0
  95. package/web/dist/assets/actionscript-3-B3316cI-.js +1 -0
  96. package/web/dist/assets/ada-bCR0ucgS.js +1 -0
  97. package/web/dist/assets/ahk-CsyLZFj1.js +1 -0
  98. package/web/dist/assets/ahk2-8Zs4aa1G.js +1 -0
  99. package/web/dist/assets/andromeeda-C4gqWexZ.js +1 -0
  100. package/web/dist/assets/angular-html-DA-rfuFy.js +1 -0
  101. package/web/dist/assets/angular-ts-BrjP3tb8.js +1 -0
  102. package/web/dist/assets/apache-Pmp26Uib.js +1 -0
  103. package/web/dist/assets/apex-DhZFqWV2.js +1 -0
  104. package/web/dist/assets/apl-CORt7UWP.js +1 -0
  105. package/web/dist/assets/applescript-Co6uUVPk.js +1 -0
  106. package/web/dist/assets/ara-BRHolxvo.js +1 -0
  107. package/web/dist/assets/arc-BZQ951h9.js +1 -0
  108. package/web/dist/assets/architectureDiagram-47P4ROYG-BP5qiXzf.js +36 -0
  109. package/web/dist/assets/asciidoc-CSVQ5wI8.js +1 -0
  110. package/web/dist/assets/asm-D_Q5rh1f.js +1 -0
  111. package/web/dist/assets/astro-HNnZUWAn.js +1 -0
  112. package/web/dist/assets/aurora-x-D-2ljcwZ.js +1 -0
  113. package/web/dist/assets/awk-DMzUqQB5.js +1 -0
  114. package/web/dist/assets/ayu-dark-DYE7WIF3.js +1 -0
  115. package/web/dist/assets/ayu-light-BA47KaF1.js +1 -0
  116. package/web/dist/assets/ayu-mirage-32ctXXKs.js +1 -0
  117. package/web/dist/assets/ballerina-BFfxhgS-.js +1 -0
  118. package/web/dist/assets/bat-CickPsom.js +1 -0
  119. package/web/dist/assets/beancount-k_qm7-4y.js +1 -0
  120. package/web/dist/assets/berry-uYugtg8r.js +1 -0
  121. package/web/dist/assets/bibtex-CHM0blh-.js +1 -0
  122. package/web/dist/assets/bicep-Bmn6On1c.js +1 -0
  123. package/web/dist/assets/bird2-Bx8U0n9b.js +1 -0
  124. package/web/dist/assets/blade-2xfisSek.js +1 -0
  125. package/web/dist/assets/blockDiagram-E7TT5TSB-DtRpcE7F.js +140 -0
  126. package/web/dist/assets/bsl-DlhNcFeZ.js +1 -0
  127. package/web/dist/assets/c-BIGW1oBm.js +1 -0
  128. package/web/dist/assets/c3-Dp5svz6Z.js +1 -0
  129. package/web/dist/assets/c4Diagram-CRA5TL53-Gdzn8UBh.js +38 -0
  130. package/web/dist/assets/cadence-Bv_4Rxtq.js +1 -0
  131. package/web/dist/assets/cairo-KRGpt6FW.js +1 -0
  132. package/web/dist/assets/catppuccin-frappe-CZL1YF0i.js +1 -0
  133. package/web/dist/assets/catppuccin-latte-DH-8KZSZ.js +1 -0
  134. package/web/dist/assets/catppuccin-macchiato-B7yYVSCf.js +1 -0
  135. package/web/dist/assets/catppuccin-mocha-Ct7hS0mc.js +1 -0
  136. package/web/dist/assets/channel-BND6_KSH.js +1 -0
  137. package/web/dist/assets/chapel-DTp_pixX.js +1 -0
  138. package/web/dist/assets/chunk-2Q5K7J3B-3U6HMlsm.js +1 -0
  139. package/web/dist/assets/chunk-5VM5RSS4-CYl9mwa-.js +15 -0
  140. package/web/dist/assets/chunk-7TKQ45FW-Dn6ktcY5.js +1 -0
  141. package/web/dist/assets/chunk-AW2ZBBNX-De0QX6p1.js +88 -0
  142. package/web/dist/assets/chunk-FVRAUYC3-CpXDfvz4.js +2 -0
  143. package/web/dist/assets/chunk-HTAEGDNF-D1KDvcDd.js +1 -0
  144. package/web/dist/assets/chunk-JWPE2WC7-umm4A-fq.js +1 -0
  145. package/web/dist/assets/chunk-KQW6MTUR-JYH94hpE.js +1 -0
  146. package/web/dist/assets/chunk-XXDRQBXY-CSlCFByc.js +1 -0
  147. package/web/dist/assets/clarity-Dn5IMItf.js +1 -0
  148. package/web/dist/assets/classDiagram-v2-K4WV4PDN-DnFwS0qN.js +217 -0
  149. package/web/dist/assets/clojure-P80f7IUj.js +1 -0
  150. package/web/dist/assets/cmake-D1j8_8rp.js +1 -0
  151. package/web/dist/assets/cobol-nBiQ_Alo.js +1 -0
  152. package/web/dist/assets/codeowners-Bp6g37R7.js +1 -0
  153. package/web/dist/assets/codeql-DsOJ9woJ.js +1 -0
  154. package/web/dist/assets/coffee-Ch7k5sss.js +1 -0
  155. package/web/dist/assets/common-lisp-Cg-RD9OK.js +1 -0
  156. package/web/dist/assets/coq-C7JzOVbR.js +1 -0
  157. package/web/dist/assets/cose-bilkent-JH36ORCC-BxUTUyep.js +1 -0
  158. package/web/dist/assets/cpp-BMRokrvK.js +1 -0
  159. package/web/dist/assets/crystal-DGywbUpC.js +1 -0
  160. package/web/dist/assets/csharp-DSvCPggb.js +1 -0
  161. package/web/dist/assets/css-CLj8gQPS.js +1 -0
  162. package/web/dist/assets/csv-fuZLfV_i.js +1 -0
  163. package/web/dist/assets/cue-D82EKSYY.js +1 -0
  164. package/web/dist/assets/cynefin-EF2NZ3EQ-CiMvulJr.js +141 -0
  165. package/web/dist/assets/cynefinDiagram-3GCD6N5R-DuXFORdW.js +62 -0
  166. package/web/dist/assets/cypher-COkxafJQ.js +1 -0
  167. package/web/dist/assets/cytoscape.esm-Ix0LnXOy.js +331 -0
  168. package/web/dist/assets/d-85-TOEBH.js +1 -0
  169. package/web/dist/assets/dagre-W4DXFKR2-DzMZHXci.js +4 -0
  170. package/web/dist/assets/dark-plus-C3mMm8J8.js +1 -0
  171. package/web/dist/assets/dart-bE4Kk8sk.js +1 -0
  172. package/web/dist/assets/dax-CEL-wOlO.js +1 -0
  173. package/web/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
  174. package/web/dist/assets/desktop-BmXAJ9_W.js +1 -0
  175. package/web/dist/assets/diagram-2UJZ2QOL-B6tO5G1v.js +200 -0
  176. package/web/dist/assets/diagram-OVF4WLC6-DRZt8tGc.js +24 -0
  177. package/web/dist/assets/diagram-PFPMY2P6-DGh6IecR.js +30 -0
  178. package/web/dist/assets/diagram-UMYRVEAY-BLbnt0yT.js +24 -0
  179. package/web/dist/assets/diagram-YEKJPTXX-C-S5DVhj.js +41 -0
  180. package/web/dist/assets/diagram-ZIFT7M5P-JrGHTWbo.js +3 -0
  181. package/web/dist/assets/diff-D97Zzqfu.js +1 -0
  182. package/web/dist/assets/docker-BcOcwvcX.js +1 -0
  183. package/web/dist/assets/dotenv-Da5cRb03.js +1 -0
  184. package/web/dist/assets/dracula-BzJJZx-M.js +1 -0
  185. package/web/dist/assets/dracula-soft-BXkSAIEj.js +1 -0
  186. package/web/dist/assets/dream-maker-BtqSS_iP.js +1 -0
  187. package/web/dist/assets/ebnfDiagram-VR2GEFS7-DPXA-YOi.js +1 -0
  188. package/web/dist/assets/edge-FbVlp4U3.js +1 -0
  189. package/web/dist/assets/elixir-CkH2-t6x.js +1 -0
  190. package/web/dist/assets/elk-IJKZMXRS-CINeWt2W.js +27 -0
  191. package/web/dist/assets/elm-DbKCFpqz.js +1 -0
  192. package/web/dist/assets/emacs-lisp-C_m_b--Z.js +1 -0
  193. package/web/dist/assets/erDiagram-O2IAPWRE-PPaHmqA1.js +99 -0
  194. package/web/dist/assets/erb-DXfck5VN.js +1 -0
  195. package/web/dist/assets/erlang-DsQrWhSR.js +1 -0
  196. package/web/dist/assets/everforest-dark-BgDCqdQA.js +1 -0
  197. package/web/dist/assets/everforest-light-C8M2exoo.js +1 -0
  198. package/web/dist/assets/fennel-BYunw83y.js +1 -0
  199. package/web/dist/assets/fish-BvzEVeQv.js +1 -0
  200. package/web/dist/assets/flowDiagram-OXPTDLAJ-t-u0QXEA.js +213 -0
  201. package/web/dist/assets/fluent-C4IJs8-o.js +1 -0
  202. package/web/dist/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
  203. package/web/dist/assets/fortran-free-form-BxgE0vQu.js +1 -0
  204. package/web/dist/assets/fsharp-CXgrBDvD.js +1 -0
  205. package/web/dist/assets/ganttDiagram-R7TSEDQI-Bw49ZD_b.js +292 -0
  206. package/web/dist/assets/gdresource-TyuKm33G.js +1 -0
  207. package/web/dist/assets/gdscript-DqcFQ5yU.js +1 -0
  208. package/web/dist/assets/gdshader-DkwncUOv.js +1 -0
  209. package/web/dist/assets/genie-D0YGMca9.js +1 -0
  210. package/web/dist/assets/gherkin-DyxjwDmM.js +1 -0
  211. package/web/dist/assets/git-commit-F4YmCXRG.js +1 -0
  212. package/web/dist/assets/git-rebase-r7XF79zn.js +1 -0
  213. package/web/dist/assets/gitGraphDiagram-XJZIOB7I-BAfOqeeg.js +106 -0
  214. package/web/dist/assets/github-dark-DHJKELXO.js +1 -0
  215. package/web/dist/assets/github-dark-default-Cuk6v7N8.js +1 -0
  216. package/web/dist/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
  217. package/web/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
  218. package/web/dist/assets/github-light-DAi9KRSo.js +1 -0
  219. package/web/dist/assets/github-light-default-D7oLnXFd.js +1 -0
  220. package/web/dist/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
  221. package/web/dist/assets/gleam-BspZqrRM.js +1 -0
  222. package/web/dist/assets/glimmer-js-ByusRIyA.js +1 -0
  223. package/web/dist/assets/glimmer-ts-BfAWNZQY.js +1 -0
  224. package/web/dist/assets/glsl-DplSGwfg.js +1 -0
  225. package/web/dist/assets/gn-n2N0HUVH.js +1 -0
  226. package/web/dist/assets/gnuplot-DdkO51Og.js +1 -0
  227. package/web/dist/assets/go-C27-OAKa.js +1 -0
  228. package/web/dist/assets/graph-Bn3Yngep.js +1 -0
  229. package/web/dist/assets/graphql-ChdNCCLP.js +1 -0
  230. package/web/dist/assets/groovy-gcz8RCvz.js +1 -0
  231. package/web/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
  232. package/web/dist/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
  233. package/web/dist/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
  234. package/web/dist/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
  235. package/web/dist/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
  236. package/web/dist/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
  237. package/web/dist/assets/hack-BWmVpMyf.js +1 -0
  238. package/web/dist/assets/haml-D5jkg6IW.js +1 -0
  239. package/web/dist/assets/handlebars-BpdQsYii.js +1 -0
  240. package/web/dist/assets/haskell-Df6bDoY_.js +1 -0
  241. package/web/dist/assets/haxe-CfZj7gIn.js +1 -0
  242. package/web/dist/assets/hcl-BWvSN4gD.js +1 -0
  243. package/web/dist/assets/hjson-D5-asLiD.js +1 -0
  244. package/web/dist/assets/hlsl-D3lLCCz7.js +1 -0
  245. package/web/dist/assets/horizon-BUw7H-hv.js +1 -0
  246. package/web/dist/assets/horizon-bright-CUuTKBJd.js +1 -0
  247. package/web/dist/assets/houston-DnULxvSX.js +1 -0
  248. package/web/dist/assets/html-derivative-DlHx6ybY.js +1 -0
  249. package/web/dist/assets/html-pp8916En.js +1 -0
  250. package/web/dist/assets/http-jrhK8wxY.js +1 -0
  251. package/web/dist/assets/hurl-irOxFIW8.js +1 -0
  252. package/web/dist/assets/hxml-2-FPmUDs.js +1 -0
  253. package/web/dist/assets/hy-DFXneXwc.js +1 -0
  254. package/web/dist/assets/icons-Bm_ZzSAy.js +964 -0
  255. package/web/dist/assets/imba-DGztddWO.js +1 -0
  256. package/web/dist/assets/index-CeeLdENM.js +677 -0
  257. package/web/dist/assets/index-Ceez9lYk.css +1 -0
  258. package/web/dist/assets/infoDiagram-5W2HQ5XZ-Bv4RBxYW.js +2 -0
  259. package/web/dist/assets/ini-BEwlwnbL.js +1 -0
  260. package/web/dist/assets/init-Gi6I4Gst.js +1 -0
  261. package/web/dist/assets/ishikawaDiagram-K3B6WC7H-DEpj0bRp.js +70 -0
  262. package/web/dist/assets/java-CylS5w8V.js +1 -0
  263. package/web/dist/assets/javascript-wDzz0qaB.js +1 -0
  264. package/web/dist/assets/jinja-f2NsQr07.js +1 -0
  265. package/web/dist/assets/jison-wvAkD_A8.js +1 -0
  266. package/web/dist/assets/journeyDiagram-COXZFDF6-MJu84Iiz.js +139 -0
  267. package/web/dist/assets/json-Cp-IABpG.js +1 -0
  268. package/web/dist/assets/json5-C9tS-k6U.js +1 -0
  269. package/web/dist/assets/jsonc-Des-eS-w.js +1 -0
  270. package/web/dist/assets/jsonl-DcaNXYhu.js +1 -0
  271. package/web/dist/assets/jsonnet-DFQXde-d.js +1 -0
  272. package/web/dist/assets/jssm-C2t-YnRu.js +1 -0
  273. package/web/dist/assets/jsx-g9-lgVsj.js +1 -0
  274. package/web/dist/assets/julia-5Bft2YPA.js +1 -0
  275. package/web/dist/assets/just-Cwhn7H3k.js +1 -0
  276. package/web/dist/assets/kanagawa-dragon-BuwD2xS4.js +1 -0
  277. package/web/dist/assets/kanagawa-lotus-C3DzagqV.js +1 -0
  278. package/web/dist/assets/kanagawa-wave-DFGoQZhC.js +1 -0
  279. package/web/dist/assets/kanban-definition-P3RFRI5V-mlYSRALK.js +89 -0
  280. package/web/dist/assets/kdl-DV7GczEv.js +1 -0
  281. package/web/dist/assets/kotlin-BdnUsdx6.js +1 -0
  282. package/web/dist/assets/kusto-wEQ09or8.js +1 -0
  283. package/web/dist/assets/laserwave-DUszq2jm.js +1 -0
  284. package/web/dist/assets/latex-D5pSuvFb.js +1 -0
  285. package/web/dist/assets/lean-BZvkOJ9d.js +1 -0
  286. package/web/dist/assets/less-B1dDrJ26.js +1 -0
  287. package/web/dist/assets/light-plus-B7mTdjB0.js +1 -0
  288. package/web/dist/assets/linear-5j9gt8MV.js +1 -0
  289. package/web/dist/assets/liquid-C0sCDyMI.js +1 -0
  290. package/web/dist/assets/llvm-BZoOZj88.js +1 -0
  291. package/web/dist/assets/log-2UxHyX5q.js +1 -0
  292. package/web/dist/assets/logo-BtOb2qkB.js +1 -0
  293. package/web/dist/assets/lua-BaeVxFsk.js +1 -0
  294. package/web/dist/assets/luau-BnpPk5vE.js +1 -0
  295. package/web/dist/assets/make-CHLpvVh8.js +1 -0
  296. package/web/dist/assets/markdown-BWXjRrSw.js +30 -0
  297. package/web/dist/assets/markdown-Cvjx9yec.js +1 -0
  298. package/web/dist/assets/marko-DjSrsDqO.js +1 -0
  299. package/web/dist/assets/material-theme-D5KoaKCx.js +1 -0
  300. package/web/dist/assets/material-theme-darker-BfHTSMKl.js +1 -0
  301. package/web/dist/assets/material-theme-lighter-B0m2ddpp.js +1 -0
  302. package/web/dist/assets/material-theme-ocean-CyktbL80.js +1 -0
  303. package/web/dist/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
  304. package/web/dist/assets/matlab-D7o27uSR.js +1 -0
  305. package/web/dist/assets/mdc-D1_yUvq7.js +1 -0
  306. package/web/dist/assets/mdx-Cmh6b_Ma.js +1 -0
  307. package/web/dist/assets/mermaid-CQcHuHx7.js +1 -0
  308. package/web/dist/assets/mermaid.core-DLb6eAON.js +314 -0
  309. package/web/dist/assets/min-dark-CafNBF8u.js +1 -0
  310. package/web/dist/assets/min-light-CTRr51gU.js +1 -0
  311. package/web/dist/assets/mindmap-definition-LZFPQGKD-C9v_57Ex.js +96 -0
  312. package/web/dist/assets/mipsasm-CKIfxQSi.js +1 -0
  313. package/web/dist/assets/mojo-DJz3ZmWd.js +1 -0
  314. package/web/dist/assets/monokai-BRVnQi9A.js +1 -0
  315. package/web/dist/assets/moonbit-CHtswR0a.js +1 -0
  316. package/web/dist/assets/move-el3G9tDJ.js +1 -0
  317. package/web/dist/assets/narrat-DRg8JJMk.js +1 -0
  318. package/web/dist/assets/nextflow-C-mBbutL.js +1 -0
  319. package/web/dist/assets/nextflow-groovy-vE_lwT2v.js +1 -0
  320. package/web/dist/assets/nginx-BpAMiNFr.js +1 -0
  321. package/web/dist/assets/night-owl-C39BiMTA.js +1 -0
  322. package/web/dist/assets/night-owl-light-CMTm3GFP.js +1 -0
  323. package/web/dist/assets/nim-BIad80T-.js +1 -0
  324. package/web/dist/assets/nix-CwoSXNpI.js +1 -0
  325. package/web/dist/assets/nord-Ddv68eIx.js +1 -0
  326. package/web/dist/assets/nsis-BlV79W_Q.js +1 -0
  327. package/web/dist/assets/nushell-D3jzshHO.js +1 -0
  328. package/web/dist/assets/objective-c-DXmwc3jG.js +1 -0
  329. package/web/dist/assets/objective-cpp-CLxacb5B.js +1 -0
  330. package/web/dist/assets/ocaml-C0hk2d4L.js +1 -0
  331. package/web/dist/assets/odin-BBf5iR-q.js +1 -0
  332. package/web/dist/assets/one-dark-pro-DVMEJ2y_.js +1 -0
  333. package/web/dist/assets/one-light-C3Wv6jpd.js +1 -0
  334. package/web/dist/assets/openscad-C4EeE6gA.js +1 -0
  335. package/web/dist/assets/ordinal-Cboi1Yqb.js +1 -0
  336. package/web/dist/assets/org-DM6o9KBp.js +1 -0
  337. package/web/dist/assets/panels-BQOvnbWH.js +1 -0
  338. package/web/dist/assets/pascal-D93ZcfNL.js +1 -0
  339. package/web/dist/assets/pegDiagram-BGZESJAR-KQP26s3-.js +1 -0
  340. package/web/dist/assets/perl-B9cMNwum.js +1 -0
  341. package/web/dist/assets/php-Csjmro_R.js +1 -0
  342. package/web/dist/assets/pieDiagram-CAPJLFHJ-DN3RQ_ih.js +39 -0
  343. package/web/dist/assets/pkl-u5AG7uiY.js +1 -0
  344. package/web/dist/assets/plastic-3e1v2bzS.js +1 -0
  345. package/web/dist/assets/plsql-ChMvpjG-.js +1 -0
  346. package/web/dist/assets/po-BTJTHyun.js +1 -0
  347. package/web/dist/assets/poimandres-CS3Unz2-.js +1 -0
  348. package/web/dist/assets/polar-C0HS_06l.js +1 -0
  349. package/web/dist/assets/postcss-CXtECtnM.js +1 -0
  350. package/web/dist/assets/powerquery-CEu0bR-o.js +1 -0
  351. package/web/dist/assets/powershell-BmBUJMz7.js +1 -0
  352. package/web/dist/assets/prisma-Vru482bI.js +1 -0
  353. package/web/dist/assets/profileChange-B7TaQ18u.js +1 -0
  354. package/web/dist/assets/prolog-CbFg5uaA.js +1 -0
  355. package/web/dist/assets/proto-C7zT0LnQ.js +1 -0
  356. package/web/dist/assets/pug-DKIMFp6K.js +1 -0
  357. package/web/dist/assets/puppet-BMWR74SV.js +1 -0
  358. package/web/dist/assets/purescript-CklMAg4u.js +1 -0
  359. package/web/dist/assets/python-B6aJPvgy.js +1 -0
  360. package/web/dist/assets/qml-3beO22l8.js +1 -0
  361. package/web/dist/assets/qmldir-C8lEn-DE.js +1 -0
  362. package/web/dist/assets/qss-IeuSbFQv.js +1 -0
  363. package/web/dist/assets/quadrantDiagram-GDMTTRAM-BpL_ZL76.js +7 -0
  364. package/web/dist/assets/r-Cf5RLm7j.js +1 -0
  365. package/web/dist/assets/racket-BqYA7rlc.js +1 -0
  366. package/web/dist/assets/railroadDiagram-SM67HX2B-DZ-fPU85.js +1 -0
  367. package/web/dist/assets/raku-DXvB9xmW.js +1 -0
  368. package/web/dist/assets/razor-BjBPvh-w.js +1 -0
  369. package/web/dist/assets/rbs-CpoqiR4B.js +1 -0
  370. package/web/dist/assets/react-vendor-C0HIWSpf.js +9 -0
  371. package/web/dist/assets/red-hvxz__6c.js +1 -0
  372. package/web/dist/assets/reg-C-SQnVFl.js +1 -0
  373. package/web/dist/assets/regexp-CDVJQ6XC.js +1 -0
  374. package/web/dist/assets/rel-C3B-1QV4.js +1 -0
  375. package/web/dist/assets/requirementDiagram-X7JNWC4A-mKPGj64L.js +84 -0
  376. package/web/dist/assets/riscv-BM1_JUlF.js +1 -0
  377. package/web/dist/assets/ron-D8l8udqQ.js +1 -0
  378. package/web/dist/assets/rose-pine-5qJOZa0Y.js +1 -0
  379. package/web/dist/assets/rose-pine-dawn-zx0QlTCp.js +1 -0
  380. package/web/dist/assets/rose-pine-moon-C9pEdX9L.js +1 -0
  381. package/web/dist/assets/rosmsg-BJDFO7_C.js +1 -0
  382. package/web/dist/assets/rst-bs7f0vWN.js +1 -0
  383. package/web/dist/assets/ruby-C0TQ7zu5.js +1 -0
  384. package/web/dist/assets/rust-B1yitclQ.js +1 -0
  385. package/web/dist/assets/sankeyDiagram-UM26HJRW-Bs4xfjQP.js +40 -0
  386. package/web/dist/assets/sas-DEy46yEz.js +1 -0
  387. package/web/dist/assets/sass-Cj5Yp3dK.js +1 -0
  388. package/web/dist/assets/scala-CqE71os6.js +1 -0
  389. package/web/dist/assets/scheme-C98Dy4si.js +1 -0
  390. package/web/dist/assets/scss-D5BDwBP9.js +1 -0
  391. package/web/dist/assets/sdbl-DVxCFoDh.js +1 -0
  392. package/web/dist/assets/sequenceDiagram-ZO4K6R2Y-BjUmzZaO.js +169 -0
  393. package/web/dist/assets/shaderlab-Dg9Lc6iA.js +1 -0
  394. package/web/dist/assets/shellscript-Yzrsuije.js +1 -0
  395. package/web/dist/assets/shellsession-BADoaaVG.js +1 -0
  396. package/web/dist/assets/sizeCapture-INFHLROL-BXBM3j_Q.js +1 -0
  397. package/web/dist/assets/slack-dark-BthQWCQV.js +1 -0
  398. package/web/dist/assets/slack-ochin-DqwNpetd.js +1 -0
  399. package/web/dist/assets/smalltalk-BOQMe2GC.js +1 -0
  400. package/web/dist/assets/smithy-cds9vsN8.js +1 -0
  401. package/web/dist/assets/snazzy-light-Bw305WKR.js +1 -0
  402. package/web/dist/assets/solarized-dark-CpvCGNkr.js +1 -0
  403. package/web/dist/assets/solarized-light-Dlz6yCKv.js +1 -0
  404. package/web/dist/assets/solidity-DijEV5ha.js +1 -0
  405. package/web/dist/assets/soy-8wufbnw4.js +1 -0
  406. package/web/dist/assets/sparql-rVzFXLq3.js +1 -0
  407. package/web/dist/assets/splunk-BtCnVYZw.js +1 -0
  408. package/web/dist/assets/sql-CRqJ_cUM.js +1 -0
  409. package/web/dist/assets/ssh-config-_ykCGR6B.js +1 -0
  410. package/web/dist/assets/stata-DI20mbqo.js +1 -0
  411. package/web/dist/assets/state-Kfon1nTr.js +17 -0
  412. package/web/dist/assets/stateDiagram-v2-TBUQTH76-FGgFDGUU.js +291 -0
  413. package/web/dist/assets/sttLanguages-C7kVulzY.js +1 -0
  414. package/web/dist/assets/stylus-BEDo0Tqx.js +1 -0
  415. package/web/dist/assets/surrealql-Cjom0U5J.js +1 -0
  416. package/web/dist/assets/svelte-Cy7k_4gC.js +1 -0
  417. package/web/dist/assets/swift-C2oV4EkX.js +1 -0
  418. package/web/dist/assets/swimlanes-N4OXWK64-wkd_n4HU.js +1 -0
  419. package/web/dist/assets/swimlanesDiagram-K3J5GTZL-CKnwEuq_.js +8 -0
  420. package/web/dist/assets/synthwave-84-CbfX1IO0.js +1 -0
  421. package/web/dist/assets/system-verilog-0hqHdDBg.js +1 -0
  422. package/web/dist/assets/systemd-4A_iFExJ.js +1 -0
  423. package/web/dist/assets/talonscript-CkByrt1z.js +1 -0
  424. package/web/dist/assets/tasl-QIJgUcNo.js +1 -0
  425. package/web/dist/assets/tcl-dwOrl1Do.js +1 -0
  426. package/web/dist/assets/templ-DhtptRzy.js +1 -0
  427. package/web/dist/assets/terraform-BETggiCN.js +1 -0
  428. package/web/dist/assets/tex-D96PA37w.js +1 -0
  429. package/web/dist/assets/timeline-definition-YOQAKGHF-DyBln1jw.js +120 -0
  430. package/web/dist/assets/tokyo-night-hegEt444.js +1 -0
  431. package/web/dist/assets/toml-vGWfd6FD.js +1 -0
  432. package/web/dist/assets/ts-tags-D351s5mN.js +1 -0
  433. package/web/dist/assets/tsv-B_m7g4N7.js +1 -0
  434. package/web/dist/assets/tsx-COt5Ahok.js +1 -0
  435. package/web/dist/assets/turtle-BsS91CYL.js +1 -0
  436. package/web/dist/assets/twig-27uCiNez.js +1 -0
  437. package/web/dist/assets/typescript-BPQ3VLAy.js +1 -0
  438. package/web/dist/assets/typespec-CAFt9gP4.js +1 -0
  439. package/web/dist/assets/typst-BUadGCkm.js +1 -0
  440. package/web/dist/assets/usecaseDiagram-VIAY4XPW-Cqis3XHX.js +370 -0
  441. package/web/dist/assets/v-BGw2Nkan.js +1 -0
  442. package/web/dist/assets/vala-CsfeWuGM.js +1 -0
  443. package/web/dist/assets/vb-Cu-pLBUe.js +1 -0
  444. package/web/dist/assets/vennDiagram-BLWOH2XV-BaiFLOVS.js +34 -0
  445. package/web/dist/assets/verilog-nZwndyjY.js +1 -0
  446. package/web/dist/assets/vesper-DRje8inN.js +1 -0
  447. package/web/dist/assets/vhdl-CeAyd5Ju.js +1 -0
  448. package/web/dist/assets/viml-CJc9bBzg.js +1 -0
  449. package/web/dist/assets/vitesse-black-Bkuqu6BP.js +1 -0
  450. package/web/dist/assets/vitesse-dark-D0r3Knsf.js +1 -0
  451. package/web/dist/assets/vitesse-light-CVO1_9PV.js +1 -0
  452. package/web/dist/assets/vue-BqiEGhQt.js +1 -0
  453. package/web/dist/assets/vue-html-AaS7Mt5G.js +1 -0
  454. package/web/dist/assets/vue-vine-BoDAl6tE.js +1 -0
  455. package/web/dist/assets/vyper-CDx5xZoG.js +1 -0
  456. package/web/dist/assets/wardleyDiagram-YMQ3BMBF-C4CzpJto.js +78 -0
  457. package/web/dist/assets/wasm-CG6Dc4jp.js +1 -0
  458. package/web/dist/assets/wasm-MzD3tlZU.js +1 -0
  459. package/web/dist/assets/wenyan-BV7otONQ.js +1 -0
  460. package/web/dist/assets/wgsl-Dx-B1_4e.js +1 -0
  461. package/web/dist/assets/wikitext-BhOHFoWU.js +1 -0
  462. package/web/dist/assets/wit-5i3qLPDT.js +1 -0
  463. package/web/dist/assets/wolfram-lXgVvXCa.js +1 -0
  464. package/web/dist/assets/xml-sdJ4AIDG.js +1 -0
  465. package/web/dist/assets/xsl-CtQFsRM5.js +1 -0
  466. package/web/dist/assets/xychartDiagram-TAQBALBS-Dp1hfe3-.js +7 -0
  467. package/web/dist/assets/yaml-Buea-lGh.js +1 -0
  468. package/web/dist/assets/zenscript-DVFEvuxE.js +1 -0
  469. package/web/dist/assets/zig-VOosw3JB.js +1 -0
  470. package/web/dist/favicon.svg +40 -0
  471. package/web/dist/figma-demo/product-1.jpg +0 -0
  472. package/web/dist/figma-demo/product-2.jpg +0 -0
  473. package/web/dist/figma-demo/trail-1.jpg +0 -0
  474. package/web/dist/figma-demo/trail-2.jpg +0 -0
  475. package/web/dist/figma-demo/trail-3.jpg +0 -0
  476. package/web/dist/fonts/OFL-Inter.txt +93 -0
  477. package/web/dist/fonts/inter-latin-400-normal.woff2 +0 -0
  478. package/web/dist/fonts/inter-latin-600-normal.woff2 +0 -0
  479. package/web/dist/icons/icon-180.png +0 -0
  480. package/web/dist/icons/icon-192.png +0 -0
  481. package/web/dist/icons/icon-512.png +0 -0
  482. package/web/dist/icons/icon-maskable-512.png +0 -0
  483. package/web/dist/index.html +56 -0
  484. package/web/dist/logo.svg +40 -0
  485. package/web/dist/manifest.webmanifest +16 -0
package/LICENSE.md ADDED
@@ -0,0 +1,12 @@
1
+ DeepSeekCode
2
+
3
+ © 2026 DeepSeekCode. All rights reserved.
4
+
5
+ 本软件为专有软件,源代码不公开。保留所有权利。
6
+
7
+ This software is proprietary and closed source. All rights reserved.
8
+ No part of this software may be copied, modified, distributed, sublicensed,
9
+ sold, or otherwise used without the prior written permission of the
10
+ copyright holder.
11
+
12
+ Use is subject to a separate written license agreement with the copyright holder.
package/README.md CHANGED
@@ -1,3 +1,626 @@
1
- # Temporary Holding Version
1
+ # DeepSeekCode CLI
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ [![npm version](https://img.shields.io/npm/v/@deepseekcode/cli.svg)](https://www.npmjs.com/package/@deepseekcode/cli)
4
+ [![License: Proprietary](https://img.shields.io/badge/license-Proprietary-red.svg)](#license)
5
+ [![Node version](https://img.shields.io/node/v/@deepseekcode/cli.svg)](https://nodejs.org)
6
+
7
+ **DeepSeekCode is a local-first AI coding agent that runs in your terminal.** One runtime on
8
+ your own machine serves three surfaces — an interactive terminal UI (TUI), a web UI, and an
9
+ HTTP/WebSocket API — and drives it with any OpenAI-compatible model. It is built around a real
10
+ permission/approval layer, a strictly read-only plan mode, and runtime-switchable act / goal /
11
+ chat modes.
12
+
13
+ Install it, run `dscode`, and you have an agent that reads and edits your files, runs commands,
14
+ reviews code, and can work unattended in CI.
15
+
16
+ Languages: **English** · [简体中文](#zh-cn) · [日本語](#ja) · [Español](#es)
17
+
18
+ ## At a glance
19
+
20
+ | | |
21
+ |---|---|
22
+ | **What it is** | A local-first AI coding agent — terminal-first, with an optional web UI |
23
+ | **Project page** | https://deepseekcode.github.io/deepseekwork/ |
24
+ | **Install** | `npm install -g @deepseekcode/cli` |
25
+ | **Run** | `dscode` (interactive) · `dscode exec "..."` (non-interactive) |
26
+ | **Requires** | Node.js >= 18 |
27
+ | **Platforms** | Prebuilt native binaries: Windows x64 / ARM64, macOS Intel / Apple Silicon, Linux glibc & musl, x64 / ARM64 |
28
+ | **Interfaces** | Terminal TUI · Web UI at `http://localhost:8080` · HTTP + WebSocket API · JSONL batch mode |
29
+ | **Modes** | `act` · `auto-act` · `goal` · `auto-goal` · `chat` (`Shift+Tab`), plus a read-only plan toggle (`/plan`) |
30
+ | **Models** | Any OpenAI-compatible endpoint (hosted or local) — no vendor lock-in |
31
+ | **Built-in tools** | ~70: files, search, git, LSP, code intelligence, browser, sub-agents, plans, memory, MCP |
32
+ | **License** | Proprietary (see [License](#license)) |
33
+
34
+ ## What you get
35
+
36
+ - **Terminal TUI** — a keyboard-first coding agent rendered with React through a vendored Ink
37
+ kernel. Fullscreen (alt-screen) by default; `--inline` opts back into main-screen mode.
38
+ - **Local runtime, started for you** — `dscode` starts the agent core plus an HTTP/WebSocket
39
+ server in the same process. There is no separate backend to install or connect.
40
+ - **Web UI** — sessions, tasks, models, themes and settings at `http://localhost:8080`
41
+ (provider setup lives at `http://localhost:8080/#models`).
42
+ - **Non-interactive modes** — `exec` (JSONL output), `codeview` (AI code review), and `test-fix`
43
+ (auto-fix test loop) for scripts, hooks and CI.
44
+ - **A permission layer on every tool call** — scopes `system > project > user > local > session`
45
+ (narrowest wins), `auto` / `ask` / `deny` policies, an optional AI classifier for the grey zone,
46
+ and timeout-means-deny.
47
+ - **Plan mode that is genuinely read-only** — `/plan` shows a checklist you approve before
48
+ anything executes; the running loop picks the checklist up instead of switching engines.
49
+ - **Sub-agents, background work and workflows** — delegate isolated jobs to sub-agents, detach
50
+ long-running work, and orchestrate multi-step tasks with an explicit plan.
51
+ - **Memory and skills** — durable notes that survive across sessions, plus reusable skills
52
+ inserted with `/skills`.
53
+ - **MCP support** — connect Model Context Protocol servers with `/mcp`.
54
+ - **IM channels** — LINE, Slack, WhatsApp, QQ, DingTalk and Feishu (with inbound
55
+ request-signature verification), so a session can also be driven from a chat app.
56
+ - **Sandboxed shell tools** — a local command sandbox (bwrap on Linux, SBPL on macOS,
57
+ MXC / Docker on Windows) that refuses to run rather than fall back to an unsandboxed host
58
+ shell when no policy is available.
59
+ - **Themes** — dark, light, nord, dracula, monokai, one-dark, tokyo-night.
60
+ - **Bilingual by design** — most interactive commands have Chinese aliases, and the interface
61
+ text is localized.
62
+
63
+ ## Who it's for
64
+
65
+ - You want the agent to run on your machine against your own provider credentials, not behind
66
+ someone else's cloud service.
67
+ - You care about controlling what the agent may touch — approvals, scope policies, a read-only
68
+ plan pass, and a command sandbox.
69
+ - You want one tool for interactive work **and** for CI (`dscode exec` emits JSONL).
70
+ - You live in a terminal but occasionally want a bigger view (the web UI shares the same runtime).
71
+ - You work in Chinese and/or English.
72
+
73
+ ## Install
74
+
75
+ ```bash
76
+ npm install -g @deepseekcode/cli
77
+ ```
78
+
79
+ Or with your favorite package manager:
80
+
81
+ ```bash
82
+ # pnpm
83
+ pnpm add -g @deepseekcode/cli
84
+
85
+ # yarn
86
+ yarn global add @deepseekcode/cli
87
+
88
+ # bun
89
+ bun add -g @deepseekcode/cli
90
+ ```
91
+
92
+ This installs two commands: **`dscode`** (short) and **`deepseekcode`** (full name). Installation
93
+ detects your platform and links the matching prebuilt native binary into place — after that
94
+ `dscode` execs the native binary directly, with no Node process left resident. If the optional
95
+ platform package is unavailable (for example `--omit=optional`), the installer prints instructions
96
+ instead and `cli-wrapper.cjs` remains available as the JavaScript fallback.
97
+
98
+ ## Quick Start
99
+
100
+ ```bash
101
+ dscode
102
+ ```
103
+
104
+ That's it. The CLI starts the local agent runtime and opens the interactive terminal. On first run
105
+ (no provider configured) it prints a link to the web UI where you can set up your LLM provider and
106
+ model:
107
+
108
+ ```bash
109
+ # model/provider setup page (also served by the CLI)
110
+ # -> http://localhost:8080/#models
111
+ ```
112
+
113
+ If your terminal's stdin isn't a TTY (e.g. a script or CI pipeline), the CLI skips the TUI and runs
114
+ **headless** — the web UI stays available at the printed URL.
115
+
116
+ Connect to an **existing** backend instead of starting a local one:
117
+
118
+ ```bash
119
+ dscode run --backend http://localhost:8080
120
+ ```
121
+
122
+ Resume your last session (or a specific one):
123
+
124
+ ```bash
125
+ dscode --resume # last session
126
+ dscode --resume <id> # specific session
127
+ ```
128
+
129
+ ## CLI Commands
130
+
131
+ | Command | Description |
132
+ |---------|-------------|
133
+ | `dscode` / `dscode start` | Start local runtime + interactive TUI (also serves Web UI + API) |
134
+ | `dscode start --auto` | Start with auto-approval mode enabled |
135
+ | `dscode run --backend URL` | Connect to an existing backend instead of starting one |
136
+ | `dscode exec <command>` | Execute a command non-interactively (JSONL output) |
137
+ | `dscode exec --file <path>` | Read the command from a file |
138
+ | `dscode codeview` | AI code review — bugs + unwired features (JSON output) |
139
+ | `dscode review` | Review current code changes (legacy) |
140
+ | `dscode test-fix` | Run the auto-fix test loop |
141
+ | `dscode --resume [id]` | Resume the last session, or a specific one |
142
+ | `dscode version` | Print version |
143
+
144
+ Run `dscode --help` (or `-h`) for the full list.
145
+
146
+ ### Non-interactive examples
147
+
148
+ ```bash
149
+ # Execute a command, get JSONL results
150
+ dscode exec "fix the failing test in src/utils"
151
+
152
+ # Plain text output, command from file
153
+ dscode exec --file ./task.txt --text
154
+
155
+ # AI code review focused on security, write report to file
156
+ dscode codeview --focus security --output review.json
157
+
158
+ # Auto-fix test loop (max 5 retries, analyze only)
159
+ dscode test-fix --packages packages/cli --retries 5 --dry-run
160
+ ```
161
+
162
+ ## Interactive Commands
163
+
164
+ Inside the TUI, use `/help` for the full list (most commands have Chinese aliases). Highlights:
165
+
166
+ | Command | Action |
167
+ |---------|--------|
168
+ | `/help` | Show all commands |
169
+ | `/model [name]` | Open model picker or switch model directly |
170
+ | `/theme [name]` | Show or change terminal theme |
171
+ | `/plan` | Toggle plan mode (review before executing) |
172
+ | `/auto` | Toggle auto-approval mode |
173
+ | `Shift+Tab` | Cycle modes: act · auto-act · goal · auto-goal · chat |
174
+ | `/goal` | Set goal-directed mode |
175
+ | `/thinking` | Toggle think mode on/off |
176
+ | `/context` | Show current conversation state |
177
+ | `/sessions [id]` / `/resume [id]` | List history / switch session |
178
+ | `/tasks` | Toggle sub-task output panel |
179
+ | `/undo [list]` | Undo the most recent file change |
180
+ | `/clear` | Start a new session (current session is saved, resumable via `/sessions`) |
181
+ | `/mcp <action>` | Manage MCP servers |
182
+ | `/skills` | Insert a skill |
183
+ | `/trace <traceId>` | Query a trace by id |
184
+ | `/stop` `/pause` `/continue` | Control AI generation |
185
+ | `Ctrl+S` / `Ctrl+G` | Stash the current draft / restore the most recent one |
186
+ | `/exit` | Exit |
187
+
188
+ ## Options
189
+
190
+ | Option | Description |
191
+ |--------|-------------|
192
+ | `-p, --port <port>` | HTTP port (default: first available from 8080) |
193
+ | `--ws-port <port>` | WebSocket port (default: HTTP port + 1) |
194
+ | `-w, --workspace <dir>` | Workspace directory (default: current directory) |
195
+ | `-F, --force` | Kill an existing process on the target port before starting |
196
+ | `-b, --backend <url>` | Backend URL for `run` mode |
197
+ | `--ws <url>` | Override WebSocket URL |
198
+ | `--provider <name>` | Provider to use (exec/review) |
199
+ | `--model <name>` | Model to use (exec/review) |
200
+ | `--theme <name\|path>` | Theme name or JSON theme file path |
201
+ | `--prompt-version <ver>` | Prompt template version |
202
+ | `--timeout <ms>` | Per-attempt LLM timeout (default: 300000 = 5 min) |
203
+ | `--stall-threshold <ms>` | Stream stall detection threshold (default: 240000 = 4 min) |
204
+ | `--no-update-check` | Disable the startup new-version notice |
205
+ | `--no-auto-update` | Disable background auto-update (notice still shown) |
206
+
207
+ ## Permissions and safety
208
+
209
+ Every tool call goes through the permission layer before it executes:
210
+
211
+ - **Scopes** — `system > project > user > local > session`; the narrowest matching rule wins, so a
212
+ session-level decision can grant what a project-level rule would ask about.
213
+ - **Policies** — `auto` (allow), `ask` (prompt), `deny`. High-risk operations ask even when a
214
+ broader rule would allow them, unless you are in auto-approval mode.
215
+ - **AI classifier** — optional review of risky calls that a static rule does not cover.
216
+ - **Timeout means deny** — an unanswered approval is a refusal, not an implicit yes.
217
+ - **Read-only modes** — plan mode and reviewer/coordinator sessions cannot write at all.
218
+ - **Command sandbox** — shell tools run inside a sandbox when a policy exists, and fail closed when
219
+ it does not.
220
+
221
+ `/stop` and `/pause` always win over anything the runtime would otherwise do on its own.
222
+
223
+ ## Providers and models
224
+
225
+ DeepSeekCode is provider-neutral: point it at any OpenAI-compatible endpoint, hosted or local, and
226
+ switch models per session (or per mode). Provider and model settings are managed in the web UI at
227
+ `http://localhost:8080/#models`, and stored under `~/.agent/`.
228
+
229
+ ## Configuration
230
+
231
+ The CLI reads `~/.agent/config.yaml`:
232
+
233
+ ```yaml
234
+ backend_url: http://localhost:8080
235
+ ws_url: ws://localhost:8081/ws
236
+ workspace_dir: /path/to/workspace
237
+ ```
238
+
239
+ Provider / model settings are managed through the web UI at `http://localhost:8080/#models`.
240
+
241
+ ### Attention (notifications & bell)
242
+
243
+ The TUI can notify you when a turn ends, errors, asks a question, needs a tool approval, or a
244
+ subagent finishes. It is focus-aware — by default it only fires while the terminal is in the
245
+ background. Add an `attention:` block to `~/.agent/config.yaml`:
246
+
247
+ ```yaml
248
+ attention:
249
+ notifications: true # OSC 9 / OSC 777 desktop notification
250
+ sound: true # terminal bell (BEL) — on by default
251
+ volume: 0.4 # reserved (parity with opencode); BEL has no volume
252
+ when: blurred # always | blurred | focused
253
+ sound_when: always
254
+ events: { done: true, error: true, question: true, permission: true, subagent_done: true }
255
+ ```
256
+
257
+ The completion sound is on by default. Toggle it in the web UI under
258
+ **Settings → Notifications** (writes `attention.sound` back to `config.yaml`); the CLI reads it at
259
+ startup, so the change applies on the next CLI launch.
260
+
261
+ `DEEPSEEKCODE_ATTENTION` overrides the file (`off` / `on`, or `notify,bell`). Terminals that don't
262
+ support the OSC sequences drop them silently.
263
+
264
+ <a name="local-state"></a>
265
+
266
+ ### Local state
267
+
268
+ | File | Purpose |
269
+ |------|---------|
270
+ | `~/.agent/config.yaml` | Runtime, provider and attention configuration |
271
+ | `~/.agent/sessions/` | Persisted sessions (resumable, format-versioned) |
272
+ | `~/.agent/skills/` | User skills available via `/skills` |
273
+ | `~/.agent/logs/` | Runtime logs |
274
+ | `~/.agent/prompt-stash.json` | Draft stash pushed by `Ctrl+S` (LIFO) |
275
+ | `~/.agent/frecency.json` | `@` file-mention ranking (`count · 0.5^(ageDays/30)`) |
276
+
277
+ ## Themes
278
+
279
+ Set the theme at startup via the `DEEPSEEKCODE_THEME` env var (or `--theme`):
280
+
281
+ | Theme | Env Value | Style |
282
+ |-------|-----------|-------|
283
+ | Dark (default) | `dark` | ANSI named colors, broad compat |
284
+ | Light | `light` | Light terminal variant |
285
+ | Nord | `nord` | Arctic blue-grey palette |
286
+ | Dracula | `dracula` | Dark purple-vibrant |
287
+ | Monokai | `monokai` | Classic code editor |
288
+ | One Dark | `one-dark` | Atom's iconic dark |
289
+ | Tokyo Night | `tokyo-night` | Deep navy + vibrant accents |
290
+
291
+ ```bash
292
+ DEEPSEEKCODE_THEME=nord dscode
293
+ DEEPSEEKCODE_THEME=/path/to/my-theme.json dscode
294
+
295
+ # Partial overrides on the current theme (JSON)
296
+ DEEPSEEKCODE_THEME_COLORS='{"primary":"#ff0000"}' dscode
297
+ ```
298
+
299
+ Switch themes at runtime with `/theme [name]`.
300
+
301
+ ## Auto-Update
302
+
303
+ On startup, `dscode` checks npm for the latest version asynchronously (non-blocking). When a newer
304
+ version is found, the CLI **automatically reinstalls the global package** in the background
305
+ (`npm install -g @deepseekcode/cli@latest`); the new version takes effect on the next launch.
306
+
307
+ - Only affects **global npm installs** — source builds and `npx`/`bunx` caches are never touched.
308
+ - Disable auto-install (keep the version notice): `DEEPSEEKCODE_NO_AUTO_UPDATE=1` or `--no-auto-update`
309
+ - Disable the check entirely: `DEEPSEEKCODE_NO_UPDATE_CHECK=1` or `--no-update-check`
310
+
311
+ ## Environment Variables
312
+
313
+ | Variable | Description |
314
+ |----------|-------------|
315
+ | `DEEPSEEKCODE_THEME` | Theme name or JSON theme file |
316
+ | `DEEPSEEKCODE_THEME_COLORS` | JSON partial color overrides |
317
+ | `DEEPSEEKCODE_ATTENTION` | Attention layer override: `off` / `on` / `notify,bell` |
318
+ | `DEEPSEEKCODE_HTTP_PORT` / `DEEPSEEKCODE_WS_PORT` | Default HTTP / WebSocket ports |
319
+ | `DEEPSEEKCODE_QUIET=1` | Suppress non-fatal startup warnings |
320
+ | `DEEPSEEKCODE_NO_AUTO_UPDATE=1` | Disable background auto-update |
321
+ | `DEEPSEEKCODE_NO_UPDATE_CHECK=1` | Disable the version check |
322
+ | `DEEPSEEKCODE_FORCE_UTF8=0` | Skip forcing the Windows console to UTF-8 |
323
+ | `DSC_HEAP_LIMIT_MB` | Node heap limit hint for large sessions (default: 8192) |
324
+
325
+ ## FAQ
326
+
327
+ **Is DeepSeekCode open source?**
328
+ No. It is proprietary, closed-source software. `LICENSE.md` holds the terms: copying, modifying,
329
+ distributing, sublicensing or selling it requires the prior written permission of the copyright
330
+ holder.
331
+
332
+ **Is DeepSeekCode a model?**
333
+ No. It is an agent runtime — a program you run — and it ships no model of its own. It drives
334
+ whichever OpenAI-compatible endpoint you configure; DeepSeek's models are one option among many,
335
+ and a local server works just as well.
336
+
337
+ **Which package is the official one?**
338
+ `@deepseekcode/cli` on npm — it installs the commands `dscode` and `deepseekcode`. The same build
339
+ is also published under additional brand scopes for distribution; `@deepseekcode` is the canonical
340
+ one, and the project page is https://deepseekcode.github.io/deepseekwork/.
341
+
342
+ **Is this affiliated with DeepSeek?**
343
+ No. DeepSeekCode is an independent project, not made, sponsored or endorsed by DeepSeek (深度求索)
344
+ or any other model vendor. The name refers to a runtime that drives models — not to a model family.
345
+
346
+ **Does it need an API key?**
347
+ Yes — it talks to an OpenAI-compatible endpoint you configure. The first run walks you through
348
+ provider setup; a local server (for example an OpenAI-compatible runtime on `localhost`) works too.
349
+
350
+ **Does my code leave my machine?**
351
+ The runtime, the UI, the file operations and the shell tools all run locally, and no DeepSeekCode
352
+ cloud service sits in the path. Prompts and tool results are sent to the model endpoint you
353
+ configured — that is the only outbound traffic the agent needs.
354
+
355
+ **Which models and providers are supported?**
356
+ Any endpoint that speaks the OpenAI-compatible API. Nothing is hardwired to a single vendor, and
357
+ you can switch models at runtime with `/model`.
358
+
359
+ **Does it run on Windows?**
360
+ Yes. Prebuilt native binaries cover Windows x64 and ARM64 (as well as macOS Intel/Apple Silicon and
361
+ Linux glibc/musl on x64/ARM64), and an offline package with bundled portable git is published for
362
+ machines without network access.
363
+
364
+ **Can it run unattended, or in CI?**
365
+ Yes. `dscode exec "..."` runs a command non-interactively and emits JSONL, and a non-TTY stdin
366
+ makes the CLI skip the TUI entirely. `dscode codeview` and `dscode test-fix` are built for the same
367
+ purpose.
368
+
369
+ **How do I stop it doing something I don't want?**
370
+ Use the permission layer (scopes plus auto/ask/deny policies), start with `/plan` so nothing
371
+ executes before you approve the checklist, rely on the command sandbox for shell tools, and press
372
+ `/pause` or `/stop` at any time. Reviewer and plan sessions are read-only by construction.
373
+
374
+ **Can I drive it from chat apps, MCP servers or my own tools?**
375
+ Yes — `/mcp` connects Model Context Protocol servers, plugins extend the runtime, and channel
376
+ plugins (LINE, Slack, WhatsApp, QQ, DingTalk, Feishu) let a chat message drive a session.
377
+
378
+ **Where is my data and configuration kept?**
379
+ Under `~/.agent/` (`config.yaml`, `sessions/`, `skills/`, `logs/`). See
380
+ [Local state](#local-state).
381
+
382
+ **How do I update it?**
383
+ It updates itself: on startup a global npm install is upgraded in the background to the latest
384
+ version. Disable that with `DEEPSEEKCODE_NO_AUTO_UPDATE=1` (or disable the check with
385
+ `DEEPSEEKCODE_NO_UPDATE_CHECK=1`).
386
+
387
+ ## How it differs
388
+
389
+ - **Local-first, single runtime.** The TUI, the web UI and the API come from one process you
390
+ start — not a hosted service, and not three things to install and wire together.
391
+ - **Permissions are a first-class layer, not a toggle.** Scopes, policies, an optional AI
392
+ classifier, and fail-closed behaviour for approvals and sandboxed commands.
393
+ - **Plan mode is read-only and live.** The plan is a checklist the running loop adopts, so what you
394
+ approve is what executes.
395
+ - **Provider-neutral by construction.** Any OpenAI-compatible endpoint; nothing is tied to one
396
+ vendor's API surface.
397
+ - **Built for both the interactive and the unattended case.** The same agent drives the TUI and
398
+ emits JSONL for scripts and CI.
399
+ - **Extensible at the edges.** MCP servers, skills, plugins, sub-agents, workflows and chat
400
+ channels all attach to the same core loop.
401
+
402
+ ## Terminal rendering internals
403
+
404
+ The TUI is a fork-free React renderer: a vendored Ink kernel plus a pure-TypeScript yoga port live
405
+ under `src/ink/` and `src/ink-yoga/`. If you change them, the layout-cache generations, the
406
+ alt-screen trailing newline and the fd-write ban are hard invariants — they are documented in
407
+ `docs/terminal-rendering-invariants.md` in the repository, together with the regression test that
408
+ guards each one.
409
+
410
+ The `terminal_figure` tool (capture → xterm.js replay → PNG composition) is an internal
411
+ verification path rather than a user-facing feature. Running it needs a Python interpreter with
412
+ Pillow installed and a Playwright Chromium browser; without them the tool returns an actionable
413
+ setup error instead of writing anything outside the workspace.
414
+
415
+ <a name="zh-cn"></a>
416
+
417
+ ## 简体中文
418
+
419
+ **DeepSeekCode 是一个本地运行的 AI 编程智能体:一条命令在终端里跑起来,同时提供终端 TUI、Web UI 和本地 HTTP/WebSocket API 三个界面**,可接任意 OpenAI 兼容模型。它的核心是权限审批层、严格只读的方案模式(plan),以及可在运行时切换的 act / goal / chat 三种工作模式。
420
+
421
+ 安装后运行 `dscode`,它就能读改文件、执行命令、审查代码,也能在 CI 里无人值守地跑。
422
+
423
+ ### 安装与启动
424
+
425
+ ```bash
426
+ npm install -g @deepseekcode/cli
427
+ dscode # 启动本地运行时 + 终端界面
428
+ dscode exec "修复 src/utils 里失败的测试" # 非交互,输出 JSONL
429
+ dscode codeview --focus security # AI 代码审查
430
+ ```
431
+
432
+ 需要 Node.js 18+。首次启动会引导你配置模型;Web UI 在 `http://localhost:8080`(模型配置页 `/#models`)。
433
+
434
+ ### 核心能力
435
+
436
+ - **终端 TUI**:键盘优先的交互界面;默认全屏(alt-screen),`--inline` 回到主屏模式。
437
+ - **本地运行时**:`dscode` 在同进程内启动智能体内核与 HTTP/WebSocket 服务,不用另装后端。
438
+ - **权限审批层**:每次工具调用都过权限层 —— 作用域 `system > project > user > local > session`(越窄越优先)、`auto` / `ask` / `deny` 策略、高风险调用可交给 AI 分类器,审批超时按拒绝处理。
439
+ - **只读方案模式**:`/plan` 先给一份清单,你确认后才动手;执行中的回合会直接采纳这份清单。
440
+ - **模式可运行时切换**:`Shift+Tab` 在 act · auto-act · goal · auto-goal · chat 之间切换。
441
+ - **子智能体 / 后台任务 / 工作流**:把独立任务派给子智能体,长任务可脱离当前回合继续跑。
442
+ - **记忆与技能**:跨会话的持久记忆,`/skills` 插入可复用技能。
443
+ - **扩展**:`/mcp` 接 MCP 服务、插件、以及 LINE / Slack / WhatsApp / QQ / 钉钉 / 飞书等 IM 频道(入站请求带签名校验)。
444
+ - **命令沙箱**:Shell 工具走本地沙箱(Linux bwrap、macOS SBPL、Windows MXC / Docker),没有策略时拒绝执行而不是退回宿主机。
445
+ - **主题**:dark / light / nord / dracula / monokai / one-dark / tokyo-night。
446
+ - **中文友好**:界面文案本地化,多数交互命令有中文别名。
447
+
448
+ ### 常用命令
449
+
450
+ | 命令 | 作用 |
451
+ |------|------|
452
+ | `dscode` | 启动本地运行时 + 交互 TUI(同时提供 Web UI 与 API) |
453
+ | `dscode exec "<任务>"` | 非交互执行,输出 JSONL(适合脚本与 CI) |
454
+ | `dscode exec --file ./task.txt --text` | 从文件读任务,输出纯文本 |
455
+ | `dscode codeview --focus security` | AI 代码审查(可指定关注点并落盘报告) |
456
+ | `dscode test-fix --retries 5` | 自动修复测试循环 |
457
+ | `dscode --resume [id]` | 恢复上一次(或指定)会话 |
458
+
459
+ ### 常见问题
460
+
461
+ **是开源的吗?** 不是。本项目是闭源专有软件,条款见仓库内 `LICENSE.md`;复制、修改、分发、再授权或销售均需事先获得著作权人的书面许可。
462
+
463
+ **它是模型吗?** 不是。它是跑在你机器上的智能体程序(runtime),自身不带模型 —— 模型由你配置:任何 OpenAI 兼容端点都行,DeepSeek 的模型只是其中一种,本地起一个服务也同样可用。
464
+
465
+ **哪个包才是官方的?** npm 上的 `@deepseekcode/cli`,安装后得到 `dscode` 与 `deepseekcode` 两个命令。同一份构建也会以其他品牌 scope 分发;`@deepseekcode` 是规范名称,项目主页是 https://deepseekcode.github.io/deepseekwork/。
466
+
467
+ **它和 DeepSeek 官方有关系吗?** 没有。DeepSeekCode 是独立项目,与 DeepSeek(深度求索)及任何模型厂商没有隶属、赞助或背书关系;名字指的是驱动模型的运行时,不指代任何模型家族。
468
+
469
+ **代码会上传到哪里?** 运行时、界面、文件操作与 Shell 工具全部在本机执行,中间没有 DeepSeekCode 的云服务;只有到你配置的模型端点的请求会离开本机。
470
+
471
+ **必须联网吗?** 需要能访问一个 OpenAI 兼容端点(可以是本机的兼容服务)。
472
+
473
+ **怎么防止它乱动我的项目?** 三层:权限层(作用域 + auto/ask/deny,超时即拒绝)、`/plan` 只读方案模式、命令沙箱;随时可以 `/pause` 或 `/stop`。
474
+
475
+ **支持 Windows 吗?** 支持,提供 Windows x64 / ARM64 原生二进制(另含 macOS、Linux glibc/musl 的 x64/ARM64);还发布了内置便携 git 的离线包。
476
+
477
+ **配置放在哪?** `~/.agent/` 下(`config.yaml`、`sessions/`、`skills/`、`logs/`)。
478
+
479
+ 更新日志(中英对照)见下方 [What's New](#whats-new)。
480
+
481
+ <a name="for-ai-assistants"></a>
482
+
483
+ ## For AI assistants and LLM crawlers
484
+
485
+ A machine-readable summary of this project ships inside this package:
486
+ `https://unpkg.com/@deepseekcode/cli/llms.txt` (the same file lives at `llms.txt` in the
487
+ repository). It states what DeepSeekCode is and is not, the official npm coordinates, and the
488
+ platform matrix — so an assistant can describe or cite this package without guessing. The project
489
+ page is https://deepseekcode.github.io/deepseekwork/.
490
+
491
+ <a name="ja"></a>
492
+
493
+ ## 日本語
494
+
495
+ **DeepSeekCode はローカルで動く AI コーディングエージェントです。** 1 つのランタイムがターミナル TUI、Web UI、HTTP/WebSocket API の 3 つの画面を提供し、任意の OpenAI 互換モデルで動作します。権限承認レイヤー、読み取り専用のプランモード、実行中に切り替えられる act / goal / chat モードを中心に設計されています。
496
+
497
+ ```bash
498
+ npm install -g @deepseekcode/cli
499
+ dscode # ローカルランタイム + ターミナル UI
500
+ dscode exec "src/utils の失敗テストを修正" # 非対話、JSONL 出力
501
+ ```
502
+
503
+ Node.js 18 以上が必要です。初回起動時にモデルの設定を案内します。Web UI は `http://localhost:8080`(モデル設定は `/#models`)。
504
+
505
+ 主な特徴:
506
+
507
+ - **ターミナル TUI** — キーボード中心の操作。既定は全画面(alt-screen)、`--inline` で通常画面に戻せます。
508
+ - **ローカルランタイム** — `dscode` がエージェント本体と HTTP/WebSocket サーバーを同一プロセスで起動します。別途バックエンドを用意する必要はありません。
509
+ - **権限承認レイヤー** — すべてのツール呼び出しが権限レイヤーを通ります。スコープは `system > project > user > local > session`(狭い方が優先)、ポリシーは `auto` / `ask` / `deny`、リスクの高い呼び出しは AI 分類器に委ねられ、承認のタイムアウトは拒否として扱われます。
510
+ - **読み取り専用のプランモード** — `/plan` で実行前に対象のチェックリストを確認できます。
511
+ - **モード切り替え** — `Shift+Tab` で act · auto-act · goal · auto-goal · chat を切り替え。
512
+ - **サブエージェント / バックグラウンド作業 / ワークフロー** — 独立した作業を委譲し、長時間の処理を切り離して実行できます。
513
+ - **メモリとスキル** — セッションをまたぐ記憶と、`/skills` で挿入できる再利用可能なスキル。
514
+ - **拡張性** — `/mcp` で MCP サーバー、プラグイン、LINE / Slack / WhatsApp / QQ / DingTalk / Feishu の各チャネル。
515
+ - **コマンドサンドボックス** — シェルツールはサンドボックス内で実行され、ポリシーがない場合は実行を拒否します(ホスト側にフォールバックしません)。
516
+ - **テーマ** — dark / light / nord / dracula / monokai / one-dark / tokyo-night。
517
+
518
+ よくある質問:
519
+
520
+ **オープンソースですか?** いいえ。本ソフトウェアはプロプライエタリ(非公開ソース)です。条件は `LICENSE.md` に記載されており、複製・改変・配布・再許諾・販売には著作権者の事前の書面による許可が必要です。
521
+
522
+ **コードはどこかに送られますか?** ランタイム、UI、ファイル操作、シェルツールはすべてローカルで動作します。DeepSeekCode のクラウドサービスは介在せず、設定したモデルエンドポイントへのリクエストのみが外部に出ます。
523
+
524
+ **Windows でも使えますか?** はい。Windows x64 / ARM64 向けのネイティブバイナリを提供しています(macOS、Linux の glibc/musl・x64/ARM64 も同様)。
525
+
526
+ **設定はどこに保存されますか?** `~/.agent/`(`config.yaml`、`sessions/`、`skills/`、`logs/`)。
527
+
528
+ リリースノート(英語・中文)は下の [What's New](#whats-new) を参照してください。
529
+
530
+ <a name="es"></a>
531
+
532
+ ## Español
533
+
534
+ **DeepSeekCode es un agente de programación con IA que se ejecuta localmente.** Un único runtime ofrece tres superficies —una interfaz de terminal (TUI), una interfaz web y una API HTTP/WebSocket— y funciona con cualquier modelo compatible con la API de OpenAI. Está construido alrededor de una capa real de permisos y aprobaciones, un modo de plan estrictamente de solo lectura y modos act / goal / chat conmutables en caliente.
535
+
536
+ ```bash
537
+ npm install -g @deepseekcode/cli
538
+ dscode # runtime local + interfaz de terminal
539
+ dscode exec "arregla el test que falla en src/utils" # no interactivo, salida JSONL
540
+ ```
541
+
542
+ Requiere Node.js 18 o superior. La primera ejecución te guía en la configuración del modelo. La interfaz web está en `http://localhost:8080` (modelos en `/#models`).
543
+
544
+ Qué incluye:
545
+
546
+ - **TUI de terminal** — interfaz pensada para el teclado. Pantalla completa (alt-screen) por defecto; `--inline` vuelve al modo normal.
547
+ - **Runtime local** — `dscode` inicia el núcleo del agente y el servidor HTTP/WebSocket en el mismo proceso: no hay un backend aparte que instalar.
548
+ - **Capa de permisos** — cada llamada a una herramienta pasa por ella: ámbitos `system > project > user > local > session` (gana el más específico), políticas `auto` / `ask` / `deny`, clasificador de IA opcional para llamadas de riesgo y tiempo de espera que equivale a denegación.
549
+ - **Modo de plan de solo lectura** — `/plan` te muestra una lista de comprobación antes de ejecutar nada.
550
+ - **Modos conmutables** — `Shift+Tab` alterna act · auto-act · goal · auto-goal · chat.
551
+ - **Subagentes, trabajo en segundo plano y flujos de trabajo** — delega tareas aisladas y deja correr trabajos largos sin bloquear el turno.
552
+ - **Memoria y skills** — memoria persistente entre sesiones y skills reutilizables con `/skills`.
553
+ - **Extensible** — servidores MCP con `/mcp`, plugins y canales de mensajería (LINE, Slack, WhatsApp, QQ, DingTalk, Feishu).
554
+ - **Sandbox de comandos** — las herramientas de shell se ejecutan en un sandbox (bwrap en Linux, SBPL en macOS, MXC/Docker en Windows) y se niegan a ejecutar si no hay política, en lugar de recurrir al host.
555
+ - **Temas** — dark, light, nord, dracula, monokai, one-dark, tokyo-night.
556
+
557
+ Preguntas frecuentes:
558
+
559
+ **¿Es código abierto?** No. Es software propietario y de código cerrado; las condiciones están en `LICENSE.md`. Copiarlo, modificarlo, distribuirlo, sublicenciarlo o venderlo requiere autorización previa por escrito del titular de los derechos.
560
+
561
+ **¿Sale mi código de mi máquina?** El runtime, la interfaz, las operaciones de archivos y las herramientas de shell se ejecutan en local; no hay ningún servicio en la nube de DeepSeekCode en medio. Solo salen las peticiones al endpoint de modelo que hayas configurado.
562
+
563
+ **¿Funciona en Windows?** Sí: hay binarios nativos para Windows x64 / ARM64 (además de macOS y Linux glibc/musl en x64/ARM64) y un paquete offline con git portátil.
564
+
565
+ **¿Dónde se guarda la configuración?** En `~/.agent/` (`config.yaml`, `sessions/`, `skills/`, `logs/`).
566
+
567
+ Notas de la versión (inglés y chino) en [What's New](#whats-new).
568
+
569
+ <a name="whats-new"></a>
570
+
571
+ <!-- whatsnew:start -->
572
+ <!-- 由 scripts/generate-changelog.mjs 从 packages/shared/src/changelog.ts 生成,请勿手动编辑;改源后运行 `bun run changelog`。 -->
573
+
574
+ ## What's New · 更新日志
575
+
576
+ ### 1.0.40 — 2026-10-15
577
+
578
+ 可视化产物分层渲染 + 线程与值守 + 记忆/技能收敛
579
+
580
+ Layered visual artifacts, threads & on-duty coverage, memory and skills consolidation
581
+
582
+ **English**
583
+
584
+ - Layered visual artifacts: flowcharts become indented outlines (character grids are gone), tool results render as inline cards in the transcript, and two new self-contained HTML snapshot kinds — dashboard and analysis — ship with charts and metric cards.
585
+ - Threads & on-duty coverage: project/task threads and session kinds are separated, IM notifications group by project → task instead of collapsing into one line, and a project-manager roster plus a global on-duty seat let a goal reach its own project manager with an honest delivery report.
586
+ - Memory & skills: the memory write/retrieve path is in place (extractor, write agent, search tool) and Chinese-query recall is fixed; skill ids are normalized with a one-off migration of existing data.
587
+ - Dynamic workflows now declare themselves explicitly: `declare_workflow` replaces the filename convention, goal mode blocks agent primitives until a workflow is declared, and the plan syncs with execution through update_plan.
588
+ - Sandbox: the P0 local command sandbox is wired into BashTool (bwrap on Linux, SBPL on macOS, fail-closed when the policy is missing or invalid), with Windows MXC / docker backends added.
589
+ - Channels & connectors: inbound request-signature verification lands for line / slack / whatsapp / qqbot / dingtalk / feishu; the connector catalog gains REA and connector env vars can be declared optional, so a missing engine path no longer blocks the connector.
590
+ - Session persistence hardening: the on-disk format is version-gated with an adjacent migration chain, compaction cut points pair up correctly and orphaned tool results are repairable — a session can no longer be permanently bricked.
591
+ - CLI: a `/skill` category bar, an `/agents` picker, full-depth `@` file indexing and `/btw` side conversations arrive, backed by a static audit and a three-layer dispatch scan of command wiring.
592
+ - Web: the Projects front door is rebuilt with a consistent warm theme and overlay layer, a design-system view arrives with a design-token gate, the right rail gains collapsible session groups and an assistant workbench, and HTML snapshots support charts and metrics.
593
+ - Distribution & install: a one-line installer with mirror racing and an embedded hash, bundled portable git in the offline package, and speech dependencies installed into a dedicated venv (which also works on PEP 668 machines).
594
+ - Release-audit closure: the dead-export checker no longer counts test files as consumers, so "shipped implementation + thorough unit tests + zero production wiring" is finally caught (exposed legacy cases are frozen in a shrink-only ratchet baseline). The first real gap it uncovered is closed: the session secret vault had zero production callers and is now wired to runtime dispose, so rebuilding a runtime in-process no longer leaves session secrets from the previous instance behind.
595
+ - Web: the Tools and Connectors pages now spell out how they divide the work (tools = what the model can call; connectors = whether an external process is installed and connected) and link to each other, so "I turned the connector off, why does it still work?" no longer happens.
596
+
597
+ **中文**
598
+
599
+ - 可视化产物分层渲染:流程图改为缩进大纲(去掉字符网格),工具结果在会话里内联成卡片;新增 dashboard / analysis 两类自包含 HTML 快照,自带图表与数字卡片。
600
+ - 线程与值守:项目 / 任务线程与 session kind 分流,IM 通知改按「项目 → 任务」分组归并,多线程进度不再糊成一条;项目经理名册与全局值守席位落地,目标可投递到所属项目的经理并如实回报投递结果。
601
+ - 记忆与技能:记忆写入 / 检索链路成型(抽取器、写入 agent、搜索工具),修掉中文提问召回;技能 id 规范化并对旧数据做一次性迁移。
602
+ - 动态工作流改为显式声明:`declare_workflow` 取代文件名约定,goal 模式下未声明即拦截 agent 原语,计划经 update_plan 与执行态同步。
603
+ - 沙箱:本地命令沙箱 P0 接入 BashTool(Linux bwrap / macOS SBPL,策略缺失即拒绝启动),并补上 Windows 的 MXC / docker 后端。
604
+ - 频道与连接器:频道入站请求签名校验落地(line / slack / whatsapp / qqbot / dingtalk / feishu);连接器目录加入 REA,环境变量支持「可选」声明,缺引擎路径不再锁死连接器。
605
+ - 会话持久化加固:落盘格式版本强制 + 相邻迁移链,压缩切点配对对齐、孤儿工具结果可修复,会话不再被永久写死。
606
+ - CLI:新增 `/skill` 分类条、`/agents` 选择器、`@` 文件索引全深度化与 `/btw` 旁问侧会话;命令接线加了静态审计与三层派发扫描。
607
+ - Web:Projects 正门重做并统一暖调主题与遮罩层,新增设计系统视图与设计令牌闸门;右栏可折叠会话区与助手工作台,html 快照支持图表与数字。
608
+ - 分发与安装:新增一键安装脚本(镜像竞速 + 内嵌 hash)、便携 git 内置进离线包,语音依赖改用独立 venv(PEP 668 的机器也能装)。
609
+ - 发布审计收口:死导出检查器不再把测试文件算作「有人用」,于是「实现 + 齐全单测 + 零生产接线」这个最坏组合终于判得死(暴露的存量以只缩不涨的棘轮基线固化);由此揪出的第一个真实缺口已补——会话密钥保管箱原先生产调用点为 0,现已接到 runtime 的 dispose,进程内重建 runtime 不再残留上个实例的会话明文。
610
+ - Web:工具页与连接器页互相说明分工(前者管模型能调用哪些工具,后者管外部进程装没装 / 连没连)并各给一个当场跳过去的入口,不再出现「关掉连接器为什么还能用」这类误判。
611
+
612
+ _Earlier releases: see the version list on this package page, or `CHANGELOG.md` in the repository (generated from the same source)._
613
+
614
+ <!-- whatsnew:end -->
615
+
616
+ <a name="license"></a>
617
+
618
+ ## License
619
+
620
+ Proprietary — © 2026 DeepSeekCode. All rights reserved.
621
+
622
+ This software is proprietary and closed source; it is **not** open source. Copying,
623
+ modifying, distributing, sublicensing, or selling it requires the prior written
624
+ permission of the copyright holder.
625
+
626
+ See `LICENSE.md` for the full terms.
package/bin/dscode.exe ADDED
@@ -0,0 +1,12 @@
1
+ #!/bin/sh
2
+ echo "Error: dscode native binary not installed." >&2
3
+ echo "" >&2
4
+ echo "Either postinstall did not run (--ignore-scripts, some pnpm configs)" >&2
5
+ echo "or the platform-native optional dependency was not downloaded" >&2
6
+ echo "(--omit=optional)." >&2
7
+ echo "" >&2
8
+ echo "Run the postinstall manually (adjust path for local vs global install):" >&2
9
+ echo " node node_modules/@deepseekcode/cli/install.cjs" >&2
10
+ echo "" >&2
11
+ echo "Or reinstall without --ignore-scripts / --omit=optional." >&2
12
+ exit 1