@tablestore/tablestore-agent-cli 0.2.6 → 0.2.8

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 (281) hide show
  1. package/dist/commands/configure.d.ts.map +1 -1
  2. package/dist/commands/configure.js +10 -5
  3. package/dist/commands/configure.js.map +1 -1
  4. package/dist/commands/dashboard.d.ts.map +1 -1
  5. package/dist/commands/dashboard.js +7 -1
  6. package/dist/commands/dashboard.js.map +1 -1
  7. package/dist/commands/doctor.d.ts.map +1 -1
  8. package/dist/commands/doctor.js +46 -11
  9. package/dist/commands/doctor.js.map +1 -1
  10. package/dist/dashboard-runtime/dashboard/.next/BUILD_ID +1 -1
  11. package/dist/dashboard-runtime/dashboard/.next/build-manifest.json +3 -3
  12. package/dist/dashboard-runtime/dashboard/.next/prerender-manifest.json +3 -3
  13. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page.js.nft.json +1 -1
  14. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page_client-reference-manifest.js +1 -1
  15. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  16. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  17. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js.nft.json +1 -1
  18. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page_client-reference-manifest.js +1 -1
  19. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js.nft.json +1 -1
  20. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page_client-reference-manifest.js +1 -1
  21. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js.nft.json +1 -1
  22. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page_client-reference-manifest.js +1 -1
  23. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js.nft.json +1 -1
  24. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page_client-reference-manifest.js +1 -1
  25. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js.nft.json +1 -1
  26. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page_client-reference-manifest.js +1 -1
  27. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js.nft.json +1 -1
  28. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page_client-reference-manifest.js +1 -1
  29. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js.nft.json +1 -1
  30. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page_client-reference-manifest.js +1 -1
  31. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js.nft.json +1 -1
  32. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page_client-reference-manifest.js +1 -1
  33. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js.nft.json +1 -1
  34. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page_client-reference-manifest.js +1 -1
  35. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
  36. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
  37. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page.js.nft.json +1 -1
  38. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page_client-reference-manifest.js +1 -1
  39. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page.js.nft.json +1 -1
  40. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page_client-reference-manifest.js +1 -1
  41. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js.nft.json +1 -1
  42. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page_client-reference-manifest.js +1 -1
  43. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js.nft.json +1 -1
  44. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page_client-reference-manifest.js +1 -1
  45. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js.nft.json +1 -1
  46. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page_client-reference-manifest.js +1 -1
  47. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js.nft.json +1 -1
  48. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page_client-reference-manifest.js +1 -1
  49. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js.nft.json +1 -1
  50. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page_client-reference-manifest.js +1 -1
  51. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page.js.nft.json +1 -1
  52. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page_client-reference-manifest.js +1 -1
  53. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js.nft.json +1 -1
  54. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page_client-reference-manifest.js +1 -1
  55. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js.nft.json +1 -1
  56. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page_client-reference-manifest.js +1 -1
  57. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
  58. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
  59. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  60. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  61. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.html +1 -1
  62. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.rsc +1 -1
  63. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  64. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  65. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  66. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  67. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  68. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  69. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.html +1 -1
  70. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.rsc +14 -14
  71. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
  72. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
  73. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +10 -10
  74. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  75. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  76. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  77. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/custom-policy/route.js.nft.json +1 -1
  78. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/effective-permissions/route.js.nft.json +1 -1
  79. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/policies/route.js.nft.json +1 -1
  80. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/route.js.nft.json +1 -1
  81. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/filter-by-permission/route.js.nft.json +1 -1
  82. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/route.js.nft.json +1 -1
  83. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js.nft.json +1 -1
  84. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js.nft.json +1 -1
  85. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js.nft.json +1 -1
  86. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js.nft.json +1 -1
  87. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js.nft.json +1 -1
  88. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js.nft.json +1 -1
  89. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js.nft.json +1 -1
  90. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js.nft.json +1 -1
  91. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js.nft.json +1 -1
  92. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js.nft.json +1 -1
  93. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js.nft.json +1 -1
  94. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js.nft.json +1 -1
  95. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js.nft.json +1 -1
  96. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js.nft.json +1 -1
  97. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js.nft.json +1 -1
  98. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js.nft.json +1 -1
  99. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js.nft.json +1 -1
  100. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js.nft.json +1 -1
  101. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js.nft.json +1 -1
  102. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js.nft.json +1 -1
  103. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/apply/route.js.nft.json +1 -1
  104. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/route.js.nft.json +1 -1
  105. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/cancel/route.js.nft.json +1 -1
  106. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/route.js.nft.json +1 -1
  107. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/route.js.nft.json +1 -1
  108. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js.nft.json +1 -1
  109. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js.nft.json +1 -1
  110. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js.nft.json +1 -1
  111. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/scopes/route.js.nft.json +1 -1
  112. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js.nft.json +1 -1
  113. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/[requestId]/route.js.nft.json +1 -1
  114. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/route.js.nft.json +1 -1
  115. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js.nft.json +1 -1
  116. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js.nft.json +1 -1
  117. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js.nft.json +1 -1
  118. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/oss/list/route.js.nft.json +1 -1
  119. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js.nft.json +1 -1
  120. package/dist/dashboard-runtime/dashboard/.next/server/app/index.html +1 -1
  121. package/dist/dashboard-runtime/dashboard/.next/server/app/index.rsc +14 -14
  122. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  123. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_full.segment.rsc +14 -14
  124. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_head.segment.rsc +3 -3
  125. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_index.segment.rsc +10 -10
  126. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  127. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  128. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.html +1 -1
  129. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.rsc +17 -17
  130. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_full.segment.rsc +17 -17
  131. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_head.segment.rsc +3 -3
  132. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_index.segment.rsc +10 -10
  133. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  134. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
  135. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding.segment.rsc +4 -4
  136. package/dist/dashboard-runtime/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
  137. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.y01v.._.js +8 -8
  138. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04zbudf._.js +1 -1
  139. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__05eryp~._.js +1 -1
  140. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__06fva9g._.js +1 -1
  141. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cyd2qb._.js +1 -1
  142. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0wa~r66._.js +8 -8
  143. package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__10k~3sa._.js +8 -8
  144. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0b1r_app_(dashboard)_knowledge-base_[name]_documents_documents-client_tsx_0g2uxmt._.js +1 -1
  145. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0brqbty._.js +1 -1
  146. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0nmv74v._.js → _0l-4ms-._.js} +2 -2
  147. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0lf_p5l._.js → _0pe9ntc._.js} +2 -2
  148. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0tej2s.._.js +3 -0
  149. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0jl78rk._.js → _0x05u0y._.js} +2 -2
  150. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0~5g0_a._.js +1 -1
  151. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_00ofp7q._.js +1 -1
  152. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0l1.0wg._.js +1 -1
  153. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0o9jhcn._.js +2 -2
  154. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0y49vhd._.js +1 -1
  155. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_10dsqx~._.js +1 -1
  156. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_[dreamId]_page_tsx_0wy3tv6._.js +1 -1
  157. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_page_tsx_0uzzpvs._.js +1 -1
  158. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_layout_tsx_0rbi41w._.js +1 -1
  159. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_settings_page_tsx_0y26.xu._.js +1 -1
  160. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_tasks_page_tsx_0a_bgx4._.js +1 -1
  161. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_units_page_tsx_0.6xnei._.js +1 -1
  162. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_providers_runtime-context-provider_tsx_0wmj66z._.js +1 -1
  163. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_00arje5._.js +1 -1
  164. package/dist/dashboard-runtime/dashboard/.next/server/middleware-build-manifest.js +3 -3
  165. package/dist/dashboard-runtime/dashboard/.next/server/pages/404.html +1 -1
  166. package/dist/dashboard-runtime/dashboard/.next/server/pages/500.html +1 -1
  167. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.js +1 -1
  168. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.json +1 -1
  169. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-ldkvvj51n5..js +5 -0
  170. package/dist/dashboard-runtime/dashboard/.next/static/chunks/01ccz9pw1s5-1.js +1 -0
  171. package/dist/dashboard-runtime/dashboard/.next/static/chunks/05d8-45s941bx.js +1 -0
  172. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{154l918khtf32.js → 076wjt8-f7ws0.js} +1 -1
  173. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0axe89r5c7p_b.js +1 -0
  174. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0ro5-~k1_6.ji.js → 0b2g7gajnlz-x.js} +2 -2
  175. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0czi-68m5cma3.js +1 -0
  176. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0u6g.bq1prqh8.js → 0eg702en0ykod.js} +1 -1
  177. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0gqhfku~on4t1.js +1 -0
  178. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0i_66eb3teu-..js +1 -0
  179. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jwl.kgoaubdz.js +1 -0
  180. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0o3sqa_d7_k15.js +1 -0
  181. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0oatn7x1t1x~~.js +1 -0
  182. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0p7-v~ggg-k3s.js +1 -0
  183. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0xnm11dm1-qw2.js +1 -0
  184. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0zp_ao86_7617.js +1 -0
  185. package/dist/dashboard-runtime/dashboard/.next/static/chunks/11daw7hfc5lbv.js +1 -0
  186. package/dist/dashboard-runtime/dashboard/.next/static/chunks/140~~66uc8843.css +1 -0
  187. package/dist/dashboard-runtime/dashboard/.next/static/chunks/1692-f0t3ef~c.js +1 -0
  188. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/layout.tsx +7 -2
  189. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/[dreamId]/page.tsx +79 -19
  190. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/page.tsx +157 -66
  191. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/layout.tsx +1 -1
  192. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/search/page.tsx +4 -0
  193. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/units/page.tsx +1 -2
  194. package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/route.ts +3 -0
  195. package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/token/route.ts +1 -0
  196. package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/use/route.ts +1 -0
  197. package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/route.ts +2 -0
  198. package/dist/dashboard-runtime/dashboard/src/components/instance/connect-instance-form.tsx +49 -10
  199. package/dist/dashboard-runtime/dashboard/src/components/instance/edit-instance-dialog.tsx +8 -0
  200. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-create-form.tsx +35 -1
  201. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-actions-table.tsx +176 -82
  202. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-apply-confirm-dialog.tsx +2 -0
  203. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-create-dialog.tsx +130 -83
  204. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-form.tsx +22 -0
  205. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-results.tsx +4 -1
  206. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-settings-form.tsx +52 -7
  207. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-tasks-table.tsx +8 -37
  208. package/dist/dashboard-runtime/dashboard/src/hooks/use-dream-tasks.ts +96 -13
  209. package/dist/dashboard-runtime/dashboard/src/hooks/use-task-source-messages.ts +179 -0
  210. package/dist/dashboard-runtime/dashboard/src/lib/memory.ts +75 -1
  211. package/dist/dashboard-runtime/dashboard/src/lib/server/sdk-client.ts +17 -3
  212. package/dist/dashboard-runtime/dashboard/src/schemas/instance.ts +56 -4
  213. package/dist/dashboard-runtime/dashboard/src/types/instance.ts +10 -2
  214. package/dist/dashboard-runtime/dashboard/src/types/memory.ts +32 -2
  215. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts +25 -0
  216. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts.map +1 -0
  217. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js +29 -0
  218. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js.map +1 -0
  219. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.d.ts.map +1 -1
  220. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js +4 -5
  221. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js.map +1 -1
  222. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.d.ts.map +1 -1
  223. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js +11 -2
  224. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js.map +1 -1
  225. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
  226. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +2 -3
  227. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
  228. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  229. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.d.ts.map +1 -1
  230. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.js +9 -1
  231. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.js.map +1 -1
  232. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts +9 -1
  233. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts.map +1 -1
  234. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js +18 -0
  235. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js.map +1 -1
  236. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  237. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +9 -0
  238. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  239. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts +25 -0
  240. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts.map +1 -0
  241. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js +29 -0
  242. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js.map +1 -0
  243. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.d.ts.map +1 -1
  244. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js +4 -5
  245. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js.map +1 -1
  246. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.d.ts.map +1 -1
  247. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js +11 -2
  248. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js.map +1 -1
  249. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
  250. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +2 -3
  251. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
  252. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  253. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.d.ts.map +1 -1
  254. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.js +9 -1
  255. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.js.map +1 -1
  256. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts +9 -1
  257. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts.map +1 -1
  258. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js +18 -0
  259. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js.map +1 -1
  260. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  261. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +9 -0
  262. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  263. package/package.json +2 -2
  264. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0gep_x_._.js +0 -3
  265. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.b6bx-29l5e2.js +0 -1
  266. package/dist/dashboard-runtime/dashboard/.next/static/chunks/05ny4_cp6fkfu.js +0 -1
  267. package/dist/dashboard-runtime/dashboard/.next/static/chunks/097px3urt-4kr.js +0 -1
  268. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0c08tbxyly68e.js +0 -1
  269. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0draec5luxua1.js +0 -1
  270. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0f60fxsrh4wbq.js +0 -5
  271. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0frefg2bkdon0.css +0 -1
  272. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0oh~.z3b9_qzy.js +0 -1
  273. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0w6-j4p-7fybc.js +0 -1
  274. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0za3q13g~ihb2.js +0 -1
  275. package/dist/dashboard-runtime/dashboard/.next/static/chunks/11fppb7wskgrx.js +0 -1
  276. package/dist/dashboard-runtime/dashboard/.next/static/chunks/126jyzsu33t60.js +0 -1
  277. package/dist/dashboard-runtime/dashboard/.next/static/chunks/12~tfkzir29.4.js +0 -1
  278. package/dist/dashboard-runtime/dashboard/.next/static/chunks/14teeoxc_1i46.js +0 -1
  279. /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_buildManifest.js +0 -0
  280. /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_clientMiddlewareManifest.js +0 -0
  281. /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_ssgManifest.js +0 -0
