Back to Relationship Tracker
Setup Guide

Getting the tracker running.
Every step, plain English.

I know setup docs are usually the part where things go sideways. This one is different. Every step is written assuming you haven't done this before, because most people haven't, and that's completely fine.

Setup First-time friendly Claude Code 15-45 min, depending on what breaks
What's in this guide
1
What you need installed first
~2 min

Three things need to be on your computer before anything else works. Here's what each one is and where to get it.

Claude Code is where you'll do everything. It's an app from Anthropic that gives you a code editor, a terminal (the panel where you type commands), and Claude as a built-in assistant. If you don't have it yet, download it from claude.ai/download.

Python is the language the tracker is written in. You probably already have it if you've used Claude Code for anything before. To check, open Claude Code, look for the terminal panel at the bottom of the screen (if it's not open, press Ctrl+` on Windows or Cmd+` on Mac (that's the backtick key, the one to the left of the 1)), and type:

terminal
python --version

If it shows something like Python 3.11.4, you're good. If it says "not found" or throws an error, go to python.org/downloads and install the latest version.

An Airtable account. Free tier works. You'll also need a Personal Access Token (it's a key Airtable generates for you). The companion guide below covers this in about 5 minutes if you haven't done it yet.

Scopes your token needs: data.records:read, data.records:write, schema.bases:read, schema.bases:write, and workspacesAndBases:read (only needed for the automatic setup --create path in Step 5; the manual path doesn't need it).
Companion guide
Connect Airtable to Claude in 5 minutes
2
Get the project files
~2 min

You need a copy of the tracker on your computer. The way to do that is called "cloning" (which just means downloading a copy of everything from GitHub onto your machine).

In the terminal, paste this and press Enter (swap in the actual repo URL when you have it):

terminal
git clone https://github.com/lilypapadopoulos11/lilyp.ai-relationship-tracker.git

That creates a folder called lilyp.ai-relationship-tracker wherever you ran the command. Now move into it:

terminal
cd lilyp.ai-relationship-tracker
What cd means: "change directory." It's just how you navigate into a folder from the terminal. Think of it as double-clicking a folder, but in text form.
3
Install what it needs
~1 min

The tracker uses a few Python packages (pre-built tools that do things like talk to Airtable and call Claude). This one command installs all of them at once:

terminal
pip install -r requirements.txt

You'll see a bunch of text scroll by. That's normal, it's just downloading things. Wait until it finishes and returns you to a blank line with a cursor.

What pip is: Python's package manager. Basically an app store for Python tools. -r requirements.txt just means "install everything listed in this file."
4
Add your API keys
~3 min

The tracker needs two private keys to work: one to talk to Claude (from Anthropic) and one to talk to Airtable. You'll paste both into a plain text file called secrets.env.

Open the file config/secrets.env in Claude Code (you can click it in the file browser on the left, or open it from the terminal with open config/secrets.env). It looks like this:

secrets.env
ANTHROPIC_API_KEY=your_key_here AIRTABLE_PAT=your_token_here TRACKER_BASE_ID=

Replace each placeholder with the real value. Here's where to find them:

ANTHROPIC_API_KEY: go to console.anthropic.com, sign in, click "API Keys" in the left sidebar, and create a new key. Copy the whole thing (it starts with sk-ant-).

Before you move on: a brand new key has no usage credit attached. Go to console.anthropic.com/billing and add a few dollars of credit. The key itself will work either way, but every command that calls Claude fails until there's credit on the account.

AIRTABLE_PAT: your Airtable Personal Access Token. If you haven't gotten it yet, the companion guide above walks you through it, including the scopes you need.

TRACKER_BASE_ID: leave this one blank for now. Step 5 covers how it gets filled in, either automatically or by hand depending which path you take.

This file is listed in .gitignore, which means if you ever push this project to GitHub, your keys won't be included. They stay private on your computer.
5
Set up your Airtable base
~2-10 min

There are two ways to do this step, and both end up in the same place: a base with Contacts, Interactions, and Events tables, ready to go. Try Option A first. If it errors out, Option B takes a few extra minutes and worked more reliably when I tested this.

Option A: automatic

This one command creates your entire Airtable base: all three tables, all the fields, and the Follow-Up Queue view. You don't set anything up by hand, and it writes the base ID into secrets.env for you.

terminal
python -m tracker.tracker setup --create

When it finishes, open Airtable in your browser. You should see a new base called "Relationship Tracker" with everything already set up.

If this throws a 403 or a scope error, your token is missing workspacesAndBases:read. See If something breaks below, or just move on to Option B.

Option B: manual

Create the base yourself, then have Claude build the tables inside it.

1. Go to airtable.com and create a new base. Name it whatever you want, "Relationship Tracker" is fine.

2. Open the base and copy its URL from your browser's address bar.

3. In Claude Code, paste the URL and ask Claude to set up the Contacts, Interactions, and Events tables using config.py as the spec. Something like: "Here's my Airtable base: [paste URL]. Set up the tables and fields from config.py."

4. Claude can pull the base ID from that URL. Add it to secrets.env:

secrets.env
TRACKER_BASE_ID=appXXXXXXXXXXXXXX
Either path is fine. When you're done, open Airtable. You should see a base with Contacts, Interactions, and Events tables, ready for your first contact.
6
Log your first contact
~1 min

You're set up. Try it with someone you've actually met recently. Replace the text in quotes with a quick description of them:

terminal
python -m tracker.tracker add "Met [name] at [event]. They work at [company] as a [role]. We talked about [topic]. Should follow up [when]."

The more detail you give, the better the record. Even a few sentences is enough. Claude parses it, creates the structured contact record in Airtable, and schedules your follow-up automatically.

Check your Airtable base and you should see the contact appear within a few seconds.

You're in. From here, the full build page has the rest of the commands and what each one does.
If something breaks
Common issues
"python: command not found" or "python3" works but "python" doesn't
Try python3 instead of python everywhere. On some systems they're the same thing installed under a different name. If that works, replace python with python3 in all the commands.
"Module not found" error after running pip install
Make sure you're in the right folder first. Run pwd (print working directory). It should show the lilyp.ai-relationship-tracker folder. If not, cd back to it and try the pip install again.
SSL certificate verify failed
This can happen even on a normal home Wi-Fi connection, so don't assume it's your network. Python is failing to verify the security certificate for Airtable's or Anthropic's servers. Run pip install pip-system-certs, then try the command again.
Airtable authentication error
Your AIRTABLE_PAT is probably wrong or missing. Open config/secrets.env, double-check the token is pasted in full with no spaces around the = sign, and make sure there are no quotes around it.
Airtable error 403, or "setup --create" fails right away
Your token is missing the workspacesAndBases:read scope, which the automatic setup needs to create a new base in your workspace. Go back to airtable.com/create/tokens, edit the token, and add that scope. Or skip it entirely: Option B in Step 5 builds the base manually and doesn't need it.
Claude API error or "Invalid API key"
Same fix: check ANTHROPIC_API_KEY in your secrets.env. The key starts with sk-ant-. If it's expired or you've hit a limit, generate a new one at console.anthropic.com.
API key is correct and brand new, but every command still fails
A new Anthropic key has no usage credit attached until you add some. Go to console.anthropic.com/billing, add a few dollars, and try again.
Something else broke and I don't know what
Copy the full error message and paste it into a Claude chat (or directly to Claude Code). Describe what step you were on. Claude is genuinely good at reading error messages and telling you exactly what went wrong.