A hook works quietly, but the chat keeps a record of it: every run that has something to report leaves a row, and every hook DataMind Oda writes, changes or deletes leaves a card. This page shows how to read both.
These rows and cards are part of the desktop app and the VS Code extension; in the web app they do not appear. What hooks are, and where you manage them, is on Hooks; Trust a folder's hooks covers trust, and Restore a hooks file version covers saved versions.
Running the {event} hook, or the hook's own status message when it has one.PostToolUse · Write), followed by a one-line summary of how it ended.| Summary | What it means |
|---|---|
added a reminder | The hook passed guidance to Oda; open the row to read it under Reminder for the model. |
blocked: {reason} | The hook stopped the step it ran on, so it did not go ahead. The first line of its reason shows after blocked:; with no reason, the first line of the error output stands in, and with neither the row reads blocked. |
asked for approval | The hook asked you to confirm the step it ran on before it could go ahead. |
asked to stop | The hook asked for the run to stop; the request is recorded on the row. |
failed with exit code {code} | The hook's command exited with an error; open the row for its error output. |
could not run | The run produced no result, so no exit code was recorded. |
stopped before it finished | The run was stopped before it finished. |
| A line of the hook's message | A plain run that recorded a message shows its first line; open the row for the whole text under Message. |
A finished row opens to show:
{ms} ms and the exit code as exit {code}, each shown when it was recorded.created, changed or deleted. A write made in a Full access session reads created without asking (Full access), or changed or deleted in the same shape.stopped before it finished.You approved this write. or Full access wrote it without an approval prompt., followed by The file's previous version is kept in Settings > Hooks. The version can be restored from the file's saved versions.The row is labelled with the hook's own status message. A hook without one is labelled with its event and matcher, for example PostToolUse · Write, and reads Running the {event} hook while it runs.
No. The row stays collapsed while the hook runs; it opens once the run has finished and there is something to read.
Because it finished with nothing to report. A quiet, plain run leaves no row, so if the row had appeared while the hook ran, it goes away when the run ends. Runs that block, ask, stop, fail or record a message keep their row.
added a reminder mean?The hook passed a piece of guidance to Oda. Open the row to read it under Reminder for the model.
blocked mean on a hook run?The hook stopped the step it ran on, so the step did not go ahead. When the hook recorded a reason, its first line shows after blocked:; with no reason, the first line of the error output stands in.
asked for approval mean?The hook asked you to confirm the step it ran on before the step could go ahead.
asked to stop mean?The hook asked for the run to stop. The request is recorded on the row; the run itself is not halted by it.
could not run mean?The run produced no result, so no exit code was recorded. Open the row for anything it recorded.
The hook's command ran and ended with an error. The code it reported sits in the summary; open the row for the error output under Error output.
stopped before it finished mean?The run was stopped before it could finish, so there is no result. On a write card, the same line means the write was stopped before it finished, and Result shows what it reported.
Open the write's card: Event, Matcher, Command and File show what Oda wrote. The file's earlier state is kept as a version you can restore, described on Restore a hooks file version.
Open the card and read its note. You approved this write. means the write went ahead with your approval; Full access wrote it without an approval prompt. means the session ran in Full access and no prompt appeared. The outcome on the card marks that case too: created without asking (Full access).