tianshu-harness 3.27.0 → 3.30.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 (301) hide show
  1. package/README.en.md +19 -16
  2. package/README.ja.md +21 -18
  3. package/README.ko.md +19 -17
  4. package/README.md +155 -72
  5. package/dist/{account-3FMZDNGA.js → account-256QIJ3S.js} +19 -4
  6. package/dist/{account-login-KW7KXROU.js → account-login-EJ7WUO63.js} +19 -10
  7. package/dist/{account-status-DK2PETHW.js → account-status-C57Q2AHC.js} +11 -10
  8. package/dist/agent/worker-process/child.js +177 -127
  9. package/dist/bootstrap-E4EO3QNG.js +208 -0
  10. package/dist/{browser-cli-FLNY5ZHI.js → browser-cli-X67WAZDD.js} +6 -4
  11. package/dist/{browser-readiness-LWVGSBD5.js → browser-readiness-L24XIPQ3.js} +7 -5
  12. package/dist/{build-backends-3U4ZJHWF.js → build-backends-4FBIR35B.js} +9 -7
  13. package/dist/{build-options-66Y4ZE7C.js → build-options-U7OYE5LQ.js} +2 -2
  14. package/dist/{chain-SFW6YTIG.js → chain-WYFQMSEN.js} +6 -4
  15. package/dist/{checkpoint-EVQWU2AC.js → checkpoint-4VGGY4LX.js} +5 -4
  16. package/dist/{chunk-JXVN7D4K.js → chunk-2AYXJ4L2.js} +7 -36
  17. package/dist/{chunk-SEEFGFCZ.js → chunk-2DIHLLSK.js} +24 -79
  18. package/dist/chunk-2DIPHKWL.js +57 -0
  19. package/dist/{chunk-G4FU2DI5.js → chunk-2FGNWTYC.js} +215 -9
  20. package/dist/{chunk-GHVMWF2I.js → chunk-2S5HLVY5.js} +140 -25
  21. package/dist/{chunk-PAIHG2UD.js → chunk-2TRS7AMW.js} +222 -300
  22. package/dist/{chunk-MJQ55WZZ.js → chunk-2YF5JR7U.js} +21 -19
  23. package/dist/{chunk-CI4R6P2B.js → chunk-3I5K7XOZ.js} +1 -1
  24. package/dist/chunk-3ITRK5TJ.js +196 -0
  25. package/dist/{chunk-OXMIV4WE.js → chunk-3L6Y25YS.js} +46 -8
  26. package/dist/{chunk-ZDIFBJFT.js → chunk-3SRRU6OC.js} +1 -1
  27. package/dist/{chunk-Z3QE7TZM.js → chunk-3V275PK3.js} +75 -1
  28. package/dist/chunk-44EIQA5D.js +15 -0
  29. package/dist/{chunk-UAS2P5YN.js → chunk-4A5DQMWU.js} +3 -3
  30. package/dist/{chunk-ADK6OD5V.js → chunk-4FATPZA2.js} +1 -1
  31. package/dist/chunk-4FBYPLF7.js +150 -0
  32. package/dist/chunk-4GBB6X27.js +326 -0
  33. package/dist/{chunk-IWVLQJIT.js → chunk-4HSKZM5J.js} +45 -15
  34. package/dist/{chunk-5GGOGLSN.js → chunk-4I2HDYJG.js} +0 -3
  35. package/dist/{chunk-REBDJ2DK.js → chunk-4LFYDBLQ.js} +5 -7
  36. package/dist/{chunk-URRZCCIO.js → chunk-4MR4RM2K.js} +1002 -57
  37. package/dist/chunk-4RCVGE32.js +79 -0
  38. package/dist/{chunk-3GN57FKM.js → chunk-5OLG7JKL.js} +2 -2
  39. package/dist/chunk-5S2SAGRU.js +29 -0
  40. package/dist/chunk-62HZ6YCS.js +141 -0
  41. package/dist/chunk-6B5V77PB.js +114 -0
  42. package/dist/{chunk-DTYYBHDD.js → chunk-6FEJAGKX.js} +2 -2
  43. package/dist/chunk-6FMBZBKW.js +76 -0
  44. package/dist/{chunk-U7DF3HSB.js → chunk-6SJBFGO2.js} +22 -25
  45. package/dist/chunk-6UR57ENX.js +779 -0
  46. package/dist/{chunk-ESPUVUT4.js → chunk-6WZFF5JT.js} +17 -3
  47. package/dist/{chunk-KX22RD6R.js → chunk-6ZVYO2RV.js} +2 -1
  48. package/dist/chunk-77O25DOI.js +24 -0
  49. package/dist/{chunk-BO5MRC5F.js → chunk-7EH3QERG.js} +242 -45
  50. package/dist/{chunk-2X4QWTJ7.js → chunk-7KJ4RHGC.js} +2 -2
  51. package/dist/{chunk-V3HROJN4.js → chunk-7YW5ZYLP.js} +13 -5
  52. package/dist/{chunk-GZOQFWMP.js → chunk-A2WIYFPK.js} +1 -94
  53. package/dist/chunk-ADSVPJLE.js +123 -0
  54. package/dist/{chunk-37OXTQCP.js → chunk-ADWEQ5BN.js} +70 -19
  55. package/dist/chunk-AFHRZDQ6.js +1619 -0
  56. package/dist/chunk-AK2VCPYC.js +2485 -0
  57. package/dist/{chunk-ODBM65LR.js → chunk-AOWNRCIU.js} +2 -4
  58. package/dist/chunk-AYNJZSPJ.js +634 -0
  59. package/dist/{chunk-VAV6JHGO.js → chunk-B6QROCL3.js} +24 -1
  60. package/dist/chunk-BM6KNIHP.js +919 -0
  61. package/dist/{chunk-QL7XQBU6.js → chunk-BMXXBE5H.js} +68 -41
  62. package/dist/{chunk-B5WBNTBA.js → chunk-BOWD7QM7.js} +127 -12
  63. package/dist/{chunk-DZ6UOJ5D.js → chunk-BQLWHC5D.js} +21 -3
  64. package/dist/chunk-C3VWIS6E.js +58 -0
  65. package/dist/{chunk-KIV4AGPM.js → chunk-CEK53KER.js} +2 -2
  66. package/dist/{chunk-AE4JGSIT.js → chunk-CPZZ4F6S.js} +23 -3
  67. package/dist/{chunk-6TRMNFB6.js → chunk-CQRV7QQU.js} +8 -5
  68. package/dist/chunk-DLVSLSMB.js +209 -0
  69. package/dist/{chunk-4TYBQRSL.js → chunk-DYCTNS5X.js} +309 -153
  70. package/dist/{chunk-TYHWWRPA.js → chunk-DZ4NAAG3.js} +62 -39
  71. package/dist/{chunk-CA4PCUY7.js → chunk-E5H4X7DU.js} +48 -244
  72. package/dist/{chunk-RWA23GMM.js → chunk-E7PFSNWI.js} +1 -1
  73. package/dist/{chunk-SUOXBSW3.js → chunk-ECQDVXBG.js} +94 -34
  74. package/dist/{chunk-IRZISA2G.js → chunk-EHONGTY5.js} +1 -1
  75. package/dist/{chunk-2CIA45NF.js → chunk-EISBSOAA.js} +293 -85
  76. package/dist/{chunk-RMLYK7Q5.js → chunk-EJM5MQJ5.js} +2 -2
  77. package/dist/{chunk-SDGVJ554.js → chunk-EK3R4IN7.js} +156 -205
  78. package/dist/chunk-EPLCSYHN.js +230 -0
  79. package/dist/{chunk-RU5ST7OA.js → chunk-ETBTPBZ7.js} +838 -4493
  80. package/dist/{login-flow-TESFLU3H.js → chunk-ETOH7S2R.js} +4 -15
  81. package/dist/{chunk-IPAZZLYS.js → chunk-EU6SCFHJ.js} +10 -8
  82. package/dist/{chunk-EPKTIOED.js → chunk-EWALQ6XG.js} +1 -1
  83. package/dist/{chunk-SXNZ3VPO.js → chunk-FB2EG2DM.js} +25 -116
  84. package/dist/{chunk-SSBOZKER.js → chunk-FH7EWXY4.js} +41 -85
  85. package/dist/{chunk-QARAGUXX.js → chunk-FRGTCSFE.js} +1 -1
  86. package/dist/chunk-FVYIMDXS.js +191 -0
  87. package/dist/chunk-G2YDTW5C.js +779 -0
  88. package/dist/chunk-G3O6WCL5.js +360 -0
  89. package/dist/{chunk-N2FYSHGF.js → chunk-GBCFACGJ.js} +291 -364
  90. package/dist/{chunk-66JPZSGX.js → chunk-GH4JI6BC.js} +15 -5
  91. package/dist/{chunk-RE6DPG2X.js → chunk-GPJZXFSJ.js} +2 -2
  92. package/dist/{logs-cli-CV2U5P5U.js → chunk-GYVV3G23.js} +11 -97
  93. package/dist/chunk-HBQNADZ3.js +1295 -0
  94. package/dist/{chunk-JCI57APA.js → chunk-HCEWX2FV.js} +9 -9
  95. package/dist/chunk-HCFIQOAV.js +366 -0
  96. package/dist/chunk-HFGDIYWR.js +99 -0
  97. package/dist/{chunk-7ZQR5SJ6.js → chunk-HKFXIHVM.js} +4 -3
  98. package/dist/chunk-HP47ALRA.js +2456 -0
  99. package/dist/{chunk-NGEWJ4DF.js → chunk-HPRV75YA.js} +22 -5
  100. package/dist/{chunk-EXKORBKC.js → chunk-HQGTTQO6.js} +9 -5
  101. package/dist/{chunk-CWURIDZI.js → chunk-HYRYY2SN.js} +10 -10
  102. package/dist/{chunk-76IBOWQR.js → chunk-IDRGTMLL.js} +10 -2
  103. package/dist/{chunk-SAXK6LVF.js → chunk-IFR7LPDO.js} +14 -4
  104. package/dist/chunk-IIUBQPJQ.js +855 -0
  105. package/dist/{chunk-MOZPLHSU.js → chunk-IJBFTQ6N.js} +1 -1
  106. package/dist/{chunk-TI5PMDHA.js → chunk-IKRUHNK4.js} +13 -8
  107. package/dist/{chunk-H2UK46BU.js → chunk-J4VJAGQ5.js} +7 -7
  108. package/dist/chunk-JF323BYF.js +1954 -0
  109. package/dist/{chunk-TWNHOSDT.js → chunk-JFRW4T64.js} +153 -26
  110. package/dist/{chunk-ZNC5T65N.js → chunk-JIVTST33.js} +1 -1
  111. package/dist/chunk-JQXYNEDV.js +79 -0
  112. package/dist/chunk-JRCYSFQL.js +131 -0
  113. package/dist/{goal-criteria-D2NLKTJO.js → chunk-JVO67VLT.js} +6 -29
  114. package/dist/{chunk-RK3JHWPT.js → chunk-JZZUOL4B.js} +1 -1
  115. package/dist/{chunk-TP5GXQKN.js → chunk-KDTQEDM2.js} +3 -3
  116. package/dist/{chunk-JCFWOULR.js → chunk-KL4F2FYA.js} +1 -1
  117. package/dist/chunk-L2JP45FC.js +440 -0
  118. package/dist/chunk-L3LLG44O.js +100 -0
  119. package/dist/{chunk-WFW7X2XH.js → chunk-L4KTGYH5.js} +13 -6
  120. package/dist/{chunk-JSXWIWWJ.js → chunk-L4REHO7N.js} +1 -1
  121. package/dist/{chunk-BUIMGNDD.js → chunk-LCRH7DHL.js} +1 -1
  122. package/dist/{chunk-P3YG3HEO.js → chunk-LIWDO7EB.js} +27 -17
  123. package/dist/{chunk-EXUE5W2F.js → chunk-LK32JS2X.js} +11 -3
  124. package/dist/{chunk-WUF5IOFK.js → chunk-LKQ3YUUA.js} +55 -9
  125. package/dist/{chunk-7UAZVVUE.js → chunk-LPYOO7VH.js} +1 -1
  126. package/dist/{chunk-DXY5P57D.js → chunk-LUAAPM3I.js} +8030 -2815
  127. package/dist/{chunk-BSECIPAQ.js → chunk-M66PYSTZ.js} +1 -1
  128. package/dist/chunk-MAPEZPLZ.js +82 -0
  129. package/dist/chunk-MKU54OS4.js +63 -0
  130. package/dist/{chunk-DBSJJWRE.js → chunk-MRLTSAGR.js} +13 -2
  131. package/dist/{chunk-ADIVZ2D5.js → chunk-MUIODEN6.js} +1 -1
  132. package/dist/chunk-NF6NO7P6.js +1441 -0
  133. package/dist/{chunk-AERM3VGP.js → chunk-NM2BMKTN.js} +1 -1
  134. package/dist/{chunk-NYDTN5W4.js → chunk-NSHETV6T.js} +1 -1
  135. package/dist/{chunk-QBQS7VL6.js → chunk-NTWQHSJZ.js} +2 -2
  136. package/dist/{chunk-C4BAI4KE.js → chunk-NYPS6JX4.js} +6 -3
  137. package/dist/chunk-OC2ISHB2.js +2331 -0
  138. package/dist/{chunk-FHFKPGDO.js → chunk-ODFN54G6.js} +1 -1
  139. package/dist/{chunk-CM3GNP3F.js → chunk-OHEGD7BF.js} +2 -2
  140. package/dist/chunk-OHT2I555.js +179 -0
  141. package/dist/{chunk-NSRCNWFI.js → chunk-P4EUMVWU.js} +22 -14
  142. package/dist/{chunk-7FW3I7WC.js → chunk-P5X23XMQ.js} +1 -1
  143. package/dist/{chunk-2EBWGAXD.js → chunk-PCY7PHW3.js} +1 -1
  144. package/dist/{chunk-FL4CIO5T.js → chunk-PEH3Z2C4.js} +2 -2
  145. package/dist/chunk-PGZUJMDL.js +3073 -0
  146. package/dist/chunk-PMYJERVB.js +833 -0
  147. package/dist/{chunk-2IAXMPTP.js → chunk-Q2A7U3WW.js} +1 -1
  148. package/dist/{chunk-2FRRZ5K6.js → chunk-Q7XVH6LI.js} +24 -12
  149. package/dist/{chunk-P6RBPB5S.js → chunk-QBQDK2JL.js} +475 -1707
  150. package/dist/chunk-QH44FLDF.js +66 -0
  151. package/dist/{chunk-K2JLA7G6.js → chunk-QLANDT45.js} +3 -3
  152. package/dist/chunk-QMS44VQN.js +45 -0
  153. package/dist/{chunk-JQL6WFIR.js → chunk-QNGHNILH.js} +34 -4
  154. package/dist/{chunk-35OLL4BN.js → chunk-QP32NS3V.js} +100 -31
  155. package/dist/{chunk-7FVNC2ZO.js → chunk-QXWUXOXW.js} +6 -6
  156. package/dist/{chunk-2HDP7RMR.js → chunk-R4DACBK6.js} +8 -1
  157. package/dist/{chunk-P5KJURUR.js → chunk-R5Q7AA2C.js} +64 -26
  158. package/dist/{chunk-FWO5JAWP.js → chunk-RN6IFYX7.js} +152 -38
  159. package/dist/{chunk-S4K4L6IM.js → chunk-RO7A6HGV.js} +1 -1
  160. package/dist/{chunk-3L6VC5CO.js → chunk-RPEKFRI2.js} +97 -9
  161. package/dist/{chunk-FAYHO63O.js → chunk-RWCX2NBM.js} +1 -1
  162. package/dist/{chunk-ZMZCZNKU.js → chunk-SAOULLLQ.js} +49 -15
  163. package/dist/{chunk-INACHRXN.js → chunk-SNLXUAKI.js} +6630 -8342
  164. package/dist/{chunk-FEPR35TK.js → chunk-SOM3VA5Y.js} +306 -197
  165. package/dist/chunk-T6BMJKBF.js +8162 -0
  166. package/dist/{chunk-GD4ZNZ7W.js → chunk-TBS6TJXJ.js} +1 -1
  167. package/dist/{chunk-6ANPK33S.js → chunk-TDV2J2EC.js} +1 -1
  168. package/dist/{chunk-2XN7PM4N.js → chunk-TE2KD6QU.js} +7 -2
  169. package/dist/{chunk-BXNWVP45.js → chunk-THPTXC33.js} +1489 -1781
  170. package/dist/{chunk-722LQO64.js → chunk-TJIPZ32B.js} +92 -3
  171. package/dist/{chunk-JMDXQTIY.js → chunk-TKIAH7YX.js} +1 -1
  172. package/dist/chunk-TKZLPPCA.js +346 -0
  173. package/dist/{chunk-O5VZQKCB.js → chunk-TWHHPGO4.js} +2779 -1000
  174. package/dist/{chunk-ZGGCEXDC.js → chunk-TZCG6QH5.js} +1 -1
  175. package/dist/{chunk-DRNEQMPD.js → chunk-UFAQG5BP.js} +203 -80
  176. package/dist/{chunk-4JI3L5WH.js → chunk-UIV2EGMP.js} +11085 -12938
  177. package/dist/{chunk-VUVVHZPO.js → chunk-UWHGBGCJ.js} +20 -11
  178. package/dist/{chunk-SADUBMAH.js → chunk-VOSWYDGM.js} +55 -27
  179. package/dist/{chunk-A56IBV6E.js → chunk-VRARYDBD.js} +4 -4
  180. package/dist/{chunk-2ZAZTVNZ.js → chunk-W5WBZUSD.js} +46 -8
  181. package/dist/chunk-WJ5AVIWS.js +494 -0
  182. package/dist/{chunk-ZVUCNFTE.js → chunk-WODM54WO.js} +40 -23
  183. package/dist/{chunk-PJWIC4TW.js → chunk-WSFCPFBB.js} +47 -27
  184. package/dist/chunk-XHQ25VMU.js +158 -0
  185. package/dist/{chunk-PI37ALQR.js → chunk-XRCKUTCD.js} +35 -15
  186. package/dist/{chunk-2VYRLULP.js → chunk-XUMXRP3L.js} +2 -2
  187. package/dist/{chunk-N65LICMZ.js → chunk-XYZBAQ6O.js} +117 -4
  188. package/dist/chunk-XZY2LSCD.js +494 -0
  189. package/dist/chunk-Y6VIJU2P.js +131 -0
  190. package/dist/{chunk-RV4KPWEU.js → chunk-YCUHHMPO.js} +2 -2
  191. package/dist/{goal-tracker-FXMJ2GVK.js → chunk-YDL6H5EF.js} +8 -6
  192. package/dist/{chunk-IJ6JWKGB.js → chunk-YGDLZO6J.js} +6 -8
  193. package/dist/{chunk-AHH5U5ML.js → chunk-YGPL7L66.js} +1 -1
  194. package/dist/chunk-YXTY7XNE.js +643 -0
  195. package/dist/{chunk-TPFNB6PT.js → chunk-YZNXPFVK.js} +2 -2
  196. package/dist/{chunk-EGEI2RQA.js → chunk-Z2NJXTYR.js} +334 -38
  197. package/dist/{chunk-GR2LY3D5.js → chunk-ZAQFZ5VQ.js} +6 -4
  198. package/dist/cli/entry.js +76 -8
  199. package/dist/client-I7ZNVWGY.js +18 -0
  200. package/dist/clipboard-image-3LEFLVNE.js +23 -0
  201. package/dist/connector-3A3TJC4S.js +32 -0
  202. package/dist/context-ZQ5N4D7E.js +43 -0
  203. package/dist/council-convene-3XCZQQRJ.js +63 -0
  204. package/dist/create-agent-config-4KODBLIT.js +63 -0
  205. package/dist/cvm-ledger-WNDM26NE.js +86 -0
  206. package/dist/default-registry-R3OFYQ6Z.js +91 -0
  207. package/dist/deliver-task-YOSUHTJO.js +78 -0
  208. package/dist/delivery-gate-v2-2EGPWM7B.js +38 -0
  209. package/dist/{domain-knowledge-store-BUSWJNFC.js → domain-knowledge-store-MXECK4QY.js} +4 -4
  210. package/dist/fetch-core-TDYARICZ.js +18 -0
  211. package/dist/galaxy-LVV6PD6L.js +117 -0
  212. package/dist/goal-criteria-HAFAC3BN.js +48 -0
  213. package/dist/{goal-persist-NRCHF6WM.js → goal-persist-G5SBZLSV.js} +4 -4
  214. package/dist/goal-tracker-YI2KMZEU.js +15 -0
  215. package/dist/{headless-YCYOO4PY.js → headless-GXVNIFMS.js} +12 -5
  216. package/dist/headless-coordinator-XH27MDBJ.js +116 -0
  217. package/dist/{inject-U55SMB6A.js → inject-VHKZ6RAR.js} +1 -1
  218. package/dist/log-locations-ZWEVZ7ST.js +19 -0
  219. package/dist/login-flow-YR4UZCXT.js +28 -0
  220. package/dist/logs-cli-5OSZADVX.js +106 -0
  221. package/dist/loop-HRP6WWDX.js +101 -0
  222. package/dist/main.js +35669 -1827
  223. package/dist/{manager-UASNPP5J.js → manager-O5CR44NZ.js} +837 -263
  224. package/dist/{manager-KEAMKRUQ.js → manager-ZVCVXCOM.js} +17 -12
  225. package/dist/{meridian-indexer-2OSWGPLB.js → meridian-indexer-XUROQ6G2.js} +7 -6
  226. package/dist/{native-resolver-PN34UIVV.js → native-resolver-SAPDFWCP.js} +2 -2
  227. package/dist/office-xml-extract-IS54N3ET.js +109 -0
  228. package/dist/{ownership-ledger-E3WIEKPL.js → ownership-ledger-6ZNWWQ2Z.js} +2 -2
  229. package/dist/package.json +2 -0
  230. package/dist/{path-grants-IMIWG5MJ.js → path-grants-ELFGLTCH.js} +7 -7
  231. package/dist/{paths-PZCXDIBR.js → paths-NWSL35WG.js} +4 -4
  232. package/dist/plan-approval-BLGSNYUL.js +35 -0
  233. package/dist/{plan-fact-anchors-LMVQZCW5.js → plan-fact-anchors-IXOXBQBA.js} +2 -2
  234. package/dist/{plan-store-ODLTTPFB.js → plan-store-URWVJY4W.js} +2 -2
  235. package/dist/{plan-templates-42MSU325.js → plan-templates-Z4S3YJ56.js} +8 -7
  236. package/dist/plugin-loader-VCUYEP5B.js +27 -0
  237. package/dist/{prefix-budget-62OV5HQC.js → prefix-budget-7YCI6AZT.js} +2 -2
  238. package/dist/{project-trust-VGFYHJL3.js → project-trust-6XORUDSK.js} +16 -4
  239. package/dist/provider-cli-O5AMOVDY.js +43 -0
  240. package/dist/{providers-XQYTAVPK.js → providers-FZG36YGD.js} +2 -2
  241. package/dist/{proxy-resolver-V2Y6534D.js → proxy-resolver-KV5GK4H4.js} +3 -2
  242. package/dist/recovery-cli-SGQBWVTG.js +495 -0
  243. package/dist/{review-discipline-MNSYCST5.js → review-discipline-6TFJVGKP.js} +2 -2
  244. package/dist/{review-router-D2V7C4M6.js → review-router-NPWDIPKM.js} +6 -5
  245. package/dist/serve-RSYJNODY.js +166 -0
  246. package/dist/{serve-agent-RW6S3C3G.js → serve-agent-KE3JGWA3.js} +244 -177
  247. package/dist/{session-persist-EZJZAM4V.js → session-persist-ZIXDGKOP.js} +9 -9
  248. package/dist/{session-registry-6XUD5C4Y.js → session-registry-PBJB25VK.js} +3 -2
  249. package/dist/{skill-loader-KKFWLM6P.js → skill-loader-BV6FDQVT.js} +8 -4
  250. package/dist/skills-cli-PQETJEYN.js +151 -0
  251. package/dist/spawn-git-2QBG5KGG.js +34 -0
  252. package/dist/{sse-EYUTBWUK.js → sse-E2LLSQ42.js} +24 -8
  253. package/dist/starflow-Z7HBMBDC.js +34 -0
  254. package/dist/{streamableHttp-V67CNJMO.js → streamableHttp-HLQ3R7KM.js} +169 -18
  255. package/dist/{task-contract-WNYKYAEE.js → task-contract-R2AT6DPC.js} +3 -3
  256. package/dist/{task-ledger-3K4TJIER.js → task-ledger-BJ7MKT7R.js} +5 -2
  257. package/dist/team-orchestrate-LR7QC76P.js +72 -0
  258. package/dist/{todo-KJBCXBN2.js → todo-C5GCTGDG.js} +12 -12
  259. package/dist/{todo-store-EVMVALBU.js → todo-store-6SUTQOXB.js} +3 -3
  260. package/dist/tool-pipeline-B5CSTS6L.js +66 -0
  261. package/dist/tool-preset-KLB477AZ.js +28 -0
  262. package/dist/{tool-tiers-GD742YBN.js → tool-tiers-IF3LWOF5.js} +2 -2
  263. package/dist/{turndown.es-OI55K6C3.js → turndown.es-MJFEUPW2.js} +1 -1
  264. package/dist/{verification-attribution-SEAN6IQT.js → verification-attribution-EKAE4KCE.js} +4 -2
  265. package/dist/{volatile-git-MBTST7RA.js → volatile-git-Q5QZCXJW.js} +2 -2
  266. package/dist/wave-checkpoint-CMD3JC32.js +42 -0
  267. package/dist/{web-cli-IWVBFUNL.js → web-cli-VCMSV7CW.js} +9 -9
  268. package/dist/{web-search-62XPBLMB.js → web-search-IMABD4MB.js} +14 -11
  269. package/dist/workers/cpu-worker.js +39 -5
  270. package/dist/{workflow-runner-LEK7JG5K.js → workflow-runner-USIBZNOU.js} +2 -4
  271. package/dist/{worktree-baseline-MA35E556.js → worktree-baseline-QDFJPNGL.js} +2 -2
  272. package/package.json +31 -27
  273. package/dist/chunk-3C3R7JXY.js +0 -77
  274. package/dist/chunk-4UZYEDDP.js +0 -755
  275. package/dist/chunk-5KDRFFYH.js +0 -711
  276. package/dist/chunk-G3TX7BJQ.js +0 -82
  277. package/dist/chunk-MPZZGW7G.js +0 -410
  278. package/dist/chunk-UXNLELW6.js +0 -25
  279. package/dist/chunk-VNLKEACR.js +0 -32431
  280. package/dist/chunk-ZKFBH4JM.js +0 -3913
  281. package/dist/connector-MAZVNKBV.js +0 -27
  282. package/dist/context-SZWJHKQC.js +0 -38
  283. package/dist/council-convene-2DU64ADZ.js +0 -53
  284. package/dist/create-agent-config-ZA3MO2HK.js +0 -57
  285. package/dist/default-registry-VLKHDRUT.js +0 -72
  286. package/dist/deliver-task-6A3DVXCG.js +0 -64
  287. package/dist/delivery-gate-v2-WE65XQ2L.js +0 -29
  288. package/dist/fetch-core-KHXET7ZJ.js +0 -16
  289. package/dist/galaxy-V35QYHDR.js +0 -93
  290. package/dist/headless-coordinator-BICCMMUJ.js +0 -92
  291. package/dist/loop-KGLDXEHU.js +0 -78
  292. package/dist/plugin-loader-CLSBWW57.js +0 -23
  293. package/dist/provider-cli-DNQB5JPG.js +0 -39
  294. package/dist/recovery-cli-KPGY6FY3.js +0 -106
  295. package/dist/serve-72DJIPUR.js +0 -176
  296. package/dist/spawn-git-W4MM4RCI.js +0 -31
  297. package/dist/starflow-P7ZFXJHD.js +0 -29
  298. package/dist/team-orchestrate-2XRCAX76.js +0 -64
  299. package/dist/title-extract-QX4XGCYN.js +0 -50
  300. package/dist/tool-preset-DOFMAXN4.js +0 -25
  301. package/dist/wave-checkpoint-DYBNFNBE.js +0 -39
