agentworkshop 0.7.2 → 0.7.4

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 (130) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/B9Yie5HN.js +2 -0
  3. package/.output/public/_nuxt/CN7Zh8GQ.js +1 -0
  4. package/.output/public/_nuxt/CdSgfcYR.js +1 -0
  5. package/.output/public/_nuxt/CdfAP_IH2.js +1 -0
  6. package/.output/public/_nuxt/ChnfyQHz.js +1 -0
  7. package/.output/public/_nuxt/{BkKYf8xY.js → CyygA0q4.js} +4 -4
  8. package/.output/public/_nuxt/{Bz40vyZS.js → DFnGFEav.js} +7 -7
  9. package/.output/public/_nuxt/Xaf_HIR3.js +1 -0
  10. package/.output/public/_nuxt/ZugRk0CM2.js +4 -0
  11. package/.output/public/_nuxt/builds/latest.json +1 -1
  12. package/.output/public/_nuxt/builds/meta/55c10854-ee0e-4be4-924b-a1b0e100fe11.json +1 -0
  13. package/.output/public/_nuxt/{default.iGJy9dP-.css → default.D17kXlD6.css} +1 -1
  14. package/.output/public/_nuxt/monitor.CmwpEUCI.css +1 -0
  15. package/.output/public/_nuxt/yIKY_V1P.js +1 -0
  16. package/.output/server/chunks/_/nitro.mjs +1144 -933
  17. package/.output/server/chunks/_/nitro.mjs.map +1 -1
  18. package/.output/server/chunks/build/{TownView-BkHxMiwZ.mjs → TownView-Bl8Gkcxi.mjs} +3 -3
  19. package/.output/server/chunks/build/{TownView-BkHxMiwZ.mjs.map → TownView-Bl8Gkcxi.mjs.map} +1 -1
  20. package/.output/server/chunks/build/{_id_-Bna1_JuB.mjs → _id_-CWLFGZjV.mjs} +2 -2
  21. package/.output/server/chunks/build/{_id_-Bna1_JuB.mjs.map → _id_-CWLFGZjV.mjs.map} +1 -1
  22. package/.output/server/chunks/build/_id_-GnRJPykX.mjs +1 -1
  23. package/.output/server/chunks/build/{_wsId_-CzLDGT_V.mjs → _wsId_-BhQMjyHG.mjs} +3 -4
  24. package/.output/server/chunks/build/{_wsId_-CzLDGT_V.mjs.map → _wsId_-BhQMjyHG.mjs.map} +1 -1
  25. package/.output/server/chunks/build/{daq-CmeM4u5u.mjs → daq-BOgpn9sl.mjs} +4 -5
  26. package/.output/server/chunks/build/daq-BOgpn9sl.mjs.map +1 -0
  27. package/.output/server/chunks/build/dcw-BTM5YU-B.mjs +1 -1
  28. package/.output/server/chunks/build/{default-Dt6xLdpd.mjs → default-CKJWhkot.mjs} +60 -17
  29. package/.output/server/chunks/build/{default-Dt6xLdpd.mjs.map → default-CKJWhkot.mjs.map} +1 -1
  30. package/.output/server/chunks/build/{logs-CUQt1z7D.mjs → logs-Dyk0I2I9.mjs} +3 -4
  31. package/.output/server/chunks/build/logs-Dyk0I2I9.mjs.map +1 -0
  32. package/.output/server/chunks/build/{monitor-yNoV98rf.mjs → monitor-KW8WLOJd.mjs} +34 -33
  33. package/.output/server/chunks/build/{monitor-yNoV98rf.mjs.map → monitor-KW8WLOJd.mjs.map} +1 -1
  34. package/.output/server/chunks/build/{town-BN4vQPb8.mjs → town-_4tEEEVW.mjs} +3 -4
  35. package/.output/server/chunks/build/town-_4tEEEVW.mjs.map +1 -0
  36. package/.output/server/chunks/build/useDaqStream-hwkhJHFU.mjs +1 -1
  37. package/.output/server/chunks/build/useDcwStream-Bdew_yrr.mjs +1 -1
  38. package/.output/server/chunks/build/{useWorkshopWs-xcdeiSmJ.mjs → useWorkshopWs-B3j5wIAK.mjs} +177 -3
  39. package/.output/server/chunks/build/useWorkshopWs-B3j5wIAK.mjs.map +1 -0
  40. package/.output/server/chunks/build/{workshop-CLhwe5eo.mjs → workshop-k0XZTFKg.mjs} +2 -3
  41. package/.output/server/chunks/build/workshop-k0XZTFKg.mjs.map +1 -0
  42. package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs +8 -2
  43. package/.output/server/chunks/routes/api/plugins/_name/_...path_.mjs.map +1 -1
  44. package/.output/server/chunks/routes/api/workshop/channel-templates/_id/instantiate.post.mjs +1 -1
  45. package/.output/server/chunks/routes/api/workshop/channels.post.mjs +1 -1
  46. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs +32 -0
  47. package/.output/server/chunks/routes/api/workshop/hitl/pending.get.mjs.map +1 -0
  48. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs +56 -0
  49. package/.output/server/chunks/routes/api/workshop/hitl/respond.post.mjs.map +1 -0
  50. package/.output/server/chunks/routes/api/workshop/plugins/_name/disable.post.mjs +1 -1
  51. package/.output/server/chunks/routes/api/workshop/plugins/_name/enable.post.mjs +1 -1
  52. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.delete.mjs +1 -1
  53. package/.output/server/chunks/routes/api/workshop/scene/layouts/_channelId_.put.mjs +1 -1
  54. package/.output/server/chunks/routes/api/workshop/workspaces/_id/channel-templates/_tplId_.post.mjs +1 -1
  55. package/.output/server/chunks/routes/renderer.mjs +2 -2
  56. package/.output/server/chunks/virtual/entry.mjs +17 -11
  57. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  58. package/.output/server/package.json +1 -1
  59. package/README.md +435 -434
  60. package/app/components/AppHeader.vue +138 -0
  61. package/app/composables/workshop/useWorkshopWs.ts +4 -0
  62. package/app/pages/monitor.vue +17 -1
  63. package/app/stores/workshop/hitl.ts +80 -0
  64. package/bin/aw.mjs +0 -0
  65. package/cli/commands/tui.mjs +19 -0
  66. package/config.yml +134 -134
  67. package/docs/tui.md +43 -0
  68. package/i18n/locales/en.ts +3 -0
  69. package/i18n/locales/zh-CN.ts +3 -0
  70. package/package.json +140 -144
  71. package/scripts/_spike-pitui.mjs +116 -0
  72. package/scripts/e2e-hitl-live.mjs +323 -0
  73. package/scripts/e2e-line-live.mjs +144 -0
  74. package/scripts/test-hitl-registry.ts +112 -0
  75. package/scripts/test-tui-commands.mjs +131 -0
  76. package/scripts/test-tui-reducers.mjs +72 -0
  77. package/scripts/tsconfig.json +14 -0
  78. package/scripts/tui-smoke.mjs +91 -0
  79. package/server/api/plugins/[name]/[...path].ts +10 -1
  80. package/server/api/workshop/hitl/pending.get.ts +28 -0
  81. package/server/api/workshop/hitl/respond.post.ts +67 -0
  82. package/server/api/workshop/ws.ts +30 -1
  83. package/server/data/daqs.json +69 -17
  84. package/server/data/dcw-lines.json +21 -0
  85. package/server/data/dcw-products.json +42 -0
  86. package/server/data/dcw-recipes.json +168 -0
  87. package/server/data/dcw-rollback.json +133 -1
  88. package/server/data/dcw-runs.json +162 -108
  89. package/server/data/dcw-writes.json +180 -0
  90. package/server/data/dcws.json +427 -275
  91. package/server/data/line-runs.json +21 -1
  92. package/server/plugins/workshop.ts +7 -0
  93. package/server/services/workshop/agents/harness-terminal.ts +92 -25
  94. package/server/services/workshop/agents/hitl-registry.ts +181 -0
  95. package/server/services/workshop/agents/tool-approvals.ts +15 -0
  96. package/server/services/workshop/scene-events.ts +19 -9
  97. package/shared/workshop-protocol.ts +37 -0
  98. package/tui/README.md +65 -0
  99. package/tui/aw-tui.mjs +356 -0
  100. package/tui/commands/index.mjs +250 -0
  101. package/tui/components/chat-log.mjs +42 -0
  102. package/tui/components/hitl-card.mjs +36 -0
  103. package/tui/components/monitor-pane.mjs +39 -0
  104. package/tui/components/root.mjs +53 -0
  105. package/tui/components/status-bar.mjs +29 -0
  106. package/tui/lib/api.mjs +82 -0
  107. package/tui/lib/config.mjs +58 -0
  108. package/tui/lib/reducers.mjs +218 -0
  109. package/tui/lib/state.mjs +80 -0
  110. package/tui/lib/virtual-terminal.mjs +48 -0
  111. package/tui/lib/ws.mjs +124 -0
  112. package/tui/theme.mjs +38 -0
  113. package/.output/public/_nuxt/B7V9IfTL.js +0 -1
  114. package/.output/public/_nuxt/BE5QyG5J2.js +0 -1
  115. package/.output/public/_nuxt/BuKI8z-5.js +0 -1
  116. package/.output/public/_nuxt/D0C5Q0di.js +0 -1
  117. package/.output/public/_nuxt/DC-QMEk1.js +0 -2
  118. package/.output/public/_nuxt/DEkQ0qQ02.js +0 -1
  119. package/.output/public/_nuxt/builds/meta/4d990d25-ebbb-4fe4-a23b-3d28c7f42fee.json +0 -1
  120. package/.output/public/_nuxt/dt2tKE95.js +0 -4
  121. package/.output/public/_nuxt/i_MKObHo.js +0 -1
  122. package/.output/public/_nuxt/monitor.41fCD6TB.css +0 -1
  123. package/.output/public/_nuxt/tpDMVY5w.js +0 -1
  124. package/.output/server/chunks/build/connection-Dc0fn6yd.mjs +0 -120
  125. package/.output/server/chunks/build/connection-Dc0fn6yd.mjs.map +0 -1
  126. package/.output/server/chunks/build/daq-CmeM4u5u.mjs.map +0 -1
  127. package/.output/server/chunks/build/logs-CUQt1z7D.mjs.map +0 -1
  128. package/.output/server/chunks/build/town-BN4vQPb8.mjs.map +0 -1
  129. package/.output/server/chunks/build/useWorkshopWs-xcdeiSmJ.mjs.map +0 -1
  130. package/.output/server/chunks/build/workshop-CLhwe5eo.mjs.map +0 -1
