Projects

SelfAI

Portable, self-owned personal context

Mayin JoshiNov 2024

Almost as soon as GPT-3.5 was released and competition started emerging from Anthropic, Google, Meta, China, and more, it was very clear to me that context should be universal and portable. Not only across models, which would inherently soon be the UX of most everything (people will not be sifting through pages trying to find things much longer), but across websites themselves. And agents.

I do not want to constantly have to explain myself in the new era of technology. In the same way I hated creating new accounts and filling in information in a dull survey format, I was doing that 100x with new models just so they could understand me. I would have to do it 1,000x for agents to understand me.

There must be a central Self repository of personal context data that can be shared across websites, applications, agents, and more. One that stores all my critical data, connects to all the major context sources I want AI to have access to like my health and finances, and securely allows me to share what I want with different applications, creating stronger user experiences and enhanced security. For example, I could share certain information requested by OpenAI by logging in with my Self account. If Netflix wanted to understand my taste more, it might look into my hobbies, stuff I could choose to share with it. If an agent needed access to my finances to give me a plan, I could grant it proactive read access to my bank accounts and credit card statements.

That was Self, a complete application that did exactly that. I ideated on this concept for hundreds of hours, and love talking about it with people building in the space. I even cold-emailed folks like Sam Altman about it, who responded. Cool experience.

  • Designing the permission model: session-scoped versus continuous access, granted per app and per data group, so a tool like Runway gets context only while you are in a session while Spotify can hold ongoing personalization access.
  • Building the data group abstraction: reusable bundles of typed data points (contact, health, financial) with sensitivity levels computed automatically from what is inside, surfaced as clear labels at the moment of consent.
  • Designing consent UX a normal person can act on in seconds: per-group toggles, sensitivity indicators, and accept-selected versus accept-all flows for apps like OpenAI, Netflix, and Spotify.
Permission concept: Self AI requests contextual data access for an OpenAI session.
Permission concept: Self AI requests contextual data access for an OpenAI session.
My Data: a private dashboard for reviewing personal context and data health.
My Data: a private dashboard for reviewing personal context and data health.
Data Groups: reusable collections for controlling what gets shared.
Data Groups: reusable collections for controlling what gets shared.
Runway: session-based permissions with sensitivity labels for each data group.
Runway: session-based permissions with sensitivity labels for each data group.
Spotify: persistent permissions for personalization, mood, memory, and device context.
Spotify: persistent permissions for personalization, mood, memory, and device context.
Netflix: app-scoped permissions with expandable details and sensitivity levels.
Netflix: app-scoped permissions with expandable details and sensitivity levels.