ARTICLE DETAIL

资讯详情

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

Coze 里 OpenClaw 的 agents/ 目录不生成?TaoToken 这样查 models.json

Coze 里 OpenClaw 的 agents/ 目录不生成?TaoToken 这样查 models.json 排查 Coze 平台 OpenClaw 的 agents/ 目录不生成问题时TaoToken 的处理思路是先打开 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_contentopenclaw_q1 创建 API Key把模型通道准备好。TaoToken 在这里只做统一 API 通道不参与目录生成。agents/ 属于运行时数据要等 Agent 第一次对话成功返回后才落盘在此之前模型通道必须能正常回应否则 workspace 里 AGENTS.md 都在agents/{agent-name}/ 却一直空缺查来查去查不到根因。1. 排障起点agents/ 目录没生成先分清两层状态1.1 症状创建成功但 agents/ 目录是空的你大概率是照着这个流程操作的在 OpenClaw 助手窗口输入「创建一个小红书文案生成 Agent具备标题优化、正文撰写、标签推荐能力」OpenClaw 回复创建成功。接下来你打开文件系统准备确认 agents/xiaohongshu-writer/ 是否出现结果发现工作目录下只有 workspace 相关文件agents/ 目录要么空着要么压根不存在。于是你开始猜测是不是 AGENTS.md 没写对是不是权限不足是不是 OpenClaw 装坏了这些猜测都不会指向真正的答案。关键是先承认一个事实workspace 和 agents/ 是两层完全不同的状态。workspace 里存在的 AGENTS.md、IDENTITY.md 等文件只表示 Agent 的定义已经被 OpenClaw 接受不表示 Agent 已经跑起来。Agent 有没有「活过来」要看 agents/ 下是否生成了对应的运行时目录。这两层中间隔着一个事件就是 Agent 的首次对话。在没有完成首次对话之前agents/ 目录不生成是正常现象不是异常。1.2 双目录机制workspace 是图纸agents/ 是运行现场OpenClaw 采用分离式架构静态配置和运行数据分开存放。一份最常见的目录结构长这样workspace-xiaohongshu/ ├── .openclaw/ │ └── workspace-state.json ├── AGENTS.md ├── IDENTITY.md ├── MEMORY.md ├── SOUL.md ├── TOOLS.md └── USER.md agents/ └── xiaohongshu-writer/ ├── agent/ │ └── models.json └── sessions/ └── sessions.jsonworkspace-xiaohongshu/ 下的 AGENTS.md、IDENTITY.md、SOUL.md、MEMORY.md、TOOLS.md 都是创建 Agent 时写好的角色与状态配置agents/xiaohongshu-writer/ 则是运行之后生成的动态数据里面放着模型配置 models.json 和会话记录 sessions/。两者通过 Agent 名称关联。把这个结构记住再看「agents/ 目录不生成」这个问题本质就是右侧的运行时树没有形成而不是左侧的静态配置出了问题。也可以把左侧想成设计图纸右侧想成交房现场图纸画好只代表方案定了现场要等水电真正接通、有人住进去才算交付。OpenClaw 里「有人住进去」的触发条件就是 Agent 完成第一次对话。所以在 agents/ 目录缺失时不要反复重建 workspace也不要手动往 agents/ 塞文件。手动写文件在某些通道下会触发 SIGTERM把整个服务终止掉反而更难排查。2. 激活条件与沙箱限制为什么 agents/ 要等首次对话2.1 首次对话后才生成本地状态为什么 OpenClaw 不在一开始就生成 agents/ 目录核心原因是它采用惰性初始化创建指令只负责把 Agent 的静态配置落盘真正的运行时目录要等 Agent 收到第一条消息并成功返回后才在 agents/ 下创建。这么设计是为了省资源。不是每个创建出来的 Agent 都会被真正使用没跑过的 Agent 不占运行时状态空间。所以排障第一步不是去猜目录为什么缺而是确认模型调用有没有成功返回。模型调用和 Agent 状态是串联关系通道通了消息返回了Agent 才会把状态写进 agents/通道没通消息报错Agent 根本没有机会写状态。你在助手窗口发消息之后如果马上切到文件系统翻目录大概率扑空因为响应还没有完整结束。等输出停止、命令提示符重新出现再去看目录结论才有效。2.2 飞书通道的沙箱限制另外一条容易踩的坑OpenClaw 在飞书这类外部通道上做了沙箱隔离Agent 管理操作必须在 OpenClaw 助手窗口内通过对话完成。如果你绕过助手窗口直接到服务器或本机文件系统里 mkdir agents/xiaohongshu-writer、手动创建 sessions.json服务端可能直接把进程终止报 SIGTERM。这也是有些人「手动补了目录重启反而更糟」的原因。正确的做法是收敛操作入口创建、编辑、删除 Agent都在助手窗口里发消息外部通道只做查看和确认不做写操作。这样变量少models.json 配置问题才能暴露出来。毕竟你现在的目标不是「把目录补出来」而是「让 OpenClaw 自己把目录长出来」。3. 把 models.json 的 default provider 指到 TaoToken3.1 先创建 API Key再复制模型 ID既然激活依赖模型通道正常返回动手之前先准备两样东西API Key 和模型 ID。API Key 从官网拿。打开 TaoToken注册后在控制台的 API Keys 页面创建一把 Key。创建出来的是一串长字符串本文统一用 YOUR_API_KEY 占位。Key 创建后立即复制保存别关页面。模型 ID 不用背。回到同一个官网打开模型广场找到你要给 OpenClaw 用的模型把列表里的模型 ID 复制出来本文用 MODEL_ID 占位。模型 ID 以模型广场当时列表为准不要凭记忆填带日期的旧模型名也不要用其他平台上的模型称呼。这样后面配置 models.json 时default provider 才不会在校验环节被拦下。3.2 配置 base_url、api_key、model 三个字段models.json 是 Agent 运行时的模型配置文件正常路径是 agents/{agent-name}/agent/models.json。只要这个目录已经生成你就把 default provider 段落改成下面这样{ providers: { default: { base_url: https://taotoken.net/api, api_key: YOUR_API_KEY, model: MODEL_ID } } }三个字段逐个核对。base_url 填的是 https://taotoken.net/api末尾不要加 /v1OpenClaw 会自己补全余下路径api_key 填你刚才复制的 YOUR_API_KEYmodel 填模型广场复制出来的 MODEL_ID。TaoToken 在这里只负责提供一个统一 API 通道让 OpenClaw 的模型调用有回应目录生不生成是 OpenClaw 自己的状态机决定的和通道没有直接关系。不要指望配完 base_url目录就会立刻出现——这一个是网络通道一个是本地状态分开看才清楚。如果 agents/ 目录还没生成models.json 自然也还不存在。这种情况不要硬改先跳到下一节发激活消息等文件生成后再回来把这三个字段补上。4. 发激活消息验证 agents/{agent-name}/ 是否出现4.1 在助手窗口完成首次对话回到 OpenClaw 助手窗口先发创建消息再补一句「你是谁」或「你现在是什么角色」。两句都得到正常的文本回复后最小激活条件就满足了。注意不要在发完第一条消息后立刻切去查目录等返回内容流式输出结束命令提示符重新出现再切到文件系统查看。OpenClaw 写会话状态是在收到完整响应之后。如果切出去发现 models.json 已经生成但 default provider 还是系统默认地址回到 3.2 把 base_url、api_key、model 三个字段改好再回助手窗口发一条消息。第二次消息返回后再去看 models.json 内容应该能看到指向 https://taotoken.net/api 的配置了。4.2 验证 models.json 与会话记录验证动作可以在本地终端执行。切到 OpenClaw 工作目录后查看运行时目录是否出现ls agents/xiaohongshu-writer/agent/ cat agents/xiaohongshu-writer/agent/models.json第一条命令能看到 agent/ 子目录和 models.json说明运行时结构已经开始生成第二条命令用来确认 default provider 是否指向 TaoToken 的 Base URL。想看会话记录就再看一眼 sessions/ 目录里面有 sessions.json 说明已经跑完过至少一轮完整对话。这时再回助手窗口问「你是谁」回复内容如果和 Agent 的角色定义一致身份验证也通过了。如果第一条命令就提示目录不存在别急着手动创建回到助手窗口再发一条消息。重点观察的是消息本身是否返回正常返回正常但没有目录才是「Agent 未激活」返回报错则参考第 5 节按错误层去处理。5. 报错对照模型通道失败还是 Agent 未激活5.1 从报错文本判断是哪一层激活消息发出后失败表现可以按层归类。不同层的报错处理方式完全不同不要一看到异常就怀疑「是不是 Key 错了」。按这个表定位最快激活消息表现出错层处理方式HTTP 401 / 403invalid api keyAPI Key 层回 API Keys 页面重新复制 Key更新 models.jsonmodel not found / does not exist模型 ID 层打开模型广场重新复制 MODEL_IDconnection refused / ECONNREFUSEDBase URL 层确认 base_url 为 https://taotoken.net/api不要带 /v1消息正常返回agents/ 目录空白Agent 激活层继续在助手窗口对话确认响应完整后再查目录提示 SIGTERM 或服务被终止通道操作层停止直接改文件回助手窗口用对话完成判断 model not found 时最可靠的参照是重新到模型广场复制一次模型 ID模型广场的入口就在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_contentopenclaw_models 首页导航上。表里的 Base URL 层重点要确认的是地址末尾没有多写 /v1。多加这一步的报错通常是 connection refused 或路径不存在和 Key 无关。5.2 在控制台复核这次调用是否计入调整完上述配置最后一步是看调用有没有真的走 TaoToken 通道。打开 TaoToken 控制台 API Keys找到你配进 models.json 的那把 Key查看用量记录。如果刚才激活消息产生了一次或几次请求记录说明 base_url、Key、模型 ID 三件套全部正确问题已经收敛到 OpenClaw 自身状态。反过来消息返回成功但控制台没有任何请求那要怀疑 OpenClaw 是不是还在走系统默认的模型通道models.json 可能没有被加载。常见原因是文件路径不对、JSON 里多个逗号、或者改了文件没有重启服务。这个复核很值得做它把「代码层面通了」和「真走了你要的通道」区分开。否则你改了配置、激活成功、用量却没变化问题等于没有根除。6. 先测 Key、再激活、最后看目录最佳实践6.1 排障顺序建议经历过一次 agents/ 目录缺失后建议把动作顺序固定下来先在 TaoToken 模型对话 页面用同一把 Key 发一句话确认通道可用再改 models.json 的 default provider最后才去 OpenClaw 助手窗口激活。顺序反了就会在「目录不生成」和「模型报错」之间反复横跳。通道测通之后models.json 里三个字段就都有了确定值base_url 是 https://taotoken.net/apiapi_key 是刚测过的那把model 是模型广场对应的 ID。有了这三个确定值后续所有异常都能快速归因报 Key 错误就是复制漏了字符报模型错误就是 ID 过期报地址错误就是路径多了或少了一段。6.2 命名、备份与日常维护日常维护还有几条建议。Agent 命名不要用 agent-01 这种无意义名称至少带上业务前缀例如 xiaohongshu-writer、data-analyzer、code-helper。重要配置变更前先备份 workspace 目录把 AGENTS.md、IDENTITY.md、SOUL.md 归档。一个 Agent 只负责一个领域别把文案、数据分析和代码辅助全塞进同一个 Agent否则后面改 models.json 时很难判断是哪个功能在报错。这套链路走顺之后agents/ 目录不生成就不再是玄学Key 通不通看模型对话页models.json 有没有被读到看控制台用量Agent 有没有跑起来看 agents/{agent-name}/ 是否出现。如果你准备长期用 OpenClaw 写代码可以打开 Coding Plan 评估套餐是否匹配日常调用量Key 的统一管理入口仍然是 控制台 API Keys创建好后填进 models.json 即可。
返回列表