Most conversations with an AI assistant start more or less in the same place. Oftentimes you have to set the context of the conversation, give it some prerequisite data, explain expectations, preferences and so on. In practice, this might mean reminders of previous discussions or style preferences, while for a programming task it might be as simple as specifying the language and frameworks being used.

What we at MidBrain aim to create is an AI companion that follows you throughout your life. A companion that knows what you discussed 3 years ago, your preferences, and already has all those context clues that you would expect from a close colleague of many years.

Today’s conversations with AI assistants tend to span a few hours, perhaps up to a day. But imagine a world where your AI companion has spent decades with you, learning your preferences and building on all of those shared experiences. But maybe even more importantly, it has also learned what has worked and what hasn’t worked in your environment and in your setting.

If we follow this train of thought into the far future, where knowledge work may have been commoditized to some extent, the big differentiator could be the experiences people have shared with their agents and what those agents have learned along the way.

My agent is better than your agent!

What a companion actually means

A companion, in the ordinary sense of the word, earns that title through how much shared history it carries into the next moment. That is a simple enough idea to state, but what it actually asks of a system is perhaps easier to see with an example.

Say part of a walk gets spent talking a new feature through out loud with an agent on your phone, back and forth in voice mode until the idea holds together. That evening you sit down and describe the same feature to a coding agent in a terminal, and it starts building. Somewhere in there the layout refuses to come together in words, so you sketch it by hand instead, a few boxes and arrows until the screen finally makes sense. In today's systems, the agent from the walk has never seen a line of the resulting code, and the coding agent building it that night has never seen the sketch, so every hop between them starts over.

The companion we are building is the layer that would carry that thread through all of it: the idea from the walk, the code it became, and the sketch that shaped its layout, held as one continuous piece of context, available to whichever tool happens to be open in front of you.

Figure 2. Today every tool starts from zero. A companion carries one thread of context through all of them.
Figure 2. Today every tool starts from zero. A companion carries one thread of context through all of them.

Moreover, over years of these experiences, your agent will hold all of that information, including all those micro-adjustments that happen continuously and are very specific to you and your tasks, which means that even highly personal traits, such as taste, could be captured by such a system. An example of this could be something as ordinary as writing emails. Over time, your agent might learn that you prefer short, friendly messages, avoid overly formal language, and like to end emails with a clear next step. These are not necessarily preferences you ever explicitly stated, but small patterns the agent picked up from the countless edits and adjustments you've made along the way. A MidBrain-augmented agent could automatically carry that understanding into future interactions, drafting messages that already sound like you, without you having to explain your preferences or make the same corrections over and over again.

Figure 3. Taste is picked up from small edits, never stated.
Figure 3. Taste is picked up from small edits, never stated.

So when we say “My agent is better than your agent”, we mean that the agent you have trained and developed over those decades is better simply because of that shared experience and steering. That is not something that we want to commoditize: your agent is always yours!

As such, our guiding principle is always that your agent’s memories, experiences, and learned skills remain owned and controlled by you and no one else.

Learning versus storage

Most attempts to solve this treat it as a storage problem, but we would argue that storage is mostly a prerequisite. It is not hard to keep a transcript, extract the salient facts, and hand them back when they seem relevant. Systems that do this are genuinely useful, and they answer a real question, which is what the assistant saw. Take the fact that you prefer tea. A system that has stored this keeps it filed in a database from the day you first mentioned it, and every time it matters, something has to go find that record, read "user prefers tea," and reason its way back to actually offering you that tea.

This, however, hides a lot of assumptions. For one, how would an agent know when to search for that preference, given that many preferences are implicit? Secondly, it assumes that the preference was stored in the first place and retrieved with some explicit understanding that the tea-drinking preference exists to begin with.

Much as in the human mind, drawing on memories and experiences cannot depend entirely on an explicit search. There needs to be some form of internalized knowledge, much like the now-famous distinction between System 1 and System 2 thinking.

The reasons for this are twofold: if every fact and procedure needs to be retrieved, the system needs to know when and what to retrieve; secondly, it quickly becomes expensive, as an LLM would need to spend tokens, attention and reasoning on those retrieved things.

We argue that a learning system needs both: it needs storage for exact recollection and internalized behaviors for frequent things (like preferences and procedures). Or, in other words, storage for exact recollection and internalized knowledge as a kind of “muscle memory”.

Figure 4. A stored fact has to be found and reasoned about every time. Internalized knowledge is simply how the agent behaves.
Figure 4. A stored fact has to be found and reasoned about every time. Internalized knowledge is simply how the agent behaves.

One project, many bodies

A companion is what we have been building since 2024. Its first body was a character in a Minecraft world, where it quickly became apparent that both memory of shared experiences and proactive behaviors grounded in those experiences were key. Its next body was a simulated human, standing in for real people so that robotics teams could study how machines ought to behave around us, and it was believable for the same reason a real person is: because it carried preferences and history forward from one moment into the next.

Each embodiment taught us the same thing: an agent starts to feel useful only when it can accumulate those experiences and conversations over long periods and actually adapt accordingly.

Figure 5. One companion, many bodies, since 2024.
Figure 5. One companion, many bodies, since 2024.

Since then, our agents have lived in many embodiments across many modalities, from games and simulations to massive cityscapes, coding agents, and beyond, all across voice, video, and text. All sharing experiences and memories with us.

Live today

What you can already get today at www.midbrain.ai/product is:

The full storage system

  • Stores all your messages (episodic memories) for exact retrieval

  • Upload any document, indexed with state-of-the-art retrieval performance

  • E2E-encrypted, so we at MidBrain cannot read your memories even if we wanted to

  • Ultra-low-latency retrieval, <300 ms across hundreds of gigabytes

  • Enterprise / organizational IAM

  • Shared memories

The lifelong-learning companion

  • Automatically consolidates episodic memories into

    • Persona/profile: high-level descriptions of both the agent and you as a user

    • Semantic memories (facts)

    • Procedural memories (skills)

  • Multi-embodiment

    • Natively supported in all major coding harnesses through our MCP, with seamless transitions between them

    • LLM proxy: use our transparent proxy to make immediate MidBrain-augmented LLM calls, without any need for integration

Our APIs are completely open and LLM-friendly.