package/README.en.md CHANGED
@@ -25,7 +25,7 @@
25
25
  <img src="https://img.shields.io/github/v/release/huiliyi37/Tianshu-harness?color=8B5CF6&label=Release&logo=github&style=for-the-badge" alt="GitHub release">
26
26
  <img src="https://img.shields.io/badge/License-Apache%202.0-3B5BDB?style=for-the-badge&logo=apache" alt="License">
27
27
  <img src="https://img.shields.io/badge/TypeScript-Strict-blue?style=for-the-badge&logo=typescript" alt="TypeScript">
28
- <img src="https://img.shields.io/badge/Tests-16%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
28
+ <img src="https://img.shields.io/badge/Tests-19%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
29
29
  <a href="https://discord.gg/XjWTATCHB"><img src="https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Discord"></a>
30
30
  <a href="https://atomgit.com/huiliyi37/Tianshu-harness"><img src="https://atomgit.com/huiliyi37/Tianshu-harness/star/badge.svg" alt="AtomGit Star"></a>
31
31
  <a href="https://github.com/huiliyi37/Tianshu-harness/releases"><img src="https://img.shields.io/github/downloads/huiliyi37/Tianshu-harness/total?logo=github&label=downloads" alt="GitHub downloads"></a>
@@ -41,10 +41,10 @@
41
41
 
