尧图精选

禁止顺手改无关页面,TaoToken 给 Agent 的 Skill 加约束

🕒 发布时间:2026/9/18 12:13:13 📁 来源:尧图网络
1. 从一次“越修越乱”的回归说起Skill 禁止项是 Agent 的范围锁最近让 Agent 修“随手记一笔”小程序的空列表页它却顺手改了首页轮播、登录接口和 tabBar回归直接白屏。为了先把模型调用稳定下来我按 TaoToken 官网 的指引获取 Key并把 Base URL 设为 https://taotoken.net/api再把“禁止顺手改无关页面”写进 Skill。具体报错是Cannot read property list of undefined出现在pages/list/list.js的onLoad里。我给的指令很短“只改列表页空数据兜底不要动别的。” Agent 先改了list.js接着“为了统一风格”改了app.json的tabBar、pages/index/index.wxml、utils/auth.js还顺手把登录跳转从navigateTo换成switchTab。结果列表页修好了首页白屏登录态丢失提审自查多出 7 个未通过项。这类返工最贵的地方不是修复本身而是范围失控后你很难判断“到底哪一次改动引入了问题”。Token 消耗也会被放大一次修 Bug 变成多轮回归、多轮解释、多轮重写。Skill 的价值就在这里——它不是让模型变聪明而是把“这类任务只准碰哪里、不准碰哪里、怎样算做完”固化成可加载的约束。模型负责推理Agent 负责动手Skill 更像一本按任务加载的作业手册手册里写清禁止项手才不会伸到无关页面。下面是我在 TaoToken 接入后用 Skill 约束 Agent 的最小可复现方案先配好 Key 和 Base URL再给出一份“禁止顺手改无关页面”的 SKILL.md 骨架最后对照一份禁止项列表看哪些操作必须限制在任务范围内。2. 先接 TaoTokenKey、Base URL 与三条配置路径要把约束跑起来第一步不是写 Skill而是让 Claude Code、Codex 或你用的编辑器能稳定调用模型。TaoToken 的入口在 TaoToken 官网注册后到控制台创建 API Key把 Key 占位成YOUR_API_KEY。所有工具的 Base URL 统一填https://taotoken.net/api注意这个地址不要在末尾自行加/v1具体路径交给工具或 SDK 拼接。2.1 Claude Codesettings.json 与 ANTHROPIC_*Claude Code 读settings.json里的env。如果你之前把 Key 写在 shell 里也可以保留但更推荐项目级或用户级配置避免多个终端串环境。示例{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: YOUR_API_KEY, ANTHROPIC_MODEL: claude-sonnet-4-20250514 } }说明ANTHROPIC_BASE_URL填 TaoToken 的 Base URL。ANTHROPIC_API_KEY填你在控制台创建的 Key。ANTHROPIC_MODEL按你实际要用的模型标识填如果工具报模型不存在先去模型列表或模型对话页确认可用标识。如果你的 Claude Code 版本要求ANTHROPIC_AUTH_TOKEN把ANTHROPIC_API_KEY替换成ANTHROPIC_AUTH_TOKEN不要同时保留两个空值。改完配置后重启 Claude Code 或重新加载窗口再用一个最小任务测试让 Agent 只输出当前目录的package.json文件名不许改文件。如果它能正常返回说明 Base URL 和 Key 至少打通了。2.2 Codexconfig.toml 不要套 ANTHROPIC_*Codex 走的是另一套配置不要把它当 Claude Code 的克隆。Codex 用config.toml里的model_providers不读ANTHROPIC_*。典型配置如下model gpt-5-codex model_provider taotoken [model_providers.taotoken] name TaoToken base_url https://taotoken.net/api env_key TAOTOKEN_API_KEY wire_api chat然后在 shell 里设置环境变量export TAOTOKEN_API_KEYYOUR_API_KEY注意不要把ANTHROPIC_BASE_URL或ANTHROPIC_API_KEY写进 Codex 的配置里。Codex 找不到ANTHROPIC_*是预期行为如果报 401 或 provider not found优先检查model_provider名称是否和[model_providers.taotoken]一致env_key对应的环境变量是否真的导出base_url是否误写成https://taotoken.net/api/v1。Base URL 只填https://taotoken.net/api。2.3 CC Switch 三件套Base URL、API Key、模型如果你用 CC Switch 在多个供应商之间切换新增供应商时把三件套填清楚供应商名称TaoToken Base URLhttps://taotoken.net/api API KeyYOUR_API_KEY 模型按 Claude Code / Codex 各自的模型标识填写CC Switch 本身不改变工具读取配置的方式它只是帮你写回不同工具的配置文件。切换后要确认 Claude Code 的settings.json和 Codex 的config.toml没有互相污染Claude Code 看ANTHROPIC_*Codex 看model_providers。两边混用是排障里最常见的坑。2.4 连通性测试可以用一条最小 curl 检查 Key 和 Base URLcurl -s https://taotoken.net/api/v1/models \ -H Authorization: Bearer YOUR_API_KEY如果返回模型列表 JSON说明认证和地址基本正确。如果返回 401检查 Key 是否复制完整、是否被空格截断如果返回 404检查 Base URL 是否多写或少写了路径。不要把生产库连接串、数据库密码放进这个测试命令也不要在 Skill 里让 Agent 直接连生产库。3. Skill 是什么把“别碰什么”写成可加载约束Skill 不是新模型也不是换皮聊天框。它更像一份可加载的专项说明书适用场景、步骤、约束、输出格式绑在一起需要时拿出来不必每次从零口述。普通提示词是你这次粘进对话框的一段话用完就散Skill 是装订好的手册能复用、能改版本。插件、MCP、工具更多解决“手能不能碰到”的问题Skill 管的是“碰到了按什么标准做”。对个人开发者做小程序 MVP 来说Skill 特别有用的原因很现实拆需求、搭页面、修 Bug、提审前自查这些活会反复来。每次从零口述返工和 Token 都贵同功能问到第二遍、第三遍额度也在烧。把已经验证过的说法固化下来少糊问也少把“怎样算过”说漏。但很多人的 Skill 只写步骤不写禁止项。步骤告诉 Agent“做什么”禁止项告诉 Agent“遇到什么必须停下来”。在小程序 MVP 里后者往往更关键因为项目小、模块耦合浅Agent 很容易觉得“顺便统一一下”成本很低。实际上小程序一旦动了全局配置、登录态、审核资料回归成本会成倍上升。一个实用的判断标准凡是会影响任务范围之外的行为都应该写进禁止项。比如只修列表页就不要让 Agent 改app.json、首页轮播、登录接口、请求封装、构建配置、云函数权限。不是这些东西不能改而是它们必须另起一个任务有单独的验收清单。4. 可复现的禁止项列表小程序 MVP 的 12 条范围锁下面这份列表可以直接放进你的 SKILL.md。它不针对某个具体编辑器但覆盖了“顺手改无关页面”的高频路径。每条都给出默认策略、限定做法和越界信号。编号操作类型默认策略必须限定在任务范围内的做法越界信号1页面路由与 tabBar禁止顺手改只允许改任务指定页面app.json的pages、tabBar、window必须单独任务diff 里出现app.json路由或 tabBar 变化2登录态与用户信息禁止顺手改只允许读不允许改utils/auth.js、登录跳转、授权逻辑出现switchTab、navigateTo互换或登录页改动3全局样式与主题禁止顺手改只允许改指定页面自己的 wxss主题变量、全局 class 另开任务app.wxss、全局变量、公共组件样式被改4请求封装与接口地址禁止顺手改只允许在指定页面调用现有方法不改request.js、baseURL、拦截器diff 里出现请求库、拦截器、环境变量改动5依赖与构建配置禁止顺手改不升级依赖、不改 lock 文件、不改构建脚本需要升级时单独立项package.json、package-lock.json、构建配置变化6数据模型与迁移禁止 Agent 直连执行只允许生成迁移 SQL 和说明由读者本地或跳板机人工执行Skill 里出现生产库连接串或命令直接连 Oracle/生产库7云函数与权限禁止顺手改只允许改指定函数权限、环境变量、触发器单独确认云函数权限、环境变量、定时触发被改8审核资料与类目禁止顺手改名称、类目、隐私协议、截图必须人工核对Agent 只列检查项提审资料、隐私政策、类目被自动改写9文件删除与重命名禁止顺手做只允许新增或修改明确列出的文件删除、重命名、批量移动必须人工确认出现大范围删除、目录移动、批量重命名10格式化与重构禁止全量格式化只允许对改动行做最小格式化不跑全仓格式化、不批量重排 importdiff 行数远大于任务本身11测试代码与调试输出禁止提交残留允许临时加日志但必须在输出里标注并移除不能把 debug 开关带进提交console.log、debugger、测试开关残留12完成定义禁止模糊报完必须输出“已通过/未通过/下一轮只改”清单未写清怎样算过就算未完成“应该好了”“感觉差不多”代替清单这 12 条的核心不是禁止所有改动而是把改动关进任务范围。你可以按项目阶段删减MVP 前期可以允许改样式和组件但登录态、审核资料、生产库操作最好一直保持高门槛。Skill 里写禁止项时要写“什么情况下必须停下来问”而不是只写“不要做什么”。例如## 禁止项 - 禁止修改任务未指定的页面、路由、tabBar、全局配置。 - 禁止修改登录态、用户信息授权、支付、隐私协议、审核类目。 - 禁止升级依赖、修改 lock 文件、修改构建配置。 - 禁止删除文件、重命名目录、批量格式化、全仓重构。 - 禁止让 Agent 直接连接生产数据库执行 SQL迁移脚本只生成到本地由开发者人工执行。 - 禁止用“感觉差不多”代替验收清单未写清怎样算过就报完成视为未完成。这段禁止项列表可以直接复制。它和步骤列表配合形成“先做什么、别碰什么、怎样算做完”的闭环。5. SKILL.md 骨架直接抄但按你的工具改不同编辑器加载 Skill 的格式会变但心智可以统一一个文件夹里面一份SKILL.md。名称、触发时机、步骤、禁止项、输出格式。下面这份骨架以“随手记一笔”小程序 MVP 的修 Bug/提审自查为例换成你的项目名即可。--- name: mini-app-guard description: 用于“随手记一笔”小程序 MVP 的修 Bug 与提审自查严格限制改动范围 --- # 适用场景 当任务涉及以下内容时加载 - 修列表页、详情页、表单页的单个 Bug - 提审前自查 - 真机回归后按未通过条目修复 不适用 - 新增大模块 - 重构登录态、支付、数据库 schema - 跨页面样式统一 # 任务范围锁 1. 开始前先写出本次允许修改的文件清单。 2. 只允许改动清单内文件。 3. 发现清单外问题先记录不直接改。 4. 需要扩大范围时停下来向开发者确认。 # 步骤 1. 复述任务目标列出允许修改的文件。 2. 对照第一版范围能记、能看见、能删改不做电商、社交、支付。 3. 真机走主路径一遍记录白屏、无响应、错文案。 4. 按“未通过条目”逐条改改完再走同一路径。 5. 提审前核对名称、类目、隐私协议是否如实。 # 禁止项 - 禁止修改任务未指定的页面、路由、tabBar、全局配置。 - 禁止顺手改登录态、用户授权、支付、隐私协议、审核类目。 - 禁止升级依赖、改 lock 文件、改构建配置。 - 禁止删除文件、重命名目录、批量格式化。 - 禁止让 Agent 直接连接生产库执行 SQL只生成 SQL 文件由开发者本地执行。 - 禁止没写清“怎样算过”就报做完。 - 禁止用“感觉差不多”代替清单。 # 输出格式 - 已通过 - 条目 - 验证方式 - 未通过 - 条目 - 复现步骤 - 涉及文件 - 范围外发现 - 问题 - 建议任务 - 建议下一轮只改注意两点。第一这是骨架不是完整安装包。真要给 Agent 自动加载还要按你用的工具写成它认的SKILL.md格式。第二规则变了说明书也要改。小程序提审口径、接口、权限模型一变禁止项和验收项都要同步更新否则 Skill 会变成“教坏手”的过时手册。6. 接入后的排障清单Claude Code、Codex、CC Switch 常见错配置和 Skill 都写完后最常见的不是模型不会做而是环境没打通或约束没触发。下面按症状排。症状一Claude Code 报 401 或认证失败。先看settings.json的ANTHROPIC_API_KEY是否是YOUR_API_KEY的真实值再看ANTHROPIC_BASE_URL是否是https://taotoken.net/api。不要同时保留两个互相覆盖的 Key。修改后重启工具。症状二Codex 报 provider not found。检查config.toml里model_provider taotoken和[model_providers.taotoken]是否一致。再检查env_key TAOTOKEN_API_KEY对应的环境变量是否在启动 Codex 的终端里导出。不要把ANTHROPIC_*写进 Codex 配置它不认。症状三CC Switch 切换后配置串了。Claude Code 和 Codex 的配置文件位置不同。切换供应商后分别打开settings.json和config.toml确认Claude Code 里是ANTHROPIC_*Codex 里是model_providers。如果混用表现会是“一个工具正常另一个工具一直 404 或 401”。症状四Skill 没生效。先确认工具是否支持自动加载 Skill再确认触发条件是否明确。如果你的 Skill 写“修 Bug 时使用”但任务描述里只有“列表页空数据”触发可能不稳。把触发词写进任务里例如“使用 mini-app-guard Skill只改 pages/list/list.js”。同时检查禁止项是否写在SKILL.md正文中而不是只放在聊天记录里。症状五Agent 仍然顺手改无关页面。把禁止项从“不要改无关页面”改成可检查的具体规则不要改app.json、不要改utils/auth.js、不要升级依赖、不要全仓格式化。并在输出格式里要求它列出“允许修改文件清单”和“实际修改文件清单”。只要两个清单不一致就当未通过。症状六Token 消耗异常高。先区分是模型调用贵还是返工多。如果 Skill 触发后仍然多轮改错检查是否给了过宽的权限或过大的文件上下文。把任务拆成“只修一个页面的一条路径”让 Agent 先复述范围再动手。需要长期高频用时可以到 TaoToken 官网 看看 Coding Plan 是否更适合你的使用节奏。排障的最后一条SQL 和系统命令由读者本地执行。Skill 里可以写“生成迁移 SQL 文件”但不要写“连接生产库执行”。更不要把数据库密码、云厂商密钥放进 Skill、提示词或代码仓库。Agent 可以帮你写脚本执行动作要留在人手里。7. 把约束跑起来一轮任务的操作顺序最后给一个可复制的操作顺序。你不需要一次写完所有 Skill先挑最常翻车的一类任务。到 TaoToken 官网 获取 Key把 Base URL 设为https://taotoken.net/api按 Claude Code 或 Codex 的配置写好。在项目里建mini-app-guard/SKILL.md填入上面的骨架。给 Agent 的任务只描述一个具体问题例如“修列表页空数据白屏只允许改pages/list/list.js和pages/list/list.wxml”。要求 Agent 先复述允许修改文件清单再动手。改完后按输出格式提交已通过、未通过、范围外发现、下一轮只改。你只验收“未通过”和“范围外发现”不把范围外问题塞回同一轮。真机回归后如果新问题来自范围外改动直接回滚那部分而不是继续让 Agent 修。这套顺序的关键是把“禁止顺手改无关页面”从一句口头提醒变成 Skill 里的硬约束再用输出格式检查它有没有遵守。模型、Agent、Skill 三层里模型决定推理质量Agent 决定执行动作Skill 决定执行边界。边界越清楚返工越少Token 越省。8. 文末 CTA模型对话 → Coding Plan → 创建 Key → Claude Code 文档如果你还没有开始配可以按这个路径走先验证模型效果打开 模型对话用一个小任务测试模型输出。准备长期高频用看 Coding Plan选择适合个人开发者的方案。创建 Key进入 API Keys生成YOUR_API_KEY。接入 Claude Code对照 Claude Code 文档把ANTHROPIC_BASE_URL设为https://taotoken.net/api。拿到 Key 后先把 Base URL 统一成https://taotoken.net/api再把禁止项写进 Skill。不要急着让 Agent 一次改十个页面。先让它只改一个文件、只修一条路径、只交一份清单。你会发现Constraint 写清楚之后Agent 还是那双“手”但不再到处乱伸。
上一篇/下一篇内容由系统自动关联 返回资讯列表 →