Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/cirwel/unitaresWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/cirwel/unitares/checkin)<a href="https://agentmods.dev/commands/cirwel/unitares/checkin"><img src="https://agentmods.dev/badge/commands/cirwel/unitares/checkin/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/cirwel/unitares/checkin"><img src="https://agentmods.dev/badge/commands/cirwel/unitares/checkin.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00012 | $0.01682 |
| Opus 5.5 | $0.00005 | $0.00673 |
| Sonnet 5.5 | $0.00002 | $0.00336 |
| Haiku 4.5 | $0.00001 | $0.00168 |
Grade A, and why
checkin scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.
The canonical copy of this command lives in the companion unitares-governance-plugin repo (commands/checkin.md). This copy adapts helper paths to this repo's scripts/client/session_cache.py and deliberately keeps repo-specific guidance the plugin copy does not yet carry: the response_mode="compact" default, the explanation that an argless identity() is gated to a fresh mint, the cache-token rule, the --json payload on the slot stamp, and no reset-milestone step (this repo's helper has none). Sections marked <!-- repo-specific: keep on plugin sync --> must survive a future sync from the plugin.
Before calling tools, check for slot-scoped session caches in the current workspace.
Use the shared helper in this repo:
scripts/client/session_cache.py list --workspace "$PWD"— slot inventory sorted newest-first; pick the entry whoseslotmatches your currentclient_session_id, or the newest entry if you do not have one yetscripts/client/session_cache.py get --slot=<slot> session— read that specific cache
A read without --slot returns the legacy flat session.json, which under S20 is read-only-legacy — do not write back to it and do not assume it corresponds to this process-instance.
If a matching cache exists:
- use
uuidas the expected local identity anchor, not proof by itself - rely on the active session binding or
client_session_idfor ordinary check-ins - do not pass
continuity_tokentoprocess_agent_update; it is reserved for explicit PATH 0 ownership rebinds
If current binding is unclear, call identity(client_session_id=<your client_session_id>) to inspect the active binding. Never call identity() with no arguments: a call carrying no proof argument is gated to a fresh mint, so it reports on a newly created identity instead of yours. Trust the answer only when identity_assurance.caller_proven is true.
If you must rebind to a cached UUID, include a matching live continuity_token
from the same process response: identity(agent_uuid=<uuid>, continuity_token=<token>, resume=true). Never take a continuity_token from
any cache file, whether a legacy v1/flat session.json or a v2 slot cache:
only a token returned to this live process counts as proof. v2 slot caches do
not persist it, and a token found in a legacy file is not a credential.
If this is a fresh process and no ownership proof is available, use /governance-start to mint a fresh identity rather than bare UUID resume. A cached uuid is not a parent by default; /governance-start explains when a handoff justifies declaring it.
If no local continuity state exists and the current identity is unclear, use /governance-start first.
Call process_agent_update once for this explicit /checkin. Outside an explicit request, check in only at a meaningful milestone when you also hold a judgment the substrate cannot infer: a self-correction, revised belief, material change in uncertainty or complexity, or handoff assessment after substantive work. A boundary before or after high-risk work qualifies only when it meets both conditions. The hooks already record per-turn substrate observations; do not manufacture an agent report to echo them.
Inputs:
response_text: concise, secret-free statement of your judgment and the relevant workcomplexity: estimate0.0-1.0confidence: optional, usually omit it. Any value mints a tactical prediction that is scored into the fleet calibration curve, so pass one only when you are stating a genuine belief about how your work will hold up, never a habitual number- use the active session binding or
client_session_id; do not auto-injectcontinuity_token - use
response_mode="compact"by default for Codex; reserveresponse_mode="mirror"for drift, guide/pause verdicts, or diagnostic review
Guidelines:
- There is no fixed time-, turn-, or tool-count cadence. Completion, generated output, a reminder, or task exit alone does not call for a check-in.
- One check-in may cover a coherent unit of work; a milestone or decision point also needs an agent-held judgment the substrate cannot infer.
- If recent local edit context exists, use it to improve the summary, but do not report raw file churn as if it were real progress.
- If deterministic results already happened in the workflow, mention them concretely instead of speaking in generalities.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday Changed · +2 tokens per session 47cccdab4af1
- 2d ago Changed · +26 lines 932debafd215
- 16d ago Changed · +25 lines 1e6edf98c37b
- 1mo ago Changed d4f7eab7ec87
- 1mo ago Changed 3fd7824f1976
- 1mo ago Changed dee9ddfa3bac
- 2mo ago First seen · 54 lines · 10 tokens per session scan A 2099286d78c4
checkin is a command published in the GitHub repository cirwel/unitares (6 stars, last pushed today), licensed Apache-2.0. It adds 12 tokens to every session and 1,682 once invoked, about $0.0000 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
checkin compared with commands from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| checkincirwel/unitares | Command | 6 | today | Apache-2.0 | A | 12 | Claude Code |
| statusbar-styleleeguooooo/claude-code-usage-bar | Command | 389 | 6d ago | MIT | A | 16 | Claude Code |
| icpg-bootstrapalinaqi/maggy | Command | 711 | 24d ago | MIT | A | 0 | Claude Code |
| coder-eval-implement-planUiPath/coder_eval | Command | 156 | yesterday | Apache-2.0 | A | 22 | Claude Code |
| lians-recallLians-ai/Lians | Command | 17 | 4d ago | Apache-2.0 | A | 19 | Claude Code |
| memory-statusRichmondAlake/memorizz | Command | 781 | 4d ago | none | A | 9 | Claude Code |
| sugar-taskroboticforce/sugar | Command | 100 | yesterday | none | A | 14 | Claude Code |