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.
| Field | Value |
|---|---|
| Generated by | src/runtime/tenantBrief/generator.js |
| Output | tenant-brief.md on your VPS |
| Operator copy | fleet/briefs/<name>.md via scripts/deploy-fleet.sh |
| Determinism | Same inputs produce the same brief |
Sections
| Section | Contents |
|---|---|
| Header | Workspace name, generation timestamp |
| Captured profile | The business profile captured during onboarding |
| Recent conversation | Last 10 turns |
| Capability gaps | Top recurring gaps and the most recent ones |
| Recent dreams | Insights from the dreaming loop |
| PDF preferences | Style choices Han AI has learned from your feedback |
| Storage footprint | Sizes 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.