42
42
  ### A coding-agent runtime for real engineering work
43
43
 
44
- > **Tianshu** is a TypeScript coding-agent runtime: one agent kernel shared by a **terminal TUI** and a **desktop GUI**. It is built to let models do continuous multi-step engineering work — with cognitive guardrails, multi-agent orchestration, and a DeepSeek V4 prefix-cache-friendly design for cost-efficient long sessions.
44
+ > **Tianshu** is a TypeScript coding-agent runtime: one agent kernel shared by a **terminal TUI** and a **desktop GUI**. It is built to let models do continuous multi-step engineering work — with cognitive guardrails, multi-agent orchestration, and a DeepSeek V4 / V4.1 prefix-cache-friendly design (supporting current Flash and Pro models) for cost-efficient long sessions.
45
45
 
46
46
  - **One kernel, two surfaces** — a pure-ANSI terminal TUI (`tianshu`) and a Tauri desktop app (macOS / Windows / Linux) share the same agent core, so capabilities stay consistent across interfaces.
47
- - **Cognitive Virtual Machine (CVM)** — 72 runtime hooks across 5 lifecycle phases put an observable, correctable cognitive layer between model output and real tool actions ([A/B evidence](docs/CVM运行时对Agent模型的实证影响.md)).
47
+ - **Cognitive Virtual Machine (CVM)** — 75 runtime hooks across 5 lifecycle phases put an observable, correctable cognitive layer between model output and real tool actions ([A/B evidence](docs/CVM运行时对Agent模型的实证影响.md)).
48
48
  - **Multi-agent orchestration** — from lightweight `/scout` reconnaissance and parallel `/team` execution to `/council` multi-model review and `/galaxy` multi-dimensional attack, complex work runs in waves with review gates.
49
49
  - **Unified project memory** — project knowledge lives in `.rivet/knowledge/memory.jsonl`; automatic injection is limited to governance/constraint/preference memories, while old failures and docs stay explicit-recall-only so they cannot hijack new questions.
50
50
  - **Prefix-cache first** — frozen prefix + incremental appendix + boundary compaction sustain a measured steady-state **95–99% prefix-cache hit rate** on DeepSeek V4.
@@ -113,7 +113,7 @@ CVM doesn't make the model "smarter"; it adds four layers of defense in depth:
113
113
  Layer 1: Belief constitution (static prompt) → "you should question, verify, refuse" [A/B proven]
114
114
  Layer 2: Courage Hook (preTurn) → encourage independent judgment [A/B proven]
115
115
  Layer 3: Sensorium (per turn, <1ms) → 6-dim state sensing drives strategy [Wave 7-8 proven]
116
- Layer 4: RuntimeHookPipeline (72 hooks) → trap-and-emulate regressed behaviors [always on]
116
+ Layer 4: RuntimeHookPipeline (75 hooks) → trap-and-emulate regressed behaviors [always on]
117
117
  ```
118
118
 
119
119
  ### Independent cognition: star domains are not role-play
@@ -132,14 +132,15 @@ Once the degradations are intercepted layer by layer, models begin to express th
132
132
 
133
133
  | Metric | Value |
134
134
  |--------|-------|
135
- | CLI source (TypeScript, excl. tests) | 1,078 files / 257,623 lines |
136
- | Test code | 1,361 files / 256,001 lines |
137
- | Test cases (node:test, static declarations) | **16,471**, test : source ≈ **0.99 : 1** |
138
- | Total commits | **6,178** on main (repo created 2026-05-15, 105 days in) |
135
+ | `src/` source (TypeScript, excl. tests) | ~1,256 files / ~300k lines (`agent/` alone is 483 files) |
136
+ | `src/` tests | ~1,592 files / ~310k lines (node:test, ~1:1 with source) |
137
+ | `desktop/src` | ~450 files / ~96k lines (React), plus ~11k lines of Rust |
138
+ | `vscode-extension/src` | 17 files / ~2,700 lines |
139
+ | Commits | **8,008** total (created 2026-05-15, ~4.5 months; 1,769 in the last 30 days) |
139
140
  | Type checking | `tsc` strict + `noUncheckedIndexedAccess` |
140
141
  | Prefix-cache hit rate | 95–99% steady state, measured on long sessions |
141
142
 
142
- Agent core logic (multi-turn loops, tool pipelines, context compaction) is notoriously hard to test, and most open-source agents ship with thin coverage. This project maintains a near 1:1 test-to-source ratio, and every incident fix ships with a regression test — the ratio has held between 0.93:1 and 0.99:1 as the codebase grew (the table above is a measured snapshot as of 2026-08-28). Full methodology, growth milestones, and reproduction commands: [Engineering Metrics](docs/engineering-metrics.md).
143
+ Agent core logic (multi-turn loops, tool pipelines, context compaction) is notoriously hard to test, and most open-source agents ship with thin coverage. This project keeps tests roughly equal to source, and every incident fix ships with a regression test — the ratio has stayed near 1:1 as the codebase grew (earlier slices sat between 0.93:1 and 0.99:1; this table is a rounded snapshot as of 2026-09-30). Full methodology, growth milestones, and reproduction commands: [Engineering Metrics](docs/engineering-metrics.md).
143
144
 
144
145
  ### Tianshu vs. MiMo-Code vs. Claude Code
145
146
 
@@ -148,7 +149,7 @@ Agent core logic (multi-turn loops, tool pipelines, context compaction) is notor
148
149
  | Dimension | Tianshu | MiMo-Code | Claude Code |
149
150
  | :--- | :--- | :--- | :--- |
150
151
  | **Core focus** | Cognitive runtime (CVM) | Product experience / ecosystem | Enterprise coding agent |
151
- | **Runtime hook layer** | 72 conditionally-assembled hook modules × 5 phases | standard agent loop | user-configurable hooks |
152
+ | **Runtime hook layer** | 75 conditionally-assembled hook modules × 5 phases | standard agent loop | user-configurable hooks |
152
153
  | **Prefix-cache tuning** | Deeply tuned for DeepSeek V4 (95–99% steady-state) | provider default | Anthropic prompt caching |
153
154
  | **Self-perception** | Continuous cognitive-state vector | — | — |
154
155
  | **Cross-session memory** | Unified project memory + adaptive recall + session-scoped pheromones | SQLite + MEMORY.md | project memory |
@@ -592,6 +593,7 @@ The desktop app builds a visual interaction layer on top of the TUI's full capab
592
593
  - **Adaptive sidecar memory** — heap cap auto-tiers by machine RAM (8G→2G / 16G→4G / 32G→6G / 64G+→8G; override via `RIVET_SIDECAR_HEAP_MB`); machines with ≤8GB auto-enable the lean resource tier.
593
594
  - **Watchdog auto-recovery** — auto-continues on boundary stalls; the desktop timeline shows recovery events (⟳ auto-recover / ⏹ quota exhausted).
594
595
  - **Multi-session concurrency** — a tab bar manages multiple sessions, each with its own cwd + model + approval mode.
596
+ - **WSL connected runtime** (Windows) — one click to connect to the runtime running inside WSL; sessions, file access and command execution all happen on the Linux side. Disconnecting cleans up the WSL-side process automatically. The two sides upgrade independently — see the [Desktop User Guide](docs/desktop-guide.md).
595
597
  - **Feature panels** (left rail `⌘1…9` to switch): Mission Control (multi-session console), Inbox, Automations (scheduled tasks), Skills / Hooks management, Git / GitHub, Changes (diff review), Delegation (fleet tree & team-wave DAG), Cockpit.
596
598
  - **Popout window** — pop a single conversation thread into its own window for multi-screen parallel work.
597
599
  - **JobsDock / TodoDock** — a persistent background-task dock (expand logs / kill / open in terminal) and a cross-tab persistent todo dock.
@@ -665,13 +667,14 @@ Registration steps and parameters are covered under “Image generation” in [M
665
667
 
666
668
  | Provider | Auth | Notable Models |
667
669
  |----------|------|----------------|
668
- | DeepSeek | API key | deepseek-v4-pro (1M ctx), deepseek-v4-flash, deepseek-v4-flash-vision-exp (vision) |
670
+ | DeepSeek | API key | deepseek-flash (1M ctx, DeepSeek-V4.1-Flash, native vision), deepseek-v4-pro (1M ctx, DeepSeek-V4-Pro-0813) |
669
671
  | DeepSeek Spark (Pro only) | API key (`DEEPSEEK_SPARK_API_KEY`) | deepseek-v4-flash (lightweight reasoning + anchored cache channel) |
670
672
  | Claude | API key (via `cc-switch` proxy) | claude-opus-4-8, claude-sonnet-4-5 |
671
673
  | GLM (Zhipu) | API key | glm-5.3 (1M ctx), glm-5.3-flash (vision), glm-5.2 |
672
674
  | Codex (GPT-5.6) | OAuth PKCE (ChatGPT subscription) | gpt-5.6-sol |
673
- | MiniMax | API key | MiniMax-M3, MiniMax-M2.7 |
674
- | MiMo | API key | mimo-v2.5-pro |
675
+ | MiniMax | API key | MiniMax-M3 (vision), MiniMax-M2.7 |
676
+ | MiMo | API key | mimo-v2.5-pro (preset 2.5; V2.6 Flash / Pro with vision can be discovered/added) |
677
+ | Kimi Code | API key | k3 (1M ctx, vision), k3-256k, kimi-for-coding |
675
678
 
676
679
  Switch providers inside a session with `/model <name>`.
677
680
 
@@ -855,7 +858,7 @@ Node.js 24 · TypeScript strict (`noUncheckedIndexedAccess`) · T9 ANSI renderin
855
858
 
856
859
  ```bash
