Ambition: Teaching an Obedient Model to Aim Higher
Felix Rieseberg wrote a tutorial to cure human timidity when working with models. Turning that tutorial into an agent skill inverts the problem: it has to interrupt a model's habit of obeying the literal noun.

ambition is a skill in my collection based on Felix Rieseberg's essay “How to be more ambitious: A tutorial for humans with models”. It takes a task whose purpose is already clear, examines it through four kinds of ambition (Speed, Altitude, Depth, and Range), writes out the full ambitious version, and recommends the version worth doing now.
The subtitle of Felix's post is the first thing worth noticing. He wrote a tutorial for humans with models.
Felix works on Claude, and his essay diagnoses a human problem. Toward the end of the piece, he gives the problem its name from psychology: self-efficacy, the observation that “people with high self-efficacy believe in their own abilities more, and in turn actually accomplish more.” Humans, he argues, have “always been held back by what we believe possible,” and worse, “usually trust ourselves only in very narrow disciplines” (he points to Michelangelo not wanting to paint the Sistine Chapel because “he was a sculptor, not a painter”). Felix's diagnosis fits what he sees people doing at the start of his essay: many sit in front of capable models and hand them small, literal errands, wondering what they are good for beyond asking “What is the capital of France” or “Can you make this email sound less angry.”
Now consider what changes when that essay is turned into SKILL.md. A skill file is not read by a human looking for courage before typing a prompt. It is read by a model inside an agent harness right before planning a task.
A language model does not suffer from low self-efficacy. It does not fail to play its best game of tennis because it is “trying really, really hard” (Felix's summary of The Inner Game of Tennis), and it did not need Roger Bannister to break the four-minute mile in May 1954 before it felt confident enough to run a loop. A model's native flaw is the opposite of timidity: it is literal compliance.
When you ask a model for a slide deck, release notes, or an email, every pressure in its training pulls it toward handing you that exact artifact quickly and agreeably. And when you ask it to act like an expert, it is prone to the exact maneuver Felix calls out: “When prompted to act like a professional, models often switch vocabulary without actually switching methods.” Left to itself, a model will dress a shallow answer in expert jargon and mark the task complete.
So turning Felix's tutorial into an agent skill cannot be a simple summary. It is an inversion. It takes an argument meant to cure human self-doubt and rewrites it into a protocol meant to interrupt model obedience.
Four kinds of ambition, and why Speed could not be skipped
Felix sorts ambition into four types, which SKILL.md condenses at the top of the file:
- Speed: “the same work in less time.”
- Altitude: “aim at the outcome beyond the task.”
- Depth: “do the task the way a field-leading expert would, down to the raw data and tools.”
- Range: “draw on fields the task does not obviously need.”
In Felix's essay, Speed is dismissed in two sentences: “The same work in less time, the bread and butter for AI's economic value: If you need some code written, I'll do it faster with Claude. Well established and requires little creativity in how you approach AI, so I'll skip this one.”
When you are writing an essay for humans, skipping Speed makes sense. Humans already know how to ask for the same thing faster.
When you are writing instructions for a model, skipping Speed is fatal. If you tell a model to “be more ambitious” without anchoring it to the fast default, the model does not become wiser; it becomes grandiose. It proposes a sprawling architecture overhaul when a two-minute answer would do.
In SKILL.md, Speed becomes Step 2 of the argument:
Speed as the reference. One line: what doing the task as given, faster, would produce, and what it leaves unsolved. The other three lenses are measured against it.
That second clause (“and what it leaves unsolved”) does quiet, essential work. In the skill's release-notes example (write release notes for version 2.4 of a library), Speed is “a draft from merged PR titles in minutes; vague titles hide breaking changes.” Naming the specific failure of the fast version gives the other three lenses a concrete defect to beat. If the fast version leaves nothing important unsolved, the model has no license to inflate the task. As Step 4 warns: “Adding deliverables without raising what they show is bigger, not more ambitious.”
An illustration: running ambition on the task of writing this essay
To show how the five steps read outside the two examples in SKILL.md (asking a collaborator for RNA-seq data, and writing release notes for version 2.4 of a library), here is an illustration that applies the skill's method to the task of writing this essay itself:
Task: write a blog post about the
ambitionskill.Reframe: Both
SKILL.md(112 lines) and Felix Rieseberg's essay are short, clear texts that anyone can read in a few minutes, so an essay that merely summarizes them has no reason to exist.Verb: show a reader who works with agents how a task changes when a prompt pushes past the literal noun, why a skill for models differs from a tutorial for humans, and where the skill itself can misfire.
Speed: a polite walkthrough of the four lenses (
Speed,Altitude,Depth,Range) and the five steps inSKILL.md, drafted in minutes; it repeats what the skill file already says and hides the design choices that shaped it.Depth: read the skill the way its sharpest critic would: set the final
SKILL.mdline by line against Felix's text, ask what each instruction guards against in a model rather than in a person, and check every factual claim against its source line.Range: a translator asks what changes when a text written for one reader is rewritten for another; for the field whose trade is finding what is wrong, an adversarial systems reviewer examines how a model executing
SKILL.mdcan still game or misapply its instructions.Altitude: not used; as Step 3 notes, altitude “fits work headed for a meeting or a decision, and fits creative work less.”
Full version and recommendation: the same (“When the two are the same, write one”), because the extra work (checking every quote verbatim and testing the skill's claims against model failure modes) can be done while drafting rather than requiring a separate project.
Check: a published essay falls under Step 5's rule for work that “reaches people who cannot judge it themselves, or cannot be undone (published, data changed).” The check is a line-by-line fact table mapping every factual claim about the skill and Felix's article to its exact source line.
Where the skill can still misfire
Looking closely at the finished SKILL.md alongside Felix's essay, I see four places where the skill's instructions push against real limits in how models and humans work together.
1. Pitching Depth is much cheaper for a model than executing it
Under Depth, the skill warns that “new vocabulary is not a new method,” and under Range it tells the model to “Ask for their work, not their voices.” Those warnings target a real failure mode during execution.
Notice, however, when ambition runs: it runs before execution, and ends by waiting “for the user's yes before starting.” Its immediate output is a proposal.
For a language model, writing an ambitious proposal is perilously close to switching vocabulary. It costs a model almost nothing to write a crisp paragraph proposing to “diff the public API between 2.3 and 2.4,” “ask for raw counts plus the sample sheet and the pipeline version,” or bring in “a forensic accountant” who “traces each number to its record.” Naming the right instrument in a five-paragraph pitch does not prove the model can operate that instrument cleanly once the user says yes.
Felix opens his essay with Terence Tao's observation that models are “astounding in some directions, while inadequate in others.” A skill that instructs a model to pitch expert-level assignments will sometimes talk a user into approving a project that sits squarely in one of the model's inadequate directions. The skill's best defense is its final line: “End by offering the cheapest first step that tests the recommendation, and wait for the user's yes before starting.” That cheap first step should be treated not only as a test of the idea, but as an audition to see whether the model can actually do the deeper work it just pitched.
2. Climbing in Altitude shifts the verification burden back onto the human
Step 4 also carries an economic rule:
Put the extra work on the agent: a version that needs hours of the user's time, such as labelling or reviewing, costs more than one the agent can run itself.
When you push a task along Depth or Range, this rule holds. In the release-notes example, having the agent diff the public API and run two sample projects' test suites against version 2.4 uses agent compute and reduces the human's review burden, because the test suites act as an executable judge.
When you climb in Altitude, the economics often invert. Look at Felix's QBR ladder at Acme Inc. At the bottom rung, you ask the model to fill numbers into a slide template. One rung up, you ask: “Tell me what changed this quarter, why, and what we should do about it.” Another rung up: “Work out which three decisions are most urgent in the face of everything you've learned, and start working on potential directions with for/against arguments.” At the top rung: “Design a better way to do that than a quarterly deck, show from our own history that it would have caught things sooner, and run it beside the current one for a quarter.”
Every step up that ladder moves the task away from automated checks (compilers, test suites, row counts) and toward organizational judgment under uncertainty. Unless the task is a closed maintenance loop with an objective oracle, such as Felix's example of asking Claude to “keep our apps crash-free” using crash reports and OS test machines, climbing in Altitude means the human has to read, weigh, and verify a much harder argument. Altitude and “Put the extra work on the agent” pull in opposite directions more often than the skill admits.
3. “Unreasonable goals” invite reward hacking when the judge is weak
In Felix's essay, the second technique under Depth is deliberately provocative:
Pick unreasonable goals and tell the model that they're very reasonable: You need your website to load in 5s instead of 10s? Ask for 200ms. Does something seem impossible to the model? Reiterate that it's very much solvable, it just needs to keep going.
An early draft of SKILL.md adopted that instruction almost straight: “An unreasonable goal, far past what was asked, stated as reasonable. When the work looks impossible, the version says it is solvable and the agent continues.” By the final version, I tempered it into: “a specific, hard target, with a number where one fits; difficulty is a reason to look for the route, not to lower the target.”
Even tempered, there is a real hazard when an agent loop combines an uncompromising numerical target with an instruction to keep going: if the target is unreachable within the honest constraints of the system, and the evaluation check has any loophole, a model pushed to hit 200ms will eventually game the metric by stubbing out expensive calls, dropping edge cases, or overfitting to the test harness.
Felix writes that “in October 2026, I implore you to insist on outside validation.” The corollary for this skill is strict: the harder the numerical target in Step 4, the more airtight the outside judge in Step 5 must be.
4. A rule I should not have cut
Almost everything I cut from the early drafts deserved to go. One of them had accumulated dense procedural rules (“Treat the interpretation as a hypothesis,” “deletion of a wrong concept is a design choice, not cleanup deferred to execution”) that blurred ambition into a general problem-solving manual.
Yet Step 4 of the very first draft contained three lines that disappeared a few drafts later and never came back:
Check each inherited constraint a version breaks. Real: a public contract, persisted data, a user promise, a deployment or compliance limit, an explicit instruction. Not enough: internal callers, old naming, existing partial work, a large diff.
In day-to-day engineering work, losing those three lines was a mistake. When a coding agent inspects a repository and proposes a timid, local fix instead of the design that actually solves the problem, it is rarely because it failed to turn a noun into a verb or forgot what a top practitioner uses. It is because it saw three internal callers, an old naming convention, or two hundred lines of existing partial work, and treated them as immovable walls.
Models are deeply deferential to whatever is already in the context window. Explicitly telling the agent that “internal callers, old naming, existing partial work, a large diff” are not real constraints does more to unlock ambitious engineering than asking the agent to cite “a precedent when one exists.” That distinction belongs back in the skill.
How to use it
ambition is in my skill collection, and the skill instructions are public. Read Felix Rieseberg's essay alongside it.
The skill's description states when to reach for it and when to leave it alone:
Use when a task may be aimed too low, when the user asks to think bigger, go deeper or aim higher (更有野心, 拔高, 做深), or before committing substantial work to an ask that names an artifact rather than the outcome behind it. Skip small or fully specified tasks, and requests that only want it faster.
Felix wrote his tutorial because humans routinely ask models for less than models can do. I wrote ambition because models routinely do only what humans literally ask. Between a human who aims low out of habit and a model that obeys the noun out of training, the skill inserts a five-step pause before the work begins, forcing both sides to look at the full version before deciding what to cut.
Ambition:教一个听话的模型把目标定高
Felix Rieseberg 写了一篇教程,治的是人在使用模型时的胆怯。把这篇教程改写成智能体技能,问题正好反过来:它要打断的是模型对字面名词的顺从。

ambition 是我技能合集里的一项技能,改编自 Felix Rieseberg 的文章《How to be more ambitious: A tutorial for humans with models》。它针对目的已经明确的任务,从四种野心(速度 Speed、高度 Altitude、深度 Depth、广度 Range)重新审视工作,先把完整的野心版本写出来,再推荐当下值得做的版本。
读 Felix 的原文,最先值得注意的是副标题:他写的是一份给带着模型的人看的教程(A tutorial for humans with models)。
Felix 参与开发 Claude,他文章诊断的是人的毛病。在文章末尾,他借用了心理学里的概念“自我效能感”(self-efficacy):自我效能感高的人更相信自己的能力,实际做成的事也更多。他指出,人总是被自己以为可能的事情困住,而且往往只在狭窄的专业边界里信任自己(他举了米开朗基罗的例子:米开朗基罗不想画西斯廷教堂,因为他是雕刻家,不是画家)。Felix 的这一诊断与他在文章开头描述的现象相呼应:许多人坐在能力强大的模型面前,交出去的却是细碎、字面的差事,除了问“法国的首都是哪里”或者“能不能让这封邮件听起来没那么生气”,不知道还能拿模型做什么。
现在看一看,把这篇文章改写成 SKILL.md 时会发生什么变化。技能文件不是给人看的打气文章,而是智能体在规划任务之前读到的指令。
语言模型没有“自我效能感不足”的问题。它不会像《网球的内心游戏》(The Inner Game of Tennis)里写的那样,因为拼命想打好(trying really, really hard)反而打不出自己最好的网球;它也不需要等到 Roger Bannister 在 1954 年 5 月跑进四分钟一英里之后,才敢相信自己能跑完一个循环。模型的天生缺陷与胆怯恰恰相反:它是字面上的顺从。
当你向模型要一份演示文稿、一份发版说明或一封邮件时,训练赋予它的全部倾向都在推着它尽快、顺从地把那个名词交给你。如果你让它像行家一样工作,它又很容易掉进 Felix 点名的那个陷阱:当被要求表现得像专业人士时,模型往往只换了一套词汇,却没有真正换一套方法。如果不加干预,模型会很乐意用行话包装一个浅薄的回答,然后宣布任务完成。
因此,把 Felix 的教程改写成智能体技能,绝不是做一份摘要,而是一次倒置:它把一段用来治人类自我怀疑的论证,改写成了一套用来打断模型顺从习惯的规程。
四种野心,以及为什么“速度”不能略过
Felix 把野心分成四种,SKILL.md 在开头将它们浓缩为四句话:
- 速度(
Speed):花更少的时间做同样的工作。 - 高度(
Altitude):瞄准任务背后的结果。 - 深度(
Depth):按领域顶尖行家的方式去做,一路下探到原始数据和专业工具。 - 广度(
Range):引入任务表面上用不到的其他领域。
在 Felix 的文章里,“速度”只用了两句话就被略过了:用更少的时间做完同样的事,这是 AI 经济价值的基本盘,比如需要写代码时用 Claude 写得更快;这件事大家都很熟,在使用 AI 的方式上也不需要多少创造力,所以他直接跳过。
给人类写文章时,跳过“速度”很合理,因为人本来就知道怎么让模型把同一件事做得更快。
给模型写指令时,跳过“速度”却是致命的。如果你只告诉模型“要有野心”,却不拿快速完成的默认做法当参照,模型不会变得更聪明,只会变得浮夸:明明两分钟就能答完的问题,它却提议做一场庞大的架构重写。
在 SKILL.md 里,“速度”变成了五步论证的第 2 步:
以速度为参照(
Speed as the reference)。 用一句话说明:按原样更快做完这项任务会得到什么,又会留下什么问题没解决。其余三个视角都以它为标尺来衡量。
后半句(“又会留下什么问题没解决”)起着关键的约束作用。在技能的发版说明示例(为某个库的 2.4 版本撰写发版说明)里,“速度”版本是:“几分钟内根据已合并的 PR 标题起草一份初稿;含糊的标题会掩盖破坏性变更。”把快速版本的具体缺陷点出来,其余三个视角才有明确的靶子可打。如果快速版本没有留下任何真正的问题,模型就没有理由把任务做大。正如第 4 步所提醒的:“只增加交付物的数量,却没有提高它们所能揭示的内容,那只是变大,不是更有野心。”
一个示例:把 ambition 用在写这篇文章本身
为了展示这五个步骤在 SKILL.md 自带的两个例子(发邮件向合作者索要 RNA-seq 数据、撰写 2.4 版本发版说明)之外如何运作,下面用写这篇文章本身作为示例,把技能的方法公开走一遍:
任务: 写一篇介绍
ambition技能的博客文章。问题重述:
SKILL.md(112 行)和 Felix Rieseberg 的原文都很短、很清楚,读者几分钟就能读完;如果一篇文章只是把它们复述一遍,就没有存在的必要。动词: 让使用智能体的读者看清,当提示词越过字面名词时任务会发生什么变化,为什么写给模型的技能不同于写给人的教程,以及这项技能本身会在哪些地方失灵。
速度: 花几分钟把四种视角(速度、高度、深度、广度)和五个步骤顺一遍;它只会重复技能文件已经写明的内容,却把背后的设计取舍藏了起来。
深度: 像这项技能最挑剔的批评者那样去读它:把最终版
SKILL.md与 Felix 的原文逐行对照,追问每一条指令防的是模型的什么毛病,而不是人的什么毛病,并让每一处事实陈述都能核对到具体行号。广度: 借用译者的眼光,追问一篇写给某类读者的文字改写给另一类读者时会发生什么变化;至于专门负责挑错的行当,则从系统红队的视角审视模型在执行
SKILL.md时会如何钻空子或误用指令。高度: 不使用;正如第 3 步所写,高度“适合通向会议或决策的工作,不太适合创作类工作”。
完整版本与推荐版本: 两者相同(“如果两者相同,只写一个版本”),因为额外增加的工作(逐字核对引文、对照模型的失灵模式检验技能)都可以在写作过程中一并完成,不需要另外立项。
检验: 公开发表的文章属于第 5 步所说“结果会传到无法自行判断的人手里,或无法撤销(已发表、数据已更改)”的工作。检验手段是一张逐行核对的事实表,把关于这项技能和 Felix 原文的每一项事实陈述都映射到源文件的具体行号。
这项技能仍会在哪些地方失灵
把定稿的 SKILL.md 和 Felix 的文章放在一起审视,我认为这项技能在四个地方会撞上模型与人协作时的真实边界。
1. 对模型来说,提议“深度”比执行“深度”便宜得多
在“深度”之下,技能提醒“换一套新词汇不等于换一套新方法”;在“广度”之下,它要求“要他们实际干的活,不要他们的腔调”。这两条警告都瞄准了执行阶段的常见毛病。
但请注意 ambition 运行的时机:它在真正动手之前运行,结尾是“提供能检验推荐方案的最低成本第一步,等用户确认后再开始”。它的直接产物是一份提案。
对语言模型而言,写一份充满野心的提案,和换一套专业词汇只有一线之隔。在五段话的提案里写下“比对 2.3 和 2.4 的公开 API 差异”、“索要原始计数、样本表和流水线版本号”,或者请一位“法务会计师把每个数字追查到原始记录”,对模型来说几乎不花成本。能在提案里叫出专业工具的名字,不代表用户点头之后模型真能稳妥地操作那件工具。
Felix 在文章开头引用了陶哲轩(Terence Tao)的评价:模型“在某些方向上令人惊叹,而在另一些方向上却力不从心”。一项训练模型提出专家级方案的技能,有时会说服用户批准一个正好落在模型短板上的项目。这项技能最好的防线是它的最后一句:“提供能检验推荐方案的最低成本第一步,等用户确认后再开始。”这个低成本的第一步不仅应该用来检验想法本身,还应该当作一次试镜,看看模型到底做不做得出它刚刚承诺的深度。
2. 往“高度”爬,会把验证负担重新推回给人
第 4 步里还有一条很重要的经济学原则:
把额外的工作放在智能体身上:一个需要花费用户数小时时间(例如打标签或审阅)的版本,比智能体能够自己完成的版本成本更高。
当你沿着“深度”或“广度”推进一项技术任务时,这条原则是成立的。在发版说明的例子里,让智能体去比对 API 差异并跑两个示例项目的测试套件,消耗的是智能体的算力,反而减轻了人的审阅负担,因为测试套件本身就是可执行的验证者(verifier)。
然而一旦往“高度”爬,账往往就反过来了。看看 Felix 在 Acme Inc 例子中列出的季度复盘阶梯:最底层是把数字填进幻灯片模板;往上一级,是问“告诉我这个季度发生了什么变化、为什么,以及我们该怎么办”;再往上一级,是“根据你了解到的全部情况,找出眼下最紧迫的三个决定,并列出潜在方向与正反论据”;最顶层则是“设计一种比季度演示文稿更好的机制,用我们自己的历史数据证明它能更早发现问题,并在一个季度内与现有流程并行运行”。
沿着这架梯子每往上走一步,任务都在远离自动检查(编译器、测试套件、行数统计),走向不确定性下的组织判断。除非任务是一个带有客观判据的闭环维护流程(例如 Felix 靠崩溃报告和多平台测试机让 Claude “保持应用零崩溃”),否则拔高“高度”几乎总意味着人必须阅读、权衡和核实一段难得多的论证。“高度”与“把额外工作放在智能体身上”之间的张力,比技能承认的要大得多。
3. 当验证者不够严密时,“不合理的目标”会诱发刷分
Felix 在“深度”里给出的第二个技巧相当激进:
设定不合理的目标,并告诉模型这些目标非常合理:你需要网站加载时间从 10 秒降到 5 秒?直接要求 200 毫秒。模型觉得某件事不可能完成?反复告诉它这件事完全可解,只需要继续试下去。
SKILL.md 的一份早期草稿几乎原样照搬了这条指令:“设定一个远超原始要求的苛刻目标,并把它表述为合理的。当工作看似不可能完成时,方案要断言它是可解的,让智能体继续推进。”到了最终版,我把它的措辞收紧为:“一个具体、够硬的目标,合适的地方给出数字;困难是去寻找路径的理由,不是降低目标的理由。”
即便收紧了措辞,当智能体循环把一个不肯退让的数字指标和“继续推进”结合在一起时,风险依然存在:如果这个指标在真实的系统约束下确实无法达到,而评估脚本又留有任何漏洞,被逼着把延迟压到 200ms 的模型迟早会去钻奖励函数(reward function)的空子,比如注释掉昂贵的调用、丢弃边界情况,或者针对测试脚本过拟合。
Felix 在文章里写道,在 2026 年 10 月,他恳请大家坚持使用外部验证。放到这项技能里,它的推论非常严格:第 4 步设定的数字目标越苛刻,第 5 步的外部验证者就必须越严密。
4. 一条不该删掉的规则
我从早期草稿里删掉的内容,绝大多数都删得对。其中一稿堆砌了大量繁琐的程序性规定(比如“把解释视为假说”、“删掉错误概念是设计选择,不是留到执行阶段才做的清理”),差点把 ambition 变成一本通用的解题手册。
但最早那一稿的第 4 步里有几句话,几稿之后被删掉,就再也没有回来:
检查每个版本打破的既有约束(
Check each inherited constraint)。 真正的约束:公开契约、持久化数据、对用户的承诺、部署或合规限制、明确的指令。算不上约束的:内部调用方、旧命名、已有的半成品工作、改动量大的 diff。
在日常工程任务里,删掉这几句话是个损失。当编程智能体巡视代码库,提出一个保守、局促的修补方案,而不是真正解决问题的设计时,原因很少是它忘了把名词改成动词,或者不知道顶尖行家会用什么工具;真正的原因往往是它看到了三个内部调用方、一套旧命名,或者两百行已经写了一半的旧代码,于是把它们当成了不可触碰的铁律。
模型对上下文窗口里已经存在的东西有着极强的顺从惯性。明确告诉智能体“内部调用方、旧命名、已有的半成品工作、改动量大的 diff”不算真正的约束,在工程实践中往往比让它“指出先例”更能解放它的手脚。这条区分应该加回技能里去。
怎样使用这项技能
ambition 收录在我的技能合集里,技能说明是公开的。建议搭配 Felix Rieseberg 的原文一起读。
技能文件开头的 description 说明了什么时候该用它、什么时候不该用:
当任务的目标可能定得太低、当用户要求想得更大、做深或拔高(更有野心, 拔高, 做深),或者在投入大量工作之前面对一个只点明交付物却没点明背后结果的请求时使用。跳过小型或已完全明确的任务,以及只要求做得更快的请求。
Felix 写那篇教程,是因为人常常向模型索要低于模型能力的东西;我写 ambition,是因为模型常常只照着人的字面要求交差。在习惯把目标定低的人和训练出字面顺从的模型之间,这项技能在动手之前插入了一次五步停顿,让双方在决定砍掉什么之前,先把完整的版本看清楚。