Back to Blog
8 min
technical

Igor Jarvis Now Wakes Up Before I Do. Let's Explore Embeddings and Vector Databases

I'm upgrading Igor to autonomous operation. While building, I'm learning embeddings and vector databases. Here's Part 1.

AI DevelopmentAutomationClaudePrompt EngineeringBuilding in Public

Igor Jarvis Now Wakes Up Before I Do. Let's Explore Embeddings and Vector Databases

Published: January 10, 2026 | 8 min read

As I mentioned in this blog post, I have now begun transforming my agents into autonomous agents. The first agent I am working with is Igor Jarvis. I am upgrading him from a manually-invoked Claude agent to a fully autonomous system.

It's exciting to picture the UPGRADED version of Igor Jarvis in my head, one that will operate independently. Let me share that picture with you, because in a matter of hours or days, it will be my reality.

The Vision: A Day in Igor's Autonomous Life

It's 2 AM. I'm still asleep, probably dreaming about something ridiculous. But Igor? Igor is already awake. Well, not awake exactly. He's being triggered.

While I'm unconscious and completely unaware, Igor will sync my GitHub repository. Any new blog post I published that day gets chunked, embedded, and stored in his vector database. He now knows what I know.

The Morning Routine (Before I Even Wake Up)

At 5 AM, he will perform his first task of the day by pulling from the list of blog posts he hasn't processed yet. He'll read through them, extract 2-5 Substack Notes from each one, and carefully schedule them for optimal posting times: 9-10 AM, 12-1 PM, and 6 PM.

By the time my alarm goes off at 5:30 AM, he'll have sent me a Telegram message with a summary of everything he accomplished overnight.

  • Notes ready to post.
  • Queue depth updated.
  • No effort required from me.

Throughout the Day

He'll remind me when it's time to post. And if I need more? I'll message /more 3 and he'll generate three additional notes on demand.

On-Demand Intelligence

And that's just the scheduled stuff. I'm also building him to respond to on-demand requests.

If I message him "brainstorm synthesis ideas around tokens," he'll search his vector database of 100+ blog posts, find thematic connections, and serve up ideas while I'm sipping my morning tea.


That's the vision. Right now, I'm building the infrastructure to make it happen. Let me tell you about the new technologies I'm learning along the way.


New Technologies on the Horizon

As I work on this upgrade, I'm being exposed to new concepts like Embeddings and Vector Databases, plus new tools like Pinecone and n8n.

Remember when I mentioned in this blog post that I was eventually going to dive deep into n8n despite having experience with Make? The time has come.

By now you should know that when I am exposed to new knowledge like this, I write and break it down to the best of my ability while connecting it to what I already know or have learned in the past. This is because of my fear of having Chauffeur knowledge.

Consider this blog post to be part of the "Battle Against Chauffeur Knowledge" series, and we'll be exploring Vector Databases and Embeddings.


A Brief Recap: Tokens

Now a brief recap for anyone that hasn't read my previous blog posts about tokens.

Large Language Models (LLMs) do not see text the way humans do. When you message an LLM, the text you send is broken down into chunks which are called tokens. A chunk of text could be a whole word, a part of a word, a single character, or even multiple characters.

When I send a message to Claude, for instance, "Teach me about Embeddings", the message doesn't actually reach the AI model as text characters. It gets converted into tokens that may look something like this if we assume the sentence is split word by word to form tokens:

TextToken ID
"Teach"Token #73829
"me"Token #51423
"about"Token #271
"Embeddings"Token #385

The reason LLMs recognize words is because they have a dictionary of billions of tokens built from analyzing billions of words. So when you message an LLM, the message is not seen as text. Instead, it is seen as a sequence of numbers where each token number references an item in the LLM's dictionary or vocabulary.

LLMs do not actually "read" text characters because they don't even see them. They only see a sequence of token IDs and then use their neural network to process the relationships between those tokens to understand meaning.

You can read more about the blog posts where I talk extensively about tokens starting from here.


Enter Embeddings and Vector Databases

Now this part is where we introduce Embeddings and Vector Databases. They will help us understand what I mean when I say, "uses its neural network to process the relationships between those tokens to understand meaning."

Revisiting RAG

Let's start by revisiting the concept of RAG (Retrieval-Augmented Generation), particularly how it relates to Claude's Project Files. Before reading more, I suggest you take a look at this blog post first, where I talk about how the different features of Claude's Projects (project name, description, project instructions, and files) affect the Context Window of chats started within that project.

In that blog post, I explained that the project_knowledge_search tool in Claude works by retrieving relevant chunks of data from the file and adding it to the context window of the chat.

The Question I Failed to Ask

Here is the major question I failed to ask back then:

"How does Claude determine what chunks are relevant?"

The answer to this question is going to be the beginning of our journey into understanding Embeddings and Vector Databases.


What's Next

This is Part 1 of what will be a deeper exploration. In the upcoming posts, I'll break down:

  • What embeddings actually are (and why they matter for semantic search)
  • How vector databases like Pinecone store and retrieve information
  • How all of this connects to make Igor Jarvis truly autonomous

As always, thanks for reading!

Share this article

Found this helpful? Share it with others who might benefit.

Enjoyed this post?

Get notified when I publish new blog posts, case studies, and project updates. No spam, just quality content about AI-assisted development and building in public.

No spam. Unsubscribe anytime. I publish 1-2 posts per day.