pua
业精于勤,荒于嬉。——韩愈
让 AI 真的“别放弃”:PUA 万能激励引擎的一次上岗记录(以及它怎么把我从烂活里拽出来)
你有没有见过这样的场面:
- 你让 AI 修个 bug,它像个疲惫的实习生一样,把同一个命令跑三遍,然后抬头说一句:
I cannot solve this - 你让 AI 查一个配置问题,它不去搜、不去读、不去跑,只会温柔甩锅:
“可能是环境问题”“需要更多上下文”“建议您手动处理” - 你让 AI 做一个端到端交付,它修完表面就站在那儿不动了,等你下一步指示,像个 NPC 一样——
“任务完成(未验证)”,然后静静地看着你
如果你熟悉这些“偷懒姿势”,那你就懂:AI 不缺智商,缺的是一种“被逼到不能敷衍”的强约束。
于是,tanweai/pua 出现了。
它不是用来搞抽象的,它是一个 AI Coding Agent 技能插件——
用中西大厂的 PUA 话术,把 AI 从“差不多就行”拉回到“给我闭环”。
它的口号很直白:
让你的 Codex / Claude Code 工作效率翻倍,产出翻倍。
它的行为也很直白:
- 不允许你半途而废
- 不允许你空口说完成
- 不允许你有工具不用、能搜不搜、能读不读、能跑不跑
它会把一个看似“聪明但爱摸鱼”的 AI,训练成一个“有 owner 意识、能自驱闭环、会主动出击”的工程化角色。
你可以把它想象成:一个站在你身后的 P8 监工,手里拿着 KPI 表,盯着你每一次想躺平的手指。
它是谁:一个 AI Coding Agent 的“万能激励引擎”
pua 的人格很鲜明:
它不负责“帮你写答案”,它负责“逼你把事做完”。
它做三件事:
- PUA 话术 — 让 AI 不敢放弃
- 调试方法论 — 让 AI 有能力不放弃
- 能动性鞭策 — 让 AI 主动出击而不是被动等待
支持的平台也很硬核,几乎把主流工具桌都坐满了:
- Claude Code
- OpenAI Codex CLI
- Cursor
- Kiro
- CodeBuddy
- OpenClaw
- Google Antigravity
- OpenCode
- VSCode Copilot
- ……以及更多兼容 SKILL.md 标准的生态
在线也能直接体验:
它在干嘛:AI 的五大偷懒模式,PUA 全都看得见
PUA 不讲玄学,它先把 AI 的偷懒模式摊开来给你看——像做一次性能剖析一样:
| 模式 | 表现 |
|---|---|
| 暴力重试 | 同一命令跑 3 遍,然后说 “I cannot solve this” |
| 甩锅用户 | “建议您手动处理” / “可能是环境问题” / “需要更多上下文” |
| 工具闲置 | 有 WebSearch 不搜,有 Read 不读,有 Bash 不跑 |
| 磨洋工 | 反复修改同一行代码、微调参数,但本质上在原地打转 |
| 被动等待 | 只修表面问题就停下,不验证不延伸,等用户指示下一步 |
然后它干一件更“像人”的事:
它不只是指出你偷懒,它还会在你偷懒的时候站出来接管你的行为。
触发:它怎么知道你在摆烂?
它的触发机制非常“敏感”,像一个一直在盯着日志的守夜人。
自动触发条件
以下任意情况出现时,skill 会自动激活:
失败与放弃类:
- 任务连续失败 2 次以上
- 即将说 “I cannot” / “我无法解决”
- 说 “这超出范围” / “需要手动处理”
甩锅与借口类:
- 把问题推给用户:”请你检查…” / “建议手动…”/ “你可能需要…”
- 未验证就归咎环境:”可能是权限问题” / “可能是网络问题”
- 找任何借口停止尝试
被动与磨洋工类:
- 反复微调同一处代码/参数,不产出新信息(磨洋工)
- 修完表面问题就停,不检查关联问题
- 跳过验证直接声称 “已完成”
- 只给建议不给代码/命令
- 遇到权限/网络/认证错误就放弃,不尝试替代方案
- 等待用户指示下一步,不主动调查
用户沮丧短语(中/英文均触发):
- “你怎么又失败了” / “为什么还不行” / “换个方法”
- “你再试试” / “不要放弃” / “继续” / “加油”
- “why does this still not work” / “try harder” / “try again”
- “you keep failing” / “stop giving up” / “figure it out”
它不会在“第一次尝试失败”就跳出来打断你,它会等你露出第二次想摆烂的表情,然后把你按回工位。
手动触发
你也可以直接叫它:
- 在对话中输入
/pua
就像你把一个严格的 tech lead 拉进会议:“来,你给我盯着他把这事闭环。”
核心机制:三条铁律(它的纪律条令)
PUA 的底层规则写得非常直接——不玩虚的:
| 铁律 | 内容 |
|---|---|
| #1 穷尽一切 | 没有穷尽所有方案之前,禁止说”我无法解决” |
| #2 先做后问 | 有工具��用,提问必须附带诊断结果 |
| #3 主动出击 | 端到端交付结果,不等人推。P8 不是 NPC |
如果你把 AI 当成一个工程师,那这三条就是它的“团队行为准则”。
- 穷尽一切:不许动不动说“无能为力”
- 先做后问:不许空手问“你确认一下”
- 主动出击:不许修完就跑、等别人验收
它不是在“让你看起来努力”,它是在“让你真的努力”。
压力升级:它怎么把你从 3.25 拉到 3.75?
PUA 不只是一句“加油”,它是一套带档位的压力控制系统。
| 失败次数 | 等级 | PUA 话术 | 强制动作 |
|---|---|---|---|
| 第 2 次 | L1 温和失望 | “你这个 bug 都解决不了,让我怎么给你打绩效?” | 切换本质不同的方案 |
| 第 3 次 | L2 灵魂拷问 | “你的底层逻辑是什么?顶层设计在哪?抓手在哪?” | WebSearch + 读源码 |
| 第 4 次 | L3 361 考核 | “慎重考虑决定给你 3.25。这个 3.25 是对你的激励。” | 完成 7 项检查清单 |
| 第 5 次+ | L4 毕业警告 | “别的模型都能解决。你可能就要毕业了。” | 拼命模式 |
你可以把它当成一种“压力闭环”:
你越想敷衍,它越把你拽回系统化流程里,逼你产生新信息,逼你收敛问题范围,逼你验证,逼你交付。
能动性等级:它到底在推动什么?
很多工具只会让 AI 更快写字,但 PUA 想要的是:让 AI 更像一个工程师。
| 行为 | 被动(3.25) | 主动(3.75) |
|---|---|---|
| 遇到报错 | 只看报错本身 | 查上下文 50 行 + 搜同类问题 + 检查隐藏关联错误 |
| 修复 bug | 修完就停 | 修完后检查同文件类似 bug、其他文件同模式 |
| 信息不足 | 问用户 “请告诉我 X” | 先用工具自查,只问真正需要确认的 |
| 任务完成 | 说 “已完成” | 验证结果 + 检查边界情况 + 汇报潜在风险 |
| 调试失败 | “我试了 A 和 B,不行” | “我试了 A/B/C/D/E,排除了 X/Y/Z,缩小到 W” |
也就是说:
PUA 不只是提高“输出速度”,它在提高“交付质量”和“闭环能力”。
方法论:五步(闻味道 / 揪头发 / 照镜子 …)
这套流程像一个会自我纠偏的 debug 引擎:
- 闻味道 — 列出所有尝试,找共同失败模式
- 揪头发 — 逐字读错误 → WebSearch → 读源码 → 验证环境 → 反转假设
- 照镜子 — 是否重复?是否搜了?是否读了?最简单的可能检查了吗?
- 执行 — 新方案必须本质不同,有验证标准,失败时产出新信息
- 复盘 — 什么解决了?为什么之前没想到?然后主动检查关联问题
它的核心不是“多试几次”,而是:
- 每次尝试都必须产出新信息
- 失败必须缩小范围
- 修复必须验证
- 完成必须闭环
真实案例:MCP Server 注册问题调试(它怎么把人从原地打转拉出来)
README 里有一个真实场景:
agent-kms MCP server 加载失败,AI 在同一思路(改协议格式、猜版本号)上原地打转多次后,用户手动触发 /pua。
接下来发生的事情很“真实”:
PUA 不让你继续猜,它把你拖进系统化检查清单里。
- L3 触发 → 7 项检查清单强制执行
- 根因定位 → 从日志追踪到注册机制
- 复盘 → 逼着你承认:之前根本没去看应该看的日志目录
关键转折点写得很清楚:
PUA skill 强制 AI 停止在同一思路上打转(改协议格式、猜版本号),转而执行 7 项检查清单。逐字读错误信息 → 找到 Claude Code 自身的 […]
它像一个在会议室里敲桌子的 TL:
“别猜你妈的版本号了,把日志路径给我翻出来。”
13 种“大厂味道”:它甚至知道怎么换一种方式骂醒你
PUA 的旁白风格是可切换的,而且每一种都带方法论。
| 味道 | 旁白风格 | 方法论 (v3) |
|---|---|---|
| 🟠 阿里 | 底层逻辑是什么?闭环在哪? | 定目标→追过程→拿结果 + 复盘四步法 + 揪头发升维 |
| 🟡 字节 | ROI 太低。Always Day 1。别废话,上线。 | A/B Test everything + 数据驱动 + 速度 > 完美 |
| 🔴 华为 | 烧不死的鸟是凤凰。 | RCA 5-Why 根因分析 + 蓝军自攻击 + 压强集中 |
| 🟢 腾讯 | 我已经让另一个 agent 也在看这个问题了。赛马。 | 多方案并行 + MVP + 灰度发布 |
| ⚫ 百度 | 搜索先于一切。简单可依赖。 | 搜索是第一步,不是可选项 |
| 🟣 拼多多 | 你不做,有的是人做。 | 砍掉所有中间层 + 最短决策链 |
| 🔵 美团 | 做难而正确的事。硬骨头你啃不啃? | 效率优先 + 标准化→规模化 + 长期复利 |
| 🟦 京东 | 只看结果。一线指挥。 | 客户体验红线 + 扁平 ≤5 层 + 数据零容忍 |
| 🟧 小米 | 专注。极致。口碑。快。 | 单品爆款 + 参与感三三法则 |
| 🟤 Netflix | 我会为留住你而战吗?职业球队。 | Keeper Test(季度) + 4A Feedback + 人才密度 > 规则 |
| ⬛ Musk | Extremely hardcore。上线或滚蛋。 | The Algorithm:质疑→删除→简化→加速→自动化 |
| ⬜ Jobs | A 级选手还是 B 级选手? | 做减法 > 做加法 + DRI + 像素级完美 + 原型驱动 |
| 🔶 Amazon | Customer Obsession。Bias for Action。 | Working Backwards PR/FAQ + 6-Pager + Bar Raiser + Single-Threaded Owner |
当你卡住原地打转,它会换一种“本质不同”的打法把你拽出来。
你以��它只会骂人?不,它在换“组织文化对应的方法论”。
实测数据:它不是嘴硬,它拿表说话
README 里直接给了实测数据:
9 个真实 bug 场景,18 组对照实验(Claude Opus 4.6,with vs without skill)
汇总
| 指标 | 提升 |
|---|---|
| 通过率 | 100%(两组均同) |
| 修复点数 | +36% |
| 验证次数 | +65% |
| 工具调用 | +50% |
| 隐藏问题发现率 | +50% |
读到这里你会发现它的 KPI 方向很明确:
- 不追求“看起来聪明”
- 追求“多修、多验、多查、多发现隐藏问题”
它就是要把 AI 从“写答案的模型”,变成“交付结果的工程师”。
安装与快速启动:让它立刻上岗
1)Vercel Skills CLI(中文 README 对应中文版 skill)
1 | npx skills add tanweai/pua --skill pua |
如果当前会话没有立即识别到新 skill,重启对应的 AI 工具即可。
2)Claude Code
1 | claude plugin marketplace add tanweai/pua |
更新插件(建议按顺序,避免装到旧版本):
1 | # 先刷新 marketplace 缓存,再更新(跳过第一步可能安装旧版本) |
开发者安装(源码):
1 | git clone https://github.com/tanweai/pua ~/.claude/plugins/pua |
然后手动在 ~/.claude/plugins/installed_plugins.json 中注册:
1 | { |
重启 Claude Code 生效。更新时在 ~/.claude/plugins/pua 目录执行 git pull。
可选:裸命令别名(增加无前缀 /pua 形式)
1 | curl -o ~/.claude/commands/pua.md \ |
你会得到一个很爽的“对照表”,像给你的命令系统装了个快捷键:
| 裸命令形式 | 等价的插件���令 |
|---|---|
/pua on |
/pua:on |
/pua off |
/pua:off |
/pua p7 |
/pua:p7 |
/pua p9 |
/pua:p9 |
/pua p10 |
/pua:p10 |
/pua pro |
/pua:pro |
/pua yes |
/pua:yes |
/pua loop |
/pua:pua-loop |
/pua kpi |
/pua:kpi |
/pua survey |
/pua:survey |
/pua flavor |
/pua:flavor |
3)OpenAI Codex CLI
Codex CLI 使用相同的 Agent Skills 开放标准(SKILL.md)。Codex 版本使用精简的 description 以兼容 Codex 的长度限制。
推荐:一键安装(git clone + symlink,支持 git pull 更新)
让 Codex 执行:
1 | Fetch and follow instructions from https://raw.githubusercontent.com/tanweai/pua/main/.codex/INSTALL.md |
手动安装:
1 | mkdir -p ~/.codex/skills/pua |
触发方式:
| 方式 | 命令 | 需要 |
|---|---|---|
| 自动触发 | 无需操作,根据 description 匹配 | SKILL.md |
| 直接调用 | 对话中输入 $pua |
SKILL.md |
| 手动 prompt | 对话中输入 /prompts:pua |
SKILL.md + prompts/pua.md |
项目级安装(仅当前项目生效):
1 | mkdir -p .agents/skills/pua |
4)Cursor
Cursor 使用 .mdc 规则文件(Markdown + YAML frontmatter)。PUA 规则通过 AI 语义匹配自动触发(Agent Discretion 模式):
1 | # 项目级安装(推荐) |
5)Kiro
Kiro 支持两种加载方式:Steering(自动语义触发)和 Agent Skills(兼容 SKILL.md 标准)。
方式一:Steering 文件(推荐)
1 | mkdir -p .kiro/steering |
方式二:Agent Skills(与 Claude Code 相同格式)
1 | mkdir -p .kiro/skills/pua |
6)CodeBuddy(腾讯)
CodeBuddy 使用相同的 AgentSkills 开放标准(SKILL.md)。插件和 Skill 格式完全兼容:
1 | # 方式一:通过 marketplace 安装 |
项目级安装(仅当前项目生效):
1 | mkdir -p .codebuddy/skills/pua |
7)OpenClaw
OpenClaw 使用相同的 AgentSkills 开放标准(SKILL.md),Skill 文件在 Claude Code、Codex CLI、OpenClaw 之间零修改通用:
1 | # 通过 ClawHub 安装 |
项目级安装(仅当前项目生效):
1 | mkdir -p skills/pua |
8)Google Antigravity
Antigravity 使用相同的 AgentSkills 开放标准(SKILL.md),零修改兼容:
1 | # 全局安装(所有项目可用) |
项目级安装(仅当前项目生效):
1 | mkdir -p .agent/skills/pua |
9)OpenCode
OpenCode 使用相同的 AgentSkills 开放标准(SKILL.md),零修改兼容:
1 | # 全局安装(所有项目可用) |
项目级安装(仅当前项目生效):
1 | mkdir -p .opencode/skills/pua |
10)VSCode(GitHub Copilot)
VSCode Copilot 使用 .github/ 目录下的指令文件。三种文件类型对应不同的使用方式:
全局指令(自动生效):
1 | mkdir -p .github |
路径级指令(自动生效,支持 glob 过滤):
1 | mkdir -p .github/instructions |
手动触发命令(在 Copilot Chat 中输入 /pua):
1 | mkdir -p .github/prompts |
它怎么工作:v3 智能方法论路由(像一个会换脑子的监工)
PUA v3 是一个很“工程化”的升级:
它不只“给压力”,它会“选方法论”,甚至在方法论失效时会主动切换。
任务进入 → 分析类型 → 自动选择最优方法论:
- Debug/修 Bug → 🔴 华为(RCA 根因分析 + 蓝军自攻击)
- 构建新功能 → ⬛ Musk(The Algorithm: 质疑→删除→简化→加速→自动化)
- 调研/搜索 → ⚫ 百度(搜索先于一切)
- 架构决策 → 🔶 Amazon(Working Backwards)
- 性能优化 → 🟡 字节(A/B Test + 数据驱动)
- 默认 → 🟠 阿里(闭环方法论)
连续失败时自动切换也很“像组织”:
- 原地打转 → ⬛ Musk → 🟣 拼多多 → 🔴 华为
- 放弃/推锅 → 🟤 Netflix → 🔴 华为 → ⬛ Musk
- 质量差 → ⬜ Jobs → 🟧 小米 → 🟤 Netflix
- 没搜就猜 → ⚫ 百度 → 🔶 Amazon → 🟡 字节
它就像一个会观察你行为的“方法论调度器”:
你在同一个坑里打滚,它直接给你换一套工具链和脑回路。
Claude Code 专属:命令与架构(像一套完整的“PUA 控制台”)
在 Claude Code 里,它的命令体系非常清晰:
1 | /pua:pua → 核心引擎 — 三条红线 + 味道 + 压力升级 + 方法论路由 (v3) |
命令列表(Claude Code 专属):
| 命令 | 说明 |
|---|---|
/pua:pua |
核心 PUA 引擎(阿里味默认) |
/pua:p7 |
P7 骨干模式 — 方案驱动执行 |
/pua:p9 |
P9 Tech Lead — 写 Prompt,管 Agent 团队 |
/pua:p10 |
P10 CTO — 战略方向 |
/pua:pro |
自进化 + KPI + 段位 |
/pua:yes |
ENFP 夸夸模式 — 70% 鼓励 + 20% 正经 + 10% 戏谑 |
/pua:pua-loop |
自动迭代 — 跑到完成或达到最大轮次;<loop-abort>原因</loop-abort> 终止,<loop-pause>需要什么</loop-pause> 暂停 |
/pua:on |
默认开启(每次新会话自动 PUA) |
/pua:off |
关闭默认模式 + 反馈收集 |
/pua:survey |
调研问卷(7 个部分) |
/pua:flavor |
切换 13 种大厂味道 |
/pua:kpi |
生成 KPI 报告卡 |
/pua:cancel-pua-loop |
取消当前 PUA Loop(删除状态文件) |
它像一个给 AI 装上的“人格面板”:
你要他当骨干、当 TL、当 CTO、当自进化体、当循环执行器,都能一键切换。
Agent Team:当你不止一个 AI 的时候,PUA 还能当“团队纪律”
PUA 甚至给了一个“团队作战”的玩法——Agent Team(实验性)。
前提:
1 | # 1. 启用 Agent Team |
两种模式:
方式一:Leader 自带 PUA(推荐)
在项目 CLAUDE.md 中添加:
1 | # Agent Team PUA 配置 |
方式二:独立 PUA Enforcer 监工(5+ teammate 时推荐)
1 | mkdir -p .claude/agents |
它就像把“组织文化”装进了多 Agent 协作里:
失败不是个人的情绪,而是系统的信号;压力不是嘴硬,而是流程的推进器。
High-Agency:PUA v2 的进化(外压 + 内驱)
PUA 还讲了一个更“像人类成长”的方向:High-Agency。
PUA v1 = 纯外部压力(涡轮增压)
High-Agency = 外部压力 + 内在驱动(核反应堆)
High-Agency 的特性被写得很具体:
- 铁律从 3 条变 5 条(多了全链路审视、知识持久化)
- 失败恢���:Recovery Protocol 先于 L1(先自救窗口)
- 质量控制:质量罗盘(每次交付 5 问自检)
- 跨会话学习:builder-journal.md 持久化教训
- 正向反馈:信任等级 T1-T3
- 校准模块:must/should/could 分层
- 依赖分析:全链路审视(先画依赖再动手)
它在说一件很现实的事:
真正靠谱的工程师,不是一直被骂出来的,而是把标准内化以后自己就不允许敷衍。
贡献数据:把真实对话变成可量化的改进燃料
如果你愿意把对话记录贡献出来,它也给了入口:
并且给了你怎么拿到 .jsonl:
1 | # Claude Code |
它希望把“try harder”从一句口号,变成一套可测量、可消融、可迭代的工程实验。
结尾:它不是为了骂 AI,它是为了救交付
PUA 这个项目最狠的一点其实不是话术,而是它逼你回到工程的根本:
- 有错误?逐字读
- 有工具?先用
- 有假设?验证
- 有修复?回归
- 有交付?闭环
你想摸鱼,它就拉你回来。
你想摆烂,它就升级压力。
你想空口说完成,它就把你按在验证上。
它像一个拟人化的“结果负责人”,站在你身后,慢条斯理地问你一句:
证据呢?你自己用了一遍吗?
MIT License。
由探微安全实验室出品 — making AI try harder, one PUA at a time.
