コンテンツにスキップ

UI コンポーネントの分離

ドキュメントページが、ライブコードの REPL や Starlight の <Tabs> など、インタラクティブなカスタム UI コンポーネント(MDXコンポーネント)に大きく依存している場合、LLM のコンテキストウィンドウに対して大量のノイズ(不要なマークアップ)を送り込むことになります。

LLM はレンダリングされた画面ではなく、生の Markdown 文字列をそのまま読み取ります。例えば Starlight の Tabs コンポーネントを使用した場合、エージェントは以下のようなものを見ることになります:

<Tabs>
<TabItem label="npm">
`npm install`
</TabItem>
<TabItem label="yarn">
`yarn add`
</TabItem>
</Tabs>

このような特定のUIマークアップは、AIに対して直感的な条件分岐や明確な指示としては伝わりづらいです。人間の読者のためにどうしてもインタラクティブな表現が必要不可欠であり、生の Markdown がノイズだらけになってしまう場合は、両者を兼用しないでください

代わりに、AI 向けの指示は専用の .md ファイルへと分離し、人間向けのインタラクティブなドキュメントページとは切り離すことを選択してください。