I’m trying to map out all of ContextCore as a system. Can’t build a system if you don’t understand it. It should also be easily understood. No one will use a confusing system.
NOTE: The verbiage is my own flavor for now, but I can change it later to make it more understandable. Like instead of
EchoForge
I can useMemoryManager
or something easy. The name ContextCore might change who knows.
The Entire System: It’s a Memory/Context Manager that acts as a “Second Brain” and connects to and customizes any LLM
This means all LLMs will also have whatever context you need, but you still own all your data and can precisely customize how the LLM responds in whatever contexts you’ve already set. It makes interactions between different LLMs stable. Additionally, due to the internal memory structure of the system, the performance of your LLMs context awareness will increase with use. More details on the Memory Strategy
It encourages data sovereignty and LLM management. You can also connect to any local LLM, it doesn’t have to be a public provider. It also includes useful features like personality (prompt engineering), Imports/Exports(LLM provider memories), Data Integrations (automatically ingest memories from other sources like apple health), etc.
Akasha
Personality layer of ContextCore: This will contain all the logic/prompt engineering to make personalities
Logic will inject relevant context/data into prompts. You will also be able to import/export them for other users. Consists of Humors, Mimics, and Prisms. Works in conjunction with other systems to achieve the users goal. Imagine this workflow:
I want my trainer to speak and act like dwayne the rock johnson, and use my information to train me during this workout session. Afterwards, I want my trainer to update our plan based on how I did.
Memory Capture for ContextCore: Import/Export memories from different LLM providers and integrate external data sources.
ContextStore
Memory Store/Processing Layer of ContextCore: It’s a Database with it’s own schema. (For now MongoDB). It’s going to be a private Database that the user owns. Either the user can store it locally if they choose to install an app, or I can figure out a Cloud solution that uses encryption/decryption to ensure data privacy and they can pay for that service.
IDEA WHILE IM WRITING: Encrypt the database and hash it. Send it to a cloud service that you host. When the user wants to use the app, the app will check it’s hash against the most recently calculated cloud hash, if different, then grab the last x entries. Then decrypt on client side. Ensures privacy and is efficient enough for POC
ContextWeave
RAG/Context injection of Memories and Personalities.
Will have custom logic and dynamic routing. So ContextWeave will take everything from ContextStore and Akasha and use magic to figure out exactly how to use that information optimally for your query. This is going to be the most complicated system, which is why I have the least notes for it so far. Still planning it out.UserInterface
User Interfaces for the whole app and for all the different systems.
For now, it relies on these modules(might change architecture later)
- Chat Interface
- MultiQuery: Module that sends a query to multiple providers.
- Memory Manager (ContextManager/ElementManager?)
IDEAS:
ContextIntent
Should there be some kind of system that can schedule automations that make sense? Like if you are talking to a therapy or life coach persona and they want to make you a schedule and then automatically update your calendars. How can you implement that within ContextCore? Idea for way in the future. If you cetain prompts like “turn on my lights on low tomorrow morning at 9” they can be stored as an “intent” in the intent
collection. Shitty working name: ContextIntent
intents
will then send the correct prompt using MCP to the correct service at the scheduled time. So then MCP to Philips hue API to turn on lights. And different personas can have access to or be aware of different intent types.
what are intent types? I Don’t know yet. But i thinking of things like “alarm
, light
, calendar
, command
(cli), mem_management
(delete x memories at y time), etc.”
That way lets say you have a Persona on for travel agent. If you ask them to look up flights, they see they have access to the flights
intent which can book flights on websites through MCP. But other personas wouldnt randomly suggest to book flights if you were talking about taking a trip since they don’t have access to that intent.