@@ -49,8 +49,14 @@ export function EditInstanceDialog({
49
49
  const sk = manual.accessKeySecret?.trim() ?? "";
50
50
  const credentialPatch =
51
51
  ak && sk ? { accessKeyId: ak, accessKeySecret: sk } : {};
52
+ // API Key follows the same "blank = keep existing" rule: only forward it
53
+ // when the user typed a new value, so we never overwrite the stored key
54
+ // with an empty string.
55
+ const apiKey = manual.apiKey?.trim() ?? "";
56
+ const apiKeyPatch = apiKey ? { apiKey } : {};
52
57
  const patch: UpdateInstancePayload = {
53
58
  ...credentialPatch,
59
+ ...apiKeyPatch,
54
60
  otsEndpoint: manual.otsEndpoint,
55
61
  otsInstanceName: manual.otsInstanceName,
56
62
  // The form normalizes empty inputs to `undefined` (optional field).
@@ -107,6 +113,7 @@ export function EditInstanceDialog({
107
113
  // is currently configured.
108
114
  accessKeyId: "",
109
115
  accessKeySecret: "",
116
+ apiKey: "",
110
117
  otsEndpoint: detail.otsEndpoint ?? "",
111
118
  otsInstanceName: detail.otsInstanceName ?? "",
112
119
  ossEndpoint: detail.ossEndpoint ?? "",
@@ -115,6 +122,7 @@ export function EditInstanceDialog({
115
122
  }}
116
123
  accessKeyIdPlaceholder={detail.accessKeyIdMasked}
117
124
  accessKeySecretPlaceholder={detail.accessKeySecretMasked}
125
+ apiKeyPlaceholder={detail.apiKeyMasked}
118
126
  onSubmit={handleSubmit}
119
127
  submitLabel="保存修改"
120
128
  />
@@ -28,6 +28,11 @@ const createMemoryStoreSchema = z.object({
28
28
  .max(32, "名称不能超过 32 个字符")
29
29
  .regex(/^[a-zA-Z0-9_]+$/, "只能包含字母、数字和下划线"),
30
30
  description: z.string().trim().max(256, "描述不超过 256 字").optional(),
31
+ extractInstructions: z
32
+ .string()
33
+ .trim()
34
+ .max(4096, "抽取指令不超过 4096 字")
35
+ .optional(),
31
36
  });
32
37
 
33
38
  type CreateMemoryStoreInput = z.infer<typeof createMemoryStoreSchema>;
@@ -38,7 +43,7 @@ export function MemoryCreateForm() {
38
43
 
39
44
  const form = useForm<CreateMemoryStoreInput>({
40
45
  resolver: zodResolver(createMemoryStoreSchema),
41
- defaultValues: { memoryStoreName: "", description: "" },
46
+ defaultValues: { memoryStoreName: "", description: "", extractInstructions: "" },
42
47
  });
43
48
 
44
49
  async function onSubmit(values: CreateMemoryStoreInput) {
@@ -46,6 +51,9 @@ export function MemoryCreateForm() {
46
51
  await createStore.mutateAsync({
47
52
  memoryStoreName: values.memoryStoreName,
48
53
  description: values.description?.length ? values.description : undefined,
54
+ extractInstructions: values.extractInstructions?.length
55
+ ? values.extractInstructions
56
+ : undefined,
49
57
  });
50
58
  toast.success("记忆库创建成功");
51
59
  router.push("/memory");
@@ -108,6 +116,32 @@ export function MemoryCreateForm() {
108
116
  </div>
109
117
  </section>
110
118
 
119
+ <section className="rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-5 shadow-sm">
120
+ <FormSectionHeader
121
+ title="记忆抽取指令"
122
+ description="可选。这里填写的指令会注入到后台记忆抽取的提示词中,用于引导从对话里提炼哪些信息、忽略哪些信息。留空则使用默认抽取策略。"
123
+ />
124
+ <FormField
125
+ control={form.control}
126
+ name="extractInstructions"
127
+ render={({ field }) => (
128
+ <FormItem>
129
+ <FormLabel>抽取指令</FormLabel>
130
+ <FormControl>
131
+ <Textarea
132
+ placeholder="例如:重点关注用户的医疗术语与用药偏好;忽略寒暄与客套内容。"
133
+ className="resize-none"
134
+ rows={5}
135
+ {...field}
136
+ />
137
+ </FormControl>
138
+ <FormDescription>最多 4096 个字符。创建后可在记忆库设置中修改。</FormDescription>
139
+ <FormMessage />
140
+ </FormItem>
141
+ )}
142
+ />
143
+ </section>
144
+
111
145
  <div className="flex justify-end gap-3 border-t border-[hsl(var(--border-light))] pt-4">
112
146
  <Button
113
147
  type="button"
@@ -53,6 +53,7 @@ import { MemoryDreamApplyConfirmDialog } from "./memory-dream-apply-confirm-dial
53
53
  interface DreamActionsTableProps {
54
54
  memoryStoreName: string;
55
55
  dreamId: string;
56
+ taskType?: string;
56
57
  }
57
58
 
58
59
  const STATUS_OPTIONS: Array<{ value: DreamActionStatus | "all"; label: string }> = [
@@ -70,6 +71,8 @@ const ACTION_OPTIONS: Array<{ value: DreamActionType | "all"; label: string }> =
70
71
  { value: "DELETE", label: "DELETE" },
71
72
  { value: "MERGE", label: "MERGE" },
72
73
  { value: "NOOP", label: "NOOP" },
74
+ { value: "EMIT_SKILL", label: "EMIT_SKILL" },
75
+ { value: "EMIT_PROFILE", label: "EMIT_PROFILE" },
73
76
  ];
74
77
 
75
78
  const ORDER_OPTIONS: Array<{ value: DreamActionListOrderBy; label: string }> = [
@@ -98,6 +101,8 @@ const ACTION_CLASS: Record<DreamActionType, string> = {
98
101
  DELETE: "bg-danger-soft text-danger",
99
102
  MERGE: "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
100
103
  NOOP: "bg-muted text-muted-foreground",
104
+ EMIT_SKILL: "bg-success-soft text-success",
105
+ EMIT_PROFILE: "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
101
106
  };
102
107
 
103
108
  function ActionBadge({ action }: { action: DreamActionType }) {
@@ -137,7 +142,29 @@ function ActionRowPreview({
137
142
  action: DreamActionRecord;
138
143
  memoryStoreName: string;
139
144
  }) {
140
- const { action: type, newMemory, targetMemoryId, targetScope, reason } = action;
145
+ const { action: type, newMemory, newExtract, targetMemoryId, targetScope, reason } = action;
146
+
147
+ if (type === "EMIT_SKILL" || type === "EMIT_PROFILE") {
148
+ if (!newExtract) return <span className="text-muted-foreground">—</span>;
149
+ return (
150
+ <span className="line-clamp-2 text-xs">
151
+ <span
152
+ className={cn(
153
+ "mr-1 rounded px-1 py-px text-[10px] font-medium",
154
+ type === "EMIT_SKILL"
155
+ ? "bg-success-soft text-success"
156
+ : "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
157
+ )}
158
+ >
159
+ {type === "EMIT_SKILL" ? "技能" : "画像"}
160
+ </span>
161
+ {newExtract.name}
162
+ {newExtract.description && (
163
+ <span className="text-muted-foreground"> — {newExtract.description}</span>
164
+ )}
165
+ </span>
166
+ );
167
+ }
141
168
 
142
169
  if (type === "ADD" || type === "UPDATE") {
143
170
  const text = newMemory?.text;
@@ -240,7 +267,9 @@ function scopeLabel(scope?: MemoryScope): string {
240
267
  export function MemoryDreamActionsTable({
241
268
  memoryStoreName,
242
269
  dreamId,
270
+ taskType,
243
271
  }: DreamActionsTableProps) {
272
+ const isExtractTask = taskType === "skill" || taskType === "profile";
244
273
  const [statusFilter, setStatusFilter] = useState<string>("all");
245
274
  const [actionFilter, setActionFilter] = useState<string>("all");
246
275
  const [orderBy, setOrderBy] = useState<DreamActionListOrderBy>("created_at_asc");
@@ -263,12 +292,17 @@ export function MemoryDreamActionsTable({
263
292
 
264
293
  const applyMutation = useApplyDreamActions(memoryStoreName, dreamId);
265
294
 
266
- const proposedCount = actions.filter((a) => a.status === "proposed").length;
295
+ const isApplyable = (a: DreamActionRecord) =>
296
+ a.status === "proposed" &&
297
+ a.action !== "EMIT_SKILL" &&
298
+ a.action !== "EMIT_PROFILE";
299
+
300
+ const proposedCount = actions.filter(isApplyable).length;
267
301
 
268
302
  const allSelectedProposedSelected =
269
303
  proposedCount > 0 &&
270
304
  actions.every(
271
- (a) => a.status !== "proposed" || selected.has(a.actionId),
305
+ (a) => !isApplyable(a) || selected.has(a.actionId),
272
306
  );
273
307
 
274
308
  const toggleAll = () => {
@@ -276,7 +310,7 @@ export function MemoryDreamActionsTable({
276
310
  setSelected(new Set());
277
311
  } else {
278
312
  setSelected(
279
- new Set(actions.filter((a) => a.status === "proposed").map((a) => a.actionId)),
313
+ new Set(actions.filter(isApplyable).map((a) => a.actionId)),
280
314
  );
281
315
  }
282
316
  };
@@ -322,18 +356,20 @@ export function MemoryDreamActionsTable({
322
356
  ))}
323
357
  </SelectContent>
324
358
  </Select>
325
- <Select value={actionFilter} onValueChange={setActionFilter}>
326
- <SelectTrigger className="h-8 w-32 text-sm">
327
- <SelectValue />
328
- </SelectTrigger>
329
- <SelectContent>
330
- {ACTION_OPTIONS.map((opt) => (
331
- <SelectItem key={opt.value} value={opt.value}>
332
- {opt.label}
333
- </SelectItem>
334
- ))}
335
- </SelectContent>
336
- </Select>
359
+ {!isExtractTask && (
360
+ <Select value={actionFilter} onValueChange={setActionFilter}>
361
+ <SelectTrigger className="h-8 w-32 text-sm">
362
+ <SelectValue />
363
+ </SelectTrigger>
364
+ <SelectContent>
365
+ {ACTION_OPTIONS.map((opt) => (
366
+ <SelectItem key={opt.value} value={opt.value}>
367
+ {opt.label}
368
+ </SelectItem>
369
+ ))}
370
+ </SelectContent>
371
+ </Select>
372
+ )}
337
373
  <Select
338
374
  value={orderBy}
339
375
  onValueChange={(v) => setOrderBy(v as DreamActionListOrderBy)}
@@ -349,31 +385,35 @@ export function MemoryDreamActionsTable({
349
385
  ))}
350
386
  </SelectContent>
351
387
  </Select>
352
- <div className="flex items-center gap-2">
353
- <span className="text-xs text-muted-foreground">最小置信度</span>
354
- <Slider
355
- value={[minConfidence]}
356
- max={1}
357
- step={0.05}
358
- onValueChange={(v) => setMinConfidence(v[0] ?? 0)}
359
- className="w-32"
360
- />
361
- <span className="font-mono text-xs">
362
- {minConfidence.toFixed(2)}
363
- </span>
364
- </div>
365
- <div className="ml-auto flex items-center gap-2">
366
- <span className="text-xs text-muted-foreground">
367
- 已选 {selected.size}
368
- </span>
369
- <Button
370
- size="sm"
371
- disabled={selected.size === 0 || applyMutation.isPending}
372
- onClick={() => setConfirmOpen(true)}
373
- >
374
- {applyMutation.isPending ? "应用中…" : `Apply selected (${selected.size})`}
375
- </Button>
376
- </div>
388
+ {!isExtractTask && (
389
+ <>
390
+ <div className="flex items-center gap-2">
391
+ <span className="text-xs text-muted-foreground">最小置信度</span>
392
+ <Slider
393
+ value={[minConfidence]}
394
+ max={1}
395
+ step={0.05}
396
+ onValueChange={(v) => setMinConfidence(v[0] ?? 0)}
397
+ className="w-32"
398
+ />
399
+ <span className="font-mono text-xs">
400
+ {minConfidence.toFixed(2)}
401
+ </span>
402
+ </div>
403
+ <div className="ml-auto flex items-center gap-2">
404
+ <span className="text-xs text-muted-foreground">
405
+ 已选 {selected.size}
406
+ </span>
407
+ <Button
408
+ size="sm"
409
+ disabled={selected.size === 0 || applyMutation.isPending}
410
+ onClick={() => setConfirmOpen(true)}
411
+ >
412
+ {applyMutation.isPending ? "应用中…" : `Apply selected (${selected.size})`}
413
+ </Button>
414
+ </div>
415
+ </>
416
+ )}
377
417
  </div>
378
418
 
379
419
  {query.isLoading ? (
@@ -384,57 +424,65 @@ export function MemoryDreamActionsTable({
384
424
  ) : actions.length === 0 ? (
385
425
  <div className="rounded-lg border border-dashed border-[hsl(var(--border))] py-10 text-center text-sm text-muted-foreground">
386
426
  <Sparkles className="mx-auto mb-2 h-6 w-6 text-muted-foreground/60" />
387
- 当前过滤条件下暂无动作
427
+ {isExtractTask
428
+ ? "暂无产出结果。请确认输入 scope 下有足够的对话消息。"
429
+ : "当前过滤条件下暂无动作"}
388
430
  </div>
389
431
  ) : (
390
432
  <div className="rounded-lg border border-[hsl(var(--border))]">
391
433
  <Table>
392
434
  <TableHeader>
393
435
  <TableRow>
394
- <TableHead className="w-8">
395
- <Checkbox
396
- checked={allSelectedProposedSelected}
397
- onCheckedChange={toggleAll}
398
- disabled={proposedCount === 0}
399
- aria-label="全选可应用动作"
400
- />
401
- </TableHead>
402
- <TableHead>类型</TableHead>
436
+ {!isExtractTask && (
437
+ <TableHead className="w-8">
438
+ <Checkbox
439
+ checked={allSelectedProposedSelected}
440
+ onCheckedChange={toggleAll}
441
+ disabled={proposedCount === 0}
442
+ aria-label="全选可应用动作"
443
+ />
444
+ </TableHead>
445
+ )}
446
+ <TableHead>{isExtractTask ? "产出类型" : "类型"}</TableHead>
403
447
  <TableHead>状态</TableHead>
404
448
  <TableHead>目标 scope</TableHead>
405
- <TableHead>影响</TableHead>
406
- <TableHead className="text-right">置信度</TableHead>
449
+ <TableHead>{isExtractTask ? "内容" : "影响"}</TableHead>
450
+ {!isExtractTask && (
451
+ <TableHead className="text-right">置信度</TableHead>
452
+ )}
407
453
  </TableRow>
408
454
  </TableHeader>
409
455
  <TableBody>
410
456
  {actions.map((action) => {
411
- const isProposed = action.status === "proposed";
457
+ const canApply = isApplyable(action);
412
458
  return (
413
459
  <TableRow
414
460
  key={action.actionId}
415
461
  className="cursor-pointer hover:bg-[hsl(var(--accent))]"
416
462
  onClick={() => setDetail(action)}
417
463
  >
418
- <TableCell onClick={(e) => e.stopPropagation()}>
419
- {isProposed ? (
420
- <Checkbox
421
- checked={selected.has(action.actionId)}
422
- onCheckedChange={() => toggleOne(action.actionId)}
423
- aria-label="选择此动作"
424
- />
425
- ) : (
426
- <Tooltip>
427
- <TooltipTrigger asChild>
428
- <span>
429
- <Checkbox checked={false} disabled aria-label="不可选" />
430
- </span>
431
- </TooltipTrigger>
432
- <TooltipContent>
433
- 仅 proposed 状态的动作可以 apply
434
- </TooltipContent>
435
- </Tooltip>
436
- )}
437
- </TableCell>
464
+ {!isExtractTask && (
465
+ <TableCell onClick={(e) => e.stopPropagation()}>
466
+ {canApply ? (
467
+ <Checkbox
468
+ checked={selected.has(action.actionId)}
469
+ onCheckedChange={() => toggleOne(action.actionId)}
470
+ aria-label="选择此动作"
471
+ />
472
+ ) : (
473
+ <Tooltip>
474
+ <TooltipTrigger asChild>
475
+ <span>
476
+ <Checkbox checked={false} disabled aria-label="不可选" />
477
+ </span>
478
+ </TooltipTrigger>
479
+ <TooltipContent>
480
+ 仅 proposed 状态的动作可以 apply
481
+ </TooltipContent>
482
+ </Tooltip>
483
+ )}
484
+ </TableCell>
485
+ )}
438
486
  <TableCell>
439
487
  <ActionBadge action={action.action} />
440
488
  </TableCell>
@@ -450,11 +498,13 @@ export function MemoryDreamActionsTable({
450
498
  memoryStoreName={memoryStoreName}
451
499
  />
452
500
  </TableCell>
453
- <TableCell className="text-right font-mono text-xs">
454
- {action.confidence !== undefined
455
- ? action.confidence.toFixed(2)
456
- : "-"}
457
- </TableCell>
501
+ {!isExtractTask && (
502
+ <TableCell className="text-right font-mono text-xs">
503
+ {action.confidence !== undefined
504
+ ? action.confidence.toFixed(2)
505
+ : "-"}
506
+ </TableCell>
507
+ )}
458
508
  </TableRow>
459
509
  );
460
510
  })}
@@ -509,10 +559,14 @@ function ActionMemoryPreviewPanel({
509
559
  detail: DreamActionRecord;
510
560
  memoryStoreName: string;
511
561
  }) {
562
+ const isExtract =
563
+ detail.action === "EMIT_SKILL" || detail.action === "EMIT_PROFILE";
564
+
512
565
  const wantsBefore =
513
- detail.action === "UPDATE" ||
514
- detail.action === "DELETE" ||
515
- detail.action === "MERGE";
566
+ !isExtract &&
567
+ (detail.action === "UPDATE" ||
568
+ detail.action === "DELETE" ||
569
+ detail.action === "MERGE");
516
570
 
517
571
  const beforeQuery = useMemoryUnit(
518
572
  memoryStoreName,
@@ -523,6 +577,46 @@ function ActionMemoryPreviewPanel({
523
577
 
524
578
  const newText = detail.newMemory?.text;
525
579
 
580
+ if (isExtract) {
581
+ const extract = detail.newExtract;
582
+ if (!extract) {
583
+ return (
584
+ <div className="rounded border border-dashed border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.2)] p-3 text-xs italic text-muted-foreground">
585
+ 无抽取结果
586
+ </div>
587
+ );
588
+ }
589
+ const isSkill = detail.action === "EMIT_SKILL" || extract.kind === "skill";
590
+ return (
591
+ <div className="space-y-2 rounded border border-[hsl(var(--border-light))] p-3">
592
+ <div className="flex items-center gap-2">
593
+ <span
594
+ className={cn(
595
+ "rounded px-1.5 py-px text-[10px] font-semibold",
596
+ isSkill
597
+ ? "bg-success-soft text-success"
598
+ : "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
599
+ )}
600
+ >
601
+ {isSkill ? "技能" : "画像"}
602
+ </span>
603
+ <span className="text-sm font-medium">{extract.name}</span>
604
+ </div>
605
+ {extract.description && (
606
+ <p className="text-xs text-muted-foreground">{extract.description}</p>
607
+ )}
608
+ {extract.instructions && (
609
+ <div className="space-y-1">
610
+ <p className="text-xs text-muted-foreground">指令内容</p>
611
+ <pre className="max-h-48 overflow-auto whitespace-pre-wrap rounded bg-[hsl(var(--muted)/0.4)] p-2 text-xs">
612
+ {extract.instructions}
613
+ </pre>
614
+ </div>
615
+ )}
616
+ </div>
617
+ );
618
+ }
619
+
526
620
  if (detail.action === "NOOP") {
527
621
  return (
528
622
  <div className="rounded border border-dashed border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.2)] p-3 text-xs italic text-muted-foreground">
@@ -29,6 +29,8 @@ const ACTION_CLASS: Record<DreamActionType, string> = {
29
29
  DELETE: "bg-danger-soft text-danger",
30
30
  MERGE: "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
31
31
  NOOP: "bg-muted text-muted-foreground",
32
+ EMIT_SKILL: "bg-success-soft text-success",
33
+ EMIT_PROFILE: "bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",
32
34
  };
33
35
 
34
36
  const PREVIEW_LIMIT = 6;