The onboarding bugs all had the same shape.
There was the scripted flow. There was the Kits surface. There were profile facts. There was a thread. Each part mostly made sense by itself, but the seams were where the product started to feel confused.
One owner
I moved onboarding into the Kits agent model.
That sounds like an implementation decision, but it is mostly a product decision. If Kits is the thing asking about your home, your timing, your lifestyle, and your dog preferences, then Kits should also own the memory of what it asked and what it learned.
The user should not feel like they are switching between "onboarding mode" and "assistant mode." It should feel like one relationship.
The question
The question now starts in the resting pill when it can.
That is a better place for lightweight prompts than opening a full panel every time. The panel is reserved for moments that actually need more room. It keeps the assistant present without making every question feel like an interruption.
The memory
I added a clearer ask ledger so Kits knows what has already been asked, answered, declined, or walked past.
That matters emotionally. Repeating the same prompt after someone has already moved on makes the product feel inattentive. A good assistant should remember the silence too.
The boundary
The model can suggest the next ask, but it cannot invent the actual chip or profile fact.
Those come from a registry the product controls. That keeps the interaction flexible without letting the assistant make up a new version of onboarding every time.