# Recognizes an agent, its tools and its degree of autonomy

> Competency concepts/recognizes-agents

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

*Concepts* · competency `concepts/recognizes-agents`

**Taught in:** the [Concepts](https://schubergphilis.github.io/ai-training/concepts/) course

**Draws on:** [What an agent is](https://schubergphilis.github.io/ai-training/topics/concepts/what-is-an-agent/), [Capabilities and limits](https://schubergphilis.github.io/ai-training/topics/concepts/limits/)

## Learning objectives

### Tells a chat assistant from an agent by what it can do unprompted (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| An assistant produces text for a person to act on, and an agent takes actions through tools and decides what to do next on its own. | The two need different handling, and treating an agent as a chat box means not noticing what it did. | A chatbot that drafts an email is an assistant. A tool that reads the inbox, drafts replies and sends them without another prompt is an agent. |
| The learner tells the difference by asking what the system can do without another prompt, whatever its interface looks like. | A chat window can front an agent, and a button can trigger a plain model call, so the interface says nothing. | Two products both show a chat box, and the learner asks "does it run the query itself or give me the query?" and classifies them differently. |
| The learner names the tools an agent has before judging what it can do. | An agent's reach is its tool list, and a research agent with a browser tool is a different risk from one with a browser and an email tool. | Reading the product page, the learner lists "web search, file read, calendar write" and notes that calendar write is the one that acts on others. |

Served by: [Assistant or agent?](https://schubergphilis.github.io/ai-training/concepts/assistant-or-agent/)

### Places a product or workflow on the autonomy scale (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| The learner places a workflow by who decides the next step: a person at every step, the system with approval at some steps, or the system alone. | Autonomy is about who makes the decisions, and the amount of text the model produces says nothing about it. | Autocomplete in an editor is low autonomy even when it writes a whole function, because the person accepts each suggestion. |
| The learner can say what would move a workflow one step up or down the scale. | Autonomy is a design choice, and seeing the dial makes the choice visible rather than accepting the product's default. | "If the agent also merged the pull request instead of opening it, it would move from supervised to autonomous." |
| The learner places the same product differently depending on how it is configured. | Most agent products have permission settings, and the setting decides the autonomy. | A coding agent in "ask before each edit" mode and the same agent in "auto-accept" mode go on different points of the scale. |

Served by: [Who decides the next step](https://schubergphilis.github.io/ai-training/concepts/autonomy-scale/)

### Describes the observe, think, act loop and the tools in it (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| The learner describes the loop as: the agent observes (reads a result), thinks (decides the next step), acts (calls a tool), and repeats until it decides it is done. | Naming the loop makes the agent's behavior predictable and points at where a step can go wrong (Claude Platform 101, Claude Academy). | Watching a coding agent, the learner narrates "it ran the tests, read the failure, and now it is editing the file". |
| The learner can name which tools were used in a given run and what each observation was. | A tool call is where the agent touches the world, so the tool list is the list of things that can have side effects. | From a transcript the learner lists "searched the web twice, read one file, wrote one file" and notes the write is the step to check. |
| The learner knows the loop ends either because the agent decides it is done or because a limit stops it, and can tell which happened. | "Stopped because the budget ran out" and "stopped because it is finished" need different follow-up. | An agent that ends with a half-written file and no summary hit a limit, so the learner checks the log rather than trusting the output. |

Served by: [Watch a tiny agent work](https://schubergphilis.github.io/ai-training/concepts/agent-loop/)

### Follows one prompt through its model requests and names the part of the agent behind each step (base)

| Claim | Why | Example |
| ----- | --- | ------- |
| The learner splits the handling of one prompt into model requests, a new one after each tool result, and says where each request ends. | Each request is a full call to the model with the whole history, and one prompt to an agent is often many of them (How the agent loop works, Claude Code documentation). | For "find last month's invoices and total them", the learner lists a request that asks for a search, one that asks to open two files, and a last one that writes the answer. |
| The learner says for each step whether the model, the harness or the environment did it. | The three parts fail in different ways, so knowing which part did a step shows where to look when the step goes wrong. | "The model chose to search, the harness checked the permission and ran the search, and the shared drive returned three files." |
| The learner explains that the model remembers earlier steps only because the harness sends them again with each request. | The model is stateless, so anything the harness leaves out is gone for the model (Messages, Claude Platform documentation). | Asked how the agent knew what was in a file it read two steps earlier, the learner says the file's text was part of the history in the next request. |

Served by: [One prompt, many requests](https://schubergphilis.github.io/ai-training/concepts/one-prompt-many-requests/)

## Alignment

| Framework | Code | Asks | Objectives here |
| --------- | ---- | ---- | --------------- |
| AI Fluency 4D (Dakan and Feller) | Delegation | Decide what to hand to AI, which tool fits, and how much autonomy to give | places-on-autonomy-scale |

## References

- Claude Platform 101, Claude Academy, https://academy.claude.com/courses/claude-platform-101
- How the agent loop works, Claude Code documentation, https://code.claude.com/docs/en/agent-sdk/agent-loop
- Messages, Claude Platform documentation, https://platform.claude.com/docs/en/api/messages
