ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

agentmemory 配置完全指南:环境变量、端口体系与特性开关(agentmemory-config)

agentmemory 配置完全指南:环境变量、端口体系与特性开关(agentmemory-config) agentmemory 配置完全指南环境变量、端口体系与特性开关agentmemory-config【免费下载链接】agentmemory#1 Persistent memory for AI coding agents based on real-world benchmarks项目地址: https://gitcode.com/GitHub_Trending/age/agentmemory本篇指南以plugin/skills/agentmemory-config技能含 REFERENCE.md 与 SKILL.md为骨架结合 src/config.ts 等源码实现系统讲解 agentmemory 的配置加载机制、全部 37 个AGENTMEMORY_*环境变量、默认值与特性开关、端口四元组迁移方式以及 REST 认证配置。读完你可以在~/.agentmemory/.env中独立完成从零启动、开启 LLM 压缩、迁移端口、隔离多 Agent 记忆的完整配置并理解每个开关背后的默认关闭原因与 token 成本影响。配置从哪来环境变量 ~/.agentmemory/.envagentmemory 的配置来源只有两个进程环境变量与~/.agentmemory/.env文件Windows 下为%USERPROFILE%\.agentmemory\.env。文件格式为每行一个KEYvalue不带export前缀支持#注释、空行、引号包裹与行内注释。src/config.ts 中的loadEnvFile()是实际解析器其规则可以精确概括为空白行与#开头的行直接跳过按第一个切分 key 与 value两侧 trimvalue 若以或开头则取配对的引号内内容未加引号时遇到 #空格加井号视为行内注释并截断解析结果按进程生命周期记忆化缓存envFileCache文件被视为 boot-static——这正是 SKILL 文档要求修改后重启服务的原因。测试中可通过__resetEnvFileCache()或模块重载刷新缓存。配置的合并优先级见 src/config.ts 的getMergedEnv()为{ ...fileEnv, ...process.env, ...overrides }即~/.agentmemory/.env是地基进程环境变量覆盖它代码内覆盖最优先。hydrateProcessEnvFromFile()src/config.ts在启动时把文件变量灌入process.env但仅在键尚未被真实环境变量占用时写入保证真实环境变量胜出的优先级与getMergedEnv()一致。快速上手一份可复制的初始配置在~/.agentmemory/.env中写入对应 SKILL.md 的 Quick start 并补充注释# LLM provider选一个即可一个都不配 零-LLM 模式 ANTHROPIC_API_KEYsk-ant-... # 或者 GEMINI_API_KEY / OPENROUTER_API_KEY / MINIMAX_API_KEY / OPENAI_API_KEY # 特性开关 AGENTMEMORY_AUTO_COMPRESStrue AGENTMEMORY_INJECT_CONTEXTtrue保存后重启服务即生效。这套配置等价于 README 中演示的更丰富记忆形态自动压缩观察记录、在对话中注入项目上下文。其余所有变量都有安全默认值不配置也能运行。默认值背后的设计意图SKILL.md 明确列出三条值得知道的默认值背后均有源码佐证无 API Key 也能跑不配 Key 时detectProvider()src/config.ts返回noopprovider系统以 BM25 关键词检索 本地 embedding 的零-LLM 模式运行。detectLlmProviderKind()在无任何 Key 时判定为noopconsolidation的默认开关也依赖hasLLMProviderConfigured()动态决定。烧 token 的功能默认关闭AGENTMEMORY_AUTO_COMPRESS每次观察调用 LLM 压缩与AGENTMEMORY_INJECT_CONTEXT向模型注入上下文都会按工具调用频率消耗 token因此默认 OFF属有意设计。isAutoCompressEnabled()src/config.ts仅接受字面量trueisContextInjectionEnabled()src/config.ts同理。工具可见性可裁剪AGENTMEMORY_TOOLSall默认54 个工具或core8 个精简工具对应 src/mcp/tools-registry.ts 的getVisibleTools()。37 个AGENTMEMORY_*变量全参考REFERENCE.md 中的变量清单由 scripts/skills/generate.ts 扫描src/目录生成正则匹配AGENTMEMORY_[A-Z0-9_]排除以__结尾的内部标记去重排序后写入!-- AUTOGEN:env --块。修改源码中的变量后必须运行npm run skills:gen重新生成--check模式可在 CI 中做漂移检测。当前识别的全部 37 个变量与 REFERENCE.md 完全一致如下AGENTMEMORY_AGENT_SCOPE、AGENTMEMORY_ALLOW_AGENT_SDK、AGENTMEMORY_AUTO_COMPRESS、AGENTMEMORY_COMMIT_SHA、AGENTMEMORY_CONSOLIDATION_COOLDOWN_MS、AGENTMEMORY_COPILOT_MCP_BLOCK、AGENTMEMORY_CWD、AGENTMEMORY_DATA_DIR、AGENTMEMORY_DEBUG、AGENTMEMORY_DROP_STALE_INDEX、AGENTMEMORY_EXPORT_ROOT、AGENTMEMORY_FOLLOWUP_WINDOW_SECONDS、AGENTMEMORY_FORCE_PROXY、AGENTMEMORY_GRAPH_WEIGHT、AGENTMEMORY_III_CONFIG、AGENTMEMORY_III_VERSION、AGENTMEMORY_IMAGE_EMBEDDINGS、AGENTMEMORY_IMAGE_STORE_MAX_BYTES、AGENTMEMORY_INJECT_CONTEXT、AGENTMEMORY_LLM_NOTHINK、AGENTMEMORY_LLM_TIMEOUT_MS、AGENTMEMORY_MCP_BLOCK、AGENTMEMORY_PROBE_TIMEOUT_MS、AGENTMEMORY_PROJECT_NAME、AGENTMEMORY_PROVIDER、AGENTMEMORY_REFLECT、AGENTMEMORY_SDK_CHILD、AGENTMEMORY_SECRET、AGENTMEMORY_SESSION_ID、AGENTMEMORY_SLOTS、AGENTMEMORY_SUPPRESS_COST_WARNING、AGENTMEMORY_TOOLS、AGENTMEMORY_URL、AGENTMEMORY_USE_DOCKER、AGENTMEMORY_VERBOSE、AGENTMEMORY_VIEWER_HOST、AGENTMEMORY_VIEWER_URL按功能分组结合源码逐个展开核心服务与地址变量默认值作用与源码依据AGENTMEMORY_URLhttp://localhost:3111REST 基址。所有 hooksrc/hooks/notification.ts 等 14 个与 MCP shimsrc/cli/connect/util.ts都读取它远程/反向代理部署时必须显式设置AGENTMEMORY_VIEWER_URL自动推导viewer 地址展示src/cli.tsAGENTMEMORY_VIEWER_HOST127.0.0.1viewer 绑定地址src/viewer/server.ts。绑定非回环地址时强制要求AGENTMEMORY_SECRET与VIEWER_ALLOWED_HOSTS白名单防止开放端口被滥用AGENTMEMORY_DATA_DIR平台状态目录引擎状态存储目录等价于 CLI 的--data-dir pathsrc/cli.tsAGENTMEMORY_III_CONFIG内置指向 iii-engine 配置文件路径src/cli.tsAGENTMEMORY_III_VERSION固定0.11.2覆盖 iii-engine 固定版本src/cli.ts。升级引擎前需确认 agentmemory 已适配新的沙箱模型AGENTMEMORY_USE_DOCKER关闭1/true时优先走仓库内置 docker-compose 后端而非原生 iii-engine 二进制src/cli.tsAGENTMEMORY_VERBOSE关闭CLI 显示引擎 stderr 与诊断信息src/cli.tsAGENTMEMORY_DEBUG关闭MCP 独立模式打印响应体以便排障src/mcp/standalone.tsProvider 与 LLM 行为变量默认值作用与源码依据AGENTMEMORY_PROVIDER自动检测显式声明 provider 类型参与 consolidation 开关判定src/config.ts合法值见VALID_PROVIDERSanthropic/gemini/openrouter/agent-sdk/minimax/openaiAGENTMEMORY_LLM_TIMEOUT_MS60000所有 raw-fetch provider 的出站 LLM/embedding 超时src/providers/_fetch.ts。OpenAI 路径可用OPENAI_TIMEOUT_MS单独覆盖兼容 v0.9.17AGENTMEMORY_LLM_NOTHINK关闭1时在图提取 prompt 后追加/no_think用于本地推理模型避免思考消耗整个 token 预算src/prompts/graph-extraction.tsAGENTMEMORY_ALLOW_AGENT_SDK关闭显式开启 Claude 订阅回退spawnanthropic-ai/claude-agent-sdk子会话。默认关闭是因为历史上曾导致 Stop-hook 无限递归src/config.ts开启后仍建议优先配置真实 API KeyAGENTMEMORY_SDK_CHILD内部标记agent-sdk 提供方调用子会话前设为1作为递归守卫所有 hook 入口都检查它并跳过src/hooks/sdk-guard.tsAGENTMEMORY_SUPPRESS_COST_WARNING关闭1/true时静默 OpenRouter 高端模型的成本警告src/config.tsProvider 自动检测有严格的优先级顺序src/config.tsOPENAI_API_KEY可用OPENAI_API_KEY_FOR_LLMfalse排除→MINIMAX_API_KEY→ANTHROPIC_API_KEY→GEMINI_API_KEY/GOOGLE_API_KEY→OPENROUTER_API_KEY→ 无 Key 时noop零-LLM。模型默认值、MAX_TOKENS4096、baseURL均在该函数内确定。记忆功能特性开关变量默认值作用与源码依据AGENTMEMORY_AUTO_COMPRESS关闭每次 PostToolUse 观察都调 LLM 压缩token 消耗与工具调用频率成正比src/config.tsAGENTMEMORY_INJECT_CONTEXT关闭SessionStart 注入约 1–2K 字符项目上下文、PreToolUse 触发 enrich。关闭时观察仍被捕获只是不写上下文到 stdoutsrc/config.tsAGENTMEMORY_SLOTS关闭可编辑的固定记忆槽persona、user_preferences、tool_guidelines 等 8 个默认槽由memory_slot_*工具读写src/functions/slots.tsAGENTMEMORY_REFLECT关闭依赖AGENTMEMORY_SLOTStrueStop hook 触发槽内自省扫描观察、把 TODO 追加到 pending_items、统计 session_patterns、记录 touched filessrc/functions/slots.tsAGENTMEMORY_CONSOLIDATION_COOLDOWN_MS3000005 分钟Stop hook 每次 agent turn 都会触发/session/end此值对由此引发的整库 consolidation 做防抖最大每窗口一次设0关闭防抖src/config.tsAGENTMEMORY_IMAGE_EMBEDDINGS关闭开启 CLIP 图像 embedding使memory_vision_search可用src/functions/observe.ts、src/functions/vision-search.tsAGENTMEMORY_IMAGE_STORE_MAX_BYTES内置上限图像存储总字节上限src/utils/image-store.tsAGENTMEMORY_EXPORT_ROOT~/.agentmemoryObsidian 导出的默认根目录src/functions/obsidian-export.tsAGENTMEMORY_GRAPH_WEIGHT0.3混合检索中图扩展关联概念的权重src/index.tsAGENTMEMORY_FOLLOWUP_WINDOW_SECONDS30smart-search 随访率诊断的时间窗过大过小都会扭曲指标src/config.tsAGENTMEMORY_DROP_STALE_INDEX关闭true时启动阶段丢弃过期索引src/config.ts认证与多 Agent变量默认值作用与源码依据AGENTMEMORY_SECRET空无需认证设置后 REST API 与 viewer 均要求Authorization: Bearer $AGENTMEMORY_SECRETmesh 同步要求两端都设置src/cli.ts、src/functions/mesh.tsAGENTMEMORY_AGENT_SCOPEshared配合AGENT_ID使用shared打标签但不过滤召回isolated同时过滤召回路径src/config.tsAGENT_ID会 trim 并截断到 128 字符AGENTMEMORY_TOOLSall工具可见性all54 个或core8 个 essentials见 src/mcp/tools-registry.tsHook 上下文传递变量作用与源码依据AGENTMEMORY_PROJECT_NAME显式指定项目名解析顺序该变量 → git 顶层目录名 → cwd 目录名src/hooks/_project.tsAGENTMEMORY_SESSION_ID/AGENTMEMORY_COMMIT_SHA/AGENTMEMORY_CWDpost-commit hook 关联会话与提交时使用src/hooks/post-commit.tsAGENTMEMORY_MCP_BLOCK/AGENTMEMORY_COPILOT_MCP_BLOCK连接适配器写入各宿主 MCP 配置的模板块内含AGENTMEMORY_URL/AGENTMEMORY_SECRET/AGENTMEMORY_TOOLS的${VAR:-default}占位src/cli/connect/util.tsAGENTMEMORY_FORCE_PROXY/AGENTMEMORY_PROBE_TIMEOUT_MSMCP shim 的 livez 探针默认探测失败自动回退本地 InMemoryKVFORCE_PROXY1跳过探针、PROBE_TIMEOUT_MS调整超时src/mcp/rest-proxy.ts端口四元组一个锚点迁走整组服务agentmemory 以REST 为锚点派生其余端口对应 SKILL.md 的 Ports 小节与 src/config.ts端口默认 N3111服务覆盖变量N 3111REST API MCP HTTPIII_REST_PORTN1 3112StreamsWebSocket 事件流III_STREAM_PORT/III_STREAMS_PORTN2 3113实时 Viewerhttp://localhost:3113AGENTMEMORY_VIEWER_PORTN46023 49134iii-engineWebSocketIII_ENGINE_PORT/III_ENGINE_URL三种整体搬迁方式src/cli.tsagentmemory --port 3211 # 整组迁到 3211/3212/3213/49234 agentmemory --instance 1 # 等价快捷方式3111 1*100最大 N50 III_REST_PORT3211 npx agentmemory/agentmemory # 环境变量方式--instance N是同机并行多套 daemon的推荐做法--instance 0保持标准 3111/3112/3113/49134 四元组--instance 1得到 3211/3212/3213/49234互不冲突已有实例占位时启动第二个实例会被拒绝提示改用不同--instance或先agentmemory stop。架构背景参见 agentmemory-architecture SKILL。认证实践何时必须配AGENTMEMORY_SECRET纯本机回环REST 绑定127.0.0.1默认开放无需认证远程/容器/多主机设置AGENTMEMORY_SECRET后所有受保护端点要求Authorization: Bearer secretMCP shim 与各 hook 会把它透传给请求各 src/hooks 文件均以REST_URLSECRET组织请求头mesh 多实例协作两端必须同时设置相同的AGENTMEMORY_SECRETviewer 开放绑定AGENTMEMORY_VIEWER_HOST绑定非回环地址时强制要求AGENTMEMORY_SECRET并配合VIEWER_ALLOWED_HOSTS白名单校验 Host 头src/viewer/server.tsFly 等云部署场景见 deploy/fly/README.md。与配置相关的非AGENTMEMORY_*变量REFERENCE 只统计AGENTMEMORY_前缀但配置体系还包含以下常用键README 的完整示例见 README.mdProvider Key 族ANTHROPIC_API_KEY、GEMINI_API_KEY/GOOGLE_API_KEY、OPENROUTER_API_KEY、MINIMAX_API_KEY、OPENAI_API_KEY同一 Key 同时激活 LLM 与 embedding可用OPENAI_API_KEY_FOR_LLMfalse只留 embedding均可用*_BASE_URL、*_MODEL微调检索调优BM25_WEIGHT0.4、VECTOR_WEIGHT0.6src/config.ts 会做范围钳制、TOKEN_BUDGET2000、EMBEDDING_PROVIDERlocal流水线开关CONSOLIDATION_ENABLED配好 LLM 后默认开false/0显式关、GRAPH_EXTRACTION_ENABLED、LESSON_DECAY_ENABLED、OBSIDIAN_AUTO_EXPORT、SNAPSHOT_ENABLED/SNAPSHOT_INTERVAL下限 1 秒防止误配置导致满载快照团队TEAM_ID、USER_ID、TEAM_MODEshared|privatesrc/config.tsClaude Code 桥CLAUDE_MEMORY_BRIDGEtrueCLAUDE_PROJECT_PATH把记忆同步到~/.claude/projects/slug/memory/MEMORY.mdsrc/config.tsMCP 独立模式STANDALONE_MCPtrue、STANDALONE_PERSIST_PATH、FALLBACK_PROVIDERS逗号分隔的故障转移链agent-sdk 仅在显式开启时被允许加入见 src/config.ts。如何验证配置生效agentmemory status/agentmemory doctor查看健康状态、记忆数与特性开关curl -fsS http://localhost:3111/agentmemory/livez存活探针修改~/.agentmemory/.env后必须重启服务文件缓存为 boot-static变量清单漂移检查npm run skills:gen -- --check未同步会报DRIFT并给出重生成提示相关测试覆盖见 test/env-loader.test.ts 与 test/mcp-env-placeholder.test.ts。配置体系与 REST API 的认证配合详见 agentmemory-rest-api SKILL端口四元组的设计动机见 agentmemory-architecture SKILL。【免费下载链接】agentmemory#1 Persistent memory for AI coding agents based on real-world benchmarks项目地址: https://gitcode.com/GitHub_Trending/age/agentmemory创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表