@@ -11158,5 +11158,185 @@
11158
11158
  "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
11159
11159
  "recipeRunId": null,
11160
11160
  "at": "2026-09-03T16:45:06.388Z"
11161
+ },
11162
+ {
11163
+ "id": "wh-1e5c08cc",
11164
+ "nodeId": "dw-2a906dea",
11165
+ "nodeName": "PLC闭环·温度SP",
11166
+ "param": "烘箱温度设定",
11167
+ "eng": 170,
11168
+ "raw": 170,
11169
+ "ok": true,
11170
+ "message": "写入并回读一致:170 → raw 170,回读 170(标定后物理值 170)",
11171
+ "recipeRunId": null,
11172
+ "at": "2026-09-03T17:11:31.114Z"
11173
+ },
11174
+ {
11175
+ "id": "wh-ee6ac446",
11176
+ "nodeId": "dw-8277e370",
11177
+ "nodeName": "PLC闭环·标定×10",
11178
+ "param": "烘箱温度设定",
11179
+ "eng": 160,
11180
+ "raw": 16,
11181
+ "ok": true,
11182
+ "message": "写入并回读一致:16 → raw 16,回读 16(标定后物理值 160)",
11183
+ "recipeRunId": null,
11184
+ "at": "2026-09-03T17:12:25.745Z"
11185
+ },
11186
+ {
11187
+ "id": "wh-9251f06c",
11188
+ "nodeId": "dw-ab6426b2",
11189
+ "nodeName": "PLC闭环·故障注入",
11190
+ "param": "烘箱温度设定",
11191
+ "eng": 170,
11192
+ "raw": null,
11193
+ "ok": false,
11194
+ "message": "Modbus 写入失败: 无法建立连接——检查 PLC 电源/IP/端口与防火墙(connect ECONNREFUSED 127.0.0.1:15199)",
11195
+ "recipeRunId": null,
11196
+ "at": "2026-09-03T17:12:25.824Z"
11197
+ },
11198
+ {
11199
+ "id": "wh-454e2627",
11200
+ "nodeId": "dw-8fb89e02",
11201
+ "nodeName": "烘箱温度设定",
11202
+ "param": "烘箱温度设定",
11203
+ "eng": 160,
11204
+ "raw": 160,
11205
+ "ok": true,
11206
+ "message": "写入并回读一致:160 → raw 160,回读 160(标定后物理值 160)",
11207
+ "recipeRunId": "rr-c66a150f",
11208
+ "at": "2026-09-03T17:12:52.208Z"
11209
+ },
11210
+ {
11211
+ "id": "wh-6ceab2a9",
11212
+ "nodeId": "dw-8fb89e02",
11213
+ "nodeName": "烘箱温度设定",
11214
+ "param": "烘箱温度设定",
11215
+ "eng": 180,
11216
+ "raw": 180,
11217
+ "ok": true,
11218
+ "message": "写入并回读一致:180 → raw 180,回读 180(标定后物理值 180)",
11219
+ "recipeRunId": null,
11220
+ "at": "2026-09-03T17:13:25.417Z"
11221
+ },
11222
+ {
11223
+ "id": "wh-6422a493",
11224
+ "nodeId": "dw-3a3f7a4c",
11225
+ "nodeName": "温度设定-mtmhgrsn",
11226
+ "param": "烘箱温度设定",
11227
+ "eng": 180,
11228
+ "raw": 180,
11229
+ "ok": true,
11230
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
11231
+ "recipeRunId": "rr-875be24a",
11232
+ "at": "2026-09-04T04:58:09.922Z"
11233
+ },
11234
+ {
11235
+ "id": "wh-a879d0d1",
11236
+ "nodeId": "dw-3a3f7a4c",
11237
+ "nodeName": "温度设定-mtmhgrsn",
11238
+ "param": "烘箱温度设定",
11239
+ "eng": 182,
11240
+ "raw": 182,
11241
+ "ok": true,
11242
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
11243
+ "recipeRunId": null,
11244
+ "at": "2026-09-04T04:58:20.275Z"
11245
+ },
11246
+ {
11247
+ "id": "wh-2f31edbe",
11248
+ "nodeId": "dw-42fcd798",
11249
+ "nodeName": "温度设定-mtmhnz2f",
11250
+ "param": "烘箱温度设定",
11251
+ "eng": 180,
11252
+ "raw": 180,
11253
+ "ok": true,
11254
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
11255
+ "recipeRunId": "rr-de10d51e",
11256
+ "at": "2026-09-04T05:03:45.895Z"
11257
+ },
11258
+ {
11259
+ "id": "wh-20048a5a",
11260
+ "nodeId": "dw-42fcd798",
11261
+ "nodeName": "温度设定-mtmhnz2f",
11262
+ "param": "烘箱温度设定",
11263
+ "eng": 182,
11264
+ "raw": 182,
11265
+ "ok": true,
11266
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
11267
+ "recipeRunId": null,
11268
+ "at": "2026-09-04T05:03:56.066Z"
11269
+ },
11270
+ {
11271
+ "id": "wh-57a4674b",
11272
+ "nodeId": "dw-756e3e07",
11273
+ "nodeName": "探针设定",
11274
+ "param": "烘箱温度设定",
11275
+ "eng": 180,
11276
+ "raw": 180,
11277
+ "ok": true,
11278
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
11279
+ "recipeRunId": "rr-9e70a9dc",
11280
+ "at": "2026-09-04T05:08:10.104Z"
11281
+ },
11282
+ {
11283
+ "id": "wh-9523cb8d",
11284
+ "nodeId": "dw-756e3e07",
11285
+ "nodeName": "探针设定",
11286
+ "param": "烘箱温度设定",
11287
+ "eng": 182,
11288
+ "raw": 182,
11289
+ "ok": true,
11290
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
11291
+ "recipeRunId": null,
11292
+ "at": "2026-09-04T05:08:10.216Z"
11293
+ },
11294
+ {
11295
+ "id": "wh-401d35e3",
11296
+ "nodeId": "dw-1ccbe1a8",
11297
+ "nodeName": "探针设定",
11298
+ "param": "烘箱温度设定",
11299
+ "eng": 180,
11300
+ "raw": 180,
11301
+ "ok": true,
11302
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
11303
+ "recipeRunId": "rr-dbb44962",
11304
+ "at": "2026-09-04T05:08:56.258Z"
11305
+ },
11306
+ {
11307
+ "id": "wh-47450bdc",
11308
+ "nodeId": "dw-1ccbe1a8",
11309
+ "nodeName": "探针设定",
11310
+ "param": "烘箱温度设定",
11311
+ "eng": 182,
11312
+ "raw": 182,
11313
+ "ok": true,
11314
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
11315
+ "recipeRunId": null,
11316
+ "at": "2026-09-04T05:08:56.411Z"
11317
+ },
11318
+ {
11319
+ "id": "wh-134e2b8a",
11320
+ "nodeId": "dw-3b6fd688",
11321
+ "nodeName": "温度设定-mtmhyn1r",
11322
+ "param": "烘箱温度设定",
11323
+ "eng": 180,
11324
+ "raw": 180,
11325
+ "ok": true,
11326
+ "message": "Mock PLC 写入成功:180 → raw 180,回读一致(标定后物理值 180)",
11327
+ "recipeRunId": "rr-02e1b75d",
11328
+ "at": "2026-09-04T05:12:03.639Z"
11329
+ },
11330
+ {
11331
+ "id": "wh-56b9204e",
11332
+ "nodeId": "dw-3b6fd688",
11333
+ "nodeName": "温度设定-mtmhyn1r",
11334
+ "param": "烘箱温度设定",
11335
+ "eng": 182,
11336
+ "raw": 182,
11337
+ "ok": true,
11338
+ "message": "Mock PLC 写入成功:182 → raw 182,回读一致(标定后物理值 182)",
11339
+ "recipeRunId": null,
11340
+ "at": "2026-09-04T05:12:13.804Z"
11161
11341
  }
11162
11342
  ]