Skip to content
Dials Docs

Agent access

Dials treats machine readers as first-class. There are three routes in, and none of them involve parsing rendered HTML.

The OpenAPI document as a tool set

The OpenAPI document at api.dials.co/openapi.json is written to be turned into tools without a human naming each one:

  • Every operation has a unique operationId (getModel, listListings, getCaliber) usable directly as a function name.
  • Every operation has a description saying what it returns and when to reach for it.
  • Every parameter and every response is typed, including the error bodies.
  • servers, contact, license and externalDocs are all populated, so a generator has somewhere to point.

Point your tool generator at it and it should need no hand editing.

Markdown instead of HTML on dials.co

Every public page on dials.co is also served as markdown, following the acceptmarkdown.com convention. Ask for it:

curl -s -H 'Accept: text/markdown' https://dials.co/about

You get Content-Type: text/markdown; charset=utf-8 and Vary: Accept. A client that asks for a media type the site cannot produce gets a 406 naming what is available, rather than an HTML page it then has to strip. A catalogue page that renders as roughly 100 KB of HTML is under 1 KB as markdown; this is the intended route for anything reading the site rather than the API.

The index of everything readable this way is at dials.co/llms.txt.

This site is readable the same way

The documentation you are reading follows the same rule:

  • docs.dials.co/llms.txt is a concise index of every page here.
  • docs.dials.co/llms-full.txt is the whole site's content in one file.
  • Every page is also available as plain markdown under /assets/md/, mirroring the page path: for example /assets/md/api/quickstart.md. The "Copy page for AI" control on each page hands out the same file.