← Back to all articles

Interviewer's Sneer: 'You've Coded with AI for a Year, How Do You Trust Claude Code's Output?' My Reply: 'Just Use Claude Fable 5!'

面试官坏笑:“你用 AI 编程一年了,怎么保证 Claude Code 写出来的代码是对的?”我:“直接上 Claude Fable 5 啊!”

沉默王二 2026-06-14 4,630 views
Claude Agent AI编程

Hello everyone, I'm Er Ge.

I've noticed that regarding Claude Code, the two most frequently asked questions in groups, comments, and private messages are: How exactly do you use Claude Code? And how do you ensure the code it writes is correct?

The first question is easy to answer: just install it and use it.

You can even use PaiSwitch to switch to any underlying model (open source). It was just upgraded yesterday, adding a desktop version.

The answer to the second question requires a lengthy discussion.

In today's article, I've condensed my accumulated experience into 6 practical cases. Each case includes specific prompts, execution processes, and final results, so everyone will understand after reading.

TIPS: Claude just upgraded to the Fable 5 model today. The AI community is raving that this model surpasses GPT-5.5. Have you tried it?

By the way, you can use it by upgrading Claude to the latest version.

01. CLAUDE.md is Extremely Important

Many users install Claude Code and immediately start asking it to write code.

However, my experience is that the first step should be to write CLAUDE.md.

CLAUDE.md is Claude Code's project-level instruction file, placed in the project root directory. Claude Code automatically loads it every time a new session starts. You can think of it as writing a "new employee onboarding manual" for Claude Code, which should clearly define the project's tech stack, coding standards, directory structure, and forbidden commands.

Case 1: Adding an /export Command to PaiCLI

I'll use PaiCLI for this comparison.

PaiCLI is a Java Agent CLI that benchmarks against Claude Code.

Test prompt:

Add an /export command to PaiCLI to export the current session's chat history as a Markdown file, saving it to the ~/.paicli/exports/ directory.

Without PAI.md, the model's context would only be the user's sentence and the code files it reads.

With PAI.md, PaiCLI injects the content of PAI.md into the system prompt upon startup.

Let's look at the execution result of the /export command.

Start a new session, enter any prompt. Then execute the /export command.

Then let's look at the content of the exported Markdown file.

The content of PAI.md is shown below.

This means that although we only sent a very simple message when using the Agent, due to the presence of Harness, the system instructions are actually filled with a lot of context.

Including descriptions of Skills, MCP tools, and so on.

Here's a reminder: your Agent doesn't need too many global Skills and MCPs installed, as they are very likely to be distracting context information.

It's best to tailor them to each project.

02. Crafting a 3D Interactive Page with PaiCLI

The most visually impactful areas are frontend and 3D, so let's use a Three.js task to demonstrate PaiCLI's code generation capabilities.

The reason I didn't directly use Claude Code is that this level of case doesn't require it yet, haha.

It also happens to prove PaiCLI's capabilities.

Case 2: Three.js Starry Particle Interactive Page

The prompt is as follows.

Create a Three.js starry particle interactive page. Requirements: 1) 3000 particles randomly distributed in a spherical space, with gradient colors (blue-purple-pink); 2) When the mouse moves, surrounding particles are 'attracted' towards the cursor, creating a ripple effect; 3) The background is a dark gradient, with glowing text 'Built with PaiCLI' at the bottom; 4) Supports mobile touch interaction; 5) Output a complete HTML file that can be opened directly in a browser.

The effect generated by DeepSeek V4 Pro shows natural particle color gradients, a clear ripple effect when the mouse moves over them, and normal mobile touch interaction.

Tip: Prompt Writing for Visual Tasks

There's a pattern for prompts in visual tasks: separate 'what to see' from 'what to interact with'.

First describe the static elements (particle colors, background color, text style), then describe the dynamic interactions (mouse movement effects, click behavior, animations).

Claude Code/Codex is very capable of handling this kind of structured description.

03. Skills Transform PaiCLI into an Expert

A Skill is Claude Code's 'professional knowledge package'. With the appropriate Skill installed, Claude Code becomes more professional and accurate when handling tasks in specific domains.

For demonstration purposes, we'll still use PaiCLI to showcase the power of Skills. PaiCLI also supports Skills, and the installation method is the same as Claude Code.

Case: Competitive Research with the web-access Skill

The prompt is as follows.

Use web-access to help me research Dify and FastGPT, two AI workflow platforms. Focus on node types, model integration methods, and whether they support private deployment. Organize the findings into a comparison table.

Without web-access, PaiCLI might just use WebSearch a few times and submit a superficial result. The information provided would lack depth.

But with web-access, it's completely different.

