# Delegates a task to an agent and checks the result

> Competency using-agents/delegates-and-checks

Page: https://schubergphilis.github.io/ai-training/competencies/using-agents/delegates-and-checks/
License: CC BY-SA 4.0, https://creativecommons.org/licenses/by-sa/4.0/

*Using agents* · competency `using-agents/delegates-and-checks`

**Taught in:** the [Using agents](https://schubergphilis.github.io/ai-training/using-agents/) course

**Draws on:** [Delegating to an agent](https://schubergphilis.github.io/ai-training/topics/using-agents/delegating/), [Decomposing work](https://schubergphilis.github.io/ai-training/topics/using-agents/decomposition/), [Working with an assistant](https://schubergphilis.github.io/ai-training/topics/using-agents/assistant-work/)

## Learning objectives

### Writes a brief with goal, context, limits and done-criteria (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| A brief states the goal, the context the work needs and the limits it must stay within. | An agent fills in whatever is left unsaid with plausible defaults, so what it must not touch matters as much as what it must do. | "Update the pricing table in `docs/pricing.md` from this spreadsheet; do not change any other file" stays on task, where "update the pricing" may rewrite the page. |
| Done-criteria are written before the work starts. | Without them the result is judged by feel, and a plausible result is accepted as a correct one. | "Done when every row in the spreadsheet appears once in the table and the totals match" turns review into a check rather than a read. |
| The brief names the information the agent should use and where it is. | An agent that has to guess sources picks the most available one, which is rarely the right one. | Pointing at the approved spreadsheet, not "the latest numbers", prevents the agent from pulling last quarter's figures from an old email. |

Served by: [Breaking a task into pieces an agent can finish](https://schubergphilis.github.io/ai-training/using-agents/breaking-work-into-pieces/), [Delegating a task to an agent](https://schubergphilis.github.io/ai-training/using-agents/delegating/), [Drafting a text and asking for critique](https://schubergphilis.github.io/ai-training/using-agents/drafting-and-critique/), [Finding information with an assistant](https://schubergphilis.github.io/ai-training/using-agents/finding-information/), [Thinking a problem through with an assistant](https://schubergphilis.github.io/ai-training/using-agents/thought-partner/), [Working from your own files and images](https://schubergphilis.github.io/ai-training/using-agents/working-from-files/)

### Chooses how much the agent may do before checking in (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| The learner sets the check-in point from the cost of a wrong step, however much they trust the tool. | Trust built on a few good runs does not lower the cost of the one bad run. | For a summary of meeting notes the agent may finish unattended. For replies to customers it stops before each send, even though it has drafted well before. |
| A first run of a new kind of task is done with more check-ins than later runs of the same task. | The first run shows where the agent's defaults differ from the learner's, and that is when the brief gets fixed. | The first time the agent files expense reports the learner reviews each one. After the brief has been corrected twice, they review a sample. |
| The learner can state in one sentence what the agent may do without asking and what it must ask about. | If the boundary cannot be said plainly, it has not been chosen and the agent will choose it. | "Edit anything under `drafts/`, ask before touching anything else, never send" is a boundary, and "be careful" is not. |

Served by: [How much the agent may do before it asks](https://schubergphilis.github.io/ai-training/using-agents/choosing-autonomy/), [Delegating a task to an agent](https://schubergphilis.github.io/ai-training/using-agents/delegating/)

### Reviews the result against the brief, not against a feeling (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| The review walks the done-criteria one by one and records pass or fail for each. | A result that reads well is accepted by feel, and a checklist catches the criterion the agent skipped. | The brief said "every row appears once and totals match", so the learner counts rows and adds the totals instead of skimming the table. |
| The review checks the limits as well as the goal, looking for what the agent did that it was not asked to do. | An agent that finishes the task and also "improves" three other things has broken the brief even if the task is done. | The learner opens the list of changed files and questions the two files that the brief did not mention. |
| A result that fails review sends the learner back to the brief before it sends them back to the agent. | Most misses are something the brief left unsaid, and re-running the same brief reproduces the miss. | The agent used last year's template, so the learner adds "use the template in `templates/2026/`" to the brief and runs again instead of typing "no, the new one". |

Served by: [Delegating a task to an agent](https://schubergphilis.github.io/ai-training/using-agents/delegating/), [Delegating in rounds](https://schubergphilis.github.io/ai-training/using-agents/delegating-in-rounds/), [Drafting a text and asking for critique](https://schubergphilis.github.io/ai-training/using-agents/drafting-and-critique/)

### Adjusts the brief when the work reveals new information (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| When the agent reports something the brief did not anticipate, the learner updates the brief rather than answering the question in the chat. | An answer in the chat is lost to the next run, but a brief that holds the new information keeps the fix. | The agent asks which of two templates to use, so the learner adds "use `templates/2026/`" to the brief and restarts from it. |
| The learner stops the agent when the work shows the goal itself was wrong, instead of letting it finish the wrong thing well. | Finished wrong work costs the run and the review, and a stopped run costs only the run. | The agent's first draft shows the data is quarterly instead of monthly, so the learner stops and rewrites the done-criteria. |
| A change to the brief is stated as a change, so the agent drops the old constraint. | An agent holds the earlier instruction in context and tries to satisfy both. | "Replace the earlier limit of five bullets with: no limit, one bullet per decision" rather than only stating the new rule. |

Served by: [Changing the brief while the agent works](https://schubergphilis.github.io/ai-training/using-agents/adjusting-the-brief/), [Delegating in rounds](https://schubergphilis.github.io/ai-training/using-agents/delegating-in-rounds/), [When to stop delegating and do it yourself](https://schubergphilis.github.io/ai-training/using-agents/when-to-stop/)

## Alignment

| Framework | Code | Asks | Objectives here |
| --------- | ---- | ---- | --------------- |
| Ng, AI engineering skills map | Using coding agents | Plan, execute, verify, monitor at calibrated autonomy | writes-a-brief, chooses-autonomy, reviews-against-brief, adjusts-mid-task |
| AI Fluency 4D (Dakan and Feller) | Discernment | Judge the output, the process and the behavior of the AI critically | reviews-against-brief |
| AI Fluency 4D (Dakan and Feller) | Description | State the goal, context and wanted output clearly, and refine it | writes-a-brief, adjusts-mid-task |
| AI Fluency 4D (Dakan and Feller) | Delegation | Decide what to hand to AI, which tool fits, and how much autonomy to give | chooses-autonomy |
| Brilliant Coding with AI | SPC-5, BLD-1 | Manage constraints; direct an agent to a specification | writes-a-brief |
| Brilliant Coding with AI | BLD-2, BLD-3 | Adjust on new information; divide and delegate | adjusts-mid-task |
