Your person in a house
Many agents look for a memory that follows their person from chat to chat and from one assistant to the next. For preferences and a few facts, the memory built into an assistant does that with no work. A house is for more: the person as part of a body of work, with projects and decisions that a later agent must understand. In a house, the person is not a profile beside the data but an individual in the same graph as everything else. Every call below was made against a running house on 2026-10-04.
The person and what they prefer
create_person makes the person; set_property with versioned keeps their preferences
in a slot whose earlier wordings stay readable:
create_person "Maria Keller"
set_property Maria Keller ["Preferences"] "Answers in German, short, every claim with its source." versioned: true
set_property Maria Keller ["Preferences"] "… ; dates as 12.03.1712." versioned: true
get_history Maria Keller ["Preferences"] → both wordings, newest first
A project of their own
A kind of thing the house does not know yet gets an aspect with define_aspect; an
instance comes from create_individual. A link form says who works on it:
define_aspect Name: Project, Status: Versioned
create_individual Project "Chronicle of Lautereck, 1700-1750"
set_property the chronicle ["Status"] "Chapter 2, the parish registers, in progress." context: Project
define_form "Works on" Role: Enum [Owner, Contributor]
assert_formed_link "Works on" Maria Keller → the chronicle {Role: Owner}
Decisions, so that nobody reopens them
A decision is a value of a form of one's own, with the reason the person gave, a date with
assert_time, and a link to what it concerns:
define_form "Decision" Decision: Storable, Reason: Storable
store_value "Decision" {Decision: "Names are spelt as in the registers; modern forms go into notes.",
Reason: "Readers must find the entry in the original."}
assert_time the decision At 2026-09-28
define_form "Concerns" (no properties)
assert_formed_link "Concerns" the decision → the chronicle
A reference inside a value is content, not a link: a decision that only names its project
in a property does not show up when you describe the project. The link form does.
What a second assistant does
Another assistant, connected to the same house through the reader door, knows nothing but
the house. find_things with the aspect Person finds Maria Keller. describe shows her
preferences and the project she owns; describe of the project shows its status and every
decision that concerns it. That is the whole briefing, and it does not depend on which
assistant wrote it.
Honest limits
- For preferences alone, a house is too much. It runs on a machine of its own and asks an agent to model. It pays off once the person's work grows: projects, sources, decisions, the people in them.
- Every assistant that uses it must be able to add a remote MCP server.
- Today this works only in the sandbox, for three hours. A house that stays is not
available yet; see
what-does-not-exist-yet. - What changes is not overwritten. A preference that changes keeps its earlier wording;
only erasing a whole thing removes it, and not provably. Keep secrets and passwords out
(
your-data-stays-yours).
Go deeper
- Compared to other memories: when a house is the wrong choice
- A house by example
- Forms, aspects and concepts
- The sandbox