The comparison table has a very high information density.

Tip: Skill Installation and Management

Installing Skills is very simple; just tell Claude Code to install them. For example:

Please install the web-access skill, its repository address is https://github.com/eze-is/web-access

Installed Skill files are located in the project's .claude/skills/ directory. Each Skill has a SKILL.md main file defining its instruction logic, and can also have a references/ directory for reference documentation. We can also write our own Skills; the format is a Markdown file with a YAML header.

It's recommended to install and configure Skills individually for each project, rather than globally, as global installations consume a large amount of context.

04. Hooks: Deterministic Rules for Probabilistic Models

CLAUDE.md and Skills, as discussed earlier, are 'prompt-level constraints' – essentially telling the model 'how to do things' within the system prompt.

Hooks are different; they are code-level intercepts that run outside the model. You set the rules, and they execute every time, without relying on chance.

For example, CLAUDE.md is like verbally telling a new employee a rule, 'Our team's code is not allowed to use MD5 encryption.' The new employee will usually comply, but might forget when busy. A Hook is like an automated check in a CI/CD pipeline: if MD5 is used in the code, it simply won't compile, regardless of whether you forgot or not.

Three Trigger Timings

Hooks support three timings:

  • PreToolUse – Triggered before the model calls a tool. Suitable for security intercepts, such as detecting a git push attempting to commit a .env file and directly rejecting it, without needing the model to decide.
  • PostToolUse – Triggered after a tool has finished executing. Suitable for quality checks, such as automatically running mvn compile after writing a Java file. If compilation fails, the error information is fed back to the model, which then automatically fixes and recompiles.
  • Stop – Triggered when the session ends. Suitable for state persistence, such as automatically saving key decisions from the current session to a log, and automatically restoring context when a new session starts next time.

Configuration Method

Hooks are configured in .claude/settings.json. A compilation check Hook for a Java backend project looks like this:

{
  "hooks": {
    "afterWrite": [
      {
        "pattern": "**/*.java",
        "command": "mvn compile -q 2>&1 | tail -20"
      }
    ]
  }
}

For frontend projects, the command can be changed to eslint --fix; for Python projects, to pytest -x.

The principle is the same – after a tool executes, a validation runs automatically. If it fails, the error is fed back to the model. The model fixes it, triggers validation again, and this loop continues until it passes.

05. Fable 5 Creates a Promotional PPT for PaiCLI

Just today, Anthropic released Claude Fable 5, a model hailed as 'god-tier' by the AI community.

You can see it by updating the Claude desktop version to the latest. The usage deadline is June 22nd.

Where Fable 5 Excels

Let's skip the benchmarks and go straight to practical application.

Prompt:

I need to design a promotional PPT for the PaiCLI project, using the Skill from https://github.com/op7418/guizang-ppt-skill.
Project basic information: an Agent CLI similar to Claude Code.
Target audience: University students graduating in 2027, students interested in learning about Agents.
Brand tone: Warm and healing, naturally relaxed, outwardly cool but inwardly passionate, with a sense of story.

You can use the code library available (not all materials need to be used), I only require the final PPT to have top-tier aesthetics that make people want to immediately start learning.

The Claude desktop version will first acquire the Guizang PPT Skill, understand the PaiCLI project materials, and then create the promotional PPT according to the Skill's methodology.

Overall token consumption is acceptable.

Pro and Max users can use it for free before June 22nd. I recommend everyone try it during this window.

I've taken screenshots for everyone to see the effect. Overall, I think it's very nice, and the project's key points are all captured.

06. Context Management and Prompt Principles

Claude Code's context window is limited. As conversations lengthen, earlier dialogues are automatically compressed, and previous details might be lost.

This means context is an Agent's most expensive resource.

'Don't install too many global Skills and MCPs' is essentially about managing context overhead – every additional Skill description or MCP tool definition consumes context budget.

Several principles for handling this:

  • Break complex tasks into independent subtasks, and handle each subtask in a new session.
  • Write critical project information in CLAUDE.md; it loads automatically every time and won't be lost due to compression.
  • If the model seems to be 'forgetting things,' manually execute /compact to trigger compression, retaining recent conversations and key decisions while clearing early redundancies.

A good prompt includes three elements:

  • Object of operation – which file, which piece of code
  • Action – modify, delete, add, refactor
  • Verification method – run tests, compile, manual confirmation

With all three elements, execution accuracy is much higher.

Ultimately, the core competitiveness in the era of AI programming isn't how powerful the model is, but whether you can combine the model's capabilities with engineering tools to form a repeatable, verifiable workflow.

Tools don't become powerful on their own; it's how you wield them that makes them powerful.

See you next time.

Read original on juejin.cn →