Skip to content

Instantly share code, notes, and snippets.

@TechNickAI
Last active September 25, 2023 07:37
Show Gist options
  • Save TechNickAI/380d16aac0111606263371c5d37fdf81 to your computer and use it in GitHub Desktop.
Save TechNickAI/380d16aac0111606263371c5d37fdf81 to your computer and use it in GitHub Desktop.
CrystalMind README

CrystalMind 🔮

CrystalMind is your personal chief of staff that helps you be a better friend. Be more connected to your digital friends, and be more present with your physical friends.

There's nothing else you have to do right now

We're meant to be in a state of be, not do. It's time to have technology do the work for us, instead of just creating more distractions.

CrystalMind is an advanced personal assistant application designed to make your life easier. With access to the data you provide, it can assist you in various tasks and make decisions on your behalf.

Features

  • Data Integration: CrystalMind seamlessly integrates with various data sources such as email, messaging platforms, Asana, news feeds, social media, GitHub, and more. This allows it to gather relevant information and assist you effectively.

  • Decision Making: CrystalMind's language model processes the inputs and determines the most suitable action to take. It can confidently perform tasks or provide you with options when it requires additional information. As you interact with it, CrystalMind learns from your choices and improves over time, just like a real personal assistant.

  • Task Handling: As CrystalMind's capabilities evolve, it becomes capable of handling tasks directly on your behalf. This includes sending emails and messages, scheduling meetings, booking travel arrangements, and even writing code.

Components

Unified Inbox

To aid in handling incoming messages across all platforms, we use the Matrix Synapse home server. This allows us to have a single endpoint for all incoming messages, with full python access to handle incoming messages with both simple rule sets and more advanced decision making with language models. Currently, we support the following platforms:

  • WhatsApp
  • Telegram
  • Facebook Messenger
  • iMessage
  • Instagram

Access to Google Data

Users will sign in with their google account, and optionally provide access to their email, calendar, and google docs. This will train the assistant on the users preferences, language, voice, and more. It will also allow the assistant to read and write emails and handle scheduling.

Language Model Agents

The core of the decision making and conversational elements is the language model agent, currently implemented with LangChain, which gives the agents access to tools. The Chief of Staff agent is the primary agent that handles incoming messages and makes decisions on what to do with them.

Other character based agents are also participating in the chat, to provide specialized advice and multi-agent conversations. These character agents prompted to behave in a specfic way, and will also be fed specific data to have them be highly specialized and tuned. For example, the Financial Advisor agent will be fed all of the best books that have been written by the best CFOs in the world, and will be prompted to behave like a CFO and hold that pillar in the conversations.

This collection of reates a digital advisory board, that can be used to help make decisions and provide advice. The end user can configure the agents to have different personalities, and can even create their own agents to participate in the chat.

A typical advisory board might include the following agents:

  • Chief of Staff (primary agent)
  • Financial Advisor
  • Health Advisor
  • Relationship Advisor
  • Spiritual Advisor
  • Career Advisor
  • Elon Musk
  • Steve Jobs
  • Deepak Chopra
  • Albert Einstein
  • Socrates
  • Carl Sagan
  • Daniel Schmachtenberger

When the human asks a question in the room, the chief of staff decides who pose the question to, and then the agents respond with their answers, and have discussions with each other. Once they are done providing a set of balanced perspectives, the chief of staff will summarize the responses and provide a recommendation to the human.

Digital Outputs

The digital outputs are the various ways that CrystalMind can interact with the world. With tools like GorillaLLM, we can use language models to create outbound API requests for over 1200 APIs for various services. This allows us to automate tasks like sending emails, scheduling meetings, booking travel, looking up real time information, planning vacations, and more.

The combination of a unified inbox + access to google data + language model agents + digital outputs creates a powerful system that can handle a wide variety of tasks. Some examples include:

  • What should I put my energy towards right now in my life?
  • What events are happening in my city this weekend that I would be interested in?
  • Where should I invest my money?
  • Brainstorming ideas for new business ventures
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment