@nocobase/app-plugin-agents 2.0.0-beta.1 → 2.0.0-beta.11

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 (382) hide show
  1. package/CHANGELOG.md +197 -0
  2. package/README.md +25 -5
  3. package/dist/client/chat/api.d.ts +6 -1
  4. package/dist/client/chat/api.d.ts.map +1 -1
  5. package/dist/client/chat/api.js +18 -0
  6. package/dist/client/chat/api.js.map +1 -1
  7. package/dist/client/chat/controller.d.ts +12 -0
  8. package/dist/client/chat/controller.d.ts.map +1 -1
  9. package/dist/client/chat/controller.js +65 -20
  10. package/dist/client/chat/controller.js.map +1 -1
  11. package/dist/client/chat/notices.d.ts +12 -0
  12. package/dist/client/chat/notices.d.ts.map +1 -0
  13. package/dist/client/chat/notices.js +15 -0
  14. package/dist/client/chat/notices.js.map +1 -0
  15. package/dist/client/chat/submissions.d.ts +16 -0
  16. package/dist/client/chat/submissions.d.ts.map +1 -1
  17. package/dist/client/chat/submissions.js +22 -0
  18. package/dist/client/chat/submissions.js.map +1 -1
  19. package/dist/client/chat/use-chat.d.ts.map +1 -1
  20. package/dist/client/chat/use-chat.js +1 -0
  21. package/dist/client/chat/use-chat.js.map +1 -1
  22. package/dist/client/chat.d.ts +1 -0
  23. package/dist/client/chat.d.ts.map +1 -1
  24. package/dist/client/chat.js +1 -0
  25. package/dist/client/chat.js.map +1 -1
  26. package/dist/client/components/page-container.js +1 -1
  27. package/dist/client/components/page-container.js.map +1 -1
  28. package/dist/client/components/route-child-page.d.ts +1 -1
  29. package/dist/client/components/route-child-page.d.ts.map +1 -1
  30. package/dist/client/components/route-child-page.js +18 -2
  31. package/dist/client/components/route-child-page.js.map +1 -1
  32. package/dist/client/components/route-overlay.d.ts +4 -1
  33. package/dist/client/components/route-overlay.d.ts.map +1 -1
  34. package/dist/client/components/route-overlay.js +32 -3
  35. package/dist/client/components/route-overlay.js.map +1 -1
  36. package/dist/client/components/ui/alert-dialog.d.ts +3 -1
  37. package/dist/client/components/ui/alert-dialog.d.ts.map +1 -1
  38. package/dist/client/components/ui/alert-dialog.js +2 -2
  39. package/dist/client/components/ui/alert-dialog.js.map +1 -1
  40. package/dist/client/components/unsaved-changes.d.ts.map +1 -1
  41. package/dist/client/components/unsaved-changes.js +17 -4
  42. package/dist/client/components/unsaved-changes.js.map +1 -1
  43. package/dist/client/components/use-route-overlay.d.ts +2 -9
  44. package/dist/client/components/use-route-overlay.d.ts.map +1 -1
  45. package/dist/client/components/use-route-overlay.js +5 -3
  46. package/dist/client/components/use-route-overlay.js.map +1 -1
  47. package/dist/client/lib/format.d.ts.map +1 -1
  48. package/dist/client/lib/format.js +1 -0
  49. package/dist/client/lib/format.js.map +1 -1
  50. package/dist/client/locales/de-DE.d.ts.map +1 -1
  51. package/dist/client/locales/de-DE.js +145 -109
  52. package/dist/client/locales/de-DE.js.map +1 -1
  53. package/dist/client/locales/en-US.d.ts +2 -0
  54. package/dist/client/locales/en-US.d.ts.map +1 -1
  55. package/dist/client/locales/en-US.js +4 -2
  56. package/dist/client/locales/en-US.js.map +1 -1
  57. package/dist/client/locales/es-ES.d.ts.map +1 -1
  58. package/dist/client/locales/es-ES.js +222 -186
  59. package/dist/client/locales/es-ES.js.map +1 -1
  60. package/dist/client/locales/fr-FR.d.ts.map +1 -1
  61. package/dist/client/locales/fr-FR.js +154 -118
  62. package/dist/client/locales/fr-FR.js.map +1 -1
  63. package/dist/client/locales/id-ID.d.ts.map +1 -1
  64. package/dist/client/locales/id-ID.js +143 -107
  65. package/dist/client/locales/id-ID.js.map +1 -1
  66. package/dist/client/locales/index.d.ts.map +1 -1
  67. package/dist/client/locales/index.js +2 -0
  68. package/dist/client/locales/index.js.map +1 -1
  69. package/dist/client/locales/ja-JP.d.ts.map +1 -1
  70. package/dist/client/locales/ja-JP.js +226 -190
  71. package/dist/client/locales/ja-JP.js.map +1 -1
  72. package/dist/client/locales/ko-KR.d.ts +5 -0
  73. package/dist/client/locales/ko-KR.d.ts.map +1 -0
  74. package/dist/client/locales/ko-KR.js +1319 -0
  75. package/dist/client/locales/ko-KR.js.map +1 -0
  76. package/dist/client/locales/pt-BR.d.ts.map +1 -1
  77. package/dist/client/locales/pt-BR.js +216 -180
  78. package/dist/client/locales/pt-BR.js.map +1 -1
  79. package/dist/client/locales/ru-RU.d.ts +5 -0
  80. package/dist/client/locales/ru-RU.d.ts.map +1 -0
  81. package/dist/client/locales/ru-RU.js +1349 -0
  82. package/dist/client/locales/ru-RU.js.map +1 -0
  83. package/dist/client/locales/runWait.en-US.d.ts +2 -0
  84. package/dist/client/locales/runWait.en-US.d.ts.map +1 -1
  85. package/dist/client/locales/runWait.en-US.js +2 -0
  86. package/dist/client/locales/runWait.en-US.js.map +1 -1
  87. package/dist/client/locales/runWait.zh-CN.d.ts.map +1 -1
  88. package/dist/client/locales/runWait.zh-CN.js +2 -0
  89. package/dist/client/locales/runWait.zh-CN.js.map +1 -1
  90. package/dist/client/locales/runtimes.en-US.d.ts +9 -0
  91. package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
  92. package/dist/client/locales/runtimes.en-US.js +11 -2
  93. package/dist/client/locales/runtimes.en-US.js.map +1 -1
  94. package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
  95. package/dist/client/locales/runtimes.zh-CN.js +11 -2
  96. package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
  97. package/dist/client/locales/vi-VN.d.ts.map +1 -1
  98. package/dist/client/locales/vi-VN.js +182 -146
  99. package/dist/client/locales/vi-VN.js.map +1 -1
  100. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  101. package/dist/client/locales/zh-CN.js +4 -2
  102. package/dist/client/locales/zh-CN.js.map +1 -1
  103. package/dist/client/locales/zh-TW.d.ts.map +1 -1
  104. package/dist/client/locales/zh-TW.js +159 -123
  105. package/dist/client/locales/zh-TW.js.map +1 -1
  106. package/dist/client/pages/runtimes/quota-limit-setting.d.ts +12 -0
  107. package/dist/client/pages/runtimes/quota-limit-setting.d.ts.map +1 -0
  108. package/dist/client/pages/runtimes/quota-limit-setting.js +57 -0
  109. package/dist/client/pages/runtimes/quota-limit-setting.js.map +1 -0
  110. package/dist/client/pages/runtimes/quota.d.ts +3 -2
  111. package/dist/client/pages/runtimes/quota.d.ts.map +1 -1
  112. package/dist/client/pages/runtimes/quota.js +10 -4
  113. package/dist/client/pages/runtimes/quota.js.map +1 -1
  114. package/dist/client/pages/runtimes/runner-runs.d.ts.map +1 -1
  115. package/dist/client/pages/runtimes/runner-runs.js +2 -8
  116. package/dist/client/pages/runtimes/runner-runs.js.map +1 -1
  117. package/dist/client/pages/runtimes/runner-tools.d.ts.map +1 -1
  118. package/dist/client/pages/runtimes/runner-tools.js +7 -16
  119. package/dist/client/pages/runtimes/runner-tools.js.map +1 -1
  120. package/dist/client/pages/runtimes/workspace-diagnostics.js +3 -3
  121. package/dist/client/pages/runtimes/workspace-diagnostics.js.map +1 -1
  122. package/dist/client/pages/usage/date-range-picker.d.ts.map +1 -1
  123. package/dist/client/pages/usage/date-range-picker.js +3 -1
  124. package/dist/client/pages/usage/date-range-picker.js.map +1 -1
  125. package/dist/client/routes.d.ts.map +1 -1
  126. package/dist/client/routes.js +7 -0
  127. package/dist/client/routes.js.map +1 -1
  128. package/dist/client/runs/format-wait.d.ts.map +1 -1
  129. package/dist/client/runs/format-wait.js +2 -0
  130. package/dist/client/runs/format-wait.js.map +1 -1
  131. package/dist/database/migrations/.manifest.json +20 -0
  132. package/dist/database/migrations/202611070001_ag_run_runner_pin.d.ts +4 -0
  133. package/dist/database/migrations/202611070001_ag_run_runner_pin.d.ts.map +1 -0
  134. package/dist/database/migrations/202611070001_ag_run_runner_pin.js +17 -0
  135. package/dist/database/migrations/202611070001_ag_run_runner_pin.js.map +1 -0
  136. package/dist/database/migrations/202611080001_ag_conversation_shares.d.ts +4 -0
  137. package/dist/database/migrations/202611080001_ag_conversation_shares.d.ts.map +1 -0
  138. package/dist/database/migrations/202611080001_ag_conversation_shares.js +25 -0
  139. package/dist/database/migrations/202611080001_ag_conversation_shares.js.map +1 -0
  140. package/dist/database/migrations/202611080002_ag_run_failure_params.d.ts +4 -0
  141. package/dist/database/migrations/202611080002_ag_run_failure_params.d.ts.map +1 -0
  142. package/dist/database/migrations/202611080002_ag_run_failure_params.js +17 -0
  143. package/dist/database/migrations/202611080002_ag_run_failure_params.js.map +1 -0
  144. package/dist/database/migrations/202611090001_ag_runner_preference.d.ts +9 -0
  145. package/dist/database/migrations/202611090001_ag_runner_preference.d.ts.map +1 -0
  146. package/dist/database/migrations/202611090001_ag_runner_preference.js +28 -0
  147. package/dist/database/migrations/202611090001_ag_runner_preference.js.map +1 -0
  148. package/dist/database/migrations/202611110001_ag_runner_quota_limits.d.ts +4 -0
  149. package/dist/database/migrations/202611110001_ag_runner_quota_limits.d.ts.map +1 -0
  150. package/dist/database/migrations/202611110001_ag_runner_quota_limits.js +17 -0
  151. package/dist/database/migrations/202611110001_ag_runner_quota_limits.js.map +1 -0
  152. package/dist/package.json +4 -2
  153. package/dist/server/composition.d.ts +9 -1
  154. package/dist/server/composition.d.ts.map +1 -1
  155. package/dist/server/composition.js +31 -2
  156. package/dist/server/composition.js.map +1 -1
  157. package/dist/server/core/agents/agent.service.d.ts +2 -1
  158. package/dist/server/core/agents/agent.service.d.ts.map +1 -1
  159. package/dist/server/core/agents/agent.service.js.map +1 -1
  160. package/dist/server/core/agents/agent.store.d.ts +2 -2
  161. package/dist/server/core/agents/agent.store.d.ts.map +1 -1
  162. package/dist/server/core/agents/agent.store.js +8 -2
  163. package/dist/server/core/agents/agent.store.js.map +1 -1
  164. package/dist/server/core/brief/brief.d.ts +10 -5
  165. package/dist/server/core/brief/brief.d.ts.map +1 -1
  166. package/dist/server/core/brief/brief.js +36 -13
  167. package/dist/server/core/brief/brief.js.map +1 -1
  168. package/dist/server/core/brief/index.d.ts +1 -1
  169. package/dist/server/core/brief/index.d.ts.map +1 -1
  170. package/dist/server/core/brief/index.js +1 -1
  171. package/dist/server/core/brief/index.js.map +1 -1
  172. package/dist/server/core/conversations/attachments.d.ts +6 -4
  173. package/dist/server/core/conversations/attachments.d.ts.map +1 -1
  174. package/dist/server/core/conversations/attachments.js +66 -22
  175. package/dist/server/core/conversations/attachments.js.map +1 -1
  176. package/dist/server/core/conversations/chat-settings.d.ts +1 -1
  177. package/dist/server/core/conversations/chat-settings.d.ts.map +1 -1
  178. package/dist/server/core/conversations/chat-settings.js +6 -0
  179. package/dist/server/core/conversations/chat-settings.js.map +1 -1
  180. package/dist/server/core/conversations/conversation.service.d.ts +3 -1
  181. package/dist/server/core/conversations/conversation.service.d.ts.map +1 -1
  182. package/dist/server/core/conversations/conversation.service.js +198 -18
  183. package/dist/server/core/conversations/conversation.service.js.map +1 -1
  184. package/dist/server/core/conversations/conversation.store.d.ts +2 -0
  185. package/dist/server/core/conversations/conversation.store.d.ts.map +1 -1
  186. package/dist/server/core/conversations/conversation.store.js.map +1 -1
  187. package/dist/server/core/conversations/index.d.ts +1 -0
  188. package/dist/server/core/conversations/index.d.ts.map +1 -1
  189. package/dist/server/core/conversations/links.d.ts.map +1 -1
  190. package/dist/server/core/conversations/links.js +10 -5
  191. package/dist/server/core/conversations/links.js.map +1 -1
  192. package/dist/server/core/conversations/ports.d.ts +8 -2
  193. package/dist/server/core/conversations/ports.d.ts.map +1 -1
  194. package/dist/server/core/conversations/shares.d.ts +38 -0
  195. package/dist/server/core/conversations/shares.d.ts.map +1 -0
  196. package/dist/server/core/conversations/shares.js +189 -0
  197. package/dist/server/core/conversations/shares.js.map +1 -0
  198. package/dist/server/core/reports/report.service.d.ts.map +1 -1
  199. package/dist/server/core/reports/report.service.js +24 -13
  200. package/dist/server/core/reports/report.service.js.map +1 -1
  201. package/dist/server/core/runs/access.d.ts +7 -1
  202. package/dist/server/core/runs/access.d.ts.map +1 -1
  203. package/dist/server/core/runs/access.js +51 -2
  204. package/dist/server/core/runs/access.js.map +1 -1
  205. package/dist/server/core/runs/claim.d.ts +22 -3
  206. package/dist/server/core/runs/claim.d.ts.map +1 -1
  207. package/dist/server/core/runs/claim.js +260 -42
  208. package/dist/server/core/runs/claim.js.map +1 -1
  209. package/dist/server/core/runs/eligibility.d.ts.map +1 -1
  210. package/dist/server/core/runs/eligibility.js +1 -0
  211. package/dist/server/core/runs/eligibility.js.map +1 -1
  212. package/dist/server/core/runs/extensions.d.ts +30 -2
  213. package/dist/server/core/runs/extensions.d.ts.map +1 -1
  214. package/dist/server/core/runs/extensions.js +18 -1
  215. package/dist/server/core/runs/extensions.js.map +1 -1
  216. package/dist/server/core/runs/git-credentials.d.ts.map +1 -1
  217. package/dist/server/core/runs/git-credentials.js +24 -2
  218. package/dist/server/core/runs/git-credentials.js.map +1 -1
  219. package/dist/server/core/runs/identity.d.ts.map +1 -1
  220. package/dist/server/core/runs/identity.js +9 -0
  221. package/dist/server/core/runs/identity.js.map +1 -1
  222. package/dist/server/core/runs/index.d.ts +3 -2
  223. package/dist/server/core/runs/index.d.ts.map +1 -1
  224. package/dist/server/core/runs/index.js +2 -1
  225. package/dist/server/core/runs/index.js.map +1 -1
  226. package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
  227. package/dist/server/core/runs/lifecycle.js +14 -0
  228. package/dist/server/core/runs/lifecycle.js.map +1 -1
  229. package/dist/server/core/runs/npm-credentials.d.ts +35 -0
  230. package/dist/server/core/runs/npm-credentials.d.ts.map +1 -0
  231. package/dist/server/core/runs/npm-credentials.js +83 -0
  232. package/dist/server/core/runs/npm-credentials.js.map +1 -0
  233. package/dist/server/core/runs/ports.d.ts +24 -3
  234. package/dist/server/core/runs/ports.d.ts.map +1 -1
  235. package/dist/server/core/runs/ports.js.map +1 -1
  236. package/dist/server/core/runs/preview.d.ts +1 -4
  237. package/dist/server/core/runs/preview.d.ts.map +1 -1
  238. package/dist/server/core/runs/preview.js +10 -5
  239. package/dist/server/core/runs/preview.js.map +1 -1
  240. package/dist/server/core/runs/quota-wait.d.ts +7 -0
  241. package/dist/server/core/runs/quota-wait.d.ts.map +1 -0
  242. package/dist/server/core/runs/quota-wait.js +56 -0
  243. package/dist/server/core/runs/quota-wait.js.map +1 -0
  244. package/dist/server/core/runs/run-data-purge.d.ts.map +1 -1
  245. package/dist/server/core/runs/run-data-purge.js +1 -0
  246. package/dist/server/core/runs/run-data-purge.js.map +1 -1
  247. package/dist/server/core/runs/run.service.d.ts +31 -5
  248. package/dist/server/core/runs/run.service.d.ts.map +1 -1
  249. package/dist/server/core/runs/run.service.js +129 -35
  250. package/dist/server/core/runs/run.service.js.map +1 -1
  251. package/dist/server/core/runs/run.store.d.ts +24 -0
  252. package/dist/server/core/runs/run.store.d.ts.map +1 -1
  253. package/dist/server/core/runs/run.store.js +44 -0
  254. package/dist/server/core/runs/run.store.js.map +1 -1
  255. package/dist/server/core/runs/sweeper.d.ts.map +1 -1
  256. package/dist/server/core/runs/sweeper.js +2 -0
  257. package/dist/server/core/runs/sweeper.js.map +1 -1
  258. package/dist/server/core/runs/transitions.d.ts +1 -0
  259. package/dist/server/core/runs/transitions.d.ts.map +1 -1
  260. package/dist/server/core/runs/transitions.js +15 -1
  261. package/dist/server/core/runs/transitions.js.map +1 -1
  262. package/dist/server/core/runs/workload.d.ts +2 -2
  263. package/dist/server/core/runs/workload.d.ts.map +1 -1
  264. package/dist/server/core/runs/workload.js +62 -9
  265. package/dist/server/core/runs/workload.js.map +1 -1
  266. package/dist/server/kernel/clock.d.ts +2 -0
  267. package/dist/server/kernel/clock.d.ts.map +1 -1
  268. package/dist/server/kernel/clock.js +14 -0
  269. package/dist/server/kernel/clock.js.map +1 -1
  270. package/dist/server/kernel/events.d.ts +4 -1
  271. package/dist/server/kernel/events.d.ts.map +1 -1
  272. package/dist/server/kernel/events.js.map +1 -1
  273. package/dist/server/locales/de-DE.js +3 -3
  274. package/dist/server/locales/de-DE.js.map +1 -1
  275. package/dist/server/locales/es-ES.js +6 -6
  276. package/dist/server/locales/es-ES.js.map +1 -1
  277. package/dist/server/locales/fr-FR.js +4 -4
  278. package/dist/server/locales/fr-FR.js.map +1 -1
  279. package/dist/server/locales/id-ID.js +5 -5
  280. package/dist/server/locales/id-ID.js.map +1 -1
  281. package/dist/server/locales/index.d.ts.map +1 -1
  282. package/dist/server/locales/index.js +2 -0
  283. package/dist/server/locales/index.js.map +1 -1
  284. package/dist/server/locales/ja-JP.d.ts.map +1 -1
  285. package/dist/server/locales/ja-JP.js +6 -6
  286. package/dist/server/locales/ja-JP.js.map +1 -1
  287. package/dist/server/locales/ko-KR.d.ts +5 -0
  288. package/dist/server/locales/ko-KR.d.ts.map +1 -0
  289. package/dist/server/locales/ko-KR.js +59 -0
  290. package/dist/server/locales/ko-KR.js.map +1 -0
  291. package/dist/server/locales/pt-BR.js +6 -6
  292. package/dist/server/locales/pt-BR.js.map +1 -1
  293. package/dist/server/locales/ru-RU.d.ts +5 -0
  294. package/dist/server/locales/ru-RU.d.ts.map +1 -0
  295. package/dist/server/locales/ru-RU.js +59 -0
  296. package/dist/server/locales/ru-RU.js.map +1 -0
  297. package/dist/server/locales/vi-VN.js +6 -6
  298. package/dist/server/locales/vi-VN.js.map +1 -1
  299. package/dist/server/locales/zh-TW.d.ts.map +1 -1
  300. package/dist/server/locales/zh-TW.js +6 -6
  301. package/dist/server/locales/zh-TW.js.map +1 -1
  302. package/dist/server/online/agent/persistence/store.d.ts.map +1 -1
  303. package/dist/server/online/agent/persistence/store.js +3 -0
  304. package/dist/server/online/agent/persistence/store.js.map +1 -1
  305. package/dist/server/online/agent/runner/projection.d.ts +1 -1
  306. package/dist/server/online/agent/runner/projection.d.ts.map +1 -1
  307. package/dist/server/online/agent/runner/projection.js +8 -1
  308. package/dist/server/online/agent/runner/projection.js.map +1 -1
  309. package/dist/server/online/files/input.d.ts +2 -2
  310. package/dist/server/online/files/input.d.ts.map +1 -1
  311. package/dist/server/online/files/input.js +5 -6
  312. package/dist/server/online/files/input.js.map +1 -1
  313. package/dist/server/online/files/kimi.d.ts.map +1 -1
  314. package/dist/server/online/files/kimi.js +2 -2
  315. package/dist/server/online/files/kimi.js.map +1 -1
  316. package/dist/server/online/files/service.d.ts +2 -1
  317. package/dist/server/online/files/service.d.ts.map +1 -1
  318. package/dist/server/online/files/service.js +11 -10
  319. package/dist/server/online/files/service.js.map +1 -1
  320. package/dist/server/providers/agents.d.ts.map +1 -1
  321. package/dist/server/providers/agents.js +5 -2
  322. package/dist/server/providers/agents.js.map +1 -1
  323. package/dist/server/routes/admin.d.ts +1 -0
  324. package/dist/server/routes/admin.d.ts.map +1 -1
  325. package/dist/server/routes/admin.js +41 -14
  326. package/dist/server/routes/admin.js.map +1 -1
  327. package/dist/server/routes/chat.d.ts.map +1 -1
  328. package/dist/server/routes/chat.js +107 -24
  329. package/dist/server/routes/chat.js.map +1 -1
  330. package/dist/server/routes/index.d.ts.map +1 -1
  331. package/dist/server/routes/index.js +8 -2
  332. package/dist/server/routes/index.js.map +1 -1
  333. package/dist/server/routes/run.js +1 -1
  334. package/dist/server/routes/run.js.map +1 -1
  335. package/dist/server/routes/runners/admin.d.ts.map +1 -1
  336. package/dist/server/routes/runners/admin.js +3 -3
  337. package/dist/server/routes/runners/admin.js.map +1 -1
  338. package/dist/server/routes/runners/install.d.ts.map +1 -1
  339. package/dist/server/routes/runners/install.js +5 -0
  340. package/dist/server/routes/runners/install.js.map +1 -1
  341. package/dist/server/routes/runners/runner.d.ts.map +1 -1
  342. package/dist/server/routes/runners/runner.js +13 -22
  343. package/dist/server/routes/runners/runner.js.map +1 -1
  344. package/dist/server/routes/runners/runs.d.ts +1 -1
  345. package/dist/server/routes/runners/runs.d.ts.map +1 -1
  346. package/dist/server/routes/runners/runs.js +20 -1
  347. package/dist/server/routes/runners/runs.js.map +1 -1
  348. package/dist/server/routes/schemas.d.ts +4 -0
  349. package/dist/server/routes/schemas.d.ts.map +1 -1
  350. package/dist/server/routes/schemas.js +31 -6
  351. package/dist/server/routes/schemas.js.map +1 -1
  352. package/dist/server/runners/runner.service.d.ts.map +1 -1
  353. package/dist/server/runners/runner.service.js +33 -9
  354. package/dist/server/runners/runner.service.js.map +1 -1
  355. package/dist/server/runners/runner.store.d.ts +1 -0
  356. package/dist/server/runners/runner.store.d.ts.map +1 -1
  357. package/dist/server/runners/runner.store.js +1 -0
  358. package/dist/server/runners/runner.store.js.map +1 -1
  359. package/dist/server/tokens.d.ts +1 -1
  360. package/dist/server/tokens.d.ts.map +1 -1
  361. package/dist/server/tokens.js.map +1 -1
  362. package/dist/shared/briefs.d.ts +2 -6
  363. package/dist/shared/briefs.d.ts.map +1 -1
  364. package/dist/shared/conversations.d.ts +34 -3
  365. package/dist/shared/conversations.d.ts.map +1 -1
  366. package/dist/shared/conversations.js +10 -2
  367. package/dist/shared/conversations.js.map +1 -1
  368. package/dist/shared/runners.d.ts +7 -3
  369. package/dist/shared/runners.d.ts.map +1 -1
  370. package/dist/shared/runners.js +20 -4
  371. package/dist/shared/runners.js.map +1 -1
  372. package/dist/shared/runs.d.ts +11 -3
  373. package/dist/shared/runs.d.ts.map +1 -1
  374. package/dist/shared/runs.js +2 -0
  375. package/dist/shared/runs.js.map +1 -1
  376. package/docs/conversation-sharing.md +55 -0
  377. package/package.json +18 -16
  378. package/skills/nocobase-app-plugin-agents/SKILL.md +5 -1
  379. package/skills/nocobase-app-plugin-agents/references/extension-points.md +5 -1
  380. package/skills/nocobase-app-plugin-agents/references/online-agent.md +6 -6
  381. package/skills/nocobase-app-plugin-agents/references/runners.md +1 -1
  382. package/skills/nocobase-app-plugin-agents/references/verification-and-troubleshooting.md +2 -1
