古典的なドキュメントは人向けに作られている:レンダリングされたHTML、シンタックスハイライト、サイドバー、検索。でも docs を読むのはだんだん人間じゃなくてエージェント - Claude、Cursor、ChatGPT - で、あのレンダリングは邪魔になるだけだ。エージェントは純粋なテキストと機械可読な契約が欲しいんだ。
僕たちはドキュメントを両方に使えるようにした。内部はこんな感じだ。
.md のデュプリケート 各ページ
Section titled “.md のデュプリケート 各ページ”各コンテンツドキュメントページは同じパスに .md サフィックス付きの生の Markdown デュプリケートを持つ。/agent-setup を開くと /agent-setup.md もあり、同じテキストが HTML ラッパーなしで、MDX インポートは除かれ、text/markdown として返される。
これがページメニューの2つのアクションを駆動する:Copy as Markdown(純粋なテキストをクリップボードに入れてモデルとのチャットに貼り付けられる)と View as Markdown(.md バージョンを直接開く)。エージェントは DOM をパースする必要がなく、すでに用意されたテキストを取得するだけだ。
ページ上部のアクションドロップダウン
Section titled “ページ上部のアクションドロップダウン”各ページの右上隅に、エージェントのワークフロー向けに作られたアクションメニューがある:
- Copy as Markdown - ページの純粋なテキストをクリップボードに
- View as Markdown -
.mdデュプリケートを開く - Open in ChatGPT - ワンクリックでページを ChatGPT に送る
- Open in Claude - Claude 用に同様
- Connect MCP - MCP サーバー設定へ遷移
「URL をコピーしてチャットを開き、ページにアクセスしてもらう」代わりに、これ一つのアクションだ。
llms.txt と llms-full.txt
Section titled “llms.txt と llms-full.txt”標準 llmstxt.org に従って、2つのファイルを提供する:
/llms.txt- ドキュメント全ページのインデックスで、セクション(API Reference、Use Cases、Examples、Products)にグループ化されている。エージェント向けのマップで、どこから始めるかが分かる。/llms-full.txt- ドキュメント全体を1つのプレーンテキストファイルにまとめたもの。ベクトルデータベースへのオフラインインデックスや、モデルコンテキストへの一括挿入に使える。
もし僕たちの API の上に RAG を構築するなら、llms-full.txt はすでに用意されたコーパスで、サイトをクロールする必要はない。
機械可読な仕様
Section titled “機械可読な仕様”契約はさまざまなツール向けに�数のフォーマットで提供される:
/v1/openapi.json- 例と code-samples を含む正規の OpenAPI 3.1 仕様。クライアントのコード生成やあらゆる OpenAPI ツールに使用できる。- Swagger-エイリアス -
/v1/swagger.json、/v1/v3/api-docsなどが 301 リダイレクトで正規の場所へ向け、慣れたパスを探すツールが問題なく動くようにする。 - Postman コレクション -
/postman/astroway-api.jsonをワンクリックで Postman にインポートできる。
/agent-setup 各クライアント向け
Section titled “/agent-setup 各クライアント向け”ページ /agent-setup/ は単一の一般ガイドではなく、7つのクライアント(Claude Desktop、Claude Code、Cursor、VS Code、Windsurf、Cline、Codex)向けの個別指示になっている。各ページは正確な設定と tools/list の curl 例を提供し、コードを書く前に接続をテストできる。
インライン try-it
Section titled “インライン try-it”API リファレンスページでは各操作に組み込みのウィジェット try-it がある:サンドボックスキーを貼り付け、リクエストボディを編集し、«Send» を押すと、docs を離れずに実際のレスポンスが見られる。メソッド、パス、ボディ例は既に生成された curl スニペットから取得されるので、ウィジェットは openapi.json に余計なリクエストを送らない。
何のためにこれが必要か
Section titled “何のためにこれが必要か”シンプルな結論:君のプロダクトが API なら、ドキュメントは目で読むだけでなくエージェントが消費できる形であるべきだ。今日の統合の半分は、開発者が Claude や Cursor に docs のリンクを投げて「これを接続して」って頼むところから始まる。僕たちは最後に純粋なテキストと機械契約が残るようにした。HTML をパースする必要はない。
自分で試してみて:任意の docs ページを開き、右上のアクションメニューをクリックすれば「Open in Claude」が見えるはずだ。
Solar Fireと同じSwiss Ephemeris - 4行のコードで。
無料のキー(カード不要)。最初の支払いまでに月5,000回の呼び出し。