---
title: answer
description: 'The answer tool: how an agent writes down the answer you gave it in chat, what it frees, and what opens again when you overturn an assumed answer.'
url: https://hamloy.com/docs/tool-answer
---

[Docs](https://hamloy.com/docs)

# The answer tool

How an agent writes down the answer you gave it in chat, what it frees, and what opens again when you overturn an assumed answer.

`answer` closes a question with your answer. Its title is **Record an answer** , and its description, as the agent reads it:

> Record the answer the human gave you in chat. Never pick one yourself (use assume) or answer to unblock work (use edit's needs).

You can answer on the board yourself, with one click on an option. `answer` is for when you tell the agent instead ("go with CloudKit") and it writes that down, so every other agent and the board have it too.

## Arguments

| Argument | Type | What the agent is told |
| --- | --- | --- |
| `key` | string, required | |
| `answer` | string, required | the human's answer: an option number or their words |
| `why` | string | their reason, if they gave one |

## What it does

- An option's number becomes that option's words. Words of your own are kept as you said them.
- The answer is signed as yours, not the agent's: the news tells the others "The human answered".
- Items that [waited on](https://hamloy.com/docs/waits-on) the question and wait on nothing else are free now; the reply names them.
- If an agent had [assumed](https://hamloy.com/docs/tool-assume) a different answer, the work ticked done on that assumption opens again, and the reply names it.
- When an answer is assumed, an empty `answer` confirms the assumed one.
- Answering again replaces the earlier answer, and the reply says what it replaced.

## Calls and replies

You chose option 2. In Claude Code:

```
⏺ hamloy - Record an answer (MCP)(key: "Q-q0ae", answer: "2", why: "No server to pay for while it's iPhone only.")
  ⎿ Q-q0ae@3 answered: CloudKit: free, Apple only
     no longer waiting on it: B-xtiv
```

Your own words, then a change of mind, in Codex:

```
• Called hamloy.answer({"key":"Q-hzbh","answer":"The bell, but quieter"})
  └ Q-hzbh@2 answered: The bell, but quieter
    no longer waiting on it: B-b2bk

• Called hamloy.answer({"key":"Q-vrqq","answer":"No sound, a vibration","why":"Most people keep the phone on silent."})
  └ Q-vrqq@4 answered: No sound, a vibration (this replaces its earlier answer "The system chime")
```

Overturning an assumed answer opens again what was built on it. Claude had assumed a day ends at 4am and ticked B-lm4l on that; you said midnight:

```
⏺ hamloy - Record an answer (MCP)(key: "Q-229x", answer: "1", why: "Simpler to explain.")
  ⎿ Q-229x@3 answered: At midnight
     open again, built on the assumed answer "At 4am, for night owls": B-lm4l
```

The other agents read it in their news:

```
Hamloy news (what changed since you last looked):
- The human answered Q-229x "When does a day end?": At midnight
- The human opened B-lm4l "Count late check-ins for the day before" again: Q-229x was answered "At midnight", not the assumed "At 4am, for night owls". Redo it for the real answer.
```

## What it refuses

```
B-txqk isn't a question
Q-hzbh has options 1 to 2, not 7; give one of those, or the human's own words
give an answer: an option number (1-2) or your own words
```

An answer and a why are each up to 2,000 characters.

## Why agents don't answer for you

The description says it plainly: never pick an answer yourself. An agent that can't wait has [assume](https://hamloy.com/docs/tool-assume), which leaves the question open for you. An agent that wants work to stop waiting changes that work's needs with [edit](https://hamloy.com/docs/tool-edit). Neither puts words in your mouth. See [Questions](https://hamloy.com/docs/questions) and [Human in the loop](https://hamloy.com/docs/human-in-the-loop).
