Skill

recipe-goat

Find the best version of any recipe across 37 trusted sites — trust-aware ranking weights real reader signal at 80% and editorial trust at 15% (curated chef/baker sites win tie-break over crowdsourced aggregators). Builds a local SQLite cookbook with pantry match, meal plans, cook log, substitutions, and USDA-backed nutrition backfill. Powered by Surf-Chrome HTTP transport — bypasses TLS-fingerprint bot detection that previously blocked Dotdash properties.

Verified: 2026-05-13 (printing-press-ingest-2026-05-13+enrich-capability-skill)

When to use recipe-goat

Choose if

You're building a cooking / meal-planning agent that needs trust-weighted recipe ranking (reader signal 80% + editorial trust 15%) across 37 trusted sites, plus pantry matching, meal plans, cook log, substitutions, and USDA nutrition backfill in one local SQLite cookbook. Alternative: scraping AllRecipes or Food & Wine directly will trigger TLS-fingerprint anti-bot blocks — this CLI ships the Surf-Chrome transport to get past them.

Avoid if

Your target recipe site isn't in the 37-site allowlist, or your runtime can't carry the Surf-Chrome HTTP transport (you'll get 403s on the Dotdash properties that need it). Also avoid if you need to publish recipes anywhere — read-only by design.

Risk Flags

  • MEDIUM runtime Recipe scraping relies on Chrome-compatible HTTP transport (Surf-Chrome) to bypass TLS-fingerprint bot detection on Dotdash properties (Food & Wine, Serious Eats, etc.). Sandboxed runtimes without that transport will hit 403/anti-bot blocks on a subset of the 37 sites.
  • LOW auth USDA nutrition backfill needs an API key — missing/invalid keys cause exit code 4 on nutrition-touching commands. Core recipe ranking still works without it.
  • LOW rate_limit Rate limiting surfaces via exit code 7 (per README). Concrete thresholds not disclosed — applies primarily to USDA-backed nutrition lookups.
  • LOW scope Coverage is 37 trusted recipe sites; sites outside that allowlist aren't indexed regardless of how good their recipes are. Read-only by design — agents can't publish back to any site.

Cost

Type: Freemium · Free tier: The CLI is MIT-licensed and free to install. Recipe ranking + scraping across the 37 trusted sites works without credentials. Nutrition backfill needs a free USDA API key.

Hidden costs

  • USDA FoodData Central nutrition backfill requires a USDA API key (free from api.nal.usda.gov, but rate-limited per key). Recipe scraping itself is token-free.

Install

Default

npx -y @mvanhorn/printing-press install recipe-goat
# Optional: set USDA API key for nutrition backfill (free key from
# api.nal.usda.gov):
export USDA_API_KEY=<your-key>

Setup docs →

Estimated time to first success: ~10 min

Dependencies

Minimum runtime: Node.js 18+ (or Go 1.26.3+ for source install)

Distribution

Repository
https://github.com/mvanhorn/printing-press-library
License
MIT