Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ask Andrew

Ask Andrew ships a Markdown corpus for The Andrew Faris Podcast and gives AI coding agents a skill for answering questions with episode-level, timestamped sources. Installation builds only the local QMD index; it does not download video, audio, captions, or transcripts.

What it does

  • Ships a catalog of every podcast video with its YouTube URL.
  • Ships a readable Markdown document for each episode.
  • Ships 90-second Markdown segments with episode metadata and timestamps.
  • Registers those segments as a dedicated QMD collection.
  • Installs an ask-andrew skill for Codex and Claude Code.
  • Returns retrieved context with clickable YouTube timestamps so the agent can answer without inventing attribution.
  • Syncs incrementally: reruns skip episodes already transcribed.

Quick start

Requirements: macOS or Linux, Python 3.10+, and curl. The setup script installs the package in an isolated virtual environment and installs QMD from its official installer when QMD is not already available.

git clone https://github.com/poseljacob/ask-andrew.git
cd ask-andrew
./setup.sh

Ensure ~/.local/bin is on your PATH, then search directly:

ask-andrew search "How should I think about Meta attribution?"

Or invoke the installed $ask-andrew skill in Codex or Claude Code and ask a normal question:

What does Andrew recommend for evaluating creative performance?

Commands

ask-andrew sync [--limit N] [--jobs N] [--force]
ask-andrew catalog [--output-dir corpus]
ask-andrew audit-captions [--jobs N]
ask-andrew index
ask-andrew search "question" [--limit N] [--format markdown|json]
ask-andrew doctor
corpus/
├── catalog.json
├── caption-coverage.json
├── transcript-manifest.json
├── metadata/
│   └── VIDEO_ID.json
├── transcripts/
│   └── VIDEO_ID.md
└── segments/
    └── VIDEO_ID/
        ├── 000000.md
        ├── 000090.md
        └── ...

setup.sh configures the CLI to use the checked-out corpus/ directory. index owns the QMD collection named ask-andrew; it replaces that collection registration without running a global QMD update.

Refreshing

Pull the latest prebuilt corpus and re-index:

git pull
./setup.sh

End-user installation never downloads from YouTube. The maintainer-only ask-andrew sync command rebuilds corpus source files for an authorized release.

Maintainers can refresh non-transcript release metadata independently:

ask-andrew catalog --output-dir corpus
ask-andrew audit-captions --output-file corpus/caption-coverage.json

The caption audit resumes from its existing output. If YouTube throttles a large pass, retry only failed videos conservatively:

ask-andrew audit-captions --jobs 1 --delay 5

Retrieval and citations

The skill runs QMD BM25 search through the package CLI. Each result is enriched from the matching local segment:

{
  "title": "Episode title",
  "start_seconds": 540,
  "context": "Retrieved transcript passage...",
  "citation_url": "https://www.youtube.com/watch?v=VIDEO_ID&t=540s",
  "transcript_source": "automatic_captions"
}

The skill must paraphrase by default, distinguish Andrew's statements from its own synthesis, and cite material claims as:

[Episode title — 09:00](https://www.youtube.com/watch?v=VIDEO_ID&t=540s)

Development

python3 -m venv .venv
.venv/bin/python -m pip install -e .
.venv/bin/python -m unittest discover -s tests -v

Bundled-corpus smoke test:

.venv/bin/ask-andrew configure --data-dir "$PWD/corpus"
.venv/bin/ask-andrew index --data-dir "$PWD/corpus"
.venv/bin/ask-andrew search "wrong problem opportunity selection"

Content and affiliation

This project is not affiliated with or endorsed by Andrew Faris, AJF Growth, or YouTube.

The transcript corpus is redistributed with permission from the rights holder. Copyright in the podcast-derived corpus remains with its respective owner and is not relicensed under the repository's MIT code license. No video or audio binaries are included. Verify important details against the linked episode because captions can contain errors.

About

Search The Andrew Faris Podcast locally with QMD and cited episode timestamps.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages