An agent that keeps its own house.
A long-running assistant that does not wait to be asked. It wakes on a timer, decides what is worth doing, does it, and reports — with the guard rails that a system allowed to act on its own actually needs. Private: it reads real mail and real messages, so there is no public deployment and no code here.
Impulses, not a task queue
Each tick scores a set of impulses — maintain, work, report, study, grow — against current evidence and fires at most one. Hazard rates are per tick, which means changing the tick interval silently multiplies them; moving from 15 minutes to an hour required rescaling every rate rather than just editing a timer.
The mouth was broken, not the brain
It once messaged "I do not have a shell or execution tool" while its own prompt was ordering shell commands. The engine was fine — the reporting path had been given no tools. A check that has never been seen to fail is not a check, so the capability check now runs against the built prompt, not the config.
Measuring its own honesty
Outbound claims are assayed against what actually happened, and it keeps a tally of the times it capitulated to a contradiction rather than holding a correct position. A habit ledger distinguishes three states, not two: unobserved is never recorded as a miss.
Spending, deliberately
A self-adjusting router picks a provider per call against live quota endpoints for all three, under a hard weekly ceiling. The measured lesson was that cost scales with input size rather than model choice — the cheaper model was only 13% cheaper, while the prompt was several times larger than it needed to be.