857
860
  npm run typecheck # typecheck
858
- npm test # all tests (16,000+ cases)
861
+ npm test # all tests (19,000+ cases)
859
862
  npm run build # tsup bundle + staged native/wasm payload
860
863
  node dist/cli/entry.js # launch TUI
861
864
  node dist/cli/entry.js -p "fix the typo" # headless mode
@@ -1054,9 +1057,9 @@ Write only the fields you want to override; defaults are deep-merged. Full schem
1054
1057
  - **Security vulnerabilities** → [Report privately](https://github.com/huiliyi37/Tianshu-harness/security/advisories/new) (do not open a public issue)
1055
1058
  - **Contributing** → See [CONTRIBUTING.md](CONTRIBUTING.md)
1056
1059
  - **Support guide** → See SUPPORT.md
1057
- - **WeChat group** → 「天枢 harness 交流群」 — scan the QR code below to join (QR codes expire every 7 days; leave a note in Discussions once expired):
1060
+ - **WeChat group** → 「天枢 harness 交流群5群」 — scan the QR code below to join (QR codes expire every 7 days; leave a note in Discussions once expired):
1058
1061
 
1059
- <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="Tianshu Harness WeChat group QR code">
1062
+ <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="Tianshu Harness WeChat group 5 QR code">
1060
1063
 
1061
1064
  > Note: a maintainer needs to enable Discussions in `Settings → General → Discussions` first.
1062
1065
 
package/README.ja.md CHANGED
@@ -29,7 +29,7 @@
29
29
  <img src="https://img.shields.io/github/v/release/huiliyi37/Tianshu-harness?color=8B5CF6&label=Release&logo=github&style=for-the-badge" alt="GitHub release">
30
30
  <img src="https://img.shields.io/badge/License-Apache%202.0-3B5BDB?style=for-the-badge&logo=apache" alt="License">
31
31
  <img src="https://img.shields.io/badge/TypeScript-Strict-blue?style=for-the-badge&logo=typescript" alt="TypeScript">
32
- <img src="https://img.shields.io/badge/Tests-16%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
32
+ <img src="https://img.shields.io/badge/Tests-19%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
33
33
  <a href="https://discord.gg/XjWTATCHB"><img src="https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Discord"></a>
34
34
  <a href="https://atomgit.com/huiliyi37/Tianshu-harness"><img src="https://atomgit.com/huiliyi37/Tianshu-harness/star/badge.svg" alt="AtomGit Star"></a>
35
35
  <a href="https://github.com/huiliyi37/Tianshu-harness/releases"><img src="https://img.shields.io/github/downloads/huiliyi37/Tianshu-harness/total?logo=github&label=downloads" alt="GitHub downloads"></a>
@@ -45,10 +45,10 @@
45
45
 
46
46
  ### 実際のエンジニアリング作業のための AI エージェントランタイム
47
47
 
48
- > **天枢**は TypeScript で書かれたコーディングエージェントのランタイムです。**ターミナル TUI** と**デスクトップ GUI** が同一カーネルを共有し、モデルが質問に答えるだけでなく、認知的ガードレール・マルチエージェントオーケストレーション・DeepSeek V4 のプレフィックスキャッシュ向けに設計された低コストの長大セッションを備え、多段階のコーディング作業を継続的に完遂できるようにします。
48
+ > **天枢**は TypeScript で書かれたコーディングエージェントのランタイムです。**ターミナル TUI** と**デスクトップ GUI** が同一カーネルを共有し、モデルが質問に答えるだけでなく、認知的ガードレール・マルチエージェントオーケストレーション・DeepSeek V4 / V4.1 のプレフィックスキャッシュ向けに設計された低コストの長大セッション(現行の Flash および Pro モデルをサポート)を備え、多段階のコーディング作業を継続的に完遂できるようにします。
49
49
 
50
50
  - **ターミナル × デスクトップ、一つのカーネル** —— 純 ANSI 自前 TUI(`tianshu`)と Tauri デスクトップ(macOS / Windows / Linux)が同一エージェントカーネルを共有。両端で能力は一致し、利用シーンに応じて切り替えられます。
51
- - **認知仮想マシン(CVM)** —— 5 大フェーズにまたがる 72 のランタイムフックが、モデル出力と実際のアクションの間に観測可能で修正可能な認知レイヤーを挟みます([A/B 実証](docs/CVM运行时对Agent模型的实证影响.md))。
51
+ - **認知仮想マシン(CVM)** —— 5 大フェーズにまたがる 75 のランタイムフックが、モデル出力と実際のアクションの間に観測可能で修正可能な認知レイヤーを挟みます([A/B 実証](docs/CVM运行时对Agent模型的实证影响.md))。
52
52
  - **マルチエージェントオーケストレーション** —— 軽量な `/scout` 読み取り専用偵察、並行 `/team` 施工から、`/council` の複数席会診、`/galaxy` の多次元攻略まで。複雑なタスクは波(wave)単位で実行し、波ごとに検収します。
53
53
  - **統一プロジェクトメモリ** —— プロジェクト知識は `.rivet/knowledge/memory.jsonl` に書き込まれます。自動注入はガバナンス/制約系メモリに限定され、過去の問題やドキュメントは明示的な recall 経由のみ——新しいタスクを乗っ取りません。
54
54
  - **プレフィックスキャッシュ最優先** —— フリーズしたプレフィックス+インクリメンタル appendix+境界圧縮により、DeepSeek V4 の長大セッションで実測の定常ヒット率 **95–99%** を維持し、token コストを大幅に削減します。
@@ -116,7 +116,7 @@ CVM はモデルを「より賢く」するのではなく、4 層の防御深
116
116
  Layer 1: 信念憲法(static prompt) → 「疑問を持ち、検証し、拒否せよ」 [A/B 検証済み]
117
117
  Layer 2: Courage Hook(preTurn) → 高確信時に独立判断を促す [A/B 検証済み]
118
118
  Layer 3: Sensorium(毎 turn <1ms) → 六次元状態感知で戦略切替を駆動 [Wave 7-8 検証済み]
119
- Layer 4: RuntimeHookPipeline(72 hooks)→ trap-and-emulate で退化行動をインターセプト [全パイプライン稼働中]
119
+ Layer 4: RuntimeHookPipeline(75 hooks)→ trap-and-emulate で退化行動をインターセプト [全パイプライン稼働中]
120
120
  ```
121
121
 
122
122
  ### 独立した認知:星域はロールプレイではない
@@ -135,14 +135,15 @@ Layer 4: RuntimeHookPipeline(72 hooks)→ trap-and-emulate で退化行動
135
135
 
136
136
  | 指標 | 数値 |
137
137
  |------|------|
138
- | CLI ソースコード(TypeScript、テスト除く) | 1,078 ファイル / 257,623 行 |
139
- | テストコード | 1,361 ファイル / 256,001 行 |
140
- | テストケース(node:test、静的宣言ベース) | **16,471**、テスト : ソース ≈ **0.99 : 1** |
141
- | 累計コミット | **6,178**(main ブランチ;2026-05-15 リポジトリ作成、105 日) |
138
+ | `src/` ソース(TypeScript、テスト除く) | 約 1,256 ファイル / 30 万行(最大の `agent/` は 483 ファイル) |
139
+ | `src/` テスト | 約 1,592 ファイル / 31 万行(node:test、ソースと約 1:1) |
140
+ | `desktop/src` | 約 450 ファイル / 9.6 万行(React)、別途 Rust 約 1.1 万行 |
141
+ | `vscode-extension/src` | 17 ファイル / 約 2,700 行 |
142
+ | 累計コミット | **8,008**(2026-05-15 作成、約 4.5 か月;直近 30 日で 1,769) |
142
143
  | 型チェック | `tsc` strict + `noUncheckedIndexedAccess` |
143
144
  | プレフィックスキャッシュヒット率 | 長大セッションの定常実測 95–99% |
144
145
 
145
- コーディングエージェントのコアロジック(マルチターンループ、ツールパイプライン、コンテキスト圧縮)はテスト困難で有名で、オープンソースのエージェントプロジェクトは一般にテストカバレッジが薄いものです——本プロジェクトはテストとソースを同量に保ち、障害修正には必ず回帰テストを付けています。テスト:ソース行数比は長期にわたり 0.93–0.99 を維持し、規模拡大でも薄まっていません(上表は 2026-08-28 実測スナップショット)。完全な統計口径・イテレーションマイルストーン・再現コマンドは [エンジニアリング品質指標](docs/engineering-metrics.md) を参照。
146
+ コーディングエージェントのコアロジック(マルチターンループ、ツールパイプライン、コンテキスト圧縮)はテスト困難で有名で、オープンソースのエージェントプロジェクトは一般にテストカバレッジが薄いものです——本プロジェクトはテストとソースを同量に保ち、障害修正には必ず回帰テストを付けています。テスト:ソース行数比は 1:1 付近を維持し、規模拡大でも薄まっていません(以前の切片は 0.93–0.99;上表は 2026-09-30 の概数スナップショット)。完全な統計口径・イテレーションマイルストーン・再現コマンドは [エンジニアリング品質指標](docs/engineering-metrics.md) を参照。
146
147
 
147
148
  ## 🚀 クイックスタート
148
149
 
@@ -336,7 +337,7 @@ DeepSeek はキャッシュミスに 50× の料金を課します。天枢の
336
337
 
337
338
  プレフィックスキャッシュが定常上限に達した後、コスト最適化は DeepSeek API の思考 token 側に移ります——出力 token 課金の推論モデルでは verbose reasoning の削減が ROI 最高のレバーです。
338
339
 
339
- - **デフォルト reasoningEffort の降格** —— DeepSeek V4 Pro は `max` → `high`、Flash は `max` → `medium`。明示設定済みユーザーは影響なし(`reasoningFloor` 保護)。
340
+ - **デフォルト reasoningEffort の調整** —— DeepSeek 主力モデル(Pro / Flash)のデフォルトはいずれも `high`(Flash は `medium` から `high` へ引き上げ)。明示設定済みユーザーは影響なし(`reasoningFloor` 保護)。
340
341
  - **effort ルーティング(デフォルト有効)** —— 低複雑度+高確信度のルーチンターンは reasoning effort を自動で 1 段下げ、決して上げない。`RIVET_EFFORT_ROUTING=0` でオフ。
341
342
  - **Compact は flash 側路で** —— 圧縮時に provider 未設定でも主モデルを走らせてしまうバグを修正し、主 provider から flash エンドポイントを自動推定。
342
343
  - **Doom-loop 自動収束** —— 繰り返しツール呼び出しを検出すると、動的 appendix がより厳しい output-style 制約を注入し、無駄な思考 token 消費を削減。`RIVET_TERSE=0` でオフ。
@@ -607,6 +608,7 @@ TUI は CLI のデフォルトサーフェスです。デスクトップ版(Ta
607
608
  - **sidecar メモリ適応**:ヒープ上限をマシンメモリで自動段階分け(8G→2G / 16G→4G / 32G→6G / 64G+→8G、`RIVET_SIDECAR_HEAP_MB` で上書き可)。≤8GB マシンは自動で lean リソースセットを有効化
608
609
  - **watchdog 自動復旧**:境界での停滞時に自動で続行。デスクトップ版のタイムラインに復旧イベントを表示(⟳ 自動復旧 / ⏹ クォータ枯渇)
609
610
  - **マルチセッション並行**:タブバーで複数セッションを管理。それぞれ独立した cwd+モデル+承認モード
611
+ - **WSL 接続ランタイム**(Windows):ワンクリックで WSL 内で動作するランタイムに接続。セッション・ファイル読み書き・コマンド実行がすべて Linux 側で行われます。切断時は WSL 側プロセスを自動クリーンアップ。両側は独立してアップグレードできます——詳細は [デスクトップユーザーガイド](docs/desktop-guide.md) を参照。
610
612
  - **機能パネル**(左サイドバー `⌘1…9` で切替):Mission Control(マルチセッションコンソール)、Inbox(受信トレイ)、Automations(定期タスク)、Skills / Hooks 管理、Git / GitHub、Changes(変更レビュー)、Delegation(委譲艦隊とチーム波次 DAG)、Cockpit コックピット
611
613
  - **Popout 独立ウィンドウ**:単一のセッションスレッドを独立ウィンドウに分離し、マルチディスプレイで並行
612
614
  - **JobsDock / TodoDock 常駐ドロワー**:バックグラウンドタスクのドッキングバー(ログ展開 / Kill / ターミナルで開く)、タブ横断の常駐 todo
@@ -716,15 +718,16 @@ OpenAI 形式のテキスト→画像エンドポイント(SiliconFlow / OpenA
716
718
 
717
719
  ### マルチプロバイダー+適応的ルーティング
718
720
 
719
- | プロバイダー | 認証方式 | フラッグシップモデル |
721
+ | プロバイダー | 認証方式 | 接続モデルの例 |
720
722
  |--------|----------|----------|
721
- | DeepSeek | API key | deepseek-v4-pro (1M ctx), deepseek-v4-flash, deepseek-v4-flash-vision-exp(ビジュアル) |
723
+ | DeepSeek | API key | deepseek-flash(1M ctx、DeepSeek-V4.1-Flash、ネイティブビジュアル), deepseek-v4-pro(1M ctx、DeepSeek-V4-Pro-0813) |
722
724
  | DeepSeek Spark(Pro 専用) | API key(`DEEPSEEK_SPARK_API_KEY`) | deepseek-v4-flash(軽量推論+アンカーキャッシュチャネル) |
723
725
  | Claude | API key(`cc-switch` プロキシ経由) | claude-opus-4-8, claude-sonnet-4-5 |
724
726
  | GLM(智谱) | API key | glm-5.3 (1M ctx), glm-5.3-flash(ビジュアル), glm-5.2 |
725
727
  | Codex (GPT-5.6) | OAuth PKCE(ChatGPT サブスクリプション) | gpt-5.6-sol |
726
- | MiniMax | API key | MiniMax-M3, MiniMax-M2.7 |
727
- | MiMo | API key | mimo-v2.5-pro |
728
+ | MiniMax | API key | MiniMax-M3(ビジュアル), MiniMax-M2.7 |
729
+ | MiMo | API key | mimo-v2.5-pro(プリセット 2.5;ビジュアル対応の最新 MiMo V2.6 Flash / Pro も検出・追加可能) |
730
+ | Kimi Code | API key | k3(1M ctx、ビジュアル), k3-256k, kimi-for-coding |
728
731
 
729
732
  セッション内では `/model <name>` でいつでもプロバイダーを切替。
730
733
 
@@ -840,7 +843,7 @@ tianshu config set-approval auto-safe # デフォルト段階を永続化
840
843
  | コマンド | 説明 |
841
844
  |------|------|
842
845
  | `/model [name\|list]` | モデル/プロバイダーを表示または切替 |
843
- | `/effort [off\|low\|medium\|high\|max\|auto]` | 推論深度を制御(引数なしで選択パネル表示)。デフォルト `high`(Pro)/ `medium`(Flash)、ルーチンターンは自動降格。手動で `max` にしたものは決して降格されない |
846
+ | `/effort [off\|low\|medium\|high\|max\|auto]` | 推論深度を制御(引数なしで選択パネル表示)。デフォルトはいずれも `high`(Pro / Flash)、ルーチンターンは自動降格。手動で `max` にしたものは決して降格されない |
844
847
  | `/permission [supervise\|auto\|unattended\|manual\|yolo\|allow\|deny\|bash\|remove\|reset\|test]` | 権限モード:監督 / 自動 / 全自動 |
845
848
  | `/yes [off]` `/yolo [off]` | ワンクリック全自動。両者は同じ意味(`off` で自動に戻る)——デフォルトとして永続化され、再起動後も有効 |
846
849
  | `/domain [list\|<name>\|auto\|off]` | 星域ペルソナを表示または切替 |
@@ -918,7 +921,7 @@ Node.js 24 · TypeScript strict(`noUncheckedIndexedAccess`)· T9 ANSI レン
918
921
 
919
922
  ```bash
920
923
  npm run typecheck # 型チェック
921
- npm test # すべてのテスト(16,000+ ケース)
924
+ npm test # すべてのテスト(19,000+ ケース)
922
925
  npm run build # tsup バンドル+ネイティブ/wasm ペイロード配置
923
926
  node dist/cli/entry.js # TUI 起動
924
927
  node dist/cli/entry.js -p "fix the typo" # ヘッドレスモード
@@ -1165,9 +1168,9 @@ tianshu logs open desktop # sidecar ログディレクトリを開く
1165
1168
  - **セキュリティ脆弱性** → [プライベート報告](https://github.com/huiliyi37/Tianshu-harness/security/advisories/new)(公開 issue を開かないでください)
1166
1169
  - **コードへのコントリビュート** → [CONTRIBUTING.md](CONTRIBUTING.md) を参照
1167
1170
  - **ヘルプガイド** → [SUPPORT.md](SUPPORT.md) を参照
1168
- - **WeChat 交流グループ** →「天枢 harness 交流群」。QR コードで参加。日常の議論 / フィードバック / リリース情報をいち早く入手:
1171
+ - **WeChat 交流グループ** →「天枢 harness 交流群5群」。QR コードで参加。日常の議論 / フィードバック / リリース情報をいち早く入手:
1169
1172
 
1170
- <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="天枢 harness 交流群 WeChat グループ QR コード">
1173
+ <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="天枢 harness 交流群5群 WeChat グループ QR コード">
1171
1174
 
1172
1175
  > WeChat グループの QR コードには有効期限(7 日)があります。期限切れの場合は [Discussions](https://github.com/huiliyi37/Tianshu-harness/discussions) または Issue にコメントしてください。メンテナーが新しい QR を補充します。
1173
1176
 
package/README.ko.md CHANGED
@@ -29,7 +29,7 @@
29
29
  <img src="https://img.shields.io/github/v/release/huiliyi37/Tianshu-harness?color=8B5CF6&label=Release&logo=github&style=for-the-badge" alt="GitHub release">
30
30
  <img src="https://img.shields.io/badge/License-Apache%202.0-3B5BDB?style=for-the-badge&logo=apache" alt="License">
31
31
  <img src="https://img.shields.io/badge/TypeScript-Strict-blue?style=for-the-badge&logo=typescript" alt="TypeScript">
32
- <img src="https://img.shields.io/badge/Tests-16%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
32
+ <img src="https://img.shields.io/badge/Tests-19%2C000%2B%20Passed-green?style=for-the-badge&logo=testinglibrary" alt="Tests">
33
33
  <a href="https://discord.gg/XjWTATCHB"><img src="https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Discord"></a>
34
34
  <a href="https://atomgit.com/huiliyi37/Tianshu-harness"><img src="https://atomgit.com/huiliyi37/Tianshu-harness/star/badge.svg" alt="AtomGit Star"></a>
35
35
  <a href="https://github.com/huiliyi37/Tianshu-harness/releases"><img src="https://img.shields.io/github/downloads/huiliyi37/Tianshu-harness/total?logo=github&label=downloads" alt="GitHub downloads"></a>
@@ -48,7 +48,7 @@
48
48
  > **天枢**는 TypeScript로 작성된 코딩 에이전트 런타임입니다. **터미널 TUI**와 **데스크톱 GUI**가 동일한 커널을 공유하며, 모델이 질문에 답하는 것에 그치지 않고, 인지 가드레일·멀티에이전트 오케스트레이션·DeepSeek V4 프리픽스 캐시에 맞춰 설계된 저비용 장대 세션을 갖추고 다단계 코딩 작업을 계속 완수할 수 있게 합니다.
49
49
 
50
50
  - **터미널 × 데스크톱, 하나의 커널** —— 순수 ANSI 자체 제작 TUI(`tianshu`)와 Tauri 데스크톱(macOS / Windows / Linux)이 동일한 에이전트 커널을 공유합니다. 양쪽의 능력은 동일하며 사용 시나리오에 따라 전환할 수 있습니다.
51
- - **인지 가상 머신(CVM)** —— 72개의 런타임 훅이 5대 단계에 걸쳐 있어, 모델 출력과 실제 행동 사이에 관측 가능하고 바로잡을 수 있는 인지 런타임을 둡니다([A/B 실증](docs/CVM运行时对Agent模型的实证影响.md)).
51
+ - **인지 가상 머신(CVM)** —— 75개의 런타임 훅이 5대 단계에 걸쳐 있어, 모델 출력과 실제 행동 사이에 관측 가능하고 바로잡을 수 있는 인지 런타임을 둡니다([A/B 실증](docs/CVM运行时对Agent模型的实证影响.md)).
52
52
  - **멀티에이전트 오케스트레이션** —— 가벼운 `/scout` 읽기 전용 정찰, 병렬 `/team` 시공부터 `/council` 다중 좌석 회진, `/galaxy` 다차원 공략까지. 복잡한 작업은 파(wave) 단위로 실행하며 파마다 검수합니다.
53
53
  - **통합 프로젝트 메모리** —— 프로젝트 지식은 `.rivet/knowledge/memory.jsonl`에 기록됩니다. 자동 주입은 거버넌스/제약 계열 메모리에만 한정되며, 과거 문제와 문서는 명시적 recall을 통해서만 들어옵니다——새 작업을 납치하지 않습니다.
54
54
  - **프리픽스 캐시 최우선** —— 동결 프리픽스 + 증분 appendix + 경계 압축으로 DeepSeek V4 장대 세션에서 실측 정상 적중률 **95–99%**를 유지하여 token 비용을 크게 낮춥니다.
@@ -116,7 +116,7 @@ CVM은 모델을「더 똑똑하게」만드는 것이 아니라 4계층 방어
116
116
  Layer 1: 信念宪法(static prompt) → "你应该质疑、验证、拒绝" [A/B 已证]
117
117
  Layer 2: Courage Hook(preTurn) → 高信心时鼓励独立判断 [A/B 已证]
118
118
  Layer 3: Sensorium(每 turn <1ms) → 六维状态感知,驱动策略切换 [Wave 7-8 已证]
119
- Layer 4: RuntimeHookPipeline(72 hooks) → trap-and-emulate 拦截退化行为 [全管线运行中]
119
+ Layer 4: RuntimeHookPipeline(75 hooks) → trap-and-emulate 拦截退化行为 [全管线运行中]
120
120
  ```
121
121
 
122
122
  ### 독립된 인지: 星域은 롤플레이가 아니다
@@ -135,14 +135,15 @@ Layer 4: RuntimeHookPipeline(72 hooks) → trap-and-emulate 拦截退化行
135
135
 
136
136
  | 지표 | 수치 |
137
137
  |------|------|
138
- | CLI 소스코드(TypeScript, 테스트 제외) | 1,078 파일 / 257,623 줄 |
139
- | 테스트 코드 | 1,361 파일 / 256,001 줄 |
140
- | 테스트 케이스(node:test, 정적 선언 기준) | **16,471**, 테스트 : 소스 ≈ **0.99 : 1** |
141
- | 누적 커밋 | **6,178**(main 브랜치; 2026-05-15 리포지토리 생성, 105일) |
138
+ | `src/` 소스(TypeScript, 테스트 제외) | 약 1,256 파일 / 30만 줄(가장 큰 `agent/`는 483 파일) |
139
+ | `src/` 테스트 | 약 1,592 파일 / 31만 줄(node:test, 소스와 약 1:1) |
140
+ | `desktop/src` | 약 450 파일 / 9.6만 줄(React), 별도로 Rust 약 1.1만 줄 |
141
+ | `vscode-extension/src` | 17 파일 / 약 2,700 줄 |
142
+ | 누적 커밋 | **8,008**(2026-05-15 생성, 약 4.5개월; 최근 30일 1,769) |
142
143
  | 타입 체크 | `tsc` strict + `noUncheckedIndexedAccess` |
143
144
  | 프리픽스 캐시 적중률 | 장대 세션 정상 상태 실측 95–99% |
144
145
 
145
- 코딩 에이전트의 핵심 로직(멀티턴 루프, 도구 파이프라인, 컨텍스트 압축)은 테스트가 어렵기로 유명하고, 오픈소스 에이전트 프로젝트는 일반적으로 테스트 커버리지가 얇습니다——본 프로젝트는 테스트와 소스를 동량으로 유지하고 사고 수정에는 반드시 회귀 테스트를 붙입니다. 테스트:소스 줄 수 비는 오랫동안 0.93–0.99를 유지하며 규모가 커져도 희석되지 않았습니다(위 표는 2026-08-28 실측 스냅샷). 완전한 통계 기준·반복 마일스톤·재현 명령어는 [엔지니어링 품질 지표](docs/engineering-metrics.md)를 참조하세요.
146
+ 코딩 에이전트의 핵심 로직(멀티턴 루프, 도구 파이프라인, 컨텍스트 압축)은 테스트가 어렵기로 유명하고, 오픈소스 에이전트 프로젝트는 일반적으로 테스트 커버리지가 얇습니다——본 프로젝트는 테스트와 소스를 동량으로 유지하고 사고 수정에는 반드시 회귀 테스트를 붙입니다. 테스트:소스 줄 수 비는 1:1 근처를 유지하며 규모가 커져도 희석되지 않았습니다(이전 슬라이스는 0.93–0.99; 위 표는 2026-09-30 어림 스냅샷). 완전한 통계 기준·반복 마일스톤·재현 명령어는 [엔지니어링 품질 지표](docs/engineering-metrics.md)를 참조하세요.
146
147
 
147
148
  ## 🚀 빠른 시작
148
149
 
@@ -336,7 +337,7 @@ DeepSeek은 캐시 미스에 50× 비용을 부과합니다. 天枢의 프롬프
336
337
 
337
338
  프리픽스 캐시가 정상 상태 상한에 근접하면 비용 최적화는 DeepSeek API 사고 token 쪽으로 옮겨갑니다——출력 token 단위 과금의 추론 모델에서는 verbose reasoning을 줄이는 것이 ROI가 가장 높은 레버입니다.
338
339
 
339
- - **기본 reasoningEffort 하향** —— DeepSeek V4 Pro는 `max` → `high`, Flash는 `max` → `medium`. 이미 명시적 구성을 둔 사용자는 영향이 없습니다(`reasoningFloor` 보호).
340
+ - **기본 reasoningEffort** —— DeepSeek V4-Pro-0813와 V4.1-Flash의 기본값은 모두 `high`입니다. 이미 명시적 구성을 둔 사용자는 영향이 없습니다(`reasoningFloor` 보호).
340
341
  - **effort 라우팅(기본 켜짐)** —— 낮은 복잡도 + 높은 확신도의 일상 턴은 reasoning effort를 한 단계 자동 하향하며, 올리는 일은 없습니다. `RIVET_EFFORT_ROUTING=0`으로 끄기.
341
342
  - **Compact는 flash 사이드 경유** —— 압축 시 provider가 구성되지 않았는데도 메인 모델로 가던 버그를 수정하고, 메인 provider에서 flash 엔드포인트를 자동 추론합니다.
342
343
  - **Doom-loop 자동 수습** —— 반복되는 도구 호출을 감지하면 동적 appendix로 더 엄격한 output-style 제약을 주입해 불필요한 사고 token 소모를 줄입니다. `RIVET_TERSE=0`으로 끄기.
@@ -608,6 +609,7 @@ TUI는 CLI의 기본 표면입니다. 데스크톱 앱(Tauri)과 VS Code/Cur
608
609
  - **sidecar 메모리 적응**: 힙 상한을 머신 메모리별로 자동 분급(8G→2G / 16G→4G / 32G→6G / 64G+→8G, `RIVET_SIDECAR_HEAP_MB`로 덮어쓰기 가능), ≤8GB 머신은 자동으로 lean 리소스 단계
609
610
  - **watchdog 자동 복구**: 경계 정체 시 자동으로 이어 실행, 데스크톱 타임라인에서 복구 이벤트를 볼 수 있습니다(⟳ 자동 복구 / ⏹ 할당량 소진)
610
611
  - **다중 세션 동시**: 탭 바에서 여러 세션 관리, 각각 독립 cwd + 모델 + 승인 모드
612
+ - **WSL 연결 런타임** (Windows): 원클릭으로 WSL 내부에서 실행되는 런타임에 연결합니다. 세션, 파일 읽기/쓰기, 명령 실행이 모두 Linux 측에서 이루어집니다. 연결을 끊으면 WSL 측 프로세스가 자동으로 정리됩니다. 양측은 독립적으로 업그레이드할 수 있습니다 — 자세한 내용은 [데스크톱 사용자 가이드](docs/desktop-guide.md)를 참조하세요.
611
613
  - **기능 패널**(왼쪽 바 `⌘1…9` 전환): Mission Control(다중 세션 콘솔), Inbox(받은 편지함), Automations(정기 작업), Skills / Hooks 관리, Git / GitHub, Changes(변경 검토), Delegation(파견 함대와 팀 wave DAG), Cockpit 운전석
612
614
  - **Popout 독립 창**: 단일 세션 스레드를 독립 창으로 팝아웃, 멀티 스크린 병행
613
615
  - **JobsDock / TodoDock 상주 서랍**: 백그라운드 작업 도킹 바(로그 펼치기 / Kill / 터미널에서 열기), 탭 간 상주 todo
@@ -716,15 +718,16 @@ OpenAI 형식의 텍스트→이미지 엔드포인트(SiliconFlow, OpenAI Ima
716
718
 
717
719
  ### 다중 제공자 + 적응형 라우팅
718
720
 
719
- | 제공자 | 인증 방식 | 플래그십 모델 |
721
+ | 제공자 | 인증 방식 | 연결 모델 예시 |
720
722
  |--------|----------|----------|
721
- | DeepSeek | API key | deepseek-v4-pro (1M ctx), deepseek-v4-flash, deepseek-v4-flash-vision-exp(비전) |
723
+ | DeepSeek | API key | deepseek-flash(1M ctx, DeepSeek-V4.1-Flash, 비전), deepseek-v4-pro(1M ctx, DeepSeek-V4-Pro-0813) |
722
724
  | DeepSeek Spark(Pro 전용) | API key(`DEEPSEEK_SPARK_API_KEY`) | deepseek-v4-flash(경량 추론 + 앵커 캐시 채널) |
723
725
  | Claude | API key(`cc-switch` 프록시 경유) | claude-opus-4-8, claude-sonnet-4-5 |
724
726
  | GLM(지푸) | API key | glm-5.3 (1M ctx), glm-5.3-flash(비전), glm-5.2 |
725
727
  | Codex (GPT-5.6) | OAuth PKCE(ChatGPT 구독) | gpt-5.6-sol |
726
- | MiniMax | API key | MiniMax-M3, MiniMax-M2.7 |
727
- | MiMo | API key | mimo-v2.5-pro |
728
+ | MiniMax | API key | MiniMax-M3(비전), MiniMax-M2.7 |
729
+ | MiMo | API key | mimo-v2.5-pro(기존 V2.5 프리셋; V2.6 Flash / Pro는 모델 목록에서 추가 가능) |
730
+ | Kimi Code | API key | k3(1M ctx, 비전), k3-256k, kimi-for-coding |
728
731
 
729
732
  세션 안에서 `/model <name>`으로 언제든 제공자를 전환할 수 있습니다.
730
733
 
@@ -921,7 +924,7 @@ Node.js 24 · TypeScript strict(`noUncheckedIndexedAccess`)· T9 ANSI 렌더
921
924
 
922
925
  ```bash
923
926
  npm run typecheck # 类型检查
924
- npm test # 所有测试(16,000+ 用例)
927
+ npm test # 所有测试(19,000+ 用例)
925
928
  npm run build # tsup 打包 + 原生/wasm 载荷落位
926
929
  node dist/cli/entry.js # 启动 TUI
927
930
  node dist/cli/entry.js -p "fix the typo" # 无界面模式
@@ -1167,9 +1170,9 @@ tianshu logs open desktop # 打开 sidecar 日志目录(GUI 起不
1167
1170
  - **보안 취약점** → [비공개 보고](https://github.com/huiliyi37/Tianshu-harness/security/advisories/new)(공개 issue를 열지 말 것)
1168
1171
  - **코드 기여** → [CONTRIBUTING.md](CONTRIBUTING.md) 참조
1169
1172
  - **도움 요청 가이드** → [SUPPORT.md](SUPPORT.md) 참조
1170
- - **위챗 교류 그룹** → 「天枢 harness 교류 그룹」, QR 코드를 스캔해 입장, 일상 토론 / 피드백 / 최신 릴리스 소식을 가장 먼저 받아볼 수 있습니다:
1173
+ - **위챗 교류 그룹** → 「天枢 harness 交流群5群」, QR 코드를 스캔해 입장, 일상 토론 / 피드백 / 최신 릴리스 소식을 가장 먼저 받아볼 수 있습니다:
1171
1174
 
1172
- <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="天枢 harness 交流群微信群二维码">
1175
+ <img src="docs/brand/assets/wechat-group-qr.png" width="280" alt="天枢 harness 交流群5群微信群二维码">
1173
1176
 
1174
1177
  > 위챗 그룹 QR 코드에는 유효기간이 있습니다(7일). 만료되면 [Discussions](https://github.com/huiliyi37/Tianshu-harness/discussions)나 Issue에 남겨 주시면 관리자가 새 코드를 올려 드립니다.
1175
1178
 
@@ -1238,4 +1241,3 @@ tianshu logs open desktop # 打开 sidecar 日志目录(GUI 起不
1238
1241
  ## 감사의 말
1239
1242
 
1240
1243
  - 데스크톱 앱의 "사용자 지정 배경화면과 영역별 유리" 기능 **디자인**은 <a href="https://github.com/elysia395/dsh-wallpaper-engine">dsh-wallpaper-engine</a>(MIT License)을 참고했습니다. 구현은 천수가 독자적으로 작성한 것이며 상류 코드를 포함하지 않습니다. 참고 범위와 라이선스 전문은 <a href="THIRD-PARTY-NOTICES.md">THIRD-PARTY-NOTICES.md</a>를 참조하세요.
1241
-