Anthropic developer Thariq Shihipar argues that the quality of outputs from Claude’s new Fable 5 model depends on how well users identify their own knowledge gaps before writing prompts.
In this article
Shihipar says this is the first model where output quality is limited by the user’s ability to clarify what they do not know. He divides knowledge into four categories. Known Knowns are facts already in the prompt. Known Unknowns are questions you know you have not solved yet. Unknown Knowns are ideas so obvious you would never write them down but would recognise them if seen. The critical category is Unknown Unknowns, meaning things you have not considered at all.
Too much detail is just as bad as being too vague
Planning ahead alone is not enough. Unknowns can surface deep in the implementation or signal that the problem needs a completely different solution. Too much specificity risks Fable 5 following instructions rigidly, even when a change of course makes more sense. Too much vagueness gets you decisions based on industry defaults that do not fit the specific task.
“When you don’t account for your unknowns you fail both ways,” Shihipar writes. Claude can help you discover your own unknowns faster because it searches codebases and the internet at high speed. The key is giving Claude context about your starting point, meaning where you are in your thinking and what experience you have with the problem.
Uncover blind spots before building
Shihipar describes several techniques for the phase before actual implementation. In what he calls a “blindspot pass,” you ask Claude to identify your unknown unknowns. This works especially well when you are working in an unfamiliar part of the codebase.
An example prompt he suggests is: “I’m working on adding a new auth provider but I know nothing about the auth modules in this codebase. Can you do a blindspot pass to help me figure out my relevant unknown unknowns and help me prompt you better.”
For areas with many “unknown knowns,” like visual design, Shihipar recommends brainstorming and prototyping. Instead of jumping into implementation, he has Claude generate several radically different design directions as HTML artifacts so he can react to them. He starts almost every coding session with an exploration or brainstorming phase to consciously define the project scope.
Other techniques he describes include structured interviews, where Claude asks the user question by question about ambiguities, prioritising questions whose answers would change the architecture. References also matter. Source code is the best reference, even if it is written in a different programming language. Claude Design, for example, reads a website’s underlying code, not just the screenshot.
Before the actual work begins, Shihipar has Claude create an implementation plan that focuses on the parts most likely to change, such as data models, type interfaces, and everything on the user side. Mechanical refactoring comes last.
Document and understand during and after implementation
Unknowns also lurk during implementation. He asks Claude Code to keep a temporary “implementation-notes.md” file where it tracks decisions it makes so they can learn from the next attempt. When unexpected edge cases come up, Claude should pick the conservative option, log the deviation, and keep working.
After implementation, Shihipar recommends two techniques. First, “pitches and explainers,” which are summary documents for stakeholders that bundle the prototype, specs, and implementation notes. Second, “quizzes,” where Claude generates an HTML report detailing the changes made, with context and insights, followed by a quiz. Shihipar says he does not merge until he passes the quiz without any errors.
Shihipar shows how these techniques work together using the example of the launch video for Fable, which he edited entirely with Claude Code. Video editing was new territory for him.
He started with what he knew. Claude can edit and transcribe videos using code. It was unclear whether the accuracy would be good enough, so he had someone explain how transcription works with Whisper and whether filler words and pauses could be precisely cut using ffmpeg. For the time-controlled fade-in of UI elements, he built a prototype with Remotion.
When the result looked flat in terms of color, he first tried having Claude generate various color-grading variations. But he realised that he did not know what “good” looked like when it came to color grading. Instead of blindly evaluating variations, he had Claude teach him about the subject to uncover his unknowns.
The more powerful the models get, the more you can achieve with the right approach. If a long-running task goes sideways, you likely need to invest more time defining your own unknowns or create an implementation plan that lets Claude improvise through them.
“Every explainer, brainstorm, interview, prototype, and reference is a cheap way to find out what you didn’t know before it gets expensive to fix,” he writes. Shihipar also put together a visual version of his tips on a website.
What it means
For people making things with AI, the work shifts from just writing instructions to actively diagnosing your own confusion. You must spend time defining what you do not know before asking the model to build. This prevents the AI from following rigid paths based on incomplete information or defaulting to generic industry standards.




