Transcript: FIXING Opus 5: PROOF that Prompt Engineering IS NOT DEAD (IndyDevDan)
What's up, engineers? Andy Devdan here. Like me, you've probably gotten sick and tired of Opus 5's insanely verbose responses and its overuse of phrases like loadbearing, worth stating plainly, here's the honest truth, and a bunch of others. Or maybe you're tired of the Anthropic team trying to take credit in your Git commit messages for intelligence you paid for. Or maybe you notice Opus 5 is burning your cash with way more output tokens than any model before it. You're not alone. Myself and many engineers feel the exact same way. Opus 5 is one of the best state-of-the-art ultra smart models and one of the worst state-of-the-art models ever released because it talks like a complete smartass. In this video, we turn smartass Opus 5 into a precise senior engineer that's enjoyable to work with. How are we going to do that? We're going to use one of the most important skills any engineer using agents can learn: prompt engineering.
[00:01:01] There are two ways to prompt engineer your agents: the user prompt (single task at hand) and the system prompt (the law for every task). Most engineers fixate on skills and the user prompt, but the system prompt is vastly more useful because every word is multiplied over every user prompt. Demo setup: cloned Zuck's "the future is for everyone" blog post as a summarization target, using a "compare" command running two Claude Opus 5 agents side-by-side in terminal multiplexer (herder) — smartass (default) on left, senior (prompt-engineered) on right.
[00:04:00] Baseline run: both default, no system prompt changes. Verbose, tic-laden output, 53s/35s runs, heavy output token burn.
[00:05:01] First iteration: append a "Purpose" section to the system prompt — "no BS, clear, concise, actionable relationship," explaining the why (deliver best results for team/business/customers). Talking to the agent conversationally, not assigning it a role. Small improvement, still has "loadbearing," dash chaining.
[00:07:01–00:11:00] Second iteration: "Instructions" section with Positive Patterns / Negative Patterns. Positive: agent should front-load the most important info (recency bias — last thing written is seen first), use plain specific language, state facts once, match detail to task, challenge incorrect assumptions, optimize for clarity/engineering value not quotability. Negative: explicit banned-phrase list (loadbearing, worth stating plainly, here's the honest truth, "the real tension," "carry the argument"), avoid analogies, avoid em-dash chaining, no flattery/validation without reason, no decorative headings/emoji/motivational language, avoid semicolons/fragments/non-standard punctuation.
[00:12:01] Re-run with Positive/Negative patterns: noticeably fewer dashes, no "loadbearing," 31s execution — measurable token/time savings.
[00:13:02–00:16:00] Third technique: "Reference points" — numbered/coded references (D1/D2 for decisions, R1/R2 for risks, P for promises, F for findings) so the agent and user can shorthand-reference prior output ("talk more about R6") without repetition. Demoed live — agent references R6 (existential/self-improvement risk from Zuckerberg's post) directly.
[00:16:00–00:19:01] Fourth technique: "Hard operational boundaries" — deliver only what was requested at the intended scope; do not widen into cleanup/refactoring/docs/adjacent features; do not speculate on future requirements; do not claim completion without evidence; never add a co-author line to commit messages (calls out Anthropic's git commit co-author attribution as an unwanted default); restate concisely, don't over-recap.
[00:18:00–00:21:02] Fifth technique: "Aliases" — short codes in the system prompt that expand into full instructions when invoked in a user prompt, e.g. STR = "simplify, compress, and repeat your response," ELI = "explain like I'm 18," FOCUS = "focus on what matters most / true signal," REF = "rewrite with reference points." Demoed live: typing "scr" and "focus" triggers the expansions and visibly changes output style/length.
[00:22:00–00:24:01] Sixth technique: additional positive-pattern refinements — prefer one paragraph over two / one sentence over two without losing information, don't repeat ideas, avoid overloaded terms, use simplest words. Re-run shows fewer dashes, no "loadbearing," reference points working, more concise sentences, but still somewhat verbose (35s) — nondeterminism acknowledged; can layer STR/ELI aliases on top when a given response still runs long.
[00:25:00–00:26:00] Aside: content take on Zuckerberg's blog post itself (AI safety distributed-vs-concentrated argument) — brief, not the video's focus. Notes Claude Code's own default system prompt has gotten smaller over time, but argues that's not a signal to skip system prompting — it's because base models now need less scaffolding for baseline competence; you still need it for specific behavior control, token economy, and custom capabilities (aliases, reference points, hard boundaries).
[00:26:00–00:28:00] Seventh technique: "Examples" section — few-shot examples of desired vs undesired communication patterns written directly into the system prompt (e.g., a good concise engineering-recommendation response vs a bad "You are absolutely right..." padded response). Framed as "training data" / in-context distillation, a technique the presenter says predates GPT-4/Anthropic entirely.
[00:28:00–00:31:01] Bonus technique: cross-model in-context distillation — pull a preferred response from a different model (Claude "Fable") that has fewer verbosity ticks, hand-edit/trim it, and paste it into the system prompt's examples section as a template for the target model (Opus 5) to emulate. Final comparison run: prompt-engineered Opus 5 (22s) noticeably faster/leaner than default smartass Opus 5 (41s) on the same task, with working reference-point aliases.
[00:31:01–00:34:00] Closing argument: the user prompt is the low-leverage lane; the system prompt is high-leverage because it's the law applied to every future prompt and response. "Keep the smart, drop the ass." Argues the real bottleneck in agentic engineering now is the human's communication clarity, not the model or tooling. Positions this as a return-to-fundamentals video after several videos on higher-abstraction concepts (software factories, agent sandboxes). Links a GitHub repo (disler/fixing-smartass-opus-5) with the system prompt and setup scripts. Sign-off: "Stay focused and keep building."
Video references (from description): Fix Opus 5 Codebase — https://github.com/disler/fixing-smartass-opus-5; Software Factory (Advanced) — https://youtu.be/haUfb1ievTE; Zuck's post — https://www.meta.com/thefutureisforeveryone/