← ClaudeAtlas

food-ingestlisted

Ingest a venue from a Reel, Instagram, Facebook, or YouTube post into a trip PWA's food, desserts, attractions, fandom, or nearby corpus (or feed_candidates.json when placement is unclear). Use when the user shares a venue video/post URL or caption and wants it added to their trip. Fetches the caption, classifies it via the shared router, supports an explicit --to corpus override, and writes a structured entry. Pairs with trip-scaffold and refs-ingest.
fantasybz/trip-pwa-skills · ★ 0 · Data & Documents · score 70
Install: claude install-skill fantasybz/trip-pwa-skills
# food-ingest Turn a short-form venue post into a structured entry in the right trip-PWA corpus, or hold it in `feed_candidates.json` until its placement is confirmed. Despite the name, food-ingest handles **all five venue corpora** (food / desserts / attractions / fandom / nearby). The hard part is **placement**, not classification: a caption tells you "this is a cake cafe" but not "this goes on Day 3's 14:00 anchor". So food-ingest routes by keyword and **auto-routes a confident item straight to its corpus file** — `food.json`, `desserts.json`, `attractions.json`, `fandom.json`, or `nearby.json` (v0.5.1). Only ambiguous items (tie / low confidence / no keyword) land in `feed_candidates.json` for a one-command `placement-promote` (the deferred-placement pattern). `--day` carries a known day; `--to <corpus>` is the destination-neutral explicit override; legacy `--force-food` still forces `food.json`. ## Steps 1. **Get the caption.** If the user gave a URL, fetch the caption/description first (use /browse for the page text, or `yt-dlp --get-description` for the video description; for audio-only Reels, `yt-dlp` + `whisper-cli` to transcribe). If the user pasted a caption, use it directly. The caption is what the router classifies — without it, routing is blind. 2. **Run the engine** with the caption + any known fields: ```bash bun skills/food-ingest/food-ingest.ts --out <trip-dir> \ --caption "<fetched caption>" --name-zh "<venue name in zh>" \