All Posts
AI EngineeringAgent Craft · Part 1 of 12

Day 1 – Why 'Just Prompting' Is Not Enough

Share

Phase 1: Mindset Shift (Days 1–3) — Understand why traditional prompting is insufficient and what replaces it.

Understanding Core Concepts

1. Coding Agent ≠ ChatGPT

A normal LLM answers questions.

A coding agent can act: it reads files, edits code, runs tests, looks at errors, and tries again.

Think of it like the difference between asking a smart friend for advice versus hiring a junior developer who can actually open your project and make changes.

2. Evaluation-Driven Development

In normal software we write unit tests.

In AI systems (especially agents) the output is non-deterministic — the same prompt can produce different code.

So instead of only testing the final code, we also test the process that created it.

We create a set of real test cases, run the agent, score the result, then improve the instructions and repeat.

This closed loop — run → measure → improve → re-measure — is the core skill that separates systematic agent engineering from ad-hoc prompting.

3. Spec vs Prompt

Most people write vague prompts like "Make the face recognition better."

A spec is precise and machine-checkable:

  • Exact inputs and outputs
  • Edge cases that must pass
  • Constraints (don't change the DB schema, keep the existing API, etc.)
  • Success criteria (all 10 cases in cases.json must pass)

Vague prompt: "Make it better" → Agent guesses Clear spec: "Pass all 10 test cases" → Agent measures, improves predictably

A prompt-heavy workflow becomes dramatically more effective once you switch to spec-driven development.

4. Deterministic Checks vs LLM-as-a-Judge

Two ways to score the agent's work:

  • Deterministic: Does the code compile? Do the unit tests pass? Does it return the expected output? These are objective and cheap.
  • LLM-as-a-Judge: Ask another strong model "Is this code clean, secure, and maintainable?" Useful for softer qualities, but more expensive and less reliable.

Best practice: Start deterministic (compiled? tests pass? correct output?), then add judge scores for softer qualities later.

Tiny Action for Today (15–30 minutes)

Open one feature the agent has been writing — for example, face matching or attendance logging — and answer these three questions in a note:

  1. What does "success" look like in concrete terms?
  2. How would I automatically check if the agent succeeded?
  3. What is the weakest part of the instructions I currently give the agent?

That's it. No coding required yet — just clarity.

Share
Back to all posts