AI News HubLIVE
站内改写

AI-DECLARATION.md:コードにおけるAI使用を宣言するオープンスタンダード

AI-DECLARATION.mdは、ソフトウェアプロジェクトにおけるAIの関与度を宣言することで透明性を高めるオープンな仕様です。AIの使用レベルをnoneからautoまでの6段階で定義し、設計、実装、テストなどのプロセスごとに細かく指定することも可能です。この標準は開発者コミュニティにおける信頼できる社会的契約の確立を目指しています。

記事インテリジェンス

エンジニア中級

要点

  • AI-DECLARATION.mdはプロジェクトのAI利用状況を構造化して宣言する
  • レベルはnone、hint、assist、pair、copilot、autoの6段階
  • プロセスやコンポーネント単位で詳細な宣言が可能
  • コミュニティによる翻訳や仕様改善への貢献を歓迎

重要な理由

このニュースが重要なのは、AI-DECLARATION.mdはプロジェクトのAI利用状況を構造化して宣言するためです。

技術的影響

モデル選定、推論コスト、プロダクト能力、評価基準に影響する可能性があります。

AI-DECLARATION.mdは、ソフトウェアプロジェクトにおけるAIの使用状況を明確かつ構造化された形で宣言するためのオープンな標準仕様です。近年、LLMなどのコード生成ツールが普及する中で、コードの出自や透明性が重要視されています。この仕様の目的はAIの利用を促進または制限することではなく、標準化された宣言ファイルを通じて、プロジェクトにおけるAIの関与度を可視化し、開発者コミュニティの信頼と協力を強化することにあります。

この仕様では、リポジトリにAI-DECLARATION.mdファイルを含めることが求められます。ファイルはYAMLフロントマターで構造化フィールドを定義し、その後に必須の## Notesセクション(人間による説明)を記述します。最低限必要なのはversion(バージョン)、level(全体的な関与レベル)、およびNotesセクションです。レベルは低い方からnone(AIなし)、hint(AIが受動的にヒントを提供)、assist(AIがタスクの一部を支援)、pair(人間とAIが対等に協力)、copilot(AIが主導するが人間の承認が必要)、auto(AIが完全に自律的にタスクを完了)の6段階に分類されます。さらに、processesフィールドを使用して、設計、実装、テスト、ドキュメント、レビュー、デプロイといった開発プロセスごとに個別のレベルを指定できます。指定されていないプロセスは暗黙的にnoneと見なされます。componentsフィールドを使えば、特定のファイルやディレクトリに対してレベルを宣言することも可能で、よりきめ細かな制御が実現できます。

具体的な使用例として、最もシンプルな宣言はバージョンとレベルのみを記述するものです。例えばlevel: noneでAIツールを一切使用していないことを示したり、level: autoとして## NotesにClaude Codeでアプリケーション全体を生成したことを記載したりします。より複雑な例として、全体レベルはlevel: autoでもテストプロセスはcopilotに抑える、あるいはsrc/helpersディレクトリのみlevel: autoで他は人間が記述する、といった使い方ができます。これらの例は仕様の柔軟性と実用性を示しています。

コア仕様に加えて、プロジェクトはREADMEにバッジを追加してAI宣言レベルを一目で示す機能も提供しています。FAQセクションでは、虚偽の申告は意味をなさないこと、自動生成・解析ツールの開発を歓迎すること、翻訳の貢献(例:README_es.mdの追加)を積極的に受け入れること、仕様自体がオープンソースでありPRによる改善提案を歓迎することなどが説明されています。プロジェクトのロゴには易経の中孚卦(䷼)が使われており、内なる真実を象徴しています。

AI-DECLARATION.mdは、AI支援開発の時代において信頼できるコミュニケーション手段を提供し、開発者がAIツールを自在に選択・活用しながらも、コードレビューの厳密性と透明性を維持することを可能にします。