# Will Haering > Personal website, portfolio, and writing of Will Haering — engineer, founder, and writer. This site is agent-friendly: every page below mirrors a structured JSON or OpenAPI endpoint so language models can read content directly without scraping. Start at the agent entry point (/for-agents) for a structured map of entities, actions, auth, and freshness. Reads are public, HTTPS-only, and CORS-enabled. No authentication is required for any content listed here. ## Agents - [Agent entry point](https://wch.io/for-agents): Human + machine readable map of entities, actions, auth, and caching. - [Agent JSON mirror](https://wch.io/api/for-agents/json): Full machine-readable copy of the entry point. - [OpenAPI specification](https://wch.io/openapi.yaml): Schemas, status codes, and request/response examples. - [Schema definitions](https://wch.io/api/for-agents/schema): Entity and response type definitions. - [Agent terminal](https://wch.io/for-agents/terminal): Interactive command interface for exploration. - [Action REPL](https://wch.io/for-agents/repl): Constrained, sandboxed action runner (X-Agent-Mode: repl). ## API - [Search](https://wch.io/api/search?q={query}): Full-text search of published posts with relevance scoring and pagination. - [Posts](https://wch.io/api/posts): List published blog posts (paginated). - [Post detail](https://wch.io/api/posts/{id}): Fetch a single published post with markdown content. - [Health](https://wch.io/api/health): System status and uptime (IP-restricted). ## Content - [Writing](https://wch.io/writing): Blog posts and essays. - [About](https://wch.io/about): Biography and professional background. ## Optional - [robots.txt](https://wch.io/robots.txt): Crawl rules and allowed agent paths. - [sitemap.xml](https://wch.io/sitemap.xml): Full URL index.