@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.
- package/dist/commands/configure.d.ts.map +1 -1
- package/dist/commands/configure.js +10 -5
- package/dist/commands/configure.js.map +1 -1
- package/dist/commands/dashboard.d.ts.map +1 -1
- package/dist/commands/dashboard.js +7 -1
- package/dist/commands/dashboard.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +46 -11
- package/dist/commands/doctor.js.map +1 -1
- package/dist/dashboard-runtime/dashboard/.next/BUILD_ID +1 -1
- package/dist/dashboard-runtime/dashboard/.next/build-manifest.json +3 -3
- package/dist/dashboard-runtime/dashboard/.next/prerender-manifest.json +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/api-keys/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/[dreamId]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/dream/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/tasks/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.rsc +14 -14
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +14 -14
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +10 -10
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/custom-policy/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/effective-permissions/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/policies/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/[id]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/filter-by-permission/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/api-keys/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/apply/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/actions/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/cancel/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/[dreamId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/dream-tasks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/scopes/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/[requestId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/tasks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/oss/list/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.rsc +14 -14
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_full.segment.rsc +14 -14
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_head.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_index.segment.rsc +10 -10
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.rsc +17 -17
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_full.segment.rsc +17 -17
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_head.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_index.segment.rsc +10 -10
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +4 -4
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding.segment.rsc +4 -4
- package/dist/dashboard-runtime/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0.y01v.._.js +8 -8
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__04zbudf._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__05eryp~._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__06fva9g._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0cyd2qb._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__0wa~r66._.js +8 -8
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/[root-of-the-server]__10k~3sa._.js +8 -8
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0b1r_app_(dashboard)_knowledge-base_[name]_documents_documents-client_tsx_0g2uxmt._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0brqbty._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0nmv74v._.js → _0l-4ms-._.js} +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0lf_p5l._.js → _0pe9ntc._.js} +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0tej2s.._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0jl78rk._.js → _0x05u0y._.js} +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0~5g0_a._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_00ofp7q._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0l1.0wg._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0o9jhcn._.js +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0y49vhd._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_10dsqx~._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_[dreamId]_page_tsx_0wy3tv6._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_dream_page_tsx_0uzzpvs._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_layout_tsx_0rbi41w._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_settings_page_tsx_0y26.xu._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_tasks_page_tsx_0a_bgx4._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_units_page_tsx_0.6xnei._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_providers_runtime-context-provider_tsx_0wmj66z._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_00arje5._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/middleware-build-manifest.js +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/pages/404.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/pages/500.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-ldkvvj51n5..js +5 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/01ccz9pw1s5-1.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/05d8-45s941bx.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{154l918khtf32.js → 076wjt8-f7ws0.js} +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0axe89r5c7p_b.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0ro5-~k1_6.ji.js → 0b2g7gajnlz-x.js} +2 -2
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0czi-68m5cma3.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0u6g.bq1prqh8.js → 0eg702en0ykod.js} +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0gqhfku~on4t1.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0i_66eb3teu-..js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jwl.kgoaubdz.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0o3sqa_d7_k15.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0oatn7x1t1x~~.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0p7-v~ggg-k3s.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0xnm11dm1-qw2.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0zp_ao86_7617.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/11daw7hfc5lbv.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/140~~66uc8843.css +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/1692-f0t3ef~c.js +1 -0
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/layout.tsx +7 -2
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/[dreamId]/page.tsx +79 -19
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/dream/page.tsx +157 -66
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/layout.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/search/page.tsx +4 -0
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/units/page.tsx +1 -2
- package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/route.ts +3 -0
- package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/token/route.ts +1 -0
- package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/[name]/use/route.ts +1 -0
- package/dist/dashboard-runtime/dashboard/src/app/api/v1/instances/route.ts +2 -0
- package/dist/dashboard-runtime/dashboard/src/components/instance/connect-instance-form.tsx +49 -10
- package/dist/dashboard-runtime/dashboard/src/components/instance/edit-instance-dialog.tsx +8 -0
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-create-form.tsx +35 -1
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-actions-table.tsx +176 -82
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-apply-confirm-dialog.tsx +2 -0
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-create-dialog.tsx +130 -83
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-form.tsx +22 -0
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-results.tsx +4 -1
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-settings-form.tsx +52 -7
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-tasks-table.tsx +8 -37
- package/dist/dashboard-runtime/dashboard/src/hooks/use-dream-tasks.ts +96 -13
- package/dist/dashboard-runtime/dashboard/src/hooks/use-task-source-messages.ts +179 -0
- package/dist/dashboard-runtime/dashboard/src/lib/memory.ts +75 -1
- package/dist/dashboard-runtime/dashboard/src/lib/server/sdk-client.ts +17 -3
- package/dist/dashboard-runtime/dashboard/src/schemas/instance.ts +56 -4
- package/dist/dashboard-runtime/dashboard/src/types/instance.ts +10 -2
- package/dist/dashboard-runtime/dashboard/src/types/memory.ts +32 -2
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts +25 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts.map +1 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js +29 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js.map +1 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.d.ts.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js +4 -5
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.d.ts.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js +11 -2
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +2 -3
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.d.ts.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.js +9 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/config.js.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts +9 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js +18 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js.map +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +9 -0
- package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts +25 -0
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.d.ts.map +1 -0
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js +29 -0
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/internal/auth-options.js.map +1 -0
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js +4 -5
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/kb-client.js.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js +11 -2
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/managed-ots.js.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js +2 -3
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/memory-client.js.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.js +9 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/config.js.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts +9 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.d.ts.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js +18 -0
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/constants.js.map +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +9 -0
- package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0gep_x_._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.b6bx-29l5e2.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/05ny4_cp6fkfu.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/097px3urt-4kr.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0c08tbxyly68e.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0draec5luxua1.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0f60fxsrh4wbq.js +0 -5
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0frefg2bkdon0.css +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0oh~.z3b9_qzy.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0w6-j4p-7fybc.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0za3q13g~ihb2.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/11fppb7wskgrx.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/126jyzsu33t60.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/12~tfkzir29.4.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/14teeoxc_1i46.js +0 -1
- /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_buildManifest.js +0 -0
- /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_clientMiddlewareManifest.js +0 -0
- /package/dist/dashboard-runtime/dashboard/.next/static/{pE-cQCmJ7b5_xgwqBJ7J3 → sk6oO3r92_OgCvicmyYrR}/_ssgManifest.js +0 -0
package/dist/dashboard-runtime/dashboard/src/components/memory/memory-dream-create-dialog.tsx
CHANGED
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
} from "@/components/ui/collapsible";
|
|
35
35
|
import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form";
|
|
36
36
|
import { useCreateDreamTask } from "@/hooks/use-create-dream-task";
|
|
37
|
-
import type { MemoryScope } from "@/types/memory";
|
|
37
|
+
import type { DreamTaskType, MemoryScope } from "@/types/memory";
|
|
38
38
|
|
|
39
39
|
interface DreamCreateDialogProps {
|
|
40
40
|
memoryStoreName: string;
|
|
@@ -56,6 +56,7 @@ const scopeSchema = z
|
|
|
56
56
|
});
|
|
57
57
|
|
|
58
58
|
const formSchema = z.object({
|
|
59
|
+
taskType: z.enum(["memory", "skill", "profile"]),
|
|
59
60
|
scopes: z.array(scopeSchema).min(1, "至少一个 scope"),
|
|
60
61
|
applyMode: z.enum(["proposal", "safe_auto"]),
|
|
61
62
|
scopeOutputMode: z.enum(["preserve_scope", "promote_scope"]).optional(),
|
|
@@ -99,6 +100,7 @@ export function MemoryDreamCreateDialog({
|
|
|
99
100
|
const form = useForm<FormValues>({
|
|
100
101
|
resolver: zodResolver(formSchema),
|
|
101
102
|
defaultValues: {
|
|
103
|
+
taskType: "memory",
|
|
102
104
|
scopes: [
|
|
103
105
|
{
|
|
104
106
|
// Filter out wildcard "*" placeholder values from the URL ScopeBar
|
|
@@ -130,6 +132,9 @@ export function MemoryDreamCreateDialog({
|
|
|
130
132
|
name: "scopes",
|
|
131
133
|
});
|
|
132
134
|
|
|
135
|
+
const taskType = form.watch("taskType");
|
|
136
|
+
const isMemoryType = taskType === "memory";
|
|
137
|
+
|
|
133
138
|
const [advancedOpen, setAdvancedOpen] = useState(false);
|
|
134
139
|
const [thresholdsOpen, setThresholdsOpen] = useState(false);
|
|
135
140
|
|
|
@@ -142,6 +147,8 @@ export function MemoryDreamCreateDialog({
|
|
|
142
147
|
if (tUpdate !== undefined) thresholds.update = tUpdate;
|
|
143
148
|
if (tMerge !== undefined) thresholds.merge = tMerge;
|
|
144
149
|
|
|
150
|
+
const isMemory = values.taskType === "memory";
|
|
151
|
+
|
|
145
152
|
try {
|
|
146
153
|
const result = await createMutation.mutateAsync({
|
|
147
154
|
scopes: values.scopes.map((s) => {
|
|
@@ -151,8 +158,9 @@ export function MemoryDreamCreateDialog({
|
|
|
151
158
|
if (s.runId) out.runId = s.runId;
|
|
152
159
|
return out;
|
|
153
160
|
}),
|
|
154
|
-
|
|
155
|
-
...(
|
|
161
|
+
taskType: values.taskType,
|
|
162
|
+
...(isMemory && { applyMode: values.applyMode }),
|
|
163
|
+
...(isMemory && values.scopeOutputMode && { scopeOutputMode: values.scopeOutputMode }),
|
|
156
164
|
...(values.minTimestamp && { minTimestamp: values.minTimestamp }),
|
|
157
165
|
...(values.maxTimestamp && { maxTimestamp: values.maxTimestamp }),
|
|
158
166
|
...(parseOptionalInt(values.maxSessions) !== undefined && {
|
|
@@ -166,12 +174,17 @@ export function MemoryDreamCreateDialog({
|
|
|
166
174
|
}),
|
|
167
175
|
...(values.instructions && { instructions: values.instructions }),
|
|
168
176
|
...(values.clientToken && { clientToken: values.clientToken }),
|
|
169
|
-
...(Object.keys(thresholds).length > 0 && {
|
|
177
|
+
...(isMemory && Object.keys(thresholds).length > 0 && {
|
|
170
178
|
confidenceThresholds: thresholds,
|
|
171
179
|
}),
|
|
172
180
|
});
|
|
173
181
|
|
|
174
|
-
|
|
182
|
+
const TOAST_MSG: Record<DreamTaskType, string> = {
|
|
183
|
+
memory: "记忆整理任务已创建",
|
|
184
|
+
skill: "技能抽取任务已创建",
|
|
185
|
+
profile: "用户画像任务已创建",
|
|
186
|
+
};
|
|
187
|
+
toast.success(TOAST_MSG[values.taskType]);
|
|
175
188
|
onOpenChange(false);
|
|
176
189
|
form.reset();
|
|
177
190
|
router.push(
|
|
@@ -187,15 +200,38 @@ export function MemoryDreamCreateDialog({
|
|
|
187
200
|
<Dialog open={open} onOpenChange={onOpenChange}>
|
|
188
201
|
<DialogContent className="max-w-2xl">
|
|
189
202
|
<DialogHeader>
|
|
190
|
-
<DialogTitle
|
|
203
|
+
<DialogTitle>新建 Dream 任务</DialogTitle>
|
|
191
204
|
<DialogDescription>
|
|
192
|
-
Dream 会读取所选 scopes 下的消息与已有记忆,让 LLM
|
|
193
|
-
|
|
205
|
+
Dream 会读取所选 scopes 下的消息与已有记忆,让 LLM 进行分析处理。
|
|
206
|
+
记忆整理模式建议先用「建议模式」生成提案、人工审核后再应用。
|
|
194
207
|
</DialogDescription>
|
|
195
208
|
</DialogHeader>
|
|
196
209
|
|
|
197
210
|
<Form {...form}>
|
|
198
211
|
<form onSubmit={form.handleSubmit(onSubmit)} className="space-y-5">
|
|
212
|
+
<FormField
|
|
213
|
+
control={form.control}
|
|
214
|
+
name="taskType"
|
|
215
|
+
render={({ field }) => (
|
|
216
|
+
<FormItem>
|
|
217
|
+
<FormLabel>任务类型</FormLabel>
|
|
218
|
+
<Select onValueChange={field.onChange} defaultValue={field.value}>
|
|
219
|
+
<FormControl>
|
|
220
|
+
<SelectTrigger>
|
|
221
|
+
<SelectValue />
|
|
222
|
+
</SelectTrigger>
|
|
223
|
+
</FormControl>
|
|
224
|
+
<SelectContent>
|
|
225
|
+
<SelectItem value="memory">记忆整理 — 整合跨会话记忆</SelectItem>
|
|
226
|
+
<SelectItem value="skill">技能抽取 — 从对话中提取可复用技能</SelectItem>
|
|
227
|
+
<SelectItem value="profile">用户画像 — 整理用户画像</SelectItem>
|
|
228
|
+
</SelectContent>
|
|
229
|
+
</Select>
|
|
230
|
+
<FormMessage />
|
|
231
|
+
</FormItem>
|
|
232
|
+
)}
|
|
233
|
+
/>
|
|
234
|
+
|
|
199
235
|
<section className="space-y-3">
|
|
200
236
|
<div className="flex items-center justify-between">
|
|
201
237
|
<Label className="text-sm font-medium">Scope 范围</Label>
|
|
@@ -240,87 +276,98 @@ export function MemoryDreamCreateDialog({
|
|
|
240
276
|
</div>
|
|
241
277
|
</section>
|
|
242
278
|
|
|
243
|
-
|
|
244
|
-
<
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
<
|
|
250
|
-
|
|
251
|
-
<
|
|
252
|
-
<
|
|
253
|
-
<
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
<
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
<
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
<
|
|
281
|
-
<
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
279
|
+
{isMemoryType && (
|
|
280
|
+
<section className="grid gap-3 sm:grid-cols-2">
|
|
281
|
+
<FormField
|
|
282
|
+
control={form.control}
|
|
283
|
+
name="applyMode"
|
|
284
|
+
render={({ field }) => (
|
|
285
|
+
<FormItem>
|
|
286
|
+
<FormLabel>应用模式</FormLabel>
|
|
287
|
+
<Select onValueChange={field.onChange} defaultValue={field.value}>
|
|
288
|
+
<FormControl>
|
|
289
|
+
<SelectTrigger>
|
|
290
|
+
<SelectValue />
|
|
291
|
+
</SelectTrigger>
|
|
292
|
+
</FormControl>
|
|
293
|
+
<SelectContent>
|
|
294
|
+
<SelectItem value="proposal">
|
|
295
|
+
建议模式(生成后人工 apply,推荐)
|
|
296
|
+
</SelectItem>
|
|
297
|
+
<SelectItem value="safe_auto">
|
|
298
|
+
安全自动(仅 ADD/UPDATE 自动;DELETE/跨 scope 仍需人工)
|
|
299
|
+
</SelectItem>
|
|
300
|
+
</SelectContent>
|
|
301
|
+
</Select>
|
|
302
|
+
<FormMessage />
|
|
303
|
+
</FormItem>
|
|
304
|
+
)}
|
|
305
|
+
/>
|
|
306
|
+
<FormField
|
|
307
|
+
control={form.control}
|
|
308
|
+
name="scopeOutputMode"
|
|
309
|
+
render={({ field }) => (
|
|
310
|
+
<FormItem>
|
|
311
|
+
<FormLabel>Scope 输出模式</FormLabel>
|
|
312
|
+
<Select
|
|
313
|
+
onValueChange={field.onChange}
|
|
314
|
+
value={field.value ?? ""}
|
|
315
|
+
>
|
|
316
|
+
<FormControl>
|
|
317
|
+
<SelectTrigger>
|
|
318
|
+
<SelectValue placeholder="使用默认(preserve_scope)" />
|
|
319
|
+
</SelectTrigger>
|
|
320
|
+
</FormControl>
|
|
321
|
+
<SelectContent>
|
|
322
|
+
<SelectItem value="preserve_scope">保留原 scope</SelectItem>
|
|
323
|
+
<SelectItem value="promote_scope">提升到父级 scope</SelectItem>
|
|
324
|
+
</SelectContent>
|
|
325
|
+
</Select>
|
|
326
|
+
<FormMessage />
|
|
327
|
+
</FormItem>
|
|
328
|
+
)}
|
|
329
|
+
/>
|
|
330
|
+
</section>
|
|
331
|
+
)}
|
|
294
332
|
|
|
295
333
|
<FormField
|
|
296
334
|
control={form.control}
|
|
297
335
|
name="instructions"
|
|
298
|
-
render={({ field }) =>
|
|
299
|
-
<
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
336
|
+
render={({ field }) => {
|
|
337
|
+
const placeholder: Record<DreamTaskType, string> = {
|
|
338
|
+
memory: "给 dream 规划器的额外指引",
|
|
339
|
+
skill: "指导技能抽取的方向,例如重点关注的领域",
|
|
340
|
+
profile: "用户画像整理的额外指引,例如需要关注的维度",
|
|
341
|
+
};
|
|
342
|
+
return (
|
|
343
|
+
<FormItem>
|
|
344
|
+
<FormLabel>指令(可选)</FormLabel>
|
|
345
|
+
<FormControl>
|
|
346
|
+
<Textarea
|
|
347
|
+
rows={2}
|
|
348
|
+
placeholder={placeholder[taskType]}
|
|
349
|
+
{...field}
|
|
350
|
+
/>
|
|
351
|
+
</FormControl>
|
|
352
|
+
</FormItem>
|
|
353
|
+
);
|
|
354
|
+
}}
|
|
310
355
|
/>
|
|
311
356
|
|
|
312
|
-
|
|
313
|
-
<
|
|
314
|
-
<
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
<
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
357
|
+
{isMemoryType && (
|
|
358
|
+
<Collapsible open={thresholdsOpen} onOpenChange={setThresholdsOpen}>
|
|
359
|
+
<CollapsibleTrigger asChild>
|
|
360
|
+
<Button type="button" variant="ghost" size="sm" className="px-0">
|
|
361
|
+
{thresholdsOpen ? "▾" : "▸"} 置信度阈值
|
|
362
|
+
</Button>
|
|
363
|
+
</CollapsibleTrigger>
|
|
364
|
+
<CollapsibleContent className="grid gap-3 pt-2 sm:grid-cols-3">
|
|
365
|
+
<NumberField name="thresholdAdd" label="add" form={form} placeholder="0.7" />
|
|
366
|
+
<NumberField name="thresholdUpdate" label="update" form={form} placeholder="0.6" />
|
|
367
|
+
<NumberField name="thresholdMerge" label="merge" form={form} placeholder="0.6" />
|
|
368
|
+
</CollapsibleContent>
|
|
369
|
+
</Collapsible>
|
|
370
|
+
)}
|
|
324
371
|
|
|
325
372
|
<Collapsible open={advancedOpen} onOpenChange={setAdvancedOpen}>
|
|
326
373
|
<CollapsibleTrigger asChild>
|
|
@@ -14,6 +14,7 @@ export interface MemorySearchValues {
|
|
|
14
14
|
scope: MemoryScope;
|
|
15
15
|
topK: number;
|
|
16
16
|
enableRerank: boolean;
|
|
17
|
+
minSimilarity: number;
|
|
17
18
|
metadata?: Record<string, string>;
|
|
18
19
|
}
|
|
19
20
|
|
|
@@ -27,6 +28,7 @@ export function MemorySearchForm({ scope, isLoading, onSubmit }: MemorySearchFor
|
|
|
27
28
|
const [query, setQuery] = useState("");
|
|
28
29
|
const [topK, setTopK] = useState(10);
|
|
29
30
|
const [enableRerank, setEnableRerank] = useState(true);
|
|
31
|
+
const [minSimilarity, setMinSimilarity] = useState(0);
|
|
30
32
|
const [metadataJson, setMetadataJson] = useState("");
|
|
31
33
|
const [error, setError] = useState<string | null>(null);
|
|
32
34
|
|
|
@@ -47,6 +49,10 @@ export function MemorySearchForm({ scope, isLoading, onSubmit }: MemorySearchFor
|
|
|
47
49
|
setError("Top K 必须在 0 到 50 之间");
|
|
48
50
|
return;
|
|
49
51
|
}
|
|
52
|
+
if (minSimilarity < 0 || minSimilarity > 1) {
|
|
53
|
+
setError("相似度阈值必须在 0 到 1 之间");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
50
56
|
|
|
51
57
|
try {
|
|
52
58
|
await onSubmit({
|
|
@@ -54,6 +60,7 @@ export function MemorySearchForm({ scope, isLoading, onSubmit }: MemorySearchFor
|
|
|
54
60
|
scope,
|
|
55
61
|
topK,
|
|
56
62
|
enableRerank,
|
|
63
|
+
minSimilarity,
|
|
57
64
|
metadata: parseJsonObject(metadataJson),
|
|
58
65
|
});
|
|
59
66
|
} catch (err) {
|
|
@@ -100,6 +107,21 @@ export function MemorySearchForm({ scope, isLoading, onSubmit }: MemorySearchFor
|
|
|
100
107
|
</div>
|
|
101
108
|
</div>
|
|
102
109
|
|
|
110
|
+
<div className="space-y-2">
|
|
111
|
+
<Label>相似度阈值</Label>
|
|
112
|
+
<Input
|
|
113
|
+
type="number"
|
|
114
|
+
min={0}
|
|
115
|
+
max={1}
|
|
116
|
+
step={0.05}
|
|
117
|
+
value={minSimilarity}
|
|
118
|
+
onChange={(event) => setMinSimilarity(Number(event.target.value))}
|
|
119
|
+
/>
|
|
120
|
+
<p className="text-xs text-muted-foreground">
|
|
121
|
+
按归一化余弦相似度(0–1)过滤结果,0 表示不过滤。仅返回相似度不低于该值的命中。
|
|
122
|
+
</p>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
103
125
|
<div className="space-y-2">
|
|
104
126
|
<Label>元数据过滤(JSON)</Label>
|
|
105
127
|
<Textarea
|
|
@@ -64,8 +64,11 @@ export function MemorySearchResults({ results, elapsedMs }: MemorySearchResultsP
|
|
|
64
64
|
<Card key={`${hit.unit.id ?? hit.unit.memoryId ?? index}-${index}`}>
|
|
65
65
|
<CardContent className="space-y-3 p-4">
|
|
66
66
|
<div className="flex flex-wrap items-center gap-2">
|
|
67
|
+
{hit.similarity !== undefined && (
|
|
68
|
+
<Badge variant="secondary">相似度 {hit.similarity.toFixed(4)}</Badge>
|
|
69
|
+
)}
|
|
67
70
|
{hit.score !== undefined && (
|
|
68
|
-
<Badge variant="
|
|
71
|
+
<Badge variant="outline">相关度 {hit.score.toFixed(4)}</Badge>
|
|
69
72
|
)}
|
|
70
73
|
{hit.source && <Badge variant="outline">{hit.source}</Badge>}
|
|
71
74
|
{hit.unit.unit_type && <Badge variant="outline">{hit.unit.unit_type}</Badge>}
|
|
@@ -9,6 +9,7 @@ import { Textarea } from "@/components/ui/textarea";
|
|
|
9
9
|
import {
|
|
10
10
|
Form,
|
|
11
11
|
FormControl,
|
|
12
|
+
FormDescription,
|
|
12
13
|
FormField,
|
|
13
14
|
FormItem,
|
|
14
15
|
FormLabel,
|
|
@@ -19,6 +20,11 @@ import type { MemoryStore } from "@/types/memory";
|
|
|
19
20
|
|
|
20
21
|
const updateMemoryStoreSchema = z.object({
|
|
21
22
|
description: z.string().trim().max(256, "描述不超过 256 字").optional(),
|
|
23
|
+
extractInstructions: z
|
|
24
|
+
.string()
|
|
25
|
+
.trim()
|
|
26
|
+
.max(4096, "抽取指令不超过 4096 字")
|
|
27
|
+
.optional(),
|
|
22
28
|
});
|
|
23
29
|
|
|
24
30
|
type UpdateMemoryStoreInput = z.infer<typeof updateMemoryStoreSchema>;
|
|
@@ -32,14 +38,27 @@ export function MemorySettingsForm({ memoryStore }: MemorySettingsFormProps) {
|
|
|
32
38
|
|
|
33
39
|
const form = useForm<UpdateMemoryStoreInput>({
|
|
34
40
|
resolver: zodResolver(updateMemoryStoreSchema),
|
|
35
|
-
defaultValues: {
|
|
41
|
+
defaultValues: {
|
|
42
|
+
description: memoryStore.description ?? "",
|
|
43
|
+
extractInstructions: memoryStore.extractInstructions ?? "",
|
|
44
|
+
},
|
|
36
45
|
});
|
|
37
46
|
|
|
38
47
|
async function onSubmit(values: UpdateMemoryStoreInput) {
|
|
39
48
|
try {
|
|
49
|
+
// The currently-running server build may predate extractInstructions and
|
|
50
|
+
// rejects unknown JSON fields. Only include it in the PATCH when the user
|
|
51
|
+
// actually changed it, so description-only edits keep working. An empty
|
|
52
|
+
// string is a deliberate "clear" (the field uses pointer/PATCH semantics
|
|
53
|
+
// server-side once a newer build is deployed).
|
|
54
|
+
const initialInstructions = memoryStore.extractInstructions ?? "";
|
|
55
|
+
const nextInstructions = values.extractInstructions ?? "";
|
|
56
|
+
const instructionsChanged = nextInstructions !== initialInstructions;
|
|
57
|
+
|
|
40
58
|
await updateStore.mutateAsync({
|
|
41
59
|
memoryStoreName: memoryStore.memoryStoreName,
|
|
42
60
|
description: values.description?.length ? values.description : undefined,
|
|
61
|
+
...(instructionsChanged ? { extractInstructions: nextInstructions } : {}),
|
|
43
62
|
});
|
|
44
63
|
toast.success("记忆库设置已更新");
|
|
45
64
|
} catch (error) {
|
|
@@ -76,14 +95,40 @@ export function MemorySettingsForm({ memoryStore }: MemorySettingsFormProps) {
|
|
|
76
95
|
</FormItem>
|
|
77
96
|
)}
|
|
78
97
|
/>
|
|
79
|
-
|
|
80
|
-
<div className="flex justify-end border-t border-[hsl(var(--border-light))] pt-4">
|
|
81
|
-
<Button type="submit" disabled={updateStore.isPending}>
|
|
82
|
-
{updateStore.isPending ? "保存中..." : "保存更改"}
|
|
83
|
-
</Button>
|
|
84
|
-
</div>
|
|
85
98
|
</div>
|
|
86
99
|
</section>
|
|
100
|
+
|
|
101
|
+
<section className="rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] p-5 shadow-sm">
|
|
102
|
+
<SettingsSectionHeader
|
|
103
|
+
title="记忆抽取指令"
|
|
104
|
+
description="可选。这里填写的指令会注入到后台记忆抽取的提示词中,用于引导从对话里提炼哪些信息、忽略哪些信息。留空则使用默认抽取策略。"
|
|
105
|
+
/>
|
|
106
|
+
<FormField
|
|
107
|
+
control={form.control}
|
|
108
|
+
name="extractInstructions"
|
|
109
|
+
render={({ field }) => (
|
|
110
|
+
<FormItem>
|
|
111
|
+
<FormLabel>抽取指令</FormLabel>
|
|
112
|
+
<FormControl>
|
|
113
|
+
<Textarea
|
|
114
|
+
placeholder="例如:重点关注用户的医疗术语与用药偏好;忽略寒暄与客套内容。"
|
|
115
|
+
className="resize-none"
|
|
116
|
+
rows={5}
|
|
117
|
+
{...field}
|
|
118
|
+
/>
|
|
119
|
+
</FormControl>
|
|
120
|
+
<FormDescription>最多 4096 个字符。留空表示恢复默认抽取策略。</FormDescription>
|
|
121
|
+
<FormMessage />
|
|
122
|
+
</FormItem>
|
|
123
|
+
)}
|
|
124
|
+
/>
|
|
125
|
+
</section>
|
|
126
|
+
|
|
127
|
+
<div className="flex justify-end border-t border-[hsl(var(--border-light))] pt-4">
|
|
128
|
+
<Button type="submit" disabled={updateStore.isPending}>
|
|
129
|
+
{updateStore.isPending ? "保存中..." : "保存更改"}
|
|
130
|
+
</Button>
|
|
131
|
+
</div>
|
|
87
132
|
</form>
|
|
88
133
|
</Form>
|
|
89
134
|
);
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import { Skeleton } from "@/components/ui/skeleton";
|
|
21
21
|
import { RelativeTime } from "@/components/shared/relative-time";
|
|
22
22
|
import { useMemoryUnit } from "@/hooks/use-memory-unit";
|
|
23
|
-
import {
|
|
23
|
+
import { useTaskSourceMessages } from "@/hooks/use-task-source-messages";
|
|
24
24
|
import { cn } from "@/lib/utils";
|
|
25
25
|
import type { MemoryScope, MemoryTask, MemoryTaskStatus } from "@/types/memory";
|
|
26
26
|
|
|
@@ -81,26 +81,6 @@ function formatTime(value: string | undefined): string {
|
|
|
81
81
|
return new Date(ms).toLocaleString("zh-CN");
|
|
82
82
|
}
|
|
83
83
|
|
|
84
|
-
/**
|
|
85
|
-
* Compute a tight time window around the task's lifetime so the original-
|
|
86
|
-
* conversation panel only loads messages that plausibly fed this task.
|
|
87
|
-
*
|
|
88
|
-
* The buffers are wide enough to absorb engine-side timestamp skew while
|
|
89
|
-
* still keeping the panel focused on "the messages that this AddMemories
|
|
90
|
-
* call ingested" rather than the entire session history.
|
|
91
|
-
*/
|
|
92
|
-
function taskMessageWindow(task: MemoryTask): {
|
|
93
|
-
minTimestamp?: string;
|
|
94
|
-
maxTimestamp?: string;
|
|
95
|
-
} {
|
|
96
|
-
const created = toEpochMs(task.createdAt);
|
|
97
|
-
const finished = toEpochMs(task.finishedAt) ?? toEpochMs(task.updatedAt);
|
|
98
|
-
if (created === undefined) return {};
|
|
99
|
-
const min = new Date(created - 60_000).toISOString();
|
|
100
|
-
const max = new Date((finished ?? created) + 60_000).toISOString();
|
|
101
|
-
return { minTimestamp: min, maxTimestamp: max };
|
|
102
|
-
}
|
|
103
|
-
|
|
104
84
|
export function MemoryTasksTable({
|
|
105
85
|
tasks,
|
|
106
86
|
memoryStoreName,
|
|
@@ -286,21 +266,10 @@ function OriginalMessagesPanel({
|
|
|
286
266
|
task: MemoryTask;
|
|
287
267
|
memoryStoreName: string;
|
|
288
268
|
}) {
|
|
289
|
-
const {
|
|
290
|
-
const query = useMemoryMessages(
|
|
269
|
+
const { messages, isLoading, precise } = useTaskSourceMessages(
|
|
291
270
|
memoryStoreName,
|
|
292
|
-
task
|
|
293
|
-
undefined,
|
|
294
|
-
50,
|
|
295
|
-
Boolean(memoryStoreName && task.scope?.appId),
|
|
296
|
-
{ minTimestamp, maxTimestamp },
|
|
271
|
+
task,
|
|
297
272
|
);
|
|
298
|
-
|
|
299
|
-
const messages = query.data?.items ?? [];
|
|
300
|
-
// Engine writes both the original turn and any system events in the same
|
|
301
|
-
// table, so on noisy stores this list can have non-conversational rows;
|
|
302
|
-
// we render whatever has a `content` string and let the styling do the
|
|
303
|
-
// rest. The window is already narrowed by createdAt±60s so it's small.
|
|
304
273
|
const renderable = messages.filter(
|
|
305
274
|
(m) => typeof m.content === "string" && m.content.length > 0,
|
|
306
275
|
);
|
|
@@ -310,17 +279,19 @@ function OriginalMessagesPanel({
|
|
|
310
279
|
<header className="mb-2 flex items-center justify-between">
|
|
311
280
|
<h4 className="text-sm font-semibold">原始会话</h4>
|
|
312
281
|
<span className="text-[10px] text-muted-foreground">
|
|
313
|
-
任务时间窗口内的消息
|
|
282
|
+
{precise ? "该任务提取记忆所依据的消息" : "任务时间窗口内的消息"}
|
|
314
283
|
</span>
|
|
315
284
|
</header>
|
|
316
|
-
{
|
|
285
|
+
{isLoading ? (
|
|
317
286
|
<div className="space-y-2">
|
|
318
287
|
<Skeleton className="h-12 w-full" />
|
|
319
288
|
<Skeleton className="h-12 w-full" />
|
|
320
289
|
</div>
|
|
321
290
|
) : renderable.length === 0 ? (
|
|
322
291
|
<p className="rounded border border-dashed border-[hsl(var(--border))] py-4 text-center text-xs italic text-muted-foreground">
|
|
323
|
-
|
|
292
|
+
{precise
|
|
293
|
+
? "未找到该任务对应的原始消息(可能已被清理)"
|
|
294
|
+
: "未在该任务范围内找到原始会话消息"}
|
|
324
295
|
</p>
|
|
325
296
|
) : (
|
|
326
297
|
<ul className="max-h-[420px] space-y-2 overflow-auto pr-1">
|