# AI Hero Public Discovery

Version: 1

AI Hero exposes public content in HTML by default, explicit `.md` twins for supported public route families, and JSON discovery via [`/api`](https://www.aihero.dev/api).

## Discovery surfaces

- [`/api`](https://www.aihero.dev/api) — stable public JSON discovery document
- [`/llms.txt`](https://www.aihero.dev/llms.txt) — lightweight operator hint surface
- [`/sitemap.xml`](https://www.aihero.dev/sitemap.xml) — XML sitemap for crawlers
- [`/sitemap.md`](https://www.aihero.dev/sitemap.md) — markdown discovery index

## Human URLs

- Posts and lists: `https://www.aihero.dev/<slug>`
- Workshop lessons: `https://www.aihero.dev/workshops/<module>/<lesson>` for free public lessons
- Tutorial lessons: `https://www.aihero.dev/tutorials/<module>/<lesson>`
- Workshop landing pages: `https://www.aihero.dev/workshops/<module>`
- Products: `https://www.aihero.dev/products/<slug>`
- Cohorts: `https://www.aihero.dev/cohorts/<slug>`
- Events: `https://www.aihero.dev/events/<slug>`
- AI Coding Dictionary: `https://www.aihero.dev/dictionary`
- AI Coding Dictionary entries: `https://www.aihero.dev/dictionary/<slug>`

### Indexed public examples

- [2025: The Year Building With GenAI's Gets Boring](https://www.aihero.dev/2025-the-year-building-with-gen-ais-gets-boring~d53hd) (post)
- [5 Agent Skills I Use Every Day](https://www.aihero.dev/5-agent-skills-i-use-every-day) (post)
- [A Complete Guide To AGENTS.md](https://www.aihero.dev/a-complete-guide-to-agents-md) (post)
- [Build Your First Agent With Vercel's AI SDK](https://www.aihero.dev/agents-with-vercel-ai-sdk) (post)
- [The AI Engineer Roadmap](https://www.aihero.dev/ai-engineer-roadmap) (list)
- [Anthropic's new Model Context Protocol In 2 Minutes](https://www.aihero.dev/anthropics-new-model-context-protocol-in-2-minutes~hc0tx) (post)
- [Anthropic thinks you should build agents like this](https://www.aihero.dev/building-effective-agents) (post)
- [Connect Claude Code To A GitHub MCP Server](https://www.aihero.dev/connect-claude-code-to-github) (post)
- [Create Embeddings With Vercel's AI SDK](https://www.aihero.dev/create-embeddings-with-vercel-ai-sdk) (post)
- [Creating The Perfect Claude Code Status Line](https://www.aihero.dev/creating-the-perfect-claude-code-status-line) (post)
- [Build an Alt Text Generator With Vercel's AI SDK](https://www.aihero.dev/describe-images-with-vercel-ai-sdk) (post)
- [AI Coding Dictionary](https://www.aihero.dev/dictionary) (dictionary)
- [AFK | AI Coding Dictionary](https://www.aihero.dev/dictionary/afk) (dictionary-entry)
- [Agent | AI Coding Dictionary](https://www.aihero.dev/dictionary/agent) (dictionary-entry)
- [Agent mode | AI Coding Dictionary](https://www.aihero.dev/dictionary/agent-mode) (dictionary-entry)
- [AGENTS.md | AI Coding Dictionary](https://www.aihero.dev/dictionary/agents-md) (dictionary-entry)
- [Attention budget | AI Coding Dictionary](https://www.aihero.dev/dictionary/attention-budget) (dictionary-entry)
- [Attention degradation | AI Coding Dictionary](https://www.aihero.dev/dictionary/attention-degradation) (dictionary-entry)
- [Attention relationship | AI Coding Dictionary](https://www.aihero.dev/dictionary/attention-relationship) (dictionary-entry)
- [Autocompact | AI Coding Dictionary](https://www.aihero.dev/dictionary/autocompact) (dictionary-entry)
- [Automated check | AI Coding Dictionary](https://www.aihero.dev/dictionary/automated-check) (dictionary-entry)
- [Automated review | AI Coding Dictionary](https://www.aihero.dev/dictionary/automated-review) (dictionary-entry)
- [Cache tokens | AI Coding Dictionary](https://www.aihero.dev/dictionary/cache-tokens) (dictionary-entry)
- [Clearing | AI Coding Dictionary](https://www.aihero.dev/dictionary/clearing) (dictionary-entry)
- [Compaction | AI Coding Dictionary](https://www.aihero.dev/dictionary/compaction) (dictionary-entry)
- [Context | AI Coding Dictionary](https://www.aihero.dev/dictionary/context) (dictionary-entry)
- [Context window | AI Coding Dictionary](https://www.aihero.dev/dictionary/context-window) (dictionary-entry)
- [Contextual knowledge | AI Coding Dictionary](https://www.aihero.dev/dictionary/contextual-knowledge) (dictionary-entry)
- [Design concept | AI Coding Dictionary](https://www.aihero.dev/dictionary/design-concept) (dictionary-entry)
- [Environment | AI Coding Dictionary](https://www.aihero.dev/dictionary/environment) (dictionary-entry)
- [Filesystem | AI Coding Dictionary](https://www.aihero.dev/dictionary/filesystem) (dictionary-entry)
- [Grilling | AI Coding Dictionary](https://www.aihero.dev/dictionary/grilling) (dictionary-entry)
- [Hallucination | AI Coding Dictionary](https://www.aihero.dev/dictionary/hallucination) (dictionary-entry)
- [Handoff | AI Coding Dictionary](https://www.aihero.dev/dictionary/handoff) (dictionary-entry)
- [Handoff artifact | AI Coding Dictionary](https://www.aihero.dev/dictionary/handoff-artifact) (dictionary-entry)
- [Harness | AI Coding Dictionary](https://www.aihero.dev/dictionary/harness) (dictionary-entry)
- [Human-in-the-loop | AI Coding Dictionary](https://www.aihero.dev/dictionary/human-in-the-loop) (dictionary-entry)
- [Human review | AI Coding Dictionary](https://www.aihero.dev/dictionary/human-review) (dictionary-entry)
- [Inference | AI Coding Dictionary](https://www.aihero.dev/dictionary/inference) (dictionary-entry)
- [Input tokens | AI Coding Dictionary](https://www.aihero.dev/dictionary/input-tokens) (dictionary-entry)
- [Knowledge cutoff | AI Coding Dictionary](https://www.aihero.dev/dictionary/knowledge-cutoff) (dictionary-entry)
- [Memory system | AI Coding Dictionary](https://www.aihero.dev/dictionary/memory-system) (dictionary-entry)
- [Model | AI Coding Dictionary](https://www.aihero.dev/dictionary/model) (dictionary-entry)
- [Model provider | AI Coding Dictionary](https://www.aihero.dev/dictionary/model-provider) (dictionary-entry)
- [Model provider request | AI Coding Dictionary](https://www.aihero.dev/dictionary/model-provider-request) (dictionary-entry)
- [Next-token prediction | AI Coding Dictionary](https://www.aihero.dev/dictionary/next-token-prediction) (dictionary-entry)
- [Non-determinism | AI Coding Dictionary](https://www.aihero.dev/dictionary/non-determinism) (dictionary-entry)
- [Output tokens | AI Coding Dictionary](https://www.aihero.dev/dictionary/output-tokens) (dictionary-entry)
- [Parameters | AI Coding Dictionary](https://www.aihero.dev/dictionary/parameters) (dictionary-entry)
- [Parametric knowledge | AI Coding Dictionary](https://www.aihero.dev/dictionary/parametric-knowledge) (dictionary-entry)
- [Permission mode | AI Coding Dictionary](https://www.aihero.dev/dictionary/permission-mode) (dictionary-entry)
- [Permission request | AI Coding Dictionary](https://www.aihero.dev/dictionary/permission-request) (dictionary-entry)
- [Prefix cache | AI Coding Dictionary](https://www.aihero.dev/dictionary/prefix-cache) (dictionary-entry)
- [Progressive disclosure | AI Coding Dictionary](https://www.aihero.dev/dictionary/progressive-disclosure) (dictionary-entry)
- [Sandbox | AI Coding Dictionary](https://www.aihero.dev/dictionary/sandbox) (dictionary-entry)
- [Session | AI Coding Dictionary](https://www.aihero.dev/dictionary/session) (dictionary-entry)
- [Skill | AI Coding Dictionary](https://www.aihero.dev/dictionary/skill) (dictionary-entry)
- [Smart zone | AI Coding Dictionary](https://www.aihero.dev/dictionary/smart-zone) (dictionary-entry)
- [Spec | AI Coding Dictionary](https://www.aihero.dev/dictionary/spec) (dictionary-entry)
- [Stateful | AI Coding Dictionary](https://www.aihero.dev/dictionary/stateful) (dictionary-entry)
- [Stateless | AI Coding Dictionary](https://www.aihero.dev/dictionary/stateless) (dictionary-entry)
- [Subagent | AI Coding Dictionary](https://www.aihero.dev/dictionary/subagent) (dictionary-entry)
- [Sycophancy | AI Coding Dictionary](https://www.aihero.dev/dictionary/sycophancy) (dictionary-entry)
- [System prompt | AI Coding Dictionary](https://www.aihero.dev/dictionary/system-prompt) (dictionary-entry)
- [Ticket | AI Coding Dictionary](https://www.aihero.dev/dictionary/ticket) (dictionary-entry)
- [Token | AI Coding Dictionary](https://www.aihero.dev/dictionary/token) (dictionary-entry)
- [Tool | AI Coding Dictionary](https://www.aihero.dev/dictionary/tool) (dictionary-entry)
- [Tool call | AI Coding Dictionary](https://www.aihero.dev/dictionary/tool-call) (dictionary-entry)
- [Tool result | AI Coding Dictionary](https://www.aihero.dev/dictionary/tool-result) (dictionary-entry)
- [Training | AI Coding Dictionary](https://www.aihero.dev/dictionary/training) (dictionary-entry)
- [Turn | AI Coding Dictionary](https://www.aihero.dev/dictionary/turn) (dictionary-entry)
- [Vibe coding | AI Coding Dictionary](https://www.aihero.dev/dictionary/vibe-coding) (dictionary-entry)
- [Essential AI Coding Feedback Loops For TypeScript Projects](https://www.aihero.dev/essential-ai-coding-feedback-loops-for-type-script-projects) (post)
- [Evalite - an Early Preview](https://www.aihero.dev/evalite-an-early-preview) (post)
- [Evalite v1 Preview: Fast Evals, Built-in Scorers](https://www.aihero.dev/evalite-v1-preview) (post)
- [Generate Arrays With Vercel's AI SDK](https://www.aihero.dev/generate-arrays-with-vercel-ai-sdk) (post)
- [Generate Enums With Vercel's AI SDK](https://www.aihero.dev/generate-enums-with-vercel-ai-sdk) (post)
- [Generate Text With Vercel's AI SDK](https://www.aihero.dev/generate-text-with-vercel-ai-sdk) (post)
- [Getting Started With Ralph](https://www.aihero.dev/getting-started-with-ralph) (post)
- [Google's Introduction To Agents Is GREAT](https://www.aihero.dev/google-agents-whitepaper-review) (post)
- [Here's How To Stream Claude Code With AFK Ralph](https://www.aihero.dev/heres-how-to-stream-claude-code-with-afk-ralph) (post)
- [How Does The Model Context Protocol Work?](https://www.aihero.dev/how-does-the-model-context-protocol-work) (post)
- [5 Questions To Ask Before Choosing An LLM](https://www.aihero.dev/how-to-choose-an-llm) (post)
- [17 Techniques For Improving Your LLM-Powered App](https://www.aihero.dev/how-to-improve-your-llm-powered-app) (post)
- [How To Make Codebases AI Agents Love](https://www.aihero.dev/how-to-make-codebases-ai-agents-love) (post)
- [How To Use Claude Code Hooks To Enforce The Right CLI](https://www.aihero.dev/how-to-use-claude-code-hooks-to-enforce-the-right-cli) (post)
- [Implementing Anthropic's "think" Tool In TypeScript](https://www.aihero.dev/implementing-anthropics-think-tool-in-typescript) (post)
- [LLM Fundamentals](https://www.aihero.dev/llm-fundamentals) (list)
- [Logging: A Huge MCP Footgun](https://www.aihero.dev/logging-a-huge-mcp-footgun) (post)
- [Serving MCP Servers Over stdout](https://www.aihero.dev/mcp-server-from-a-single-typescript-file) (post)
- [Messages, System Prompts and Reasoning Tokens](https://www.aihero.dev/messages-system-prompts-and-reasoning-tokens) (post)
- [Model Context Protocol Tutorial](https://www.aihero.dev/model-context-protocol-tutorial) (list)
- [My 7 Phases Of AI Development](https://www.aihero.dev/my-7-phases-of-ai-development) (post)
- [My AGENTS.md file for building plans you actually read](https://www.aihero.dev/my-agents-md-file-for-building-plans-you-actually-read) (post)
- [My Claude Code Cohort - A Teaser](https://www.aihero.dev/my-claude-code-cohort-a-teaser) (post)
- [My 'Grill Me' Skill Went Viral](https://www.aihero.dev/my-grill-me-skill-has-gone-viral) (post)
- [Never Run Claude /init](https://www.aihero.dev/never-run-claude-init) (post)
- [Personal software is INSANE in the age of AI](https://www.aihero.dev/personal-software-is-insane-in-the-age-of-ai-u2hx2) (post)
- [An Introduction To Plan Mode](https://www.aihero.dev/plan-mode-introduction) (post)
- [Publish Your MCP Server To NPM](https://www.aihero.dev/publish-your-mcp-server-to-npm) (post)
- [Real-world feature build with Claude Code: every step explained](https://www.aihero.dev/real-world-feature-build-with-claude-code) (post)
- [Securing your AI App with Guardrails](https://www.aihero.dev/securing-your-ai-app-with-guardrails) (post)
- [My Skill Makes Claude Code GREAT At TDD](https://www.aihero.dev/skill-test-driven-development-claude-code) (post)
- [Skills Changelog: Ubiquitous Language -> /grill-with-docs](https://www.aihero.dev/skills-changelog-ubiquitous-language-grill-with-docs) (post)
- [domain-model: Keep AI Plans Aligned With Your Codebase Language](https://www.aihero.dev/skills-domain-model) (post)
- [grill-me: Stress-Test a Plan Before You Build](https://www.aihero.dev/skills-grill-me) (post)
- [tdd: Red, Green, Refactor for Agentic Coding](https://www.aihero.dev/skills-tdd) (post)
- [to-issues: Break a PRD Into Vertical-Slice GitHub Issues](https://www.aihero.dev/skills-to-issues) (post)
- [to-prd: Turn Resolved Context Into a PRD](https://www.aihero.dev/skills-to-prd) (post)
- [STORM: Generate High-Quality Articles Based On Real Research](https://www.aihero.dev/storm-generate-high-quality-articles-based-on-real-research) (post)
- [Streaming In 'Next Question Suggestions' With Vercel's AI SDK](https://www.aihero.dev/streaming-in-next-question-suggestions-with-the-ai-sdk) (post)
- [Streaming Objects With Vercel's AI SDK](https://www.aihero.dev/streaming-objects-with-vercel-ai-sdk) (post)
- [Streaming Text With Vercel's AI SDK](https://www.aihero.dev/streaming-text-with-vercel-ai-sdk) (post)
- [Extract Structured Data From PDF's With Vercel's AI SDK](https://www.aihero.dev/structured-data-from-pdfs-with-vercel-ai-sdk) (post)
- [Structured Outputs with Vercel's AI SDK](https://www.aihero.dev/structured-outputs-with-vercel-ai-sdk) (post)
- [Hot-Swap AI Models With Vercel's AI SDK](https://www.aihero.dev/swap-ai-models-with-vercel-ai-sdk) (post)
- [Adding System Prompts With Vercel's AI SDK](https://www.aihero.dev/system-prompts-with-vercel-ai-sdk) (post)
- [The AI Engineer Mindset](https://www.aihero.dev/the-ai-engineer-mindset) (post)
- [The Problem With MCP: Stateful Servers](https://www.aihero.dev/the-problem-with-mcp-stateful-server) (post)
- [Here's 2024's best resource on prompt engineering](https://www.aihero.dev/the-prompt-report) (post)
- [This Hook Stops Claude Code Running Dangerous Git Commands](https://www.aihero.dev/this-hook-stops-claude-code-running-dangerous-git-commands) (post)
- [The Three Types Of Evals](https://www.aihero.dev/three-types-of-evals) (post)
- [11 Tips For AI Coding With Ralph Wiggum](https://www.aihero.dev/tips-for-ai-coding-with-ralph-wiggum) (post)
- [Tool Calling With Vercel's AI SDK](https://www.aihero.dev/tool-calls-with-vercel-ai-sdk) (post)
- [Tracer Bullets: Keeping AI Slop Under Control](https://www.aihero.dev/tracer-bullets) (post)
- [Use Local Models With Vercel's AI SDK](https://www.aihero.dev/use-local-models-with-vercel-ai-sdk) (post)
- [Using MCP Prompts](https://www.aihero.dev/using-mcp-prompts) (post)
- [Vercel's AI SDK Future-proofs Your AI Stack](https://www.aihero.dev/vercel-ai-sdk) (post)
- [Working With Message Histories In Vercel's AI SDK](https://www.aihero.dev/vercel-ai-sdk-messages-array) (post)
- [Vercel AI SDK Tutorial](https://www.aihero.dev/vercel-ai-sdk-tutorial) (list)
- [9 Ways AI Coding Has Rewired My Brain](https://www.aihero.dev/ways-ai-coding-has-rewired-my-brain) (post)
- [Your App Is Only As Good As Its Evals](https://www.aihero.dev/what-are-evals) (post)
- [What Can You Use LLM's For?](https://www.aihero.dev/what-are-llms-used-for) (post)
- [What Are Tokens?](https://www.aihero.dev/what-are-tokens) (post)
- [What Are Tools?](https://www.aihero.dev/what-are-tools) (post)
- [What Is An Agent?](https://www.aihero.dev/what-is-an-agent) (post)
- [What Is An AI Engineer?](https://www.aihero.dev/what-is-an-ai-engineer) (post)
- [What Is An LLM?](https://www.aihero.dev/what-is-an-llm) (post)
- [What Is Vercel's AI SDK?](https://www.aihero.dev/what-is-the-ai-sdk) (post)
- [What Is The Context Window?](https://www.aihero.dev/what-is-the-context-window) (post)
- [Why the Anthropic Ralph plugin sucks (use a bash loop instead)](https://www.aihero.dev/why-the-anthropic-ralph-plugin-sucks) (post)

## Markdown twins

- Posts and lists: `https://www.aihero.dev/<slug>.md`
- Workshop lessons: `https://www.aihero.dev/workshops/<module>/<lesson>.md` for free public lessons
- Tutorial lessons: `https://www.aihero.dev/tutorials/<module>/<lesson>.md`
- Workshop landing pages: `https://www.aihero.dev/workshops/<module>.md`
- Products: `https://www.aihero.dev/products/<slug>.md`
- Cohorts: `https://www.aihero.dev/cohorts/<slug>.md`
- Events: `https://www.aihero.dev/events/<slug>.md`
- Existing `Accept: text/markdown` negotiation is still supported on the currently supported post and lesson HTML routes.

## Public JSON APIs

- `https://www.aihero.dev/api` — public discovery document for formats, route families, and next actions
- `https://www.aihero.dev/api/search?q=<query>` — public search entry point for public content
- `https://www.aihero.dev/api/resources?slugOrId=<slug>&type=<type>` — structured resource lookup by slug or id

## Usage

```bash
curl https://www.aihero.dev/api
curl https://www.aihero.dev/llms.txt
curl https://www.aihero.dev/sitemap.md
curl https://www.aihero.dev/sitemap.xml
curl https://www.aihero.dev/some-post-slug.md
curl https://www.aihero.dev/workshops/module-slug/lesson-slug.md
curl https://www.aihero.dev/tutorials/module-slug/lesson-slug.md
curl https://www.aihero.dev/workshops/module-slug.md
curl https://www.aihero.dev/products/product-slug.md
curl https://www.aihero.dev/cohorts/cohort-slug.md
curl https://www.aihero.dev/events/event-slug.md
curl "https://www.aihero.dev/api/search?q=agentic+coding"
curl "https://www.aihero.dev/api/resources?slugOrId=some-post-slug&type=post"
curl -H 'Accept: text/markdown' https://www.aihero.dev/some-post-slug
```
