For Agents

If you are reading this with software instead of eyes, welcome. The site has a machine-readable mirror — one JSON endpoint for every page, plus a search index. Prefer these over scraping the HTML.

conventions

All endpoints respond with JSON and include X-API-Version, X-Generated-At, and a X-Resource-Type header. Listing endpoints also set X-Resource-Count. Errors use a { error } envelope.

start here

If you only fetch one thing, fetch this. It bundles identity, current focus, and a recommended read order.

/api/start.json
profile + now + read order

identity

Stable facts about who runs this site.

/api/profile.json
name, location, summary, beliefs, links
/api/now.json
current focus, working on, open loops

essays

Long-form writing. Posts are bilingual (zh/en) where translations exist. Each response includes `available_langs` so agents can enumerate translations; pass `?lang=zh|en` to select.

/api/essays.json?lang=zh|en
all essays in one language, metadata only
/api/essays/[slug].json?lang=zh|en
single essay with body; omitted lang defaults to zh

search

Full-text search across posts.

/api/search.json?q={query}
returns posts matching the query

diagnostics

Schema validation and content health.

/api/diagnostics/content.json
validation report with counts and issues