从“打工人”到“管理者”,如何驾驭AI而非被其奴役?本文为你揭示AI时代的高效协作思维。
核心内容:
1. 沉迷AI的困境:从过度使用到自我反思
2. 思维转变:从调用技能到驾驭智能体
3. 实践路径:理解设计哲学与重构工作流

说实话,最近发现自己掉进了一个怪圈:明明不用上班了,可花在‘工作’上的时间反而比上班时还长。根源在于AI实在太强了,强到让人忍不住一头扎进去,根本停不下来。
细想之下,问题出在自己身上。简单来说,就是还没摆脱“优秀打工人”的思维惯性——我写了一大堆Skill,然后在Claude CLI里手动调用这些Skill干活。本质上,我依然是个“打工人”,甚至因为AI太强悍、它不停下来我就不停,导致休息时间更加稀缺。这状态,就像双11高并发下,没有缓存和队列的数据被直接被击穿一样。
那该怎么办?
必须换一种思路——从员工思维切换到管理者思维。你见过哪个老板亲自下场干活?没有,都是吩咐下属,下属如果是管理者,再继续往下指派。因此,我需要从直接调用Skill,转变为调用Agent,让Agent去调用Subagent或Skill执行任务。核心要做的,就是定义AI的最终交付物规范、任务过程中的中间物料产出及自验证,以及在这些约束条件成立的前提下,对AI保持信任。
Claude 设计哲学
在纠正思维模式之后,首先要理解Claude的设计哲学,才能用好这个工具。先说说自己的理解,再请Claude帮忙纠偏。
Skill:代表各专业场景的技能。
Agent:代表各专业方向的员工。
底层优秀员工思维:写一堆Skill,自己用Skill完成目标。
优秀管理者思维:写一堆Agent,通过编排,驾驭它们干活完成目标。
不明白这个理解对不对?
纠偏:skill 和 agent 不是“员工能力 vs 管理者能力”的对立,而是两个正交维度
- Skill = “怎么做”(how):一份可复用的操作手册/流程知识,本身不占用独立上下文,只在被触发时把内容注入当前会话。
- Agent/Subagent = “谁来做、在哪个上下文里做”(who / where):一个拥有独立上下文窗口、可以独立跑一段任务、只把最终结果返回给主会话的执行体。
更贴切的比喻不是“底层员工对抗管理者”,而是:Skill是知识/SOP文档,Agent是执行这份SOP的“人”(或者说,一个隔离的执行环境)。一个Agent完全可以调用多个Skill;一个Skill也完全可以不经过Agent,直接在主会话里被Claude自己读取执行。
真正对应“管理者驾驭多个执行者”直觉的,其实是:
- Subagent 编排:主Claude把任务拆解,分发给多个Subagent并行执行(各自独立上下文),再汇总结果给人类。
“底层员工自己完成目标”对应的是:Claude CLI主会话直接加载一堆Skill,人类自己顺序执行完。
用Agent还是Skill?判断标准:
- 需要独立上下文/并行/隔离(比如长代码审查不想污染主上下文、多路探索互不依赖)→ 用Subagent
- 需要可复用的流程知识,会反复被触发 → 用Skill
- 以上两者都要 → 组合:Subagent内部调用Skill(这是目前公认最强的模式,一个Subagent加载专属Skill完成方法论,再通过MCP拿数据,返回总结给主会话)
实践建议
最近写了一些PostgreSQL SKILL,比如find-postgres-bug、pg-deploy-cluster、pg-runtime-risk、pg-sql-audit、pg-host-resource-risk等,本质上都是纯Skill层——统一read-only、PGPASSWORD、中文输出、多文件拆分500行内。这套“知识层”做得非常扎实。
如果要往“编排”方向进化,可以考虑的方向:
- 把重量级、长耗时、需要独立诊断上下文的环节(比如
pg-load-spike-forensics的九步根因分析、pg-bloat-root-cause的MVCC因果链推导)拆成Subagent执行,只把结论摘要返回主会话——避免几十个SQL查询结果把主上下文撑爆。 - 用一个“调度型”Skill/命令做总入口(比如
pg-health-checkup),根据用户描述的症状,决定要唤起哪几个专项Skill(pg-find-bloat+pg-find-unused-index+pg-parameter-tuning-advisor),这是纯Skill层面的编排,不需要Subagent也能做。 - 真正需要多个“视角”并行独立分析、互不干扰、最后汇总的场景(这个在
multi-expert-analyzerSKILL里其实已经在用了),才是Subagent并行编排最有价值的地方。
最佳实践清单
Skill 设计实践:
- description字段是唯一被Claude常驻扫描的部分,写清楚“做什么 + 何时用”,这是触发准确率的关键。
- SKILL.md正文保持精炼——一旦加载,内容会常驻上下文并在后续每轮都计入token成本,把“为什么这样设计”这类解释性内容挪到Skill的附属文件,正文只留“做什么”。
- 复杂技能拆成多文件(主SKILL.md + examples.md + scripts/),保持主文件聚焦,这也是你现在遵循的模式。
- 明确
disable-model-invocation还是允许模型自主调用——如果你也因为SKILL太多而踩过skillOverrides的坑,在SKILL.md frontmatter里显式声明比全局配置更可靠。参考《Claude, Codex 使用经验总结》。 - 一次性、不会复用的任务(比如某次特定的数据库迁移)不要写成Skill,直接内联给指令;只有会反复出现的模式才值得沉淀成Skill。
Subagent/编排设计实践:
- 只在“需要上下文隔离”或“需要并行”时才引入Subagent,否则就是纯粹的调度开销——deterministic的重复工作留在Skill层用循环处理即可,不要为每次调用都spawn一个新Subagent。
- Subagent之间的研究路径如果彼此不依赖(比如同时排查代码、日志、系统资源三条线索),并行Subagent收益最大;如果有依赖关系(比如必须先拿到诊断结果才能出优化建议),还是老实串行执行Skill。
- 给Subagent一个清晰的“只返回结论摘要”的约束,避免污染主上下文。
判断优先级(如果Skill数量已经远多于MCP/Subagent数量,说明方向是对的):把知识沉淀为Skill的性价比通常高于为同一件事反复spawn Subagent——只有当你确实需要独立上下文或并行时,Subagent才值得付出那份开销。
思维变了, 下面就是设计流程和交付标准
从“优秀员工”切到“管理者”,不会自动让你轻松下来。管理者的疲惫,换了一种形式而已——从“亲自执行”变成“设计流程 + 审核结果”。如果编排层设计得不好,你反而会更累:既要盯着每个Subagent有没有跑偏,又要花心思整合结果,相当于自己又当了一遍总编辑。
真正能让你轻松下来的,不是“用了Agent”这个动作本身,而是下面这几件事有没有做到位:
1. 现在累的根源,大概率是“每次都要自己决定用哪个技能、怎么组合”
比如遇到一个数据库性能问题,你脑子里要过一遍:先跑pg-runtime-risk,再看要不要pg-bloat-root-cause,要不要顺手pg-parameter-tuning-advisor……这个“路由决策”本身就是脑力消耗,而且是每次重新做一遍,没有被沉淀下来。
这部分工作恰恰是可以让Claude自己干的——写一个调度层(可以是一个Skill,也可以是一个Subagent),输入是“用户症状描述”,输出是“该调用哪几个专项技能、以什么顺序”。这一步做完,你从“决策者”变成了“提需求的人”,这才是真正的减负,而且它不一定需要Subagent,一个好的调度Skill就够。
2. 真正该交给Subagent的,是“你现在需要盯着看,但其实不需要你盯着”的部分
比如pg-load-spike-forensics SKILL那种九步根因分析,你现在如果是自己在主会话里一步步跟着看每条SQL结果,那这部分注意力消耗是可以转移的——让它在独立Subagent里跑完九步,只把“根因是什么、证据链是什么”这个结论抛给你。你不需要看它怎么一步步排查的,只需要看结论对不对。省的是“过程陪跑”的精力,不是决策的精力——决策该不该采纳这个结论,还得是你。
3. 管理者真正轻松的前提是“信任 + 可验证的输出契约”
如果你对Subagent返回的结果每次都要从头核实一遍(因为不放心),那你比自己干还累。所以这里的关键投入是:给每个Subagent/Skill定义清楚的执行逻辑、输出格式和自检项(比如你的报告要求“结论 + 证据链 + 置信度”),这样你审核的时候扫一眼结构化的东西就能判断靠不靠谱,而不是重新推导一遍逻辑。这个“契约设计”是一次性投入,换来的是长期的省心。
比如最喜欢的框架是这样的:结论/观点、逻辑推演过程、支撑结论/观点的证据链、证据权威性、结论适合的边界、结论成立的前提条件(使用第一性原理拆解)、前提发生变化时的新结论、结论的置信度等。
所以:该把‘决策路由’和‘过程陪跑’这两件事外包出去,自己只保留‘设计流程’、‘设计可验证的规范的契约’、‘定义问题’和‘审核结论’这几个动作。
这个转变,Subagent是工具,但真正省力的是你有没有花时间把“调度逻辑”和“输出契约”写清楚、写死。如果只是把原来自己顺序跑的技能改成并行丢给几个Subagent,而你还是每个都要仔细看一遍——那顶多算是把体力活换成了监工活,未必真的轻松。
