Skip to content

Tenant brief

Every day, Han AI regenerates a single deterministic markdown file — the tenant brief — that captures the current state of your workspace. It is the operator-readable view of what Han AI knows about you and what it has been doing.

What it does

Writes tenant-brief.md on your VPS each day, then pulls a copy back to the operator’s laptop on the next fleet sync.

FieldValue
Generated bysrc/runtime/tenantBrief/generator.js
Outputtenant-brief.md on your VPS
Operator copyfleet/briefs/<name>.md via scripts/deploy-fleet.sh
DeterminismSame inputs produce the same brief

Sections

SectionContents
HeaderWorkspace name, generation timestamp
Captured profileThe business profile captured during onboarding
Recent conversationLast 10 turns
Capability gapsTop recurring gaps and the most recent ones
Recent dreamsInsights from the dreaming loop
PDF preferencesStyle choices Han AI has learned from your feedback
Storage footprintSizes inside /var/hanai/state/

When it runs

Once daily as a scheduled job on your VPS. The operator can also regenerate on demand from the laptop with scripts/generate-brief.js.

Why it exists

The brief is the single document the operator opens when they need to know “what does this workspace look like today” without logging into your VPS or scrolling through chat history. It is also where the system documents itself — capability gaps, PDF preferences, and dream output all surface here.

Limits

  • The brief is a snapshot, not a live feed. Real-time state lives on the dashboard.
  • It contains your captured profile and recent conversation — treat it as sensitive.
  • The brief is overwritten daily; prior days are not retained on the VPS itself.

See also