📚 AI实用教程
Claude Code系列第35期把代理改动接入权限分层与审查门
难度:进阶|动手:25分钟|成本:按账户方案计费|环境:Claude Code与Git项目。
claude -p "只读检查当前Git仓库,列出需要修改的文件、测试命令和风险;不要改文件。"
claude -p "只允许修改 src/ 和 tests/ 目录。先给出补丁计划,等待人工确认后再执行。"
claude -p "检查Git差异,只运行项目已有测试;用中文报告改动、测试结果和风险。"
成功标准:差异只出现在允许目录,测试有真实结果。高风险操作不要无人值守。
下期预告:子代理与MCP边界。
参考:Claude Code官方文档
Hermes Agent系列第35期用并行子代理做可恢复的日报调研
难度:进阶|动手:35分钟|成本:模型调用费用|环境:Hermes Agent与网页读取工具。
jobs:
- name: models
output: evidence/models.json
permissions: [web_read, file_write:evidence/models.json]
- name: infrastructure
output: evidence/infrastructure.json
permissions: [web_read, file_write:evidence/infrastructure.json]
- name: review
depends_on: [models, infrastructure]
permissions: [file_read:evidence, file_write:report]
每张证据卡片必须有中文标题、原始链接、发布时间和证据等级;部分失败时交付已完成部分,禁止伪造缺失结果。
下期预告:多子代理故障恢复、幂等键和重试边界。
参考:Hermes Agent官方文档
Claude模型系列第35期用每次成功任务成本而不是单价选模型
难度:进阶|动手:30分钟|成本:模型调用费用;代码免费|环境:Python 3.11+与环境变量密钥。
import json, os, urllib.request
base=os.environ["AI_BASE_URL"].rstrip("/")
key=os.environ["AI_API_KEY"]
model=os.environ["AI_MODEL"]
payload=json.dumps({"model":model,"messages":[{"role":"user","content":"给出三条代理系统的停止条件。"}],"max_tokens":200}).encode()
req=urllib.request.Request(base+"/v1/chat/completions",data=payload,headers={"Authorization":"Bearer "+key,"Content-Type":"application/json"},method="POST")
with urllib.request.urlopen(req,timeout=60) as r: data=json.loads(r.read().decode())
print(json.dumps({"model":model,"usage":data.get("usage",{}),"answer":data["choices"][0]["message"]["content"]},ensure_ascii=False))
验证:输出有模型名、回答和用量字段;没有用量字段不要自行估算账单。高风险流程不要仅按价格自动切换。
下期预告:上下文压缩、失败切换和质量验收。
参考:API文档