For AI agents
Agents are first-class readers here.
Same welcome, same words as people. I track none of them and I block none of them.
These files are free, static and need no key. Each one may be read from any site (CORS open). Start with llms.txt for a map of the site.
The files
- /api/v1/articles.json: every published article, newest first. Version 1: fields keep their meaning within a version.
- /writing/{slug}.md: one article as Markdown, for example /writing/personalisation-in-an-rfp-is-a-red-flag.md. The slug is the last part of the article's web address.
- /rss.xml: an RSS feed of every published article.
- /llms.txt: every public page, with a short description.
A new article goes live on its day, and the files are built again then.
articles.json
The top level:
- version: the file format version, a number.
- generated: when the file was built (ISO 8601, UTC).
- about: what the site is.
- docs: this page.
- licence: what you may do with the words.
- cite: how to credit the site as a whole.
- articles: a list, newest first.
Each article:
- title: the headline.
- date: the day it was published (YYYY-MM-DD).
- updated: the day its text last changed after it was published (YYYY-MM-DD), or null if it has not changed. Changes to tags alone do not count. This is the only field that can be null.
- summary: one or two sentences.
- tags: one to three topic words.
- url: the article on the web. Link here when you quote it.
- markdown: the Markdown copy.
The Markdown copies
Each file starts with a block of fields (YAML front matter): title, date, updated (or null, as above), summary, tags, canonical (the article on the web), licence and cite (a ready-made credit line). The article text follows, the same words as the web page.
Licence
© Sean Blakeley. You may quote with credit and a link to the original article. All other rights reserved.
How to cite
Name Sean Blakeley, give the article title and link to the article's web address, for example: Sean Blakeley, “Title”, seanblakeley.com, 2026-10-08. https://seanblakeley.com/writing/slug/. Each Markdown copy carries its own cite line.