尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

TencentDB Agent Memory 安装部署完全指南:三件套一键拉起,让 Claude Code 等 Coding Agent 直接接入团队记忆

TencentDB Agent Memory 安装部署完全指南:三件套一键拉起,让 Claude Code 等 Coding Agent 直接接入团队记忆 TencentDB Agent Memory 安装部署完全指南三件套一键拉起让 Claude Code 等 Coding Agent 直接接入团队记忆【免费下载链接】TencentDB-Agent-MemoryTencentDB Agent Memory is a team-level memory hub for AI Agents — turning conversations, docs, and code into four reusable memory assets (Chat Memory, Skill, LLM-Wiki, Code-Graph) that are governed, shared, and equipped across agents and frameworks.项目地址: https://gitcode.com/GitHub_Trending/te/TencentDB-Agent-Memory本文是 TencentDB Agent Memory 的实战安装指南覆盖三种部署形态完整三件套memory-core memory-hub proxy一键启动、只装 Memory Hub 的轻量部署以及通过 Proxy 接入 Claude Code / CodeBuddy / Hermes / OpenClaw 等 Coding Agent。读完本文你将掌握从.env配置、LLM 通路预检、admin 与业务用户体系到 Team / Agent / Task 三元组建立、代理流水线注入原理与常见问题排查的完整闭环能够在本机快速搭建一套可用的团队级记忆枢纽。一、三种安装形态总览INSTALL.md 将安装方式划分为三种形态按需选择完整三件套memory-corememory-hubproxy一次拉起官方推荐——能让 Claude Code 之类的 coding agent 直接用上团队记忆 / 知识 / skill 注入只装 Memory Hub当 Memory Core 已在本机运行时单独拉起管理面板的轻量部署通过 Proxy 使用 Claude Code把 coding agent 挂到 proxy 上作为 LLM 请求的入口。三种形态共用deploy/global-images/目录下的脚本族start-all.sh、start-memory-core.sh、start-memory-hub.sh、start-proxy.sh、stop-all.sh与verify.sh。三件套镜像均发布在 Docker Hub 的agentmemory命名空间下多架构linux/amd64linux/arm64公开可拉、无需登录。二、部署前准备环境要求与镜像环境要求见 deploy/global-images/README.mdmacOS / LinuxDockerDocker Desktop / colima / OrbStack 任一bash4macOS 自带 3.2 也能跑一个 OpenAI 兼容的 LLM API或 Anthropic 协议端点。三个组件与端口组件容器名镜像Docker Hub 公开宿主机端口用途memory-coretdai-memory-coreagentmemory/memory-core8420内核 gateway记忆读写、鉴权、skill/RAG 数据面memory-hubtdai-memory-hubagentmemory/memory-hub8125/8424管理面板Panel 知识服务Knowledge合并镜像proxytdai-proxyagentmemory/memory-proxy8096LLM 请求转发代理coding agent 的 API 入口三、完整三件套Memory Core Memory Hub Proxy推荐3.1 获取脚本并准备.env# 1) 拿脚本 git clone https://github.com/TencentCloud/TencentDB-Agent-Memory.git cd TencentDB-Agent-Memory/deploy/global-images # 2) 准备 .env把 LLM 相关字段填成真值 cp .env.example .env $EDITOR .env # MEMORY_LLM_BASE_URL / MEMORY_LLM_API_KEY / MEMORY_LLM_MODEL ← memory hub 内部用 # PROXY_UPSTREAM_URL / PROXY_UPSTREAM_API_KEY / PROXY_UPSTREAM_MODEL ← proxy 转发到的上游两组独立 LLM 参数是这套脚本设计的核心详见 .env.examplememory 组和 proxy 组的 LLM 完全独立可以指向不同供应商 / 不同模型。memory 组memory-core memory-hub 使用——内核记忆的 embed/summarize、knowledge 的 wiki ingest / 总结走这组配置变量说明示例MEMORY_LLM_BASE_URLOpenAI 兼容 base URLhttps://api.deepseek.com/v1MEMORY_LLM_API_KEY上述端点的 API Keysk-xxxxxxxxMEMORY_LLM_MODEL模型 IDdeepseek-chatMEMORY_LLM_PROTOCOLopenai或anthropic默认openaiopenaiproxy 组proxy 使用——proxy 接到用户请求后转发到这组端点变量说明示例PROXY_UPSTREAM_URL转发目标 base URLhttps://api.deepseek.com/v1PROXY_UPSTREAM_API_KEY转发用 API Keysk-xxxxxxxxPROXY_UPSTREAM_MODEL面向用户的模型 IDdeepseek-chat两组可以填相同值都指向同一个 LLM也可以完全不同例如 memory 组用便宜模型做 embeddingproxy 组用强模型做主对话。端口与数据卷默认端口8420 / 8125 / 8424 / 8096与本地服务冲突时直接在.env里改MEMORY_CORE_PORT/PANEL_PORT/KNOWLEDGE_PORT/PROXY_PORT同时KNOWLEDGE_PUBLIC_BASE_URL要跟着KNOWLEDGE_PORT走数据卷默认tdai-memory-core-datamemory-core 的 SQLite / 记忆数据与tdai-panel-datamemory-hub 里 knowledge 的 SQLite / git clone / wiki 文件可在.env里通过MEMORY_CORE_VOLUME/PANEL_VOLUME改名。内部凭据生产环境必看三件套之间用MEMORY_CORE_GATEWAY_API_KEY互相认证首次启动还会通过init-admin建一个system_admin账户。为了零配置本地体验脚本默认值如下变量默认值用途MEMORY_CORE_GATEWAY_API_KEYlocalmemory-hub / proxy → memory-core 的 BearerMEMORY_CORE_ADMIN_USERNAMEadmin初始化的 system_admin 用户名MEMORY_CORE_ADMIN_USER_KEYadmin该 admin 用户的登录 key⚠️ 这三个默认值只适合个人本地跑通流程。生产 / 联调 / 公网暴露前必须替换成随机长串否则任何拿到端口的人都能拿到 system_admin 权限。另外注意 start-memory-core.sh 顶部注释提到当前 memory-core 的 Bearer gate 与 proxy auth 存在已知不兼容proxy 调/v3/meta/auth/verify时不带 Bearer所以本地体验请把MEMORY_CORE_GATEWAY_API_KEY留空。3.2 干跑校验./verify.sh# 3) 干跑校验可选会真做 LLM 通路预检加 --skip-llm 跳过 ./verify.shverify.sh不启动任何容器只做启动前就绪检查实现见 verify.shdocker命令可用.env文件存在.env中所有必填参数已填写非REPLACE_ME且非空——缺参时一次性列出所有缺失项并exit 1不会跑到一半才失败三个镜像是否已在本地未在本地只 warn 不算失败目标端口是否被占用LLM 上游通路预检默认开启--skip-llm关闭OpenAI 兼容协议GET {base}/models只验证 API key URL不消耗任何 tokenAnthropic 协议POST {base}/v1/messages发max_tokens1的最小消息消耗 ≤ 10 tokenmemory 组与proxy 组独立验若两组配置完全相同自动跳过重复检查容器已运行时额外从容器内docker exec一次 curl验证容器 → LLM的网络可达性一些企业代理 / DNS 隔离环境下宿主机可达但容器不可达。失败示例[error] memory 组 API key 无效HTTP 401https://api.deepseek.com/v1/models {error:{message:Authentication Fails, Your api key: ****abcd is invalid,...}}—— API key 错、URL 错、模型名错都会在启动前被拦下不会等到 wiki ingest / chat 时才 401。3.3 一键启动./start-all.sh# 4) 一键起 ./start-all.shstart-all.sh的执行顺序是先起 memory内核等 healthy再起 memory-hub面板 知识等 healthy最后起 proxy默认PROXY_FULL_STACK1打开完整流水线。任意一步失败会中止并打印容器日志。想先docker pull三个镜像升级到最新可加PULL1。启动完成后脚本会自动首次启动时用init-admin生成 admin useruser_key为随机 32 位sk-mem-前缀由 start-memory-core.sh 的generate_user_key()用openssl rand生成格式与MemoryCore/src/metadata/utils/user-key.ts保持一致持久化到./.admin-key同一 volume 下每次重启复用立即跑一次POST /v3/meta/auth/verify校验这把 key通过后打印一段可直接exportclaude的运行命令形如export ANTHROPIC_BASE_URLhttp://127.0.0.1:8096/claude-code/default export ANTHROPIC_AUTH_TOKENsk-mem-随机32位 claude --model PROXY_UPSTREAM_MODEL 里配的模型脚本还会在末尾对user_key做脱敏输出sk-mem-xxxx****abcd形式避免终端历史里留下全值。三个服务默认端口服务端口用途Memory Core8420记忆读写、鉴权、skill/RAG 数据面Panel UI8125团队记忆管理面板Knowledge8424Wiki / Code-Graph 服务Proxy8096LLM 请求代理Anthropic / OpenAI 双协议启动完成后可用端点Panel UI http://localhost:8125/、Knowledge API http://localhost:8424/v3/、Knowledge Swagger http://localhost:8424/docs、Memory Gateway http://localhost:8420/、Proxy http://localhost:8096/。四、部署完成后把它跑起来服务起来只是第一步。要让 Claude Code 之类的 coding agent 用上团队记忆还需要在面板里建组织结构、然后在 CC 会话里选它们。第 1 步登录管理面板打开浏览器访问http://localhost:8125Panel UI。第一次访问会看到登录页用start-all.sh结尾打印的 adminuser_key即deploy/global-images/.admin-key文件里那串sk-mem-...登录admin 登录后可以直接使用 Wiki、CodeGraph、Skill 等资产管理功能创建 Team / Agent / Task 等业务资产如果希望隔离运维与业务推荐可创建normal业务用户 → 复制新用户的user_key→ 退出 admin 换新用户登录。换句话说admin 是运维口用来管人业务用户是应用口用来管资产。单机本地体验也推荐遵循这个分层不要用 admin key 直接跑 CC。 注2.0.0-beta.1 中 admin 不能拥有业务资产2.0.0 正式版起 admin 也可以直接操作资产。Knowledge Service Swagger可选看接口调试用http://localhost:8424/docs第 1.5 步admin 建业务用户可选推荐隔离运维与业务面板左上角「用户管理」或用 admin 直接调 API新建一个用户# API 方式更明确面板里等价操作在「用户」→「新建」 ADMIN_KEY$(cat ./.admin-key) curl -sS -X POST http://localhost:8420/v3/meta/user/create \ -H x-tdai-user-key: $ADMIN_KEY \ -H x-tdai-service-id: default \ -H Content-Type: application/json \ -d {username:you} | jq返回体里data.default_user_keysk-mem-...就是新用户的登录 key保存好面板无处再看到全值只有创建时返回一次。之后面板退出登录用这把新 key 重新登录——你现在是normal用户可以在自己名下建 Team / Agent / Task 了。当然admin 也可以直接操作这里只是推荐隔离。第 2 步在面板里建 Team / Agent / TaskCoding agent 用记忆必须落到具体team / agent / task三元组上Team团队面板左侧「团队」→ 新建一个 Team 是一组资产的归属容器memory、skill、knowledge 都归 TeamAgent智能体进入 Team → 「Agent」→ 新建给它填一段清晰的descriptionsystem prompt就是这个 agent 的角色说明例bug-fix 工程师、前端评审 agent、SQL 优化师Task任务可选Team → 「任务」→ 新建Task 是这一次工作的抓手比如「修复登录页 XSS」「上线 v1.4 灰度」记忆会关联到 Task不建 Task 也能用但 L2/L3 会缺 Task 维度。先建至少 1 个 Team 1 个 Agent可选建 Task。第 3 步用 Claude Code 走 Proxy跑 CC 时用 admin 或业务用户的user_key2.0.0 正式版起 admin 也可拥有资产export ANTHROPIC_BASE_URLhttp://127.0.0.1:8096/claude-code/default export ANTHROPIC_AUTH_TOKEN第 1.5 步建的业务用户的 sk-mem-... claude --model PROXY_UPSTREAM_MODEL 里配的上游模型ANTHROPIC_BASE_URL把 CC 的 API 从 anthropic.com 改指到本机 proxy路径里的default是 memory 实例 IDx-tdai-service-id本地部署固定叫defaultANTHROPIC_AUTH_TOKEN是业务用户的 user_key就是第 1.5 步创建用户时返回的default_user_keyproxy 会用它去 core 反查 user_id只有这个 user own 的 team/agent/task 才会出现在下一步表单里--model用你在.env里PROXY_UPSTREAM_MODEL配的那个上游模型名proxy 会把请求转发到PROXY_UPSTREAM_URL。第 4 步CC 首次会话选 Team → Agent → Task每开一个新的 CC 会话proxy 会用 CC 自带的AskUserQuestion工具弹出 3 个连续选择┌─────────────────────────────────────────────────┐ │ 1. 请选择本次会话所属的 Team │ │ ○ Team A │ │ ○ Team B │ │ │ │ 2. 请选择「Team A」下要使用的 Agent │ │ ○ bug-fix 工程师 │ │ ○ 前端评审 agent │ │ │ │ 3. 请选择「Team A」下要关联的任务可选 │ │ ○ 修复登录页 XSS │ │ ○ [跳过任务关联] │ └─────────────────────────────────────────────────┘每个问题直接在 CC 里用箭头选、回车确认。选完之后proxy 记住这次会话的 team/agent/task 绑定后续每一轮请求proxy 会自动把这个 agent 的 L2/L3 记忆、skill、knowledge 注入到 system promptL0原始对话会自动落到 memory-core 的 SQLite 里满足触发条件时后台跑 L1抽 memory→ L2scene→ L3persona。只有新 CC 会话才会弹表单同一次claude进程内的多轮不会再问。第 5 步观察记忆一层层长出来聊完一段之后在面板里看左侧「记忆」→ Chat Memory能看到 L0 原始对话被切分成的 scene「Agent」详情页 → Profileagent 的 L2 scene 与 L3 persona 会逐步累积「Skill」列表如果对话里 LLM 判定这是一条可复用的操作方法会自动抽出 skill 存下来。用 memory-core/health也能看后台 pipeline worker 有没有干活curl -s http://localhost:8420/health | jq .services.pipelineWorker期望看到tasksConsumed/tasksCompleted数字随着对话增长。常见问题Q: CC 会话没有弹选择表单可能 proxy 里PROXY_ENABLE_SESSION_INIT1没开。start-all.sh默认PROXY_FULL_STACK1已经打开如果你手动改过.env或用PROXY_FULL_STACK0起的重启 proxyPROXY_FULL_STACK1 ./start-proxy.sh。Q: 表单选择项里空空的或者只有别人的 team请确认当前使用的账号已在面板中创建过 Team 和 Agent。如果用的是 admin 账号确保已创建了相关资产如果用的是业务用户账号检查是否已在对应 team 下建过 Agent。Q: 面板显示Panel API 8125 未启动docker ps检查tdai-memory-hub是不是 healthy不 healthy 看docker logs tdai-memory-hub找报错大概率是REMOTE_INSTANCE_URL/LLM_BASE_URL之类配错。Q: L1/L2 一直没跑起来records/ 目录里没东西默认promptModechat对普通对话能抽出 memory如果你配了code而对话都是闲聊LLM 会认为没有可沉淀的东西返回 0。改回chat或跟 agent 做真实工作对话改文件、跑测试、给出结论。Q: 想切换到别的 team/agent起一个新的claude会话新窗口 / 新 session就会重新弹选择表单。五、只装 Memory Hub已有 Memory Core 运行在本机8420端口时一条命令拉取 Memory Hub打开团队记忆面板docker pull docker.io/agentmemory/memory-hub:latest启动 Panel Knowledge Servicedocker run -d --name tdai-memory-hub \ --add-hosthost.docker.internal:host-gateway \ -p 8125:8125 -p 8424:8424 \ -v tdai-panel-data:/data/knowledge \ -e REMOTE_INSTANCE_URLhttp://host.docker.internal:8420 \ -e REMOTE_INSTANCE_KEYlocal \ -e KNOWLEDGE_PUBLIC_BASE_URLhttp://host.docker.internal:8424/v3 \ -e LLM_MODEcustom \ -e LLM_BASE_URLOPENAI_COMPATIBLE_BASE_URL \ -e LLM_API_KEYYOUR_API_KEY \ -e LLM_MODELMODEL_ID \ docker.io/agentmemory/memory-hub:latest打开 http://localhost:8125。对照 start-memory-hub.sh 可知REMOTE_INSTANCE_URL指向 memory-core这里用host.docker.internal:8420让容器内可回环到宿主机LLM_MODEcustom表示 knowledge 直连你提供的 LLM 端点不走 memory 的 LLM proxyKNOWLEDGE_PUBLIC_BASE_URL必须含/v3前缀否则 panel 会报错。memory-hub 内部有两个进程panel knowledge日志分别在容器内/data/knowledge/logs/panel.log和.../knowledge.log。六、通过 Proxy 使用 Claude Codestart-all.sh已经把 admin user_key 写在deploy/global-images/.admin-key让 Claude Code 直接走 proxyexport ANTHROPIC_BASE_URLhttp://127.0.0.1:8096/claude-code/default export ANTHROPIC_AUTH_TOKEN$(cat ./.admin-key) claude --model PROXY_UPSTREAM_MODEL 里配的上游模型Proxy 会依次做auth校验 user_key→sessionInit选 team/agent/task 表单→injection把 L2/L3 记忆、skill、knowledge 注入 system prompt→ 转发到上游 LLM。关掉完整流水线只做透传PROXY_FULL_STACK0 ./start-proxy.sh。从 start-proxy.sh 生成的 proxyconfig.yaml可以看到完整流水线的三个能力开关PROXY_ENABLE_AUTH客户端凭 user_key 走内核 auth/verify → user_id、PROXY_ENABLE_SESSION_INIT首轮弹表单选 team/agent/task依赖 auth、PROXY_ENABLE_TDAIL2/L3 记忆注入 L1 召回依赖 memory-core。PROXY_FULL_STACK1会把三者一键全开开 sessionInit 时会自动补开 auth。默认costGuard关闭注入器injector默认启用skill/knowledge/tdai-memory三个——knowledge 依赖 memory-hub 起来否则 hook 内部会降级为空块。七、通过 Proxy 使用 CodeBuddyCodeBuddy 是腾讯推出的 AI 编程助手 IDE 插件。通过自定义模型配置可以把 CodeBuddy 的对话请求路由到 Proxy在 IDE 内获得与 Claude Code 相同的记忆能力。⚠️ 版本限制CodeBuddy4.10.2、4.10.3、4.10.4存在已知 Bug这些版本不会在请求中携带sessionId导致 Proxy 无法完成 Session 初始化。请使用 CodeBuddy ≥ 4.10.5 或 ≤ 4.10.1。配置在开发机的~/.codebuddy/models.json文件中写入以下内容注意替换 API Key{ models: [ { id: claude-sonnet-4-20250514, name: proxy-memory-agent, vendor: claude, apiKey: 业务用户的 sk-mem-... user_key, maxInputTokens: 200000, url: http://127.0.0.1:8096/codebuddy/default, supportsToolCall: true, supportsImages: true } ] }idProxy 上游 LLM 支持的模型 ID必须与 Proxy 配置的PROXY_UPSTREAM_MODEL或 upstream 模型列表中的某个模型匹配如claude-sonnet-4-20250514name在 CodeBuddy 对话框中显示的名称可自定义如proxy-memory-agentvendor模型供应商标识仅用于 UI 展示如claude、openai不影响实际请求apiKey使用业务用户的user_key与 Claude Code 的ANTHROPIC_AUTH_TOKEN相同不建议直接使用 admin keyurlProxy 地址 /codebuddy/default路径端口与 Claude Code 一致默认8096default是 memory 实例 ID。配置完成后在 CodeBuddy 对话框中选择刚才配置的模型名称即可开始对话。Session init 流程与 Claude Code 一致选 Team → Agent → Task。八、通过 Proxy 使用 HermesHermes 是一个开源的 AI Agent 框架。通过配置 extra headers可以让 Hermes 的对话请求经过 Proxy获得团队记忆能力。配置编辑~/.hermes/config.yamlmodel: default: gpt-5.5 provider: custom base_url: http://proxy-host:port/hermes/spaceId api_key: 从面板获取的 API Key extra_headers: x-team-id: 从面板获取的 team_id x-agent-id: 从面板获取的 agent_id x-task-id: 从面板获取的 task_id x-conversation-id: 自定义的会话标识base_urlProxy 地址 /hermes/spaceId路径。spaceId是 memory 实例 ID从面板获取通常为defaultapi_key业务用户的user_key从管理面板API Key页获取x-team-id/x-agent-id从管理面板对应页面获取与 CodeBuddy / Claude Code 的获取方式相同x-task-id从管理面板任务管理页获取。当前版本必填——缺少此字段会导致 session 注册失败记忆功能不生效见下方关于 x-task-id 的已知限制x-conversation-id用户自定义的会话标识见下方关于 x-conversation-id 的已知限制。九、通过 Proxy 使用 OpenClawOpenClaw 与 MemoryCore/openclaw-plugin 提供了对应插件形态的接入参考。配置编辑~/.openclaw/openclaw.json在models.providers中添加{ models: { mode: merge, providers: { memory-proxy: { baseUrl: http://proxy-host:port/openclaw/spaceId, apiKey: 从面板获取的 API Key, api: openai-completions, headers: { x-team-id: 从面板获取的 team_id, x-agent-id: 从面板获取的 agent_id, x-task-id: 从面板获取的 task_id, x-conversation-id: 自定义的会话标识 }, request: { allowPrivateNetwork: true }, models: [ { id: gpt-5.5, name: GPT-5.5, reasoning: false, input: [text], contextWindow: 128000, maxTokens: 32000, cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 } } ] } } } }baseUrlProxy 地址 /openclaw/spaceId路径apiKey业务用户的user_keyheaders必须包含x-team-id、x-agent-id、x-task-id、x-conversation-id。其中x-task-id当前版本为必填见下方关于 x-task-id 的已知限制models[].id必须与 Proxy 上游配置的模型 ID 匹配。十、其他平台接入通用除 ClaudeCode / CodeBuddy / Hermes / OpenClaw 外任何兼容 OpenAI API 的平台或自行开发的 Agent 均可接入 Proxy获得团队记忆能力。接入方式将平台的 API base URL 指向 Proxyhttp://proxy-host:port/agent-source/spaceIdagent-source平台标识必须从 Proxy 支持的以下值中选用claude-code、codebuddy、hermes、openclaw。如果使用的是其他平台可伪装成其中某一个接入如使用codebuddy作为标识spaceIdmemory 实例 ID本地部署固定为default。请求 Path 自动拼接/v1/chat/completionsOpenAI 协议或/v1/messagesAnthropic 协议。必须携带的 HeaderHeader说明Authorization: Bearer user_key业务用户的 API Key从面板API Key页获取x-team-id团队 IDx-agent-idAgent IDx-task-id任务 ID当前版本必填见下方关于 x-task-id 的已知限制x-conversation-id会话标识由客户端自行生成和管理以上 header 缺一不可——Proxy 会通过 header 直接完成 session 注册跳过交互式表单。无法提供 headers 的平台将触发 session bypass记忆注入和对话回流均不生效。这一点与 start-proxy.sh 生成的config.yaml中sessionInit.headerAutoSelect配置对应teamHeader: x-team-id、agentHeader: x-agent-id、taskHeader: x-task-id、onMismatch: form——header 齐全时直接注册 session缺失时回退到交互式表单流程。十一、已知限制关于x-task-id的已知限制⚠️当前版本限制x-task-id在 Hermes / OpenClaw 场景下为必填项。Proxy 的 header 预选机制要求x-team-idx-agent-idx-task-id三者齐全才能完成 session 直接注册。缺少x-task-id时Proxy 会尝试弹出交互式表单让用户选择 task但 Hermes / OpenClaw 无法响应交互式表单最终导致 session bypass记忆注入和对话回流均不生效。这带来的不便用户需要预先在面板上创建 Task 并获取task_id增加了接入门槛切换不同任务时需要手动修改配置文件中的x-task-id。官方计划在下一个版本中支持x-task-id可选当 header 中未指定 task 时Proxy 自动选择该 agent 下的默认 task 或跳过 task 绑定直接完成 session 注册。关于x-conversation-id的已知限制⚠️当前版本限制Hermes 和 OpenClaw 需要在配置文件中静态指定x-conversation-id。这与 Claude Code / CodeBuddy 不同它们由 SDK 自动管理 session ID。当前限制同一个 conversation ID 的所有请求共享同一个 session—— 记忆注入、对话回流都绑定到这个 ID每次开启新对话时需要手动更换 conversation ID否则会继续沿用上次的 session 状态部分客户端的 tool call 后续请求可能不携带 extra headers导致那些轮次跳过记忆注入和对话回流。官方计划在下一个版本中优化 conversation ID 的使用体验支持自动生成与管理。十二、停止 / 清理./stop-all.sh # 停容器保留 volume下次启动数据还在 ./stop-all.sh --purge # 连 volume、admin key、proxy config 一起清对照 stop-all.sh 的实现普通停止只移除tdai-proxy/tdai-memory-hub/tdai-memory-core三个容器volume 与.admin-key保留--purge会额外删除两个 named volume、tdai-memory-stack网络、.admin-key文件以及脚本生成的.proxy-config/.memory-core-config配置目录。注意.admin-key与 volume 强绑定——purge volume 必须同步清 key否则下次启动会读到旧 key 但 volume 是新的auth 校验会失败。十三、脚本背后三份自动生成的配置源码级补充三个启动脚本的共同点是从.env生成最小配置并挂载进容器理解这点对排查问题很有帮助start-memory-core.sh把MEMORY_LLM_*渲染成一份tdai-gateway.yaml挂到容器/data/config/tdai-gateway.yaml:ro。其中memory.promptMode默认chat通用聊天/教学场景可设code代码工程场景LLM 重点抽改了什么/发现什么问题/工具用法但普通聊天可能抽出 0 条——这正是 FAQ 中L1/L2 一直没跑起来的根源memory.extraction.enableDedup、persona.triggerEveryN: 50、pipeline.everyNConversations: 5等参数控制 L1→L2→L3 的抽取节奏recall.strategy: hybrid、storeBackend: sqlite对应记忆召回与存储后端。该脚本还负责 admin user 生命周期首次启动调用POST /v3/internal/meta/user/init-admin传入生成的随机user_key并落盘.admin-key重启时若返回 409已初始化则优先复用文件里的 key。start-memory-hub.shPanel UI客户端接入地址卡片会拼上宿主机 LAN IP PROXY_PORT例如http://192.168.1.100:8096/codebuddy/default由MEMORY_HUB_PROXY_PUBLIC_URL未设时脚本用hostname -I/ macOSipconfig getifaddr en0自动探测探不到才回落localhost注入到 memory-hub 的metadata-instances.json.proxy_endpoint。多网卡 / 公网域名 / 反代前置时请在.env显式设置。start-proxy.shproxy 只从 YAML 读上游 URL / API key不认环境变量因此脚本从.env生成最小config.yaml挂到容器/data/config.yaml。server.forwardTimeoutMs: 600000、auth.url: http://memory-core:8420、sessionInit.maxRetries: 3等参数直接决定代理行为。查看日志docker logs -f tdai-memory-core docker logs -f tdai-memory-hub docker logs -f tdai-proxy端口冲突如果8125/8420/8424/8096与本地已有服务冲突直接在.env改同时KNOWLEDGE_PUBLIC_BASE_URL要跟着KNOWLEDGE_PORT走。数据持久化tdai-memory-core-datanamed volume→ memory-core 的 SQLite / 记忆数据tdai-panel-datanamed volume→ memory-hub 里 knowledge 的 SQLite / git clone / wiki 文件。docker volume rm之前数据一直保留。十四、更多安装形态其它安装形态OpenClaw、Hermes、CodeBuddy、SDK、源码启动、K8s、平台说明参见 deploy/global-images/README.md 与 MemoryCore/README.md。其中 MemoryCore 也支持脱离容器直接从源码运行Node.js ≥ 22.16.0默认监听127.0.0.1:8420数据存于~/.memory-tencentdb/memory-tdai适合作为单机开发与 Agent sidecar 场景。安装脚本还可参考 install-hermes-plugin.sh、install-openclaw-plugin.sh 与 install_hermes_memory_tencentdb.sh 了解插件形态的接入路径。【免费下载链接】TencentDB-Agent-MemoryTencentDB Agent Memory is a team-level memory hub for AI Agents — turning conversations, docs, and code into four reusable memory assets (Chat Memory, Skill, LLM-Wiki, Code-Graph) that are governed, shared, and equipped across agents and frameworks.项目地址: https://gitcode.com/GitHub_Trending/te/TencentDB-Agent-Memory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表