Skip to content

Dreaming loop

Every morning at 06:30 in your timezone, Han AI runs a reflection pass against your recent conversations and captured profile, and emits zero to three insights. High-confidence ones come to you on Telegram; the rest stay logged.

What it does

Runs an LLM call with the emit_dream schema, producing up to three structured insights with a confidence score each. Insights at confidence 0.6 or higher are posted to you; everything is appended to the log either way.

FieldValue
Schedule06:30 daily, your tenant timezone
Schemaemit_dream
Insights per run0–3
Posting thresholdconfidence ≥ 0.6
Log path/var/hanai/state/dreams.jsonl

When Han AI uses it

Automatically, every morning. You do not invoke it manually under normal use — though you can force a run from the operator side via scripts/dream-now.js.

What an insight looks like

An insight is a short, decision-grade observation. Not a summary, not a to-do — a thing the AI noticed that you might not have. For example:

  • A pattern across the last week’s conversations that suggests a priority shift.
  • A gap between something you said you cared about and where your attention actually went.
  • A risk that has come up twice in different framings.

Limits

  • It is not a daily digest. Some mornings produce zero insights — that is the design.
  • Low-confidence insights are deliberately suppressed. The threshold protects against noise.
  • Insights are based only on what Han AI has seen — your conversations, your profile, and the documents you’ve shared.

Why a confidence gate

Notifications you can ignore stop being notifications. The 0.6 threshold means a posted insight has earned its interruption.

See also