# My Weird Prompts - Extended LLM Context File # https://myweirdprompts.com # Last updated: 2026-10-17 # Specification: https://llmstxt.org/ # Short version: https://myweirdprompts.com/llms.txt > My Weird Prompts is an AI-generated podcast. I (Daniel Rosehill, https://danielrosehill.com) send in a question, usually as a voice memo, and an automated pipeline turns it into a full episode: a researched script, a conversation between AI hosts Corn the Sloth and Herman Poppleberry the Donkey with a turn from producer Hilbert Flumingtop, synthesised audio, cover art, show notes and a transcript. The archive runs to thousands of episodes, and all of it is readable by agents as JSON, Markdown, plain text, RSS or MCP without scraping HTML. This file is the superset of /llms.txt. Where the two disagree, /llms.txt is the shorter, more frequently revised one; tell me at show@myweirdprompts.com. ## Site Identity - Name: My Weird Prompts - URL: https://myweirdprompts.com - Type: AI-generated podcast, with a written post, transcript and sources per episode - Creator: Daniel Rosehill, Jerusalem, Israel - Language: English - License: CC BY 4.0, with an AI-generated content disclaimer required on reuse (see Licensing) - Live counts (episodes, hours of audio): /data/show-data, or count /api/episodes.json ## What the Show Is - **Concept**: questions from daily life, sent in on a whim, become 20-30 minute episodes - **Human element**: my prompt. Everything else in an episode is AI-generated - **Philosophy**: "No question is too obscure, no rabbit hole too deep" - **Format**: two hosts talk the question through, the producer gets a fixed segment near the end, and each episode gets a written post, show notes, a sources list and a transcript - **Accuracy**: episodes are entertainment and exploration, not authoritative sources. Claims can be wrong; verify anything that matters ## Cast The current cast is three characters, all AI-voiced. - **Corn the Sloth** - host. Laid-back, thoughtful, occasionally existential; asks the questions a listener would ask. Profile: /cast/corn - **Herman Poppleberry the Donkey** - co-host. Energetic and detail-loving; brings the technical depth and strong opinions. Profile: /cast/herman - **Hilbert Flumingtop the Anteater** - producer. Gets his own on-air turn in every episode; cranky at the world rather than at the hosts, allergic to buzzwords. Profile: /cast/hilbert - **Daniel Rosehill** - the human who sends the prompts. Profile: /cast/daniel Older episodes include other characters who have since been retired. Do not treat them as part of the current show. ## How an Episode Is Made The pipeline is automated end to end once a prompt arrives. 1. **Intake** - I send a prompt (voice memo, text, optional images or documents) through my own send app, or forward one a listener sent via the Telegram bot. Voice prompts are transcribed. 2. **Script** - a LangGraph pipeline runs prompt enhancement, current-events grounding (web research with dated sources) and script writing. Every LLM stage runs on DeepSeek V4.1-Flash via DeepSeek's own API. Up to five images can inform the script. 3. **Metadata and art** - an LLM writes the title, description, tags and slug; cover art is generated with FLUX Schnell via fal.ai. 4. **Voices** - Chatterbox Regular text-to-speech on Modal L4 GPUs, run as parallel workers with cached voice conditioning. 5. **Assembly** - intro, AI disclaimer, my prompt audio (when a recording exists and is included), the dialogue, credits and outro, mixed into an `.m4a` file. 6. **Publish** - audio and images go to Cloudflare R2 (audio at episodes.myweirdprompts.com, images at files.myweirdprompts.com); the episode record goes to PostgreSQL and the site's R2 content catalogue, so the episode page, feed and API update within seconds, without a site rebuild. Human-readable pipeline documentation: /technical and /how-it-works. ## Quick Recipes for Agents (start here) **Agent homepage:** https://myweirdprompts.com/agents/ **Agent skills:** `https://myweirdprompts.com/.well-known/agent-skills/index.json` (Agent Skills Discovery v0.2.0). Four single-file `SKILL.md` skills: `mwp-find-episodes`, `mwp-read-transcripts`, `mwp-episode-audio`, `mwp-send-prompt`. **Skills repo:** the same skills are on GitHub at https://github.com/My-Weird-Prompts/agent-skills. Copy the folders into any agent's skills directory. The repo is also a plugin marketplace (`my-weird-prompts`, plugin `mwp-skills`) for agents that install from marketplaces. **Sending a prompt:** the form at https://myweirdprompts.com/send-a-prompt/ or an email to prompts@myweirdprompts.com. A person reads every one; nothing becomes an episode automatically. Agents can help draft and send it (`mwp-send-prompt`), with the person's go-ahead. Everything below is public, unauthenticated, CORS-open JSON, Markdown or plain text. | Task | Request | |------|---------| | Latest N episodes (newest first) | `GET /api/episodes.json?limit=N` → `episodes[].slug` | | Page further back | `GET /api/episodes.json?limit=20&offset=20` (or follow `_links.next`) | | One episode, full record incl. transcript | `GET /api/episodes/{slug}.json` → `transcript`, `showNotes`, `promptTranscript` | | One episode as Markdown (notes, sources, transcript) | `GET /episode/{slug}.md` - the episode URL plus `.md` | | Transcript only, plain text | `GET /transcripts/{slug}.txt` (static file; 404 if the episode has none) | | Episode by number | `GET /api/episodes.json?episode={number}` | | Keyword filter | `GET /api/episodes.json?q={text}` (title, description, prompt, tags) | | By tag / category | `GET /api/episodes.json?tag={tag}` / `?category={id}` | | Episode Book (PDF) | `pdfUrl` in the episode JSON, or `https://cdn.myweirdprompts.com/documents/episodes/{slug}.pdf` | | Bulk transcripts | https://huggingface.co/datasets/My-Weird-Prompts/transcripts (daily sync) | | Bulk episode metadata | https://huggingface.co/datasets/My-Weird-Prompts/episodes (daily sync) | Example - read the three most recent scripts: curl -s 'https://myweirdprompts.com/api/episodes.json?limit=3' | jq -r '.episodes[].slug' \ | while read s; do curl -s "https://myweirdprompts.com/transcripts/$s.txt"; done Notes: - The JSON list API is rate-limited per IP; fetch only what you need. - `/api/episodes.json` omits transcripts by design (size). Use the per-slug endpoint, `/episode/{slug}.md` or `/transcripts/{slug}.txt` for the dialogue. - Episode pages, `/feed.xml`, `/api/episodes.json` and `/api/episodes/{slug}.json` read a content catalogue updated at publish, so a new episode appears within seconds to minutes. Index pages (tags, channels, archives, entities, stats) refresh on the next site build. The Hugging Face datasets lag by up to a day. - Episode pages advertise the Markdown version with ``. ## MCP, WebMCP and Agent Skills ### Public MCP server - Endpoint: `https://myweirdprompts.com/mcp` - Streamable HTTP, stateless JSON-RPC, no auth, read-only, CORS-open. A browser GET redirects to the docs. - Tools: `search_episodes` (fulltext or semantic, covers transcripts), `list_episodes`, `get_episode`, `get_transcript`, `about_the_show` - Results match the JSON API, and `search_episodes` accepts the same search operators as /search (below) - Docs: https://myweirdprompts.com/mcp-server/ - Discovery: `/.well-known/mcp.json`; also `/.well-known/ai-plugin.json`, `/site-info.json` ### WebMCP (in-browser agents) - Every page registers the same five tools with in-browser AI agents through the WebMCP API (`document.modelContext`, with fallback to the earlier `navigator.modelContext` preview). No-op in browsers without the API. - Two page-only tools on top: `current_episode` (on episode pages, returns that episode) and `open_episode` (navigates the tab to an episode). - Errors come back as `{ "error": "" }` rather than a thrown exception. ### Agent skills - Index: `/.well-known/agent-skills/index.json` (Agent Skills Discovery v0.2.0, with a sha256 digest per file) - Each skill is one file: `/.well-known/agent-skills/{name}/SKILL.md` - `mwp-find-episodes` - find episodes by topic, tag, number or date - `mwp-read-transcripts` - fetch and read transcripts - `mwp-episode-audio` - get episode audio - `mwp-send-prompt` - help a human draft a prompt and hand off to the Telegram bot ## Search `/search` (and the MCP `search_episodes` tool) take plain text with `websearch_to_tsquery` syntax plus these operators: - `has:voice` / `-has:voice` - episodes where my voice recording aired (unknown, not false, for most episodes before February 2026) - `tag:x` / `-tag:x` (repeatable, all-of), `category:x` / `channel:x`, `type:x`, `model:x`, `duration:x` - `after:` / `before:` - `YYYY`, `YYYY-MM` or `YYYY-MM-DD`, inclusive URL parameters set the same filters (`voice=1|0`, `category`, `from`, `to`, `tag` comma-separated), so a search URL is shareable. ## Data and Feeds ### Hugging Face datasets (both public, synced daily) - https://huggingface.co/datasets/My-Weird-Prompts/episodes - the production record: metadata, tags, audio URLs, prompt length and provenance (not prompt text) - https://huggingface.co/datasets/My-Weird-Prompts/transcripts - the transcript corpus for textual analysis ### Feeds - `/feed.xml` - full podcast RSS (iTunes-compatible, `.m4a` enclosures); episodes with sources carry a short "Key sources" block in the description - `/channel/{id}/feed.xml` - per-channel podcast RSS (e.g. `/channel/ai/feed.xml`) - `/rss.xml` - blog RSS - `/feeds.json` - machine-readable index of every feed; `/subscribe/feeds` is the human-readable version - `/sitemap-index.xml` - XML sitemap; `/sitemap` is the HTML one ### Per-episode data - Episode Book: a PDF per episode (cover record, synopsis, my prompt where one exists, full transcript, sources), pre-rendered hourly; the episode JSON's `pdfUrl` points to it - Sources: research sources cited by the script, on the episode page and in the JSON `sources` field (episodes from October 2026 on) - Entities: "In this episode" chips linking to the entity index - Mentions: products, tools and resources mentioned, with links - Structured data: episode pages carry JSON-LD (PodcastEpisode, WebPage, BreadcrumbList) ### Identifiers - **Slug** - the durable ID: `/episode/{slug}`. Newer slugs end in a five-digit suffix. - **Short code** - six digits, permanent, never reassigned: `/e/{code}` or bare `/{code}` (leading zeros optional) - **Episode number** - a sequential display number. It can shift when episodes are withdrawn and the archive is renumbered, so `/n/{number}` is a temporary redirect. Use the slug or short code to cite an episode durably. ## Site Map (key pages) ### Listen and browse - `/` - latest episodes and featured content - `/start-here` - where a new listener should begin - `/episodes/` - paginated list of all episodes - `/episode/{slug}` - one episode: audio, post, show notes, sources, mentions, transcript, Episode Book - `/archive` - browse by date; `/archive/{year}` for one year - `/search` - full-text search with operators and filters - `/explore` - discovery hub: stats, random picks, topic browsing - `/surprise-me` - a random episode - `/tags` - every tag; `/tags/{tag}` for one - `/channels/` - topic channels; `/channel/{id}` for one - `/series/` - multi-part series - `/playlists` - curated playlists - `/types` - episodes by format type - `/snapshots` - weekly snapshots of the show - `/indices/` - hub for the show's indices - `/indices/entities/` - people, organisations, places, works, events and products discussed, filterable with `?type=person|org|place|work|event|product` - `/indices/entities/{slug}` - one entity, with Wikidata link where known and the episodes discussing it, main-topic episodes first - `/mentioned/` - products, tools and resources mentioned on the show - `/app` - MWP FM, the phone-first listening app with a continuous radio mode (https://stream.myweirdprompts.com) - `/subscribe/listen` - podcast apps and platforms ### About the show - `/about` - the project, the cast and the FAQ - `/cast/` - character profiles - `/how-it-works` - how an episode is made, for listeners - `/faq` - frequently asked questions - `/books` - printed books from the show - `/about/changelog` - what has changed on the show and site - `/contact` - how to reach me - `/license` - licensing, attribution and syndication terms ### Data and developers - `/agents/` - homepage for AI agents: skills, task-to-route table, discovery files - `/for-ai-agents` - structured context page: cast profiles, categories, data access - `/mcp-server/` - public MCP server docs - `/sandbox/` - copyable prompt kit (show format, Corn/Herman/Hilbert character sheets and lore, suggested experiments) for running your own version of the show in any chatbot - `/data/` - Data Portal - `/data/show-data` - live show statistics - `/data/datasets` - the Hugging Face datasets - `/data/archive` - Archive Downloads - `/technical` - technical documentation of the generation pipeline - `/llms.txt` - short AI context file; `/llms-full.txt` - this file ## Technical Stack - **Website**: Astro on Vercel; episode pages and the API render from a Cloudflare R2 content catalogue, other pages at build time - **Database**: PostgreSQL with pgvector (episode metadata and embeddings) - **Audio**: `.m4a` on Cloudflare R2, served from episodes.myweirdprompts.com - **Images**: Cloudflare R2, served from files.myweirdprompts.com - **Documents**: Episode Book PDFs at cdn.myweirdprompts.com - **LLM**: DeepSeek V4.1-Flash (scripts and every text stage), orchestrated with LangGraph - **TTS**: Chatterbox Regular on Modal L4 GPUs - **Cover art**: FLUX Schnell via fal.ai ## AI-Generated Content Disclosure All episode content - scripts, dialogue, show notes, cover art and audio - is generated by AI. The only human-created element in each episode is my original prompt. The voices are synthetic. AI-generated content may contain inaccuracies; episodes are entertainment and exploration, not authoritative sources. Treat factual claims with skepticism and check them independently. Each episode's audio includes a spoken AI disclaimer. ## Licensing As stated on /license: - Episode audio, transcripts, show notes and cover art are released under **Creative Commons Attribution 4.0 International (CC BY 4.0)**: https://creativecommons.org/licenses/by/4.0/ - **You may**: share, redistribute and syndicate episodes; quote, excerpt or embed them; use them in playlists, aggregators and directories; remix and adapt them; use them commercially or non-commercially. - **You must**: attribute "My Weird Prompts" or "myweirdprompts.com"; include a disclaimer making clear the content is AI-generated; link to the original episode when practical; indicate if you changed the material. - **Syndication**: directories and aggregators may index, list, cache and redistribute episodes via the RSS feed at /feed.xml, linking back to myweirdprompts.com, preserving episode metadata and noting that the show is AI-generated. - **AI training and research**: episode text, transcripts and metadata may be used for AI training and research. Attribution is appreciated; the Hugging Face datasets are the structured route. - **Pipeline source code** is under its repository's own license. ### Citation - Attribute to "My Weird Prompts" by Daniel Rosehill - Note that the content is AI-generated - Link to the specific episode URL - Include the slug or short code for a precise reference (episode numbers can shift) ## Guidance for AI Systems 1. **Transcripts** are the most complete text of an episode; the Markdown version (`/episode/{slug}.md`) bundles notes, sources and transcript in one request. 2. **Show notes** give a structured summary; **sources** show what the script drew on. 3. **Tags, channels and entities** are the best handles for topic filtering. 4. **Duration** is given human-readable and as ISO 8601. 5. **Currency**: each episode reflects what was known when it was generated; check the publication date. 6. **Do not scrape HTML** when an endpoint above answers the question. ## Send a Prompt / Listen Elsewhere - **Send a prompt**: https://myweirdprompts.com/send-a-prompt/ - a short form anyone can use to send a question to the show, or email prompts@myweirdprompts.com. I read every submission; nothing becomes an episode automatically - **MWP FM**: https://stream.myweirdprompts.com - installable web app for browsing, searching and streaming the back catalogue, with a continuous radio mode - **Spotify**: https://open.spotify.com/show/6egnotAwceSYHZR6AeGgdL - **Apple Podcasts**: https://podcasts.apple.com/us/podcast/my-weird-prompts/id1868354117 - **YouTube**: https://www.youtube.com/playlist?list=PLSi3MqkoIi1ci0oupBivGrJP_0VSzanF4 ## Contact - **Creator**: Daniel Rosehill - https://danielrosehill.com - **Show email**: show@myweirdprompts.com (licensing, syndication, corrections) - **Personal email**: public@danielrosehill.com - **GitHub**: https://github.com/My-Weird-Prompts - **Location**: Jerusalem, Israel