The Lucid Coding Manifesto

Vibe coding is a feeling. Lucid Coding is knowing.

Agentic engineering is how a lot of software is built now: agents write the code, and people direct them. Lucid Coding is a way to practise it with your eyes open. You know your system, your agents' thinking, and how each piece was built and judged.

Asif Raja

  1. Know your system.

    If you cannot say what your agents changed, why, and what proved it, you don't know your system yet. Every other principle serves this one.

  2. Give agents instruments, not just screenshots.

    A screenshot shows pixels; it hides why they are slow, broken or clipped. Let your app report its own actions, state, network calls, lifecycle timings and DOM and CSS layout in development, and strip that instrumentation from production.

  3. Agree the bar before the build.

    Write down what done means, as behaviours someone else can check, before anyone starts. A bar written after the work describes the work; it cannot judge it.

  4. A blind critic, never the builder, grades the work.

    The one who made it is the worst judge of it. A separate critic, who never sees the builder's reasoning, checks the real result against the bar.

  5. Evidence or it didn't happen.

    A pass carries its proof: test output, a screenshot, a lifecycle or API timing, a log, a link. A claim with nothing attached counts as a fail.

  6. Every run is visible.

    What the agent saw, what it built, and why it passed or failed stay on the record, while the run is live and after it ends. Anyone on the team can read it without asking the agent.

  7. Every run teaches the next.

    Repeated gaps become lessons for the next brief, and past runs set the next budgets. The process improves on the record, where you can check it.

  8. Get the work done; performance comes with experience and measurement.

    Finish the work to the bar first. Then measure what actually happened: when the page painted, when each component mounted, how long each API call took, and where the layout clipped. Speed and token cost improve from numbers on the record, not guesses.