Agent layer
Thinking
What the machine worked out before it answered. Collapsed by default: the answer is what was asked for.
Thought for 4 s
The strip answers when, the share answers how much. One legend can key both.
Markup
<details class="inst-thinking">
<summary class="inst-thinking-head"><span class="inst-step-twist"></span>Thought for 4 s</summary>
<div class="inst-thinking-body">The strip answers when, the share answers how much. One legend can key both.</div>
</details>
Contract
| What | Required | Why |
|---|---|---|
A <details> with a <summary> |
yes | Disclosure, the keyboard and the role all come from the platform |
| Collapsed by default | yes | Open, it puts the working before the answer on every turn |
| A duration in the summary | no | It is the one fact about thinking that is worth a line when it is shut |
| A tone or a dot | no | Nothing here can fail |
Not a step. A step is a call — a name, arguments, a result, an outcome, and a dot reporting how it ended. Thinking has none of those, and dressed as a step it would promise a status it does not have.
API
| Name | What it does |
|---|---|
| class | |
inst-thinking | The disclosure. A <details>, collapsed by default |
inst-thinking-head | The summary line: how long it took |
inst-thinking-body | The reasoning, set as an aside |
inst-step-twist | The chevron. The kit has one disclosure glyph and it already has a name |
| Name | Value | Where from |
|---|---|---|
| token | ||
--text-xs | 0.78125rem | base +4: scale |
--text-muted | light-dark(var(--n-8), var(--n-6)) | one across every cell |
--text-secondary | light-dark(var(--n-9), var(--n-5)) | one across every cell |
--leading-ui | 1.4 | one across every cell |
--hairline | 1px | base +1: screen |
--border | light-dark(oklch(0 0 0 / 0.12), oklch(1 0 0 / 0.11)) | one across every cell |
--pad-panel | var(--space-5) | base +14: density · scale |
--space-3 | 6px | one across every cell |
Why the kit works this way — the constitution · Open source under MIT, github.com/keshon/instrument