Use a hook for a repeatable event check and instructions for the reason behind it. Keep the handler small enough that a failure can be diagnosed from its exit status.

Lifecycle event → Handler → Exit status → Explain result
  1. 1Lifecycle event
  2. 2Handler
  3. 3Exit status
  4. 4Explain result

Work through the example

Prompt: Demonstrate one passing and one failing hook case using synthetic files.

One practical example

Use the prompt above on one small, named part of your app. Before accepting an edit, ask the agent to point to the source or configuration that supports its answer. If it cannot locate that context, resolve the missing input before expanding the task.

In the diagram, each arrow represents a handoff you can inspect. Keep the intermediate result rather than jumping directly to the final claim. For example, a reported finding should retain its location, and an executed check should retain its outcome. This gives the next attempt a concrete starting point and makes a misleading completion message easier to challenge.

Apply it to your project

Prompt: Demonstrate one passing and one failing hook case using synthetic files. Then compare the resulting diff with the original request. If it changed a neighboring concern, ask why that change was necessary. Save the result only after the relevant check has run, and record any part that remains unverified.

Evidence and limits

Hook schemas and exit behavior are client-specific; copying JSON does not verify dispatch.

This is an educational guide. Its presence in the series does not certify a completed client-specific lab. The series evidence record separates executed checks from exercises and blocked environments.

Inspect the source used in this lesson.

What to do next

Next: When the agent says "done", run the tests yourself once