Home / Audio / Production and Craft

Affirmology Audio + Demo Setup Checklist v1

Updated Jun 13, 2026 · Affirmology_AudioSetup_Checklist_v1.md

Summary. Everything you need to install and sign up for, in order, with links and copy-paste commands. Two buckets:

Affirmology Audio + Demo Setup Checklist v1

Everything you need to install and sign up for, in order, with links and copy-paste commands. Two buckets:

You can do Bucket A first and have working audio from the command line before any of Bucket B exists.


Bucket A: the audio engine

A1. Anthropic API credits (for the structurer and script writing)

This is the one you asked about. The Console is a separate site from claude.ai, but you log in with the same account. Your Max plan does NOT cover API use, so you load prepaid credits here.

  1. Go to https://console.anthropic.com
  2. Left sidebar, click Billing (or Settings, then Billing). Direct link: https://console.anthropic.com/settings/billing
  3. Click Add payment method, then Buy credits. Load $30 to start. Optionally turn on Auto-reload so a batch never dies halfway.
  4. Go to API Keys (https://console.anthropic.com/settings/keys), click Create Key, copy the sk-ant-... value.
  5. Paste it into affirmology-agent/.env after ANTHROPIC_API_KEY=.

That single $30 covers both the corpus structuring pass (~$15-25 of it) and ongoing script generation.

A2. ElevenLabs (the voice)

The voice you validated is Charlotte, Meditation and Relaxation. The code already expects an ElevenLabs key.

  1. Go to https://elevenlabs.io and sign in (you likely already have an account from the trailer work).
  2. Profile icon, then API Keys: https://elevenlabs.io/app/settings/api-keys . Create a key, make sure Text to Speech permission is enabled.
  3. You need a paid tier for real-length renders. The Creator plan is the usual sweet spot. Check usage at https://elevenlabs.io/app/usage
  4. Put the key in affirmology-agent/.env after ELEVENLABS_API_KEY=. The Charlotte voice id goes in ELEVENLABS_VOICE_ID=.

A3. Homebrew (the Mac package manager, if you do not have it)

Check first: open Terminal and run brew --version. If it prints a version, skip this.

A4. FFmpeg (the actual audio engine: mixing, ducking, de-essing, reverb, loudness mastering)

This is the core of your "great audio tools." Every mastering move in the research doc (sidechain ducking, the two-pass loudnorm to -16 LUFS, convolution reverb, de-essing) runs through FFmpeg. It also installs ffprobe, which the mixer uses to measure durations.

brew install ffmpeg

Verify: ffmpeg -version and ffprobe -version should both print.

A5. Python 3.11+ and the agent package

Check: python3 --version. If older than 3.11:

brew install python@3.11

Then install the agent itself (one time):

cd "/Users/jeffreyparker/CLAUDE/AFFIRMOLOGY/affirmology-agent"
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

This pulls in anthropic (used by the new Haiku structurer), pyswisseph, requests, and the rest.

A6. Free audio tools to download today ($0, about 10 minutes)

The locked free toolset. No subscriptions. Only one of these touches our code (item 6); the rest are for hand-tuning hero tracks and verifying loudness.

  1. Youlean Loudness Meter 2 (free version). Visual LUFS check on every track. https://youlean.co/free-loudness-meter
  2. TDR Limiter 6 GE (free). The final mastering limiter, replaces FabFilter Pro-L. https://www.tokyodawn.net/tdr-limiter-6-ge
  3. TDR Nova GE (free). Dynamic EQ for voice de-essing and music ducking. https://www.tokyodawn.net/tdr-nova
  4. Bricasti M7 impulse responses (free, Samplicity). Use the 0.8s small-room IR on Charlotte's voice for the "Calm-grade, in-headspace" feel. https://www.samplicity.com
  5. Audacity (free DAW). Waveform inspection and quick edits when FFmpeg gets weird. https://www.audacityteam.org
  6. pyloudnorm + pedalboard (Python, wires into our pipeline): pip install pyloudnorm pedalboard. Pedalboard is Spotify's open-source effects library and drops straight into the existing FFmpeg chain.

The v3.1 mastering chain we are wiring into the pipeline: voice → TDR Nova de-ess → Bricasti M7 reverb → FFmpeg sidechain duck → TDR Limiter → loudnorm to -16 LUFS.

A7. Optional paid music/master (queue for when revenue justifies, not now)

Total cost today: $0. Total in 30 days if you add pro music: $15 to $115.

At the end of Bucket A you can generate a full audio from the command line with affirmology ... --audio. No website needed.


Bucket B: the web pipe (form to audio to email)

B1. Tailscale (this is "tailspin")

Tailscale gives your laptop a stable private hostname so the Cloudflare Worker can reach the FastAPI server running on your Mac, from any wifi.

  1. Download the Mac app: https://tailscale.com/download/mac - Or via Homebrew: brew install --cask tailscale
  2. Open it, sign in (Google or GitHub login is fine), let it connect.
  3. Note your laptop's Tailscale hostname (looks like your-macbook.tailXXXX.ts.net). You will need it for B4.
  4. Later, to give the server an HTTPS cert, Tailscale provides: tailscale cert your-macbook.tailXXXX.ts.net

B2. Node.js (needed to deploy the Cloudflare Worker)

brew install node

Verify: node --version and npm --version.

B3. The demo server dependencies

cd "/Users/jeffreyparker/CLAUDE/AFFIRMOLOGY/affirmology-demo-site/server"
source ../../affirmology-agent/.venv/bin/activate
pip install -r requirements.txt

This installs FastAPI, Uvicorn, httpx, and Pydantic with email validation.

B4. Resend (transactional email that delivers the finished audio)

  1. Sign up at https://resend.com . Free tier is 3,000 emails per month, plenty for a demo.
  2. Verify your sending domain affirmology.ai (Resend gives you DNS records to add in Cloudflare). Domains page: https://resend.com/domains
  3. Create an API key: https://resend.com/api-keys . Copy the re_... value for B5.

B5. Cloudflare (Pages, Worker, secrets)

You already own affirmology.ai and have demo.affirmology.ai on Cloudflare, so this is mostly logging the command-line tool in and setting secrets.

  1. Log Wrangler in: bash cd "/Users/jeffreyparker/CLAUDE/AFFIRMOLOGY/affirmology-demo-site/worker" npm install npx wrangler login
  2. Set the four Worker secrets (it will prompt you to paste each value): bash npx wrangler secret put MAC_MINI_URL # https://your-macbook.tailXXXX.ts.net:8443 npx wrangler secret put MAC_MINI_AUTH_TOKEN # any long random string, must match the server npx wrangler secret put RESEND_API_KEY # the re_... from Resend npx wrangler secret put FROM_EMAIL # hello@affirmology.ai
  3. Cloudflare account home if you need the dashboard: https://dash.cloudflare.com

At the end of Bucket B, a form submission on demo.affirmology.ai reaches your laptop, renders real audio, and emails the listener the result.


One-glance summary

# Thing Why Link
A1 Anthropic API credits Structurer + script writing https://console.anthropic.com/settings/billing
A2 ElevenLabs key + paid tier The voice https://elevenlabs.io/app/settings/api-keys
A3 Homebrew Mac installer https://brew.sh
A4 FFmpeg The audio mastering engine brew install ffmpeg
A5 Python 3.11 + agent Runs everything (commands above)
B1 Tailscale Connects form to laptop https://tailscale.com/download/mac
B2 Node.js Deploy the Worker brew install node
B3 Server deps FastAPI server (commands above)
B4 Resend Emails the audio https://resend.com
B5 Cloudflare Wrangler Web front end + secrets https://dash.cloudflare.com

What I will drive for you on screen

Once you have done the account sign-ups (A1, A2, B4) and have Tailscale installed (B1), I can drive the rest live: the brew installs, the pip installs, starting the server, the cert, and wiring the Worker secrets. The sign-ups need your passwords, so those three are the only parts truly on you.

Fastest path to a real audio this week

  1. Do A1 and A2 (Anthropic credits + ElevenLabs key). About 10 minutes.
  2. I drive A3 to A5 on screen and we generate one real audio from the command line to prove the engine.
  3. Then B1 to B5 to wire the website form to it.