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

资讯详情

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

一人公司的 Agent 架构:3 个文件配 TaoToken,AGENTS.md 质量门与 CHANGELOG 模板

一人公司的 Agent 架构:3 个文件配 TaoToken,AGENTS.md 质量门与 CHANGELOG 模板 1. 一人公司为什么不需要四层 Agent 架构独立开发者看到大厂 Agent 架构文章时第一反应往往是我也得搭一套。业务专家 Agent、上下文编排层、工具执行层、反馈学习层四层结构看起来严丝合缝。但真动手抄一遍就会发现这套东西 80% 的篇幅在解决100 个人怎么不出错地干同一件事而你只有一个人。一人公司的真实痛点和团队完全不同。团队怕的是协作混乱你怕的是注意力被切碎。你一个人要同时扮演产品、架构、开发、测试、运维五个角色真正需要的是三件事给 AI 划清边界、在关键节点强制停一步、把踩过的坑沉淀成下次的判断。这三件事对应三个文件AGENTS.md、quality_gate.py、_CHANGELOG.md。本文聚焦独立开发者用最小文件集搭建可维护的 Agent 工作流。我会给出三个可直接复制的文件模板再补一个config.toml骨架把 TaoToken 的统一 Key 和 API 通道接进来最后用一段 Python 校验脚本演示从配置到验证的完整动作。适合已经在用 AI 写代码、但总觉得跑得越快错得越远的独立开发者。整套东西不需要编排引擎不需要三个月搭建今天就能落地。2. TaoToken 前置统一 Key 与 API 通道一人公司最怕配置分散。今天用这个模型写代码明天换那个模型做评审Key 散落在各个环境变量里换一次模型就要改一遍代码。TaoToken 的价值在于把模型调用收敛到一个 API 通道你只需要维护一份 Key切换模型时改配置而不是改业务代码。接入前你需要准备两样东西一个 TaoToken 账号以及一个 API Key。Key 在控制台的 API Keys 页面生成生成后只显示一次记得立刻存进密码管理器。控制台地址是 https://taotoken.net/console API Keys 管理页在 https://taotoken.net/api-keys 。拿到 Key 之后所有请求走统一入口https://taotoken.net/api。这个地址不加任何查询参数直接作为 base_url 使用。模型对话调试可以在 https://taotoken.net/models 页面直接试不用写代码就能确认某个模型当前是否可用、返回格式是否符合预期。注意Key 不要硬编码进config.toml后提交到 Git。用环境变量注入config.toml里只写变量名。这是后面校验脚本会检查的第一条规则。如果你打算长期跑编码类 Agent 任务可以了解下 Coding Plan它针对高频代码生成场景做了额度优化地址是 https://taotoken.net/coding-plan 。接入文档在 https://taotoken.net/doc 里面有各语言 SDK 的完整示例。3. 可复制配置三个文件加一个骨架3.1 AGENTS.md给 AI 定边界和标准大厂的上下文输入层是让 100 个人读到同一份需求文档你的AGENTS.md是让 AI 知道现在在干什么、边界在哪。放在项目根目录AI 工具启动时会自动读取。# 项目级 AI 协作规范 ## 项目背景 - 项目名称{你的项目名} - 技术栈Python 3.11 FastAPI PostgreSQL 15 - 代码风格Black Ruff - 提交规范Conventional Commits ## 当前任务 详见 ROADMAP.md每次只推进一个里程碑。 ## 边界约束最重要 - 开始任何新任务前先用一句话告诉我你理解的任务是什么 - 我确认后再执行不要自行扩展范围 - 以下情况必须停下来问我 - 需求文档未覆盖的场景 - 需要 API 密钥或数据库密码 - 发现前置依赖不满足 - 涉及数据库 schema 变更 ## Agent 角色定义一人多角色 - 产品经理输出 PRD、拆需求、定优先级 - 架构师输出技术方案、模块拆分、接口设计 - 开发代码生成、单元测试 - QA测试用例、回归测试、日志分析 ## 模型调用约定 - 统一走 TaoToken 通道base_url https://taotoken.net/api - Key 从环境变量 TAOTOKEN_API_KEY 读取 - 禁止在代码中硬编码任何密钥我试过在项目跑了两周后才发现方向偏差AI 写了很多代码但每次提交都在偏离。根因是AGENTS.md里没写清项目边界它以为我在做 A其实我在做 B跑得越快错得越远。加上先陈述理解再执行这一行之后方向偏差基本消失。3.2 quality_gate.py关键节点强制停一步质量门是大厂架构里唯一值得全盘吸收的设计。核心不是自动化而是每过一个节点必须人停一步确认。下面这个脚本在阶段切换前运行逐条问你任何一条答 n 就阻断。# quality_gate.py — 一人公司质量门检查 import sys GATE_CHECKLIST { 需求→方案: [ 需求文档是否覆盖了所有用户场景, 有没有遗漏的异常流程, 这个需求真的值得做吗, ], 方案→开发: [ 技术方案有没有评审过, 数据库变更有没有回滚脚本, API 接口签名和现有的是否兼容, ], 开发→测试: [ 所有单元测试通过了, 有没有新增配置项需要记录, 代码有没有遗留的 TODO 或 FIXME, ], 测试→验收: [ 核心路径有没有覆盖, 有没有测过异常场景, 性能有没有明显退化, ], } def check_gate(stage: str) - bool: print(f\n 质量门{stage} ) for item in GATE_CHECKLIST.get(stage, []): answer input(f {item} (y/n): ).strip().lower() if answer ! y: print(f 未通过{item}) return False print( 通过可以进入下一阶段) return True if __name__ __main__: stage sys.argv[1] if len(sys.argv) 1 else 方案→开发 ok check_gate(stage) sys.exit(0 if ok else 1)用法很简单python quality_gate.py 开发→测试。退出码为 0 表示通过非 0 表示阻断可以接进 CI 或 Git hook。这里有个教训值得说。有段时间我觉得流程太慢让 AI 把需求、方案、代码全串起来自动跑。第二天早上它写完了一整个模块我仔细一看——需求本身就是错的。需求错方案跟着错代码全白写。自动化链条越长错得越离谱。自动化跑得快的前提是对齐了对齐的前提是人停一步想清楚。3.3 _CHANGELOG.md记录判断的升级大厂的反馈学习层是把踩过的坑沉淀下来。你一个人没有 PM 帮你复盘只能自己记。关键是不写流水账写判断的升级。# CHANGELOG ## 2026-06-24 ### 这周对 AI 协作的理解改变了什么 1. 质量门不能跳过——跑得快不如方向对 2. AGENTS.md 最重要的不是怎么写是边界写清楚 3. 让 AI 先陈述理解再执行比直接给指令安全 ### 踩坑记录 - 项目{项目名} - 问题需求没对齐就让 AI 开跑写了三天全白费 - 根因省略了你理解的任务是什么这个确认步骤 - 修复在 AGENTS.md 加上边界约束段落 ### 下阶段要试的 - 给 AI 分配独立线程一个线程只做一件事格式就三块判断升级、踩坑记录含根因、下阶段要试的。一次写完不超过五分钟。3.4 config.tomlTaoToken 接入骨架把模型调用收敛到一份配置里业务代码只读配置不碰 Key。# config.toml — 模型调用统一配置 [provider] name taotoken base_url https://taotoken.net/api api_key_env TAOTOKEN_API_KEY # 只写变量名不写值 [models] default claude-sonnet-4 review gpt-4o fast claude-haiku [request] timeout_seconds 60 max_retries 3对应的 Python 读取与调用import os import tomllib from openai import OpenAI with open(config.toml, rb) as f: cfg tomllib.load(f) api_key os.environ.get(cfg[provider][api_key_env]) assert api_key, 缺少 TAOTOKEN_API_KEY 环境变量 client OpenAI( base_urlcfg[provider][base_url], api_keyapi_key, ) resp client.chat.completions.create( modelcfg[models][default], messages[{role: user, content: 用一句话说明质量门的作用}], ) print(resp.choices[0].message.content)4. 验证请求与成功结果配置写完必须验证否则你永远不知道是 Key 错了、base_url 错了还是模型名错了。下面这段校验脚本一次性检查四件事环境变量是否存在、config.toml是否可解析、base_url 是否指向 TaoToken、模型是否真的能返回。# verify_setup.py — 配置到调用的端到端校验 import os import tomllib from openai import OpenAI def load_config(pathconfig.toml): with open(path, rb) as f: return tomllib.load(f) def check_env(cfg): env_name cfg[provider][api_key_env] key os.environ.get(env_name) if not key: raise SystemExit(f[FAIL] 环境变量 {env_name} 未设置) print(f[OK] 环境变量 {env_name} 已设置长度 {len(key)}) def check_base_url(cfg): url cfg[provider][base_url] if taotoken.net/api not in url: raise SystemExit(f[FAIL] base_url 异常{url}) print(f[OK] base_url {url}) def check_model(cfg): client OpenAI( base_urlcfg[provider][base_url], api_keyos.environ[cfg[provider][api_key_env]], ) model cfg[models][default] resp client.chat.completions.create( modelmodel, messages[{role: user, content: 回复两个字就绪}], max_tokens16, ) text resp.choices[0].message.content.strip() print(f[OK] 模型 {model} 返回{text}) if __name__ __main__: cfg load_config() check_env(cfg) check_base_url(cfg) check_model(cfg) print(\n全部通过配置可用。)运行python verify_setup.py正常输出类似[OK] 环境变量 TAOTOKEN_API_KEY 已设置长度 48 [OK] base_url https://taotoken.net/api [OK] 模型 claude-sonnet-4 返回就绪 全部通过配置可用。看到全部通过就说明从 Key 到模型调用的整条链路是通的。如果某一步 FAIL脚本会直接告诉你卡在哪一环不用靠猜。5. 本篇常见错排查报错 401 Unauthorized。九成是 Key 没读到。先确认echo $TAOTOKEN_API_KEY有输出再确认config.toml里写的是变量名而不是变量值。如果你在 Windows 上注意环境变量设置后要重开终端才生效。报错 404 model not found。模型名拼错了或者该模型当前不在你的可用列表里。去 https://taotoken.net/models 页面确认模型标识符复制粘贴而不是手敲。报错 Connection timeout。检查base_url是否被误加了路径后缀。正确写法就是https://taotoken.net/api不要在后面拼/v1或/chat/completionsSDK 会自己处理。质量门脚本一直阻断。这是设计如此不是 bug。如果某条检查项长期答 n说明你的流程里有个环节一直没做应该去补那个环节而不是把检查项删掉。CHANGELOG 写着写着变成流水账。判断标准很简单如果一条记录三个月后回看不能帮你做决策它就不该写进去。只留判断升级和带根因的踩坑。AGENTS.md 写了但 AI 不遵守。多数工具只在会话开始时读一次。改完AGENTS.md后要重启会话或者显式把内容贴进对话开头。6. 三个文件的闭环与下一步这三个文件不是互相替代而是一条闭环。AGENTS.md写在前面告诉 AI 你是谁、边界在哪quality_gate.py跑在中间每个关键节点停一步_CHANGELOG.md写在后面把踩坑沉淀成判断。而 CHANGELOG 里的经验会反过来更新 AGENTS.md下一轮边界就更清晰。大厂四层架构看完你真正需要的就是这三件事定标准、设门禁、记踩坑。不需要花三个月搭编排引擎。今天就能做的三件事在项目根目录创建AGENTS.md把模板复制进去改掉项目名保存quality_gate.py下次阶段切换前跑一遍创建_CHANGELOG.md每周结束写一段判断升级。配置层面把config.toml和verify_setup.py放进项目跑通一次验证确认 TaoToken 通道可用。如果你在接入或排障时卡住先去 https://taotoken.net/api-keys 确认 Key 状态再对照 https://taotoken.net/doc 的接入文档核对参数。想先确认模型返回格式直接在 https://taotoken.net/models 页面试。长期跑编码类 Agent 任务的话https://taotoken.net/coding-plan 的额度方案值得看一眼。先跑通一个项目你会知道这三个文件到底省了多少返工。
返回列表