@gunshi/docsを使った場合
Web検索のみ使用した場合
### [`byethrow`](https://github.com/praha-inc/byethrow)
また同じく筆者が愛用している新しいResult型libraryである[byethrow](https://github.com/praha-inc/byethrow) by {@Karibash} も同様に [`@praha/byethrow-docs`](https://www.npmjs.com/package/@praha/byethrow-docs) というドキュメント専用packageを提供しています。
`byethrow`は以前から`mcp`を提供していましたが、docs packageの方が高速に実装をすることができます。
# 注意点
この方法を採用する際にはいくつか考慮すべき点があります。
## packageサイズの増加
ドキュメントを同梱することで、当然packageのサイズは増加します。ただし、Markdownファイルはテキストベースであり、画像などを含めなければサイズの増加は限定的です。また、`@foo/docs`のように別packageとして提供する場合は、本体のサイズには影響しません。
## メンテナンスコスト
ドキュメントをpackageに含める場合、リリースのたびにドキュメントも一緒に更新・publishする必要があります。CIパイプラインを整備することで、このコストは最小化できます。
またモノレポで管理している場合、ドキュメントとコードのバージョンを同期させるのが容易です。
# おわりに
この1年間、`Context Engineering`という名前のもとで、どのようにドキュメントを整備して、LLMひいてはCoding Agentに渡すかということが広く議論されてきました。
筆者の中での現在の最適な方法は、ローカルにドキュメントを落とし、Coding Agentを信頼して、自由に情報を探索させることだと結論づけています。
`npm` registryへのドキュメントpublishは、それを推し進めるための良い解決策なのではないでしょうか。
# P.S.