チームを一つのAI設定に統一する
チーム間でAIの設定がずれる問題が発生し、従来の方法(Wiki、テンプレート、同期スクリプト)は効果がありません。解決策は、バージョン管理されたベースラインパックをharness.jsonマニフェストで宣言し、ツールがパックを展開して各リポジトリの内容を上書きせずに設定を監査可能にすることです。
現代のソフトウェア開発では、チームが複数のAIエージェントを利用してコーディングを支援することが一般的になっているが、全メンバーとリポジトリで一貫した設定を維持することは難しい問題である。あるチームリーダーは、フロントエンドとバックエンドが同じAIツールを使用しているにもかかわらず、明らかに異なるコードを生成していることに気づいた。別のケースでは、2つのリポジトリのAGENTS.mdを比較したところ、組織が数ヶ月前に合意したはずの規則について誤解が生じていた。セキュリティリーダーは、誰も承認を覚えていない権限でエージェントが実行されているのを発見した。これらの話は、AI設定が知らないうちにずれていくという一般的な現象を明らかにしている。
問題の根本は、個人のずれよりもチームのずれの方が深刻であることにある。新しいリポジトリは、作成者が最後に触ったリポジトリから指示をコピーするため、規則はリリースのようにではなく変異のように広がる。各開発者のノートPCには、自分にとっては有効だが他の人には見えない、プライベートなスキル、ルール、権限のスタックが蓄積される。誰かが規則を改善しても、その改善は一つのリポジトリに留まり、全員に届くチャネルはない。結果として、組織の本当のAI設定は把握不可能になる——監査も、セキュリティ保護も、改善もできない。
従来の解決策はどれも失敗している。Wikiページは提案に過ぎず、システムではない。配布メカニズムもフィードバックループもない。共有テンプレートリポジトリは初日の問題を解決するが、90日目にはずれが発生する。同期スクリプトで各リポジトリのファイルを上書きすると、一週間以内に元に戻される。それは各リポジトリに固有のコンテンツが存在し、開発者がそれを守るのが正しいからだ。すべてを一つの巨大な組織全体の指示ファイルに集中させるのは逆効果で、データチームには汎用的すぎ、セキュリティにとってはノイズが多く、誰も所有しない。
機能する方法は、標準をバージョン管理し、各リポジトリで宣言することだ。組織の共通基盤(コミット規律、レビュールール、シークレット処理)を小さなバージョン管理されたベースラインパックにする。各チームは自らのドメイン用のパックを所有する(フロントエンドのコンポーネントパターン、セキュリティの強化された権限セット)。そして各リポジトリは、コミットされたharness.jsonで使用するパックと正確なバージョンを宣言する。
{
"$schema": "https://baselane.sh/harness.schema.json",
"version": 1,
"target": { "kind": "repo", "id": "checkout-web" },
"packs": {
"@acme/org-baseline": "3.0.0",
"@acme/frontend-taste": "1.2.0"
}
}ツールはパックを各エージェントが実際に読むファイルに展開し、マークされた管理領域にのみ書き込むため、各リポジトリのコンテンツが上書きされることはない。マニフェストは、答えられない質問をルックアップに変換する。このリポジトリの設定は?ファイルを読め。どのチームが現在のセキュリティベースラインを使っているか?マニフェスト間のバージョンを比較せよ。それはスクリプトであり、調査ではない。規則の改善は、パックリリースとバージョン更新のプルリクエストになり、各チームが自分のスケジュールでレビューしマージする。何も、リポジトリやノートPCに静かに届くことはない。チームが最初の静かな上書きを発見した日が、彼らが標準を信頼しなくなる最後の日となる。
「どうやって全員を同じ設定に保つか」という質問の背後にある真のニーズは、スタックの他の部分がすでに持っているものだ。「何を実行しているか、誰が使っているか、いつ変わったか」という一つの答え。Gitはコードに、パッケージマネージャーは依存関係にそれを与えた。AIエージェントを動かす指示、スキル、権限は依然として口承に頼っており、それらは毎日リポジトリにコードを書き込む設定である。同じ仕組みを与えよ。バージョン管理し、固定し、プルリクエストで配布し、採用を測定せよ。それがすべての答えであり、意図的に退屈なものだ。
マニフェスト仕様はgithub.com/baselane-sh/harness.jsonで公開されている。ツールがなくても、人間やエージェントが読める小さなファイルとして有用だ。残りを自動化するツール(監査、展開、ドリフトチェック、チーム全体のビュー)はbaselaneが提供する。あなたのチームがこの質問をしているなら、一つのリポジトリでnpx baselane auditを実行するだけで、実際の状況が10分でわかる。段階的なロールアウトは、続編の「5つのチームでAI設定を管理する方法」で紹介している。