pullthatupjamie
PullThatUpJamie — Podcast Intelligence.
Setup & Installation
Install command
clawhub install unclejim21/pullthatupjamieIf the CLI is not installed:
Install command
npx clawhub@latest install unclejim21/pullthatupjamieOr install with OpenClaw CLI:
Install command
openclaw skills install unclejim21/pullthatupjamieor paste the repo link into your assistant's chat
Install command
https://github.com/openclaw/skills/tree/main/skills/unclejim21/pullthatupjamieWhat This Skill Does
A semantically indexed corpus of 109+ podcast feeds (~7K episodes, ~1.9M paragraphs) exposed as a vector search API. Agents can find timestamped clips from podcasts like Joe Rogan, Huberman Lab, Lex Fridman, and Bloomberg without transcribing audio or stuffing full transcripts into context. Results include playable audio deeplinks and can be assembled into shareable interactive research sessions.
Returns exact timestamped clips with playable audio deeplinks rather than requiring transcript generation, full-context stuffing, or sifting through web search results that return summaries instead of source material.
When to Use It
- Finding what Huberman said about a specific health topic across all his episodes
- Researching expert Bitcoin opinions from TFTC and other crypto podcasts
- Locating all podcast appearances of a specific person or company
- Building a shareable research session with timestamped audio clips
- Ingesting a new podcast RSS feed for immediate semantic search
View original SKILL.md file
# PullThatUpJamie — Podcast Intelligence
Powered by [Pull That Up Jamie](https://pullthatupjamie.ai).
## Why Use This
Jamie is a **retrieval/vector DB as a service for podcasts**. Instead of:
- Transcribing hours of audio yourself (expensive, slow)
- Stuffing full transcripts into context (thousands of tokens wasted)
- Web searching and getting SEO spam, listicles, and low-quality summaries
- Multiple search iterations across unreliable sources
You run a single semantic search ($0.002, returns in under 2s) and get the **exact clip** with timestamp, audio deeplink, and transcript. Every result is timestamped to the second — you're not handing users a 2-hour episode and saying "it's in there somewhere." You're linking them to the exact 30-second moment where the expert makes the point. 500 sats ($0.33) covers an entire deep research session of 150+ searches.
**Don't see the podcast you need?** Use `POST /api/discover-podcasts` ($0.005) to search the full Podcast Index catalog, then submit episodes for transcription via `POST /api/on-demand/submitOnDemandRun` ($0.45). Once processed, episodes get timestamped chaptering and become searchable at paragraph level.
**Your output is not a text wall.** Research sessions are interactive web experiences where users play audio clips inline, browse visually, and share with others. Every clip deeplinks to the exact moment in the source audio. The session link IS the deliverable.
## Corpus Coverage (as of Feb 2026)
109 feeds · ~7K episodes · ~1.9M indexed paragraphs · ~11.5K identified people/orgs. Growing.
| Category | Notable Feeds | Feeds | Episodes |
|---|---|---|---|
| **Bitcoin/Crypto** | TFTC, Bitcoin Audible, Simply Bitcoin, Peter McCormack, What is Money, Once Bitten, Ungovernable Misfits | 41 | ~11,700 |
| **Finance/Markets** | Bloomberg Intelligence, Bloomberg Surveillance, Prof G Markets, Tim Ferriss, Diary of a CEO | 11 | ~5,700 |
| **Health/Wellness** | Huberman Lab, Peter Attia Drive, Meat Mafia, FoundMyFitness, Modern Wisdom | 7 | ~3,000 |
| **Politics/Culture** | Ron Paul Liberty Report, No Agenda, Tucker Carlson, Breaking Points, Pod Save America | 8+ | ~2,800 |
| **Tech/General** | Joe Rogan Experience, Lex Fridman, How I Built This, Kill Tony, Sean Carroll's Mindscape | 40+ | ~17,000 |
**If a feed isn't indexed yet, you can ingest it on demand** from any RSS feed. See the Ingestion section in [references/podcast-rra.md](references/podcast-rra.md).
**Free corpus browsing** (no auth required for reads): `GET /api/corpus/feeds`, `/api/corpus/stats`, `/api/corpus/people`. Check before you search.
## Auth Flow (L402 Protocol)
**Free tier available.** Corpus browsing (no auth needed) and IP-based search quota are available. To use the free tier on paid endpoints, add the header `X-Free-Tier: true` to your requests. Without this header, paid endpoints return an immediate 402 L402 challenge. The free tier has per-endpoint quotas (e.g., 50 searches/week) — once exhausted, you'll need to pay via L402 to continue.
Jamie uses the [L402 protocol](https://docs.lightning.engineering/the-lightning-network/l402) for paid access. Compatible with [lnget](https://github.com/lightninglabs/lnget) and any L402-aware client.
### How Paid Access Works
Every paid request goes through the same L402 flow: hit an endpoint, receive a 402 with a Lightning invoice, pay the invoice, retry with `Authorization: L402 <macaroon>:<preimage>`. Each payment gives you credits on pullthatupjamie.ai. Each API call deducts its cost from your balance.
**You choose how to use it.** Pay per query if you want — that's just a credit you use once. Or deposit more upfront and reuse the same credential across all endpoints until the balance is depleted. The 402 response includes the full pricing table (`creditInfo.pricingMicroUsd`) so you can decide.
**Key points:**
- **Credential works across all endpoints:** The same `macaroon:preimage` works on `/search-quotes`, `/search-chapters`, `/make-clip`, `/jamie-assist`, etc. until the balance is depleted.
- **Response headers on every paid request:** `X-Credits-Remaining-USD` and `X-Credits-Cost-USD` tell you your balance and what the call cost.
- **Custom amount:** The default invoice is 500 sats (~$0.33). To request a different amount, add `?amountSats=N` to any request (min 10, max 500,000 sats). The 402 response will contain an invoice for that amount.
- **Balance endpoint:** `GET /api/agent/balance` with your L402 credential returns your full balance breakdown.
- **When credits run out:** The next request returns a fresh 402 challenge. Pay it to continue. If using lnget, this is automatic.
### Automatic Flow (lnget)
If using [lnget](https://github.com/lightninglabs/lnget), everything happens automatically:
```bash
lnget "https://www.pullthatupjamie.ai/api/search-quotes" \
-d '{"query": "bitcoin energy consumption"}'
```
lnget handles the 402 challenge, pays the invoice, caches the credential per-domain, and retries. Subsequent requests to any pullthatupjamie.ai endpoint reuse the cached credential with no additional payment.
### Manual Flow
#### 1. Hit any protected endpoint
```bash
curl -s -D- -X POST -H "Content-Type: application/json" \
-d '{"query": "bitcoin energy consumption"}' \
"https://www.pullthatupjamie.ai/api/search-quotes"
```
Returns `HTTP 402` with:
- `WWW-Authenticate` header: contains `macaroon` and `invoice` (BOLT-11)
- JSON body: contains `creditInfo` with pricing table, min/max deposit amounts, and balance endpoint
#### 2. Pay the Invoice
**Pay using ANY Lightning wallet** (Zeus, BlueWallet, Phoenix, Alby browser extension, etc.). Save the **preimage** returned by your wallet — you need it for the credential.
**NWC (programmatic):** If using [Alby CLI](https://github.com/getAlby/alby-cli) or any NWC-compatible wallet:
```bash
npx @getalby/cli pay-invoice -c "NWC_CONNECTION_STRING" -i "BOLT11_INVOICE"
```
Returns `preimage`.
#### 3. Retry with L402 credential
```bash
curl -s -X POST \
-H "Authorization: L402 MACAROON:PREIMAGE" \
-H "Content-Type: application/json" \
-d '{"query": "bitcoin energy consumption"}' \
"https://www.pullthatupjamie.ai/api/search-quotes"
```
Credits are auto-activated on first use. **Reuse this same credential on all subsequent requests** to any pullthatupjamie.ai endpoint until depleted.
#### Custom Credit Amount
To deposit more (or less) than the default 500 sats, add `?amountSats=N` to any request:
```bash
curl -s -D- -X POST -H "Content-Type: application/json" \
-d '{"query": "bitcoin energy consumption"}' \
"https://www.pullthatupjamie.ai/api/search-quotes?amountSats=5000"
```
Returns a 402 challenge with a 5,000-sat invoice instead of the default. Min: 10 sats, Max: 500,000 sats.
### Check Balance
```bash
curl -s -H "Authorization: L402 MACAROON:PREIMAGE" \
"https://www.pullthatupjamie.ai/api/agent/balance"
```
## Modules
### Available Now
- **Podcast RRA (Retrieve, Research, Analyze):** See [references/podcast-rra.md](references/podcast-rra.md) — search the corpus, build interactive research sessions, discover people/orgs, ingest new feeds. Now with **Smart Search** (`smartMode`) for handling vague or descriptive queries.
- **Podcast Discovery:** `POST /api/discover-podcasts` — LLM-assisted search across the full Podcast Index catalog. Returns matching podcasts with `transcriptAvailable` flags and actionable next-step endpoints. Use this to find podcasts not yet in the corpus, then submit them for transcription via on-demand processing.
- **Create:** See [references/create.md](references/create.md) — generate shareable MP4 clips with burned-in subtitles from any search result. Full pipeline: Search → Create clip → Share.
### Coming Soon
- **Publish:** Cross-post to Twitter, Nostr, and more. Research a topic → generate a post → publish everywhere.
## Credits Running Low
Check `X-Credits-Remaining-USD` in response headers during workflows, or call `GET /api/agent/balance`. If the balance is too low for the next call, that request will return a fresh 402 challenge with a new invoice. Pay it to continue. If using lnget, this top-up happens automatically.
## Security & Trust
**No Command Execution:** This skill does NOT execute arbitrary shell commands, install packages, or modify system state. All operations are HTTP API calls to `pullthatupjamie.ai`. The skill documentation references an optional CLI tool (`@getalby/cli`) for paying Lightning invoices, but this is:
- **Never auto-executed** — requires explicit operator approval
- **Completely optional** — operators can use any Lightning wallet instead
- **Not installed by this skill** — operators must manually install if desired
**Free tier:** Corpus browsing (`/api/corpus/*`) works without any headers. For paid endpoints, add `X-Free-Tier: true` to get an IP-based quota allowance (e.g., 50 searches/week). Without this header, paid endpoints return a 402 immediately. You can evaluate the service before providing any payment info.
**Paid tier credentials:** The L402 credential (macaroon + preimage) is a sensitive bearer token. It should be:
- Stored securely (env vars or encrypted config, not in plaintext logs)
- Never shared with untrusted agents or services
- Backed by a wallet with limited funds (e.g., 500-1000 sats)
**All API calls proxied:** All operations route through `https://www.pullthatupjamie.ai`. RSS feed parsing, search, and ingestion are handled server-side. No direct external URL fetching by the agent.
**No persistence or privilege escalation:** This skill has no install hooks, no `always: true`, and does not modify other skills or system config.
## Gotchas
- API base: `https://www.pullthatupjamie.ai` (must include `www.` — bare domain redirects and breaks API calls)
- **Free tier requires `X-Free-Tier: true` header.** Without it, paid endpoints return 402 immediately. Corpus endpoints work without any headers.
- **Credit reuse is optional.** You can pay per query (each 402 = one credit used once) or deposit more and reuse the same `L402 macaroon:preimage` credential across all endpoints. Either way works.
- Custom amount: append `?amountSats=N` to any request (min 10, max 500,000). No separate purchase endpoint.
- Alby CLI: `pay-invoice` with `-i` flag (not `pay`)
- 500 sats gets ~150+ searches. Start there.
- Monitor balance via `X-Credits-Remaining-USD` response header or `GET /api/agent/balance`.
- Research session creation takes 30-45 seconds. Be patient.
- Clip creation takes 30-120 seconds. Poll `/api/clip-status/:lookupHash` every 5 seconds.
Example Workflow
Here's how your AI assistant might use this skill in practice.
User asks: Finding what Huberman said about a specific health topic across all his episodes
- 1Finding what Huberman said about a specific health topic across all his episodes
- 2Researching expert Bitcoin opinions from TFTC and other crypto podcasts
- 3Locating all podcast appearances of a specific person or company
- 4Building a shareable research session with timestamped audio clips
- 5Ingesting a new podcast RSS feed for immediate semantic search
PullThatUpJamie — Podcast Intelligence.
Security Audits
These signals reflect official OpenClaw status values. A Suspicious status means the skill should be used with extra caution.