@@ -1,5 +1,3 @@
1
- import runtimesEnUS from './runtimes.en-US.js';
2
- import chatEnUS from './chat.en-US.js';
3
1
  const zhTW = {
4
2
  modelSuggestions: {
5
3
  design: '最強推理:方案設計、架構、疑難排查、重要修改的程式碼審查;也能進行一般實作、跨套件修改及撰寫方案',
@@ -55,7 +53,7 @@ const zhTW = {
55
53
  title: '放棄未儲存的變更?',
56
54
  },
57
55
  errors: {
58
- boundRunnerIncompatible: '此執行機無法執行所選 Agent。請更換執行機或建立新對話。',
56
+ boundRunnerIncompatible: '目前的執行環境無法執行所選 Agent。請更換執行環境後繼續。',
59
57
  CONFLICT: '同時,它發生了變化。重新載入並重試。',
60
58
  REVISION_CONFLICT: '同時,它發生了變化。重新載入並重試。',
61
59
  FORBIDDEN: '您不可以這樣做。',
@@ -95,30 +93,31 @@ const zhTW = {
95
93
  cline: 'Cline',
96
94
  amp: 'Amp',
97
95
  vibe: 'Mistral Vibe',
96
+ dsh: 'DeepSeek Harness',
98
97
  },
99
98
  agents: {
100
99
  unavailableNow: '目前無法使用',
101
100
  title: '代理',
102
- description: '從執行器回報的模型中新增代理。Lead Agent依據代理的擅長領域分派議題的每個步驟。',
103
- fromRunners: '執行器代理',
101
+ description: '從執行環境回報的模型新增 Agent。Lead Agent 會把任務的每個步驟交給描述最相符的 Agent。',
102
+ fromRunners: '執行環境代理',
104
103
  display: {
105
104
  search: '搜尋型號或供應商',
106
105
  select: '選擇{{name}}',
107
106
  showDisabled: '顯示已停用',
108
107
  hideDisabled: '隱藏已停用',
109
108
  },
110
- filterLabel: '顯示代理',
109
+ filterLabel: '顯示Agents',
111
110
  filters: {
112
111
  all: '全部{{count}}',
113
112
  enabled: '啟用 {{count}}',
114
113
  unreported: '無參賽者 {{count}}',
115
114
  },
116
- loadFailed: '無法載入代理',
115
+ loadFailed: '無法載入Agents',
117
116
  loadMore: '載入更多',
118
- emptyTitle: '還沒有代理',
119
- emptyDescription: '連接已登入編碼工具的執行器,再從「可用模型」新增代理。',
120
- noneInFilter: '這裡沒有代理。',
121
- howToAdd: '要新增代理,請在執行器上安裝編碼工具並登入可用的模型。執行器回報後,從「可用模型」填寫擅長領域即可新增並啟用代理。只有個人執行器可執行的代理,只能處理其擁有者發起的議題。',
117
+ emptyTitle: '還沒有Agents',
118
+ emptyDescription: '連接已登入編碼工具的執行環境,再從「可用模型」新增Agent。',
119
+ noneInFilter: '這裡沒有Agent。',
120
+ howToAdd: '要新增 Agent,請在執行環境上安裝程式設計工具並登入你可使用的模型:執行環境回報後,從「可用模型」寫下它擅長的事來新增。只有個人執行環境擁有的 Agent,只會處理其擁有者啟動的任務。',
122
121
  goodAtMissing: '還沒寫',
123
122
  columns: {
124
123
  agent: '代理',
@@ -128,21 +127,21 @@ const zhTW = {
128
127
  state: '狀態',
129
128
  },
130
129
  where: {
131
- none: '沒有執行器',
132
- team_one: '{{count}} 團隊執行器',
133
- team_other: '{{count}} 團隊執行器',
134
- personal_one: '{{count}} 個人執行器上線',
135
- personal_other: '{{count}} 個人執行器上線',
130
+ none: '沒有執行環境',
131
+ team_one: '{{count}} 團隊執行環境',
132
+ team_other: '{{count}} 團隊執行環境',
133
+ personal_one: '{{count}} 個人執行環境上線',
134
+ personal_other: '{{count}} 個人執行環境上線',
136
135
  both: '{{team}} 團隊 · {{personal}} 個人',
137
136
  names: '{{names}}',
138
- noneOnline: '目前沒有執行器線上',
139
- personalOnly: '僅限個人執行器',
137
+ noneOnline: '目前沒有執行環境線上',
138
+ personalOnly: '僅限個人執行環境',
140
139
  lastReported: '最後報告 {{when}}',
141
140
  },
142
141
  state: {
143
142
  enabled: '已啟用',
144
143
  disabled: '已停用',
145
- unreported: '沒有執行器',
144
+ unreported: '沒有執行環境',
146
145
  },
147
146
  effort: {
148
147
  default: '工具預設值',
@@ -156,13 +155,13 @@ const zhTW = {
156
155
  ultra: '超',
157
156
  },
158
157
  enable: {
159
- reportedBy_one: '{{count}} 執行器線上報道:{{names}}。',
160
- reportedBy_other: '{{count}} 執行器線上檢舉:{{names}}。',
161
- noRunnerNow: '目前沒有擁有它的執行器線上。',
162
- goodAtHint: 'Lead Agent透過這句話來決定交給該代理什麼。說一下它適合什麼,不適合什麼。',
158
+ reportedBy_one: '{{count}} 執行環境線上報道:{{names}}。',
159
+ reportedBy_other: '{{count}} 執行環境線上檢舉:{{names}}。',
160
+ noRunnerNow: '目前沒有擁有它的執行環境線上。',
161
+ goodAtHint: 'Lead Agent透過這句話來決定交給該Agent什麼。說一下它適合什麼,不適合什麼。',
163
162
  goodAtRequired: '在啟用它之前寫下它擅長什麼。',
164
163
  effortHint: 'Lead Agent交接工作時不能更改。',
165
- personalOnly: '只有個人執行器擁有它:Lead Agent只在其所有者開始的議題上才讓它工作。',
164
+ personalOnly: '只有個人執行環境擁有它:Lead Agent 只會把其擁有者啟動的任務交給它。',
166
165
  },
167
166
  edit: {
168
167
  button: '編輯',
@@ -214,15 +213,15 @@ const zhTW = {
214
213
  },
215
214
  agentTypes: {
216
215
  label: '代理型別',
217
- question: '什麼樣的代理人?',
216
+ question: '什麼樣的Agent?',
218
217
  online: '線上',
219
- runner: '執行器',
218
+ runner: '執行環境',
220
219
  onlineHint: '透過模型服務在伺服器上幾秒鐘內做出答覆。無需執行環境;它不能觸及程式碼。',
221
220
  runnerHint: '在執行環境驅動編碼工具並在工作目錄中工作:程式碼、檔案、命令。',
222
- immutable: '代理保持其型別;為另一種型別建立另一個代理。',
221
+ immutable: 'Agent保持其型別;為另一種型別建立另一個Agent。',
223
222
  onServer: '在伺服器上',
224
223
  filterAll: '所有型別',
225
- noneOfType: '沒有此類代理。',
224
+ noneOfType: '沒有此類Agent。',
226
225
  },
227
226
  agentSkills: {
228
227
  title: '技能',
@@ -231,15 +230,15 @@ const zhTW = {
231
230
  placeholder: '選擇技能',
232
231
  empty: '還沒有技能。',
233
232
  save: '儲存技能',
234
- descriptionOnline: '當任務與其描述相符時,代理程式在伺服器上的唯讀沙箱中手動讀取。',
235
- onlineScripts: '線上代理不會執行指令碼:代理可以讀取它們,但不能執行它們。',
233
+ descriptionOnline: '當任務與其描述相符時,Agent在伺服器上的唯讀沙箱中手動讀取。',
234
+ onlineScripts: '線上Agents不會執行指令碼:Agent可以讀取它們,但不能執行它們。',
236
235
  skippedScripts: ': {{paths}}',
237
236
  pathSeparator: ', ',
238
237
  },
239
238
  brief: {
240
239
  preview: '預覽完整提示',
241
240
  previewTitle: '預覽完整提示',
242
- previewDescription: '這個代理現在會在一個虛構的主題上傳送什麼樣的訊息。沒有任何東西排隊。',
241
+ previewDescription: '這個Agent現在會在一個虛構的主題上傳送什麼樣的訊息。沒有任何東西排隊。',
243
242
  scenario: '場景',
244
243
  sample: '關於虛構的主題:{{subject}}。標記為[樣本]的值是虛構的。',
245
244
  previewFailed: '無法呈現完整提示。',
@@ -248,9 +247,9 @@ const zhTW = {
248
247
  rendered: '渲染',
249
248
  raw: '原料',
250
249
  platform: '平臺規則與任務·關於{{size}}人物(英文)',
251
- platformNote: '平臺規則以英文傳送;客服人員仍用您的語言回覆。',
250
+ platformNote: '平臺規則以英文傳送;Agent仍用您的語言回覆。',
252
251
  agentPrompt: '代理提示(由您撰寫)',
253
- noAgentPrompt: '該代理沒有自己的提示。',
252
+ noAgentPrompt: '該Agent沒有自己的提示。',
254
253
  firstMessage: '第一則訊息',
255
254
  empty: '空',
256
255
  previewPlaceholders: '括號內關於執行環境的註釋由執行它的執行環境填寫:它的工作目錄,以及它剛剛準備的目錄的初始化提示。',
@@ -265,7 +264,7 @@ const zhTW = {
265
264
  },
266
265
  envVars: {
267
266
  title: '環境變數',
268
- description: '每次執行環境傳遞給編碼工具並在執行記錄中遮蔽;儲存後不會再次顯示值。任何使用共享代理的人都可以在自己的電腦上接收這些值;將高風險機密標記為「僅限團隊執行環境」。',
267
+ description: '每次執行環境傳遞給編碼工具並在執行記錄中遮蔽;儲存後不會再次顯示值。任何使用共享Agent的人都可以在自己的電腦上接收這些值;將高風險機密標記為「僅限團隊執行環境」。',
269
268
  add: '新增變數',
270
269
  addTitle: '新增環境變數',
271
270
  editTitle: '替代{{name}}',
@@ -276,7 +275,7 @@ const zhTW = {
276
275
  valueTooLong: '值大於8KB。',
277
276
  keepValueHint: '將其留空以保留當前值。',
278
277
  teamRunnersOnly: '僅限團隊執行環境',
279
- teamRunnersOnlyHint: '如果沒有它,執行會將值傳送到接受它的執行環境,包括可能使用代理的任何人的個人執行環境。有了它,只有團隊執行環境才能獲取此變數。',
278
+ teamRunnersOnlyHint: '如果沒有它,執行會將值傳送到接受它的執行環境,包括可能使用Agent的任何人的個人執行環境。有了它,只有團隊執行環境才能獲取此變數。',
280
279
  teamRunnersOnlyBadge: '僅限團隊執行環境',
281
280
  fromRunner: '從執行環境獲取',
282
281
  fromRunnerHint: '這裡不保留任何值:進行執行的執行環境從自己的機器提供它,用 {{command}} 在那裡設定或用 `--pass-env` 傳遞。不提供它的執行環境會在啟動之前失敗。',
@@ -321,7 +320,7 @@ const zhTW = {
321
320
  },
322
321
  scopeVariables: {
323
322
  title: '變數與機密',
324
- description: '發給在這裡工作的每一位代理。更具體的變數(工作目錄,然後是代理的)勝過這些。',
323
+ description: '發給在這裡工作的每一位Agent。更具體的變數(工作目錄,然後是Agent的)勝過這些。',
325
324
  },
326
325
  scopes: {
327
326
  workdir: '工作目錄',
@@ -333,7 +332,7 @@ const zhTW = {
333
332
  usage: {
334
333
  otherUse: {
335
334
  title: '其他型號使用',
336
- description: '模型呼叫外部代理執行,例如索引和搜尋知識庫。',
335
+ description: '模型呼叫外部Agent執行,例如索引和搜尋知識庫。',
337
336
  purpose: '使用',
338
337
  source: '提問者',
339
338
  model: '模型',
@@ -346,7 +345,7 @@ const zhTW = {
346
345
  },
347
346
  },
348
347
  title: '使用量',
349
- description: '使用什麼代理執行以及它們在當前模型價格下的成本是多少。',
348
+ description: '使用什麼Agent執行以及它們在當前模型價格下的成本是多少。',
350
349
  loadFailed: '無法載入使用情況',
351
350
  groupBy: '分組依據',
352
351
  groupByValue: '組 {{group}}',
@@ -368,7 +367,7 @@ const zhTW = {
368
367
  filters: {
369
368
  allGroups: '全部:{{group}}',
370
369
  agent: '代理',
371
- allAgents: '所有代理',
370
+ allAgents: '所有Agents',
372
371
  person: '被喚醒',
373
372
  allPeople: '大家',
374
373
  range: '日期範圍',
@@ -403,7 +402,7 @@ const zhTW = {
403
402
  },
404
403
  defaultSkills: {
405
404
  title: '預設技能',
406
- description: '在這裡工作的每個代理也都獲得了這些技能。',
405
+ description: '在這裡工作的每個Agent也都獲得了這些技能。',
407
406
  save: '儲存技能',
408
407
  saved: '已儲存預設技能。',
409
408
  },
@@ -420,7 +419,7 @@ const zhTW = {
420
419
  filters: {
421
420
  agent: '代理',
422
421
  status: '狀態',
423
- allAgents: '所有代理',
422
+ allAgents: '所有Agents',
424
423
  allStatuses: '所有狀態',
425
424
  },
426
425
  noMatch: '沒有執行與這些過濾器匹配。',
@@ -433,7 +432,7 @@ const zhTW = {
433
432
  retried: '執行已重新加入佇列',
434
433
  viewBrief: '看完整提示',
435
434
  briefTitle: '完整提示',
436
- briefDescription: '最後一次申領此輪運轉時代理人被告知的內容。',
435
+ briefDescription: '最後一次申領此輪運轉時Agent被告知的內容。',
437
436
  briefOf: '嘗試 {{attempt}},聲稱為 {{time}}',
438
437
  briefUnavailable: '此執行沒有可用的完整提示。',
439
438
  processDataCleared: '執行過程資料已根據保留策略清除。',
@@ -477,7 +476,7 @@ const zhTW = {
477
476
  transcript: {
478
477
  title: '執行記錄',
479
478
  notFound: '此執行不存在。',
480
- waiting: '等待代理啟動...',
479
+ waiting: '等待Agent啟動...',
481
480
  empty: '此執行未記錄任何事件。',
482
481
  fetchFailed: '無法取得新事件。正在重試...',
483
482
  expand: '顯示全部',
@@ -485,10 +484,10 @@ const zhTW = {
485
484
  summary_one: '建立了 {{created}} · {{count}} 事件',
486
485
  summary_other: '建立了 {{created}} · {{count}} 事件',
487
486
  took: '拿了{{duration}}',
488
- pendingInputs_one: '{{count}} 評論等待代理',
489
- pendingInputs_other: '{{count}} 評論等待代理',
490
- inputDelivered_one: '交付給代理',
491
- inputDelivered_other: '{{count}} 輸入傳遞給代理',
487
+ pendingInputs_one: '{{count}} 評論等待Agent',
488
+ pendingInputs_other: '{{count}} 評論等待Agent',
489
+ inputDelivered_one: '交付給Agent',
490
+ inputDelivered_other: '{{count}} 輸入傳遞給Agent',
492
491
  tokens: '{{input}} 代幣輸入,{{output}} 輸出',
493
492
  kinds: {
494
493
  text: '代理',
@@ -512,30 +511,39 @@ const zhTW = {
512
511
  leaseExpired: '運轉時停止報告。',
513
512
  startTimeout: '運轉時未及時啟動運轉。',
514
513
  cancelled: '取消。',
515
- idleTimeout: '代理停止取得進展。',
514
+ idleTimeout: 'Agent停止取得進展。',
516
515
  setupFailed: '無法準備執行。',
517
516
  cliUnavailable: '執行環境無法安裝應用程式 CLI。',
518
517
  workspaceBusy: '工作目錄正忙;等待另一次嘗試。',
519
518
  checkoutFailed: '儲存庫檢出失敗。',
520
519
  toolAuth: '編碼工具未在執行時登入。',
521
520
  toolQuota: '編碼工具超出配額。',
521
+ sessionUnavailable: '無法恢復原編碼工具工作階段。',
522
522
  toolRateLimit: '編碼工具受到速率限制。',
523
523
  toolNetwork: '編碼工具無法存取其服務。',
524
524
  toolProcess: '編碼工具意外退出。',
525
525
  contextOverflow: '對話對於模型來說太長了。',
526
526
  delegatedQueueTimeout: '委託佇列逾時;退縮的',
527
527
  queuedExpired: '沒有執行環境及時執行。',
528
- modelUnavailable: '代理型號不可用。',
529
- stepLimit: '客服人員多次呼叫工具卻無人接聽。',
528
+ modelUnavailable: 'Agent型號不可用。',
529
+ stepLimit: 'Agent多次呼叫工具卻無人接聽。',
530
530
  policyRefused: '沒有執行環境的策略允許它承擔這項工作。',
531
531
  prepareNetwork: '準備執行環境運作時無法到達儲存庫主機。',
532
- repoAccessUnavailable: '剛才無法頒發倉庫的憑證;將再次嘗試執行。',
532
+ repoAccessUnavailable: '暫時無法存取倉庫。',
533
533
  repoAccessDenied: '應用程式不會為正在執行的儲存庫之一頒發憑證。',
534
534
  unknown: '執行失敗。',
535
535
  },
536
536
  runtimes: {
537
- pathHint: runtimesEnUS.runtimes.pathHint,
537
+ pathHint: 'runner 會依自己的 PATH 尋找程式設計工具。請在可執行 which codex / which claude 的終端機中重新執行 nocobase-runner service install 並重新啟動服務(或重新執行 nocobase-runner start),讓它取得正確的 PATH。',
538
538
  quota: {
539
+ ceilingReached: '已達額度門檻',
540
+ ceilingLabel: '暫停接單門檻',
541
+ ceilingInput: '{{tool}} 已用額度達到多少百分比時暫停接單',
542
+ ceilingOff: '不限制',
543
+ ceilingSave: '套用',
544
+ ceilingInvalid: '請輸入 1 至 100 的整數百分比,或留空。',
545
+ ceilingHint: '依最近回報的額度判斷。留空不限制,執行中的工作繼續。',
546
+ ceilingPaused: '某額度視窗已達門檻,受影響的新工作等待重設或調整上限。',
539
547
  workspaceStatus: {
540
548
  active: '工作仍在繼續',
541
549
  ended: '已結束 · 允許清理',
@@ -560,13 +568,13 @@ const zhTW = {
560
568
  since: '自 {{time}}',
561
569
  marks_one: '{{count}} 配額標誌',
562
570
  marks_other: '{{count}} 配額標記',
563
- queueHint: '仍有配額選擇代理。工作將按照現有的等待期限排隊。',
571
+ queueHint: '仍有配額選擇Agent。工作將按照現有的等待期限排隊。',
564
572
  partial: '以配額在 {{available}} · {{blocked}} 上執行',
565
573
  workspaceSize: '工作空間尺寸:{{value}}',
566
574
  providers_one: '{{count}} 配額供應商',
567
575
  providers_other: '{{count}} 配額供應商',
568
576
  runColumns: {
569
- issue: '議題/對話',
577
+ issue: '任務 / 對話',
570
578
  agent: '代理',
571
579
  status: '狀態',
572
580
  started: '開始',
@@ -601,12 +609,13 @@ const zhTW = {
601
609
  resets: '重設 {{time}}',
602
610
  near: '接近極限',
603
611
  clear: '清除',
604
- clearMark: '清晰標記',
605
- confirm: '清除此標記嗎? {{target}} 又開始工作了。',
612
+ clearMark: '清除標記',
613
+ confirmTitle: '清除 {{target}} 的額度標記?',
614
+ confirm: '確認額度已恢復後再清除。清除後 {{target}} 立即可以繼續領取工作;如果額度其實仍未恢復,下次執行會重新標記。',
606
615
  observed: '最後報告 {{time}}',
607
616
  usedPercent: '{{percent}}% 使用',
608
617
  ok: '好的',
609
- hint: '已知的重置時間會自動恢復資格。對於未知重置,恢復配額並清除標記。只有執行時間擁有者和管理員才能清除標記。',
618
+ hint: '已知重置時間到點或工具回報額度未用完時自動解除;手動清除前請確認額度已恢復。只有執行環境擁有者和管理員才能清除標記。',
610
619
  },
611
620
  workspaces: {
612
621
  paused: '新工作暫停,直到磁碟空間恢復。現有執行仍在繼續。',
@@ -630,14 +639,14 @@ const zhTW = {
630
639
  ended: '已結束',
631
640
  active: '工作仍在繼續',
632
641
  unknown: '無法確認工作是否結束',
633
- oldRunner: '該執行器未提供診斷原因',
642
+ oldRunner: '該執行環境未提供診斷原因',
634
643
  noCleanup: '未收到本地清理結果',
635
644
  discardsUntracked: '清理將丟棄未追蹤的檔案',
636
645
  decision: {
637
646
  settled: '工作結束;需進行區域性清理檢查',
638
647
  active: '工作仍在繼續',
639
648
  runNotFound: '無法確認:未找到執行',
640
- ownershipUnknown: '無法確認:無法驗證執行器所有權',
649
+ ownershipUnknown: '無法確認:無法驗證執行環境所有權',
641
650
  ambiguousSubject: '無法確認:主題金鑰不明確',
642
651
  bindingUnavailable: '無法確認:應用程式沒有工作區繫結',
643
652
  subjectUnknown: '無法確認:應用程式無法解決該主題',
@@ -653,11 +662,11 @@ const zhTW = {
653
662
  },
654
663
  },
655
664
  title: '執行環境',
656
- description: '執行代理程式的執行環境以及每個報告的編碼工具。',
665
+ description: '執行Agents的執行環境以及每個報告的編碼工具。',
657
666
  add: '新增執行環境',
658
667
  loadFailed: '無法載入執行環境',
659
668
  emptyTitle: '尚未連線執行環境',
660
- emptyDescription: '連線執行環境後,執行器代理程式將使用其編碼工具開始工作。',
669
+ emptyDescription: '連線執行環境後,執行環境Agents將使用其編碼工具開始工作。',
661
670
  noneConnected: '未連線執行環境。',
662
671
  revokedList_one: '{{count}} 撤銷執行環境',
663
672
  revokedList_other: '{{count}} 已撤銷執行環境',
@@ -703,12 +712,12 @@ const zhTW = {
703
712
  title: '本機的變數',
704
713
  description: '它提供給執行的變數,這些變數按名稱從執行環境獲取;這些值保留在機器上。用 `nocobase-runner env set NAME` 在那裡設定一個,或用 `--pass-env NAME` 傳遞它。',
705
714
  none: '無:從執行環境取得變數的執行在開始之前在此失敗。',
706
- unknown: '未報告:其執行程式比此功能更舊。更新執行器以檢視它們。',
715
+ unknown: '未報告:其執行程式比此功能更舊。更新執行環境以檢視它們。',
707
716
  },
708
717
  jobs: {
709
718
  allow: '允許建置作業',
710
719
  hint: '此應用程式配置的構建和其他步驟,無需模型即可執行。此執行環境報告:{{kinds}}。',
711
- unsupported: '此執行時的執行程式不接受作業。更新執行器以開啟此功能。',
720
+ unsupported: '此執行時的執行程式不接受作業。更新執行環境以開啟此功能。',
712
721
  },
713
722
  noTools: '未找到編碼工具',
714
723
  actionsFor: '{{name}} 的操作',
@@ -717,7 +726,7 @@ const zhTW = {
717
726
  status: '狀態',
718
727
  tools: '工具',
719
728
  sharing: '分享',
720
- version: '執行器',
729
+ version: '執行環境',
721
730
  lastSeen: '最後出現',
722
731
  slots: '最大並發執行數',
723
732
  },
@@ -725,7 +734,7 @@ const zhTW = {
725
734
  general: '一般',
726
735
  tools: '工具',
727
736
  toolsDescription: '它報道的編碼工具。已關閉或配額已用完的工具的工作不會傳送到此處。透過「儲存」儲存開關和限制。',
728
- version: '執行器 {{version}}',
737
+ version: '執行環境 {{version}}',
729
738
  runs: '最近執行',
730
739
  runsEmpty: '尚未執行。',
731
740
  runsTotal: '共 {{count}} 條',
@@ -738,8 +747,8 @@ const zhTW = {
738
747
  owner: '所有者 {{name}}',
739
748
  },
740
749
  status: {
741
- updatePending: '執行器等待更新',
742
- pruning: '執行器清潔共享商店',
750
+ updatePending: '執行環境等待更新',
751
+ pruning: '執行環境清潔共享商店',
743
752
  online: '線上',
744
753
  offline: '目前離線',
745
754
  revoked: '已撤銷',
@@ -747,9 +756,9 @@ const zhTW = {
747
756
  },
748
757
  upgradeRequired: {
749
758
  title: '此執行環境需要升級',
750
- older: '它的執行者 {{version}} 講代理協議 {{protocol}};該應用程式需要協議 {{required}}。它保持連線,但在更新之前不執行任何內容。',
751
- newer: '它的執行程式 {{version}} 使用代理協定 {{protocol}},比該應用程式(協定 {{required}})更新。它保持連線,但不執行任何內容,直到執行該應用程式所服務的執行程式。',
752
- latest: '該應用程式服務於執行器{{latest}}。在其主機上執行此命令以更新它:',
759
+ older: '它的執行者 {{version}} 講Agent協議 {{protocol}};該應用程式需要協議 {{required}}。它保持連線,但在更新之前不執行任何內容。',
760
+ newer: '它的執行程式 {{version}} 使用Agent協定 {{protocol}},比該應用程式(協定 {{required}})更新。它保持連線,但不執行任何內容,直到執行該應用程式所服務的執行程式。',
761
+ latest: '該應用程式服務於執行環境{{latest}}。在其主機上執行此命令以更新它:',
753
762
  noLatest: '安裝使用 {{required}} 協定的執行程式,或在其主機上執行它來更新它:',
754
763
  reinstall: '它的運作程式沒有說明它是如何安裝的。使用“新增執行環境”中的命令在其主機上再次安裝它。',
755
764
  },
@@ -767,7 +776,7 @@ const zhTW = {
767
776
  version: '版本 {{version}}',
768
777
  },
769
778
  trust: {
770
- isolationHint: runtimesEnUS.runtimes.trust.isolationHint,
779
+ isolationHint: '不論個人或共用執行環境,都請在虛擬機或隔離環境中執行 runner:Agent 擁有完整權限,而 runner 不是沙箱。',
771
780
  label: '它適用於誰',
772
781
  team: '團隊',
773
782
  teamHint: '執行團隊中任何人開始的工作,以及他們的變數和秘密。對於共享伺服器和虛擬機器。',
@@ -793,9 +802,9 @@ const zhTW = {
793
802
  show: '版本 {{version}}:有更新的執行程式可用',
794
803
  available: '有更新',
795
804
  badge: '可升級',
796
- title: '{{name}} 的較新執行器',
805
+ title: '{{name}} 的較新執行環境',
797
806
  description: '安裝了{{version}},該應用程式服務於{{latest}}。',
798
- hint: '一旦沒有代理程式執行,它就會自行更新。要立即更新它,請在其主機上執行它。',
807
+ hint: '一旦沒有Agent執行,它就會自行更新。要立即更新它,請在其主機上執行它。',
799
808
  },
800
809
  revoke: {
801
810
  title: '撤銷{{name}}的憑證?',
@@ -811,7 +820,17 @@ const zhTW = {
811
820
  },
812
821
  },
813
822
  connect: {
814
- ...runtimesEnUS.connect,
823
+ manual: '或自行安裝',
824
+ promptTitle: '讓 Agent 幫你設定',
825
+ promptCopy: '複製給 Agent 的提示',
826
+ promptShow: '檢視提示',
827
+ promptHide: '隱藏提示',
828
+ promptHint: '將此提示複製給目標機器上的 Agent(Claude Code、Codex 等),它會替你完成下列步驟。提示內含一次性憑證:只交給該 Agent。',
829
+ windowsPowerShell: '1. 安裝 WSL:在 PowerShell 中執行,然後重新啟動 Windows:',
830
+ windowsUbuntu: '2. 開啟 Ubuntu 並執行下方的 Linux 命令。請在 WSL Ubuntu 中安裝 Node.js 與程式設計工具。',
831
+ windowsNetwork: '若 WSL 無法連上網際網路,請在 WSL 中啟用鏡像網路。',
832
+ promptWindows: '首先,確認你是否在 WSL Ubuntu 中執行。若不是在 WSL Ubuntu 中,請停止:不要執行任何安裝或註冊命令。請告訴使用者在 PowerShell 執行 wsl --install、重新啟動 Windows,然後在 WSL Ubuntu 中開啟 Agent 並重新執行此提示。只有在 WSL Ubuntu 中才繼續下列步驟。Node.js 與程式設計工具都安裝在 WSL 中。若 WSL 無法連上網際網路,請啟用鏡像網路。\n\n',
833
+ promptBody: '將這台機器設定為 NocoBase 執行環境。請使用虛擬機或隔離環境:Agent 擁有完整權限,而 runner 不是沙箱。\n\n確認已安裝 Node.js 24 或更新版本,且下列程式設計工具已安裝並登入:{{tools}}。請使用官方安裝方式,不要用 snap 套件。\n\n執行這個一次性註冊命令,安裝 runner 與應用程式 CLI、完成註冊並安裝背景服務:\n{{command}}\n\n排除常見的設定問題:確保服務的 PATH 包含程式設計工具(在安裝用的終端機確認 which codex / which claude,然後重新執行 nocobase-runner service install 並重新啟動服務);為下載與服務設定所需的Agents;以使用者擁有的 prefix 或 Node 版本管理工具解決 npm 全域安裝權限問題,不要使用 sudo npm install。\n\n最後執行 nocobase-runner status,確認連線與程式設計工具。回報仍需我完成的登入或網路步驟。註冊憑證屬於機密,不要寫進回報。',
815
834
  title: '新增執行環境',
816
835
  description: '在安裝了編碼工具的主機上執行以下命令:伺服器、虛擬機器或您自己的裝置。代理程式以完全存取許可權執行,就像執行執行程式的使用者一樣,並且可以讀取和更改使用者可以讀取的任何內容,包括 SSH 金鑰和其他憑證。執行程式不是安全邊界:它作為專用使用者在容器或虛擬機器中執行。',
817
836
  createCredential: '產生安裝指令',
@@ -839,8 +858,23 @@ const zhTW = {
839
858
  },
840
859
  chat: {
841
860
  // Keep new guidance available in English until this locale is translated.
842
- executionFailed: chatEnUS.chat.executionFailed,
843
- fileInputFailures: chatEnUS.chat.fileInputFailures,
861
+ executionFailed: '執行失敗。重試前請先檢查已儲存的對話。',
862
+ fileInputFailures: {
863
+ imageCapability: '此模型未設定圖片輸入。請切換到已驗證支援圖片的模型。',
864
+ unsupportedFormat: '所選模型未設定此附件格式的輸入,也沒有本機文字擷取器支援此格式。請使用支援的文件格式,或已驗證支援檔案的模型。',
865
+ formatMismatch: '附件的檔名與媒體類型指向不同的文件格式。請檢查檔案格式後重新上傳。',
866
+ invalidInline: '附件資料無效或過大。請重新上傳,或改用較小的檔案。',
867
+ fileTooLarge: '附件超過大小上限。請改用較小的檔案。',
868
+ inputTooLarge: '對話的附件超過輸入大小上限。請改用較小的檔案,或開始新的對話。',
869
+ documentTooLarge: '附件超過擷取文字的上限。請改用較小的檔案。',
870
+ contextTooLarge: '對話的附件超過擷取文字的上限。請改用較小的檔案,或開始新的對話。',
871
+ fileCount: '對話已超過 100 個檔案的輸入上限。請開始新的對話。',
872
+ nativeFileCount: '對話已超過設定的原生檔案上限。請減少附件,或將其轉換為支援的文字文件。',
873
+ unreadable: '附件沒有可讀取的文字。掃描文件需要 OCR。',
874
+ extractionFailed: '無法擷取附件文字。請確認文件可讀取後重新上傳。',
875
+ extractionTimeout: '擷取附件文字逾時。請改用較小的檔案或重試。',
876
+ preparationFailed: '無法準備附件。請檢查存取權限與檔案格式後重試。',
877
+ },
844
878
  untitled: '無標題對話',
845
879
  renamed: '已更名',
846
880
  archivedNamed: '存檔“{{title}}”',
@@ -854,26 +888,26 @@ const zhTW = {
854
888
  forbidden: '不適合您',
855
889
  noModel: '先配置聊天模型',
856
890
  noRunner: '無參賽者線上,無法選擇',
857
- othersPersonal: '只有別人的私人執行器才有',
891
+ othersPersonal: '只有別人的私人執行環境才有',
858
892
  modelUnavailable: '型號不可用',
859
893
  },
860
894
  offline: {
861
- fallbackDone: '此對話現在使用另一個代理',
895
+ fallbackDone: '此對話現在使用另一個Agent',
862
896
  restoreDone: '切換回來',
863
- newSession: '代理程式啟動新會話並讀取此對話。',
897
+ newSession: 'Agent啟動新會話並讀取此對話。',
864
898
  },
865
899
  notice: {
866
900
  switchedToDefault: '切換為系統預設{{name}},直到{{own}}回來。',
867
- switchedToOnline: '{{own}} 現在沒有適合您的執行器,所以 {{name}} 會回答,直到 {{own}} 回來。',
868
- onlineFallbackUnavailable: '線上備援代理無法回覆({{reason}})。等待執行器期間,此對話仍由 {{own}} 負責。',
901
+ switchedToOnline: '{{own}} 現在沒有適合您的執行環境,所以 {{name}} 會回答,直到 {{own}} 回來。',
902
+ onlineFallbackUnavailable: '線上備援Agent無法回覆({{reason}})。等待執行環境期間,此對話仍由 {{own}} 負責。',
869
903
  switchedAgent: '已切換到 {{name}},保留此對話的歷史。',
870
904
  switchedBack: '返回 {{name}}。',
871
- runFailed: '客服人員在回答之前停了下來。',
872
- runFailedReason: '客服人員在回答前停了下來:{{reason}}',
905
+ runFailed: 'Agent在回答之前停了下來。',
906
+ runFailedReason: 'Agent在回答前停了下來:{{reason}}',
873
907
  runCancelled: '已請求取消。',
874
908
  },
875
909
  consultation: {
876
- unavailableTitle: '諮詢代理不可用',
910
+ unavailableTitle: '諮詢Agent不可用',
877
911
  snapshotTitle: '當時請求{{name}}',
878
912
  title: '諮詢{{name}}',
879
913
  },
@@ -883,32 +917,32 @@ const zhTW = {
883
917
  working: '正在 {{subject}} 上工作',
884
918
  },
885
919
  agents: {
886
- personalOnly: '僅限個人執行器',
887
- hint: '列出已啟用的代理程式並說明為什麼現在無法回答您。答案在執行器身上跑:第一個回覆等待一個人接受,通常是幾秒鐘。',
888
- chooseFor: '選擇代理',
889
- empty: '沒有您可以選擇的代理',
890
- none: '無代理',
891
- unknown: '未知代理',
892
- placeholder: '選擇代理',
920
+ personalOnly: '僅限個人執行環境',
921
+ hint: '列出已啟用的Agents並說明為什麼現在無法回答您。答案在執行環境身上跑:第一個回覆等待一個人接受,通常是幾秒鐘。',
922
+ chooseFor: '選擇Agent',
923
+ empty: '沒有您可以選擇的Agent',
924
+ none: '無Agent',
925
+ unknown: '未知Agent',
926
+ placeholder: '選擇Agent',
893
927
  myDefault: '我的預設',
894
928
  systemDefault: '系統預設',
895
929
  },
896
930
  },
897
931
  chatProfile: {
898
- loadFailed: '無法載入您的代理設定',
899
- defaultAgent: '我的預設聊天代理',
932
+ loadFailed: '無法載入您的Agent設定',
933
+ defaultAgent: '我的預設聊天Agent',
900
934
  systemDefault: '系統預設',
901
935
  systemDefaultNamed: '系統預設({{name}})',
902
936
  noDefault: '未設定係統預設值。',
903
- saved: '已儲存預設聊天代理',
937
+ saved: '已儲存預設聊天Agent',
904
938
  },
905
939
  models: {
906
940
  title: '模型',
907
- description: '線上代理呼叫的模型服務,以及每個模型提供的模型:代理聊天模型、搜尋嵌入和重新排序模型。',
941
+ description: '線上Agents呼叫的模型服務,以及每個模型提供的模型:Agents聊天模型、搜尋嵌入和重新排序模型。',
908
942
  },
909
943
  defaultModel: {
910
944
  title: '預設聊天模式',
911
- description: '沒有自己答案模型的線上代理,例如新代理或隨應用程式附帶的代理。',
945
+ description: '沒有自己答案模型的線上Agents,例如新Agent或隨應用程式附帶的Agent。',
912
946
  none: '尚未開啟聊天模式。新增模型服務並開啟聊天模型:第一個模型成為預設模型。',
913
947
  saved: '預設聊天模型現在為 {{model}}。',
914
948
  },
@@ -947,7 +981,7 @@ const zhTW = {
947
981
  turnedOff: '{{title}} 已關閉。',
948
982
  name: '名稱',
949
983
  enabled: '已啟用',
950
- enabledHint: '線上代理只能在其模型開啟時使用其模型。',
984
+ enabledHint: '線上Agents只能在其模型開啟時使用其模型。',
951
985
  saved: '{{title}} 已儲存。',
952
986
  delete: '刪除',
953
987
  deleteTitle: '刪除{{title}}?',
@@ -970,7 +1004,7 @@ const zhTW = {
970
1004
  },
971
1005
  models: {
972
1006
  title: '模型',
973
- description: '檢查此服務提供的模型,並說明每個模型的用途:聊天模型回答代理、嵌入模型索引文字以進行搜尋、重新排列模型順序搜尋結果。嵌入模型可能需要一定大小的向量。',
1007
+ description: '檢查此服務提供的模型,並說明每個模型的用途:聊天模型回答Agents、嵌入模型索引文字以進行搜尋、重新排列模型順序搜尋結果。嵌入模型可能需要一定大小的向量。',
974
1008
  fetching: '正在取得提供者的模型...',
975
1009
  fetchFailed: '供應商不會列出其型號:{{message}}',
976
1010
  fetch: '取得模型',
@@ -1068,10 +1102,10 @@ const zhTW = {
1068
1102
  loadFailed: '無法載入技能',
1069
1103
  backToList: '回到技能',
1070
1104
  emptyTitle: '還沒有技能',
1071
- emptyDescription: '增加技能後,只要任務需要,代理就會讀取其 SKILL.md。',
1105
+ emptyDescription: '增加技能後,只要任務需要,Agents就會讀取其 SKILL.md。',
1072
1106
  emptyReadOnly: '請求管理員新增技能。',
1073
1107
  content: 'SKILL.md',
1074
- contentHint: '前面的內容名稱是技能的資料夾名稱:更改它會重新命名技能。描述告訴代理何時閱讀它。',
1108
+ contentHint: '前面的內容名稱是技能的資料夾名稱:更改它會重新命名技能。描述告訴Agents何時閱讀它。',
1075
1109
  contentTooLarge: 'SKILL.md 大於 {{max}}。',
1076
1110
  emptyContent: '該技能還沒有內容。',
1077
1111
  created: '創造技能“{{name}}”',
@@ -1084,14 +1118,14 @@ const zhTW = {
1084
1118
  edit: '編輯',
1085
1119
  delete: '刪除技能',
1086
1120
  deleteTitle: '刪除技能「{{name}}」?',
1087
- deleteDescription: '每個代理和每個預設使用該技能的地方都會失去它。',
1121
+ deleteDescription: '每個Agent和每個預設使用該技能的地方都會失去它。',
1088
1122
  readOnly: '只有技能的建立者和工作區管理員可以更改此技能。',
1089
1123
  conflict: '別人剛剛改變了這個技能。最新版本已載入;再試一次。',
1090
1124
  conflictTitle: '別人剛剛改變了這個技能',
1091
1125
  conflictDraft: '在您開始編輯後,有人儲存了新版本,因此您的變更未儲存。複製您要保留的內容,然後載入最新版本並再次編輯。',
1092
1126
  loadLatest: '載入最新版本',
1093
- mountedAgents: '附屬代理',
1094
- noAgents: '尚未附屬於任何代理。',
1127
+ mountedAgents: '附屬Agents',
1128
+ noAgents: '尚未附屬於任何Agent。',
1095
1129
  defaults: '預設技能:{{places}}。',
1096
1130
  defaultsSeparator: ', ',
1097
1131
  files: '檔案',
@@ -1104,7 +1138,7 @@ const zhTW = {
1104
1138
  binaryFile: '二進位檔案,{{size}}。此處無法對其進行編輯。',
1105
1139
  executable: '執行檔',
1106
1140
  scriptBadge: '指令碼',
1107
- scriptsNote: '有指令碼:線上代理可以讀取它們,但從不執行它們',
1141
+ scriptsNote: '有指令碼:線上Agents可以讀取它們,但從不執行它們',
1108
1142
  compatibility: '相容性:{{value}}',
1109
1143
  fileContent: '{{path}} 的內容',
1110
1144
  export: '出口',
@@ -1135,8 +1169,8 @@ const zhTW = {
1135
1169
  name: '名稱',
1136
1170
  renameTitle: '重新命名“{{name}}”',
1137
1171
  conventional: {
1138
- scripts: '程式碼代理可以執行。線上代理只能閱讀。',
1139
- references: '檔案代理在需要時閱讀。',
1172
+ scripts: '程式碼Agents可以執行。線上Agents只能閱讀。',
1173
+ references: '檔案Agents在需要時閱讀。',
1140
1174
  assets: '模板、影像和其他資源。',
1141
1175
  },
1142
1176
  problems: {
@@ -1171,7 +1205,7 @@ const zhTW = {
1171
1205
  },
1172
1206
  },
1173
1207
  template: {
1174
- description: '該技能的用途以及代理何時應使用該技能。',
1208
+ description: '該技能的用途以及Agent何時應使用該技能。',
1175
1209
  title: '新技能',
1176
1210
  whenToUse: '何時使用',
1177
1211
  whenToUseHint: '描述需要此技能的任務。',
@@ -1190,7 +1224,7 @@ const zhTW = {
1190
1224
  },
1191
1225
  versions: {
1192
1226
  title: '版本',
1193
- description: '每次儲存都會建立新版本;代理程式一律取得最新版本。',
1227
+ description: '每次儲存都會建立新版本;Agents一律取得最新版本。',
1194
1228
  current: '當前',
1195
1229
  compare: '比較',
1196
1230
  compareTitle: '版本 {{version}} → 版本 {{current}}',
@@ -1198,35 +1232,37 @@ const zhTW = {
1198
1232
  unchanged: '不變',
1199
1233
  restore: '恢復',
1200
1234
  restoreTitle: '恢復版本{{version}}?',
1201
- restoreDescription: '再次儲存為最新版本;代理在下次執行環境會得到它。不會遺失任何內容:目前版本保留在歷史記錄中。',
1235
+ restoreDescription: '再次儲存為最新版本;Agents在下次執行環境會得到它。不會遺失任何內容:目前版本保留在歷史記錄中。',
1202
1236
  restored: '將版本 {{version}} 還原為版本 {{current}}。',
1203
1237
  },
1204
1238
  },
1205
1239
  runWait: {
1206
1240
  capacity: '這裡使用的插槽{{used}}/{{limit}};{{detail}};跨應用程式報告免費 {{reportedFree}}',
1207
1241
  reasons: {
1208
- updatePending: '執行器等待更新;新工作已暫停',
1209
- pruning: '執行器清理共享商店;新工作已暫停',
1210
- toolNotInstalled: '沒有連線的執行器安裝此工具',
1211
- incompatible: '連線的執行器不支援此工作負載;需要升級',
1212
- restricted: '執行器策略、目錄或變數限制',
1242
+ updatePending: '執行環境等待更新;新工作已暫停',
1243
+ pruning: '執行環境清理共享商店;新工作已暫停',
1244
+ toolNotInstalled: '沒有連線的執行環境安裝此工具',
1245
+ incompatible: '連線的執行環境不支援此工作負載;需要升級',
1246
+ restricted: '執行環境策略、目錄或變數限制',
1213
1247
  unknown: '工作量資格未建立',
1214
- agentArchived: '代理程式已存檔',
1248
+ agentArchived: 'Agent已存檔',
1215
1249
  delayed: '預定{{until}}',
1216
1250
  noRunnerOnline: '無線上執行環境',
1217
1251
  runnersOffline: '運轉時離線',
1252
+ toolQuota: '工具額度用完;恢復時間:{{until}}',
1218
1253
  toolUnavailable: '工具未登入、已停用或要求的模型不可用 ({{tool}})',
1219
- noSharedRunner: '只有別人的私人執行器線上',
1254
+ noSharedRunner: '只有別人的私人執行環境線上',
1220
1255
  missingFeatures: '沒有執行環境支援 {{features}}',
1221
1256
  secretsNotAllowed: '需要團隊執行時:{{variables}} 僅適用於團隊執行時',
1222
1257
  sameWorkActive: '跑步後就可以了',
1223
1258
  concurrencyFull: '並發滿({{active}}/{{limit}})',
1224
- runnersBusy: '相容執行器已滿',
1259
+ runnersBusy: '相容執行環境已滿',
1225
1260
  toolSlotsFull: '{{tool}} 插槽已滿 ({{used}}/{{limit}})',
1226
1261
  setupRetrying: '準備失敗;重試:{{detail}}',
1227
1262
  next: '接下來是免費執行環境',
1228
1263
  },
1229
1264
  unknown: '已排隊 ({{reason}})',
1265
+ quotaResetUnknown: '未知',
1230
1266
  unknownValue: '—',
1231
1267
  },
1232
1268
  access: {
@@ -1238,12 +1274,12 @@ const zhTW = {
1238
1274
  description: '團隊的代理人及其所使用的技能。',
1239
1275
  actions: {
1240
1276
  edit: {
1241
- title: '改變代理人和技能',
1242
- description: '更改代理的設定、技能和變數、存檔、恢復和刪除以及編輯技能。代理人沒有被賦予編輯者自己以外的任何能力',
1243
- related: '改變代理人和技能(他們擁有的代理人和他們建立的技能)',
1277
+ title: '改變Agents和技能',
1278
+ description: '更改Agent的設定、技能和變數、存檔、恢復和刪除以及編輯技能。Agent沒有被賦予編輯者自己以外的任何能力',
1279
+ related: '改變Agents和技能(他們擁有的Agents和他們建立的技能)',
1244
1280
  relatedLabel: '我擁有的代理和我建立的技能',
1245
1281
  relatedHint: '我擁有的代理以及我建立的技能',
1246
- all: '變更代理人與技能(全部)',
1282
+ all: '變更Agents與技能(全部)',
1247
1283
  },
1248
1284
  },
1249
1285
  },
@@ -1263,11 +1299,11 @@ const zhTW = {
1263
1299
  keyScopes: {
1264
1300
  agents: {
1265
1301
  title: '代理',
1266
- description: '檢視代理、技能和跑動;更改代理和技能,取消並重試執行。',
1302
+ description: '檢視Agents、技能和跑動;更改Agents和技能,取消並重試執行。',
1267
1303
  },
1268
1304
  runners: {
1269
1305
  title: '執行環境',
1270
- description: '檢視執行器和註冊令牌;管理執行器。',
1306
+ description: '檢視執行環境和註冊令牌;管理執行環境。',
1271
1307
  },
1272
1308
  prices: {
1273
1309
  title: '型號價格',