Opemipo Aikomo
Back

agents / 01

I’ve been learning about agents.

Architecture of Private Agent (Captain) and Public Agent (Concierge), sharing Data/Supabase, Bridge/Events, and AI Gateway

Captain

Captain is my core agent. It keeps context about me and follows my interest through daily loops. It’s model agnostic and relies on its harness and tools rather than weights. I chat with it through Telegram.

Core goals:

  • Maintain useful memory: biodata, location, profile facts, interests, voice, reading, sources, and daily journals.
  • Stay close to my thinking by reading published essays, website notes, and curated external sources.
  • Support concrete actions — email, searching opemipo.com, updating memory, reporting data and events.
  • Run controlled Solana trading experiments and share learnings.
  • Control data access for other agents.

Concierge

Concierge is a surface agent on my website for public chat. You can ask it to search the site, answer a question, or reach out to me via email. When a guest asks Concierge to reach out to me, it validates the request and sends me a link to the conversation. If I join, the conversation switches to a live chat.

Try it: opemipo.com/chat

Architecture

Captain is a Docker instance hosted on fly.io. It’s on a single shared CPU with 512MB RAM.

Concierge is a Vercel function that runs on my website. It’s able to use the site’s content freely, but relies on Captain for memory and tools.

Supabase is the shared persistence layer. It stores private memory and event records for both agents in distinct captain_* tables and concierge_* tables.

I’ve also built some basic tools into Captain:

  • Vercel AI Gateway for model calls
  • Telegram as interface
  • Resend for email delivery

Vision

First time I did this, my goal was to have it book my flights.

So that’s the plan.


Published on Jul 08, 2026
© 2026
Close