Karpathy's HackerTube: Claude Opus 5.5 Builds a YouTube Clone From HN Comments in 2 Hours
TL;DR
On Saturday, October 31, Andrej Karpathy published HackerTube, a YouTube-style site that shows only the 6,454 videos Hacker News commenters have recommended to each other since 2007. He did not write it himself: he handed the job to Claude Opus 5.5 in Claude Code, which pulled the public HN archive, had teams of Claude Sonnet 5.5 agents label 39,834 comments, wrote the site, and pushed it to a VPS. Karpathy says the whole thing took about two hours, 504M input tokens (90% cached), and roughly 1M Opus tokens for the app itself. There are no accounts, and the full dataset ships as a 17.8 MB zip under ODC-By 1.0 with a DATA.md written for your agent to read.
Friday night slop, Saturday morning clone
Karpathy's post opens at 11pm on a Friday, tired, looking at what he calls "an enshittified wall of slop" on YouTube. Saturday morning he gave Opus 5.5 one task: "Let's write our own YouTube clone based on whatever videos have been recommended on Hacker News." His next sentence: "And Opus came back with: hackertube.org!"
The pipeline, in his words: Opus downloaded all of Hacker News's comments, filtered them, ran Sonnet over them in a workflow to drop spam and low-grade content, and narrowed the pile to about 40K comments that recommend a YouTube video. That yields 6,454 videos recommended between 2007 and 2026, sorted into 150 topics. Then it wrapped the data in a YouTube UI, got a domain, pushed to a VPS, and then, as he puts it, "secure, harden, optimize and voila!" The post ends: "This takes ~2 hours now. I can breathe again."
The site's own stats endpoint agrees with the blog: 6,454 videos, 39,834 comments read, 15,041 distinct recommenders, 150 topics grouped into 16 areas. The archive itself came from the open-index/hacker-news dataset on Hugging Face, which is already licensed ODC-By. When a commenter was surprised that grabbing every HN comment was that easy, Karpathy replied: "There turns out to be an export on HuggingFace as well as a bunch of parquets."
The filter that does the curating
The About page spells out the selection rules, and they are stricter than "someone linked it once." Every comment from 2007 to 2026 was scanned for YouTube links, which turned up well over a hundred thousand distinct videos. A video makes the cut only if at least three different people linked it with real commentary, in at least three different months. One-off links and drive-bys fall away, leaving roughly 7,000 videos before the final cleanup.
Think of a library that only shelves a book after three different patrons ask for it in three separate months. A viral week gets you nothing. Being asked for in 2012, 2017, and 2024 gets you a permanent spot, and the ranking follows the same logic: a video's standing comes from how many separate months people recommended it in, so repeat recommendations across years outrank a single spike.
The labeling step is where the Sonnet agents earned their tokens. A YouTube link in an HN comment is not always a recommendation, so Claude read each comment together with the title of the story it sat under and judged the stance: recommending the video, citing it as a source, using it as a joke, or criticizing it. It also pulled a short quote and a few topics. Then it wrote a card for every surviving video: a summary, why HN people like it, what kind of video it is, and whether it has aged well.
What it cost: 504M tokens in, about 1M for the app
The first question in the HN thread was the obvious one, and Karpathy answered it with numbers: "I'm on subscription but I had Claude add it up: 504M input tokens (90% cached), 7.6M output tokens. 90+% of that was Sonnet calls to label the comments, all of the actual work, the app and deploy etc was ~1M tokens of Opus 5.5, I compacted context once. i.e. very small project by modern standards." He published no dollar figure, since the usage ran on a subscription with no metered API bill behind it.
As for hands on keyboard: "I didn't touch anything manually I only talked to Claude the whole project, except for YouTube API key, domain, its DNS record and VPS node boot." The site's credits page says the same thing from the other side. HackerTube "was built by Claude Opus 5.5, Anthropic's AI model, working in Claude Code: the data pipeline, the search and recommendations, and this site," and "was prompted into existence by @karpathy." The comment labels, video cards, and topic list "were written by teams of Claude Sonnet 5.5 agents that Claude Opus coordinated."
No accounts, and the feed still adapts
Home mixes several kinds of picks: HN classics, hidden gems (videos HN loves that sit under 100k YouTube views), recent favorites, topics you have not explored, and, once you like a few videos, things similar to them and things the same HN people also recommended. Hover a card to see why it is there. Likes, history, and Watch Later live only in your browser, and videos play through YouTube's privacy-enhanced embed.
Search runs on embeddings: the export includes 384-dimensional float16 vectors from bge-small-en-v1.5, one row per video, so "distributed systems" finds talks that never use those words. Thumbnails default to the frame exactly halfway through the video instead of the uploaded one, which you can toggle in Settings. Karpathy's description of the genre he is avoiding: "some guy looking like HOLY SHIT, tearing his hair in amazement looking at something with an arrow pointing at some detail."
When a commenter called the lack of a login "blasphemy," Karpathy announced that "HackerTube Plus is only $5.99/mo" and includes "our new AI Amanda," who connects to your Google account for personalized recommendations. There is no pricing page.
The HN thread became the changelog
The HN submission sat at 641 points and 227 comments within a few hours of going up, and Karpathy spent the evening shipping requests from it. His changelog comment lists filters by upload date, duration, and type (talk, lecture, documentary), filters on the home page so you no longer have to search first, a "Recently recommended" sort so a 2012 talk someone linked last month floats to the top, a like-ratio sort damped so small videos cannot win on a handful of likes, and a "Play all on YouTube" button that turns up to 50 videos on a page into a temporary YouTube playlist that works in the YouTube app on phones and TVs. He also removed the YouTube-looking logo after a commenter raised trademark risk, and added "Hidden gems" and "Evergreen only" filters.
Asked when HackerTube Shorts would arrive, he answered "NEVER. More inclined to add HackerTube Longs :D". Longs, every video over an hour, "right where YouTube puts Shorts," was live before he left to go trick-or-treating.
The reusable part: a 17.8 MB zip and one prompt
The server code is not public. Karpathy: "I didn't publish the server because it's a vibe coded mess, but if you point your Opus 5.5 at the zip and ask for YouTube-like site it will be basically instant. This part was like 3 min." The zip is the artifact he wants you to take, and the data page is written accordingly.
The export, generated October 31, holds seven files. DATA.md is written for agents: how the files join, the gotchas, example records, and how to fetch YouTube metadata. videos.jsonl has 6,454 rows with the YouTube id and link, title, channel, summary, why HN likes it, type, level, shelf life, topics, categories, a pull quote, HN stats, and a quality score. mentions.jsonl has the 39,834 labeled comments: comment id and link, author, month, story title, stance, why, quote, and the cleaned text. taxonomy.json lists the 150 categories, related.jsonl carries "HN people also recommend" counts for 3,778 videos with no usernames, and embeddings.npy plus its id map round it out.
It is released under ODC-By 1.0, the same license as the HN archive it derives from: use it for anything, credit HackerTube and the open-index dataset. YouTube's own metadata (descriptions, view counts, durations, publish dates) is left out because the YouTube Data API terms do not allow redistributing it. Every record carries the video id, and the data page says a free API key refills those fields in about 130 requests, with a ready-to-run script in DATA.md.
The suggested prompt on the data page is the whole workflow in four lines: "Read DATA.md in this folder. Using this data, build me a small local web app that shows a fresh mix of HN-recommended talks each day, lets me filter by topic and length, and remembers what I've watched. Walk me through getting a YouTube API key so you can add durations."
Caveats
- It is a snapshot. The Hugging Face archive it reads from was last updated on August 23, 2026, and two commenters noticed that sorting by upload date tops out around five months ago. Anything HN recommended this autumn is not in yet.
- Curation is HN's taste, labeled by a model. No human reviewed the stance labels or the cards. One commenter said half the videos on their first mobile load were well-known Intellectual Dark Web and populist types; another reported finding racist material. The three-people rule removes drive-by links and has no view on what HN likes.
- It sits downstream of YouTube. Videos stream from YouTube embeds and the site is not affiliated with YouTube, Google, Hacker News, or Y Combinator. The logo already changed once over trademark concerns.
- The server is unpublished. You get the data and a prompt; the code stays on Karpathy's VPS. His "3 min" rebuild estimate is his, on Opus 5.5.
- The token counts are self-reported. Karpathy had Claude total them from subscription usage, and there is no dollar figure.
Key Takeaways
- Karpathy prompted; Claude Opus 5.5 in Claude Code built, deployed, and hardened HackerTube in about two hours, with the API key, domain, DNS record, and VPS boot as the only manual steps.
- Out of well over 100,000 YouTube links in HN comments since 2007, 6,454 videos survived the rule of at least three people in at least three different months, across 150 topics and 16 areas.
- The budget was 504M input tokens (90% cached) and 7.6M output; over 90% went to Sonnet 5.5 agents labeling 39,834 comments, and the app itself was about 1M Opus tokens.
- No accounts: the For You feed runs on likes and history kept in your browser, search uses bge-small-en-v1.5 embeddings, and thumbnails come from the midpoint of each video.
- The reusable artifact is the 17.8 MB ODC-By zip with DATA.md written for agents; the server stays private, and the data stops at August 2026.
Sources: Karpathy, "HackerTube" (blog post, October 31, 2026), Hacker News thread with Karpathy's replies, HackerTube About page, HackerTube data export page, open-index/hacker-news dataset on Hugging Face