本文へ移動
AI Dev Lab Japan AI開発ツール、AIコーディングエージェント、M...

法人導入前のAIコーディング権限設計:APIキー・非公開リポジトリ・人間承認フロー

法人導入前のAIコーディング権限設計:APIキー・非公開リポジトリ・人間承認フローの要点をタイトルと確認軸で示すアイキャッチ

追記: 2026年6月13日の最新情報

2026年6月13日時点でGitHub公式docsを確認すると、法人のAIコーディング権限設計では、ローカルCLIやAPI keyだけでなく、GitHub上のpartner agentも別の権限面として扱う必要があります。GitHubは third-party coding agents としてClaudeやCodexを説明しており、これらはCopilot cloud agentと並んでGitHub上で非同期に開発タスクを進めます。

特に見落としやすいのは管理境界です。GitHub公式docsでは、Claudeを有効にすると `anthropic code agent`、Codexを有効にすると `openai code agent` というGitHub Appが使われ、actionsはaudit logに残る一方、GitHub App installations一覧には表示されないとされています。また enterprise management docs では、third-party agentsのpolicyはCopilot cloud agentとは別管理で、片方を制限してももう片方が自動では止まらないと説明されています。

そのため、導入前チェックには「対象repositoryを選ぶ」「GitHub.com上のthird-party MCP serversを許可するか決める」「automationsを許可するか分ける」「audit logでどのactorを見るか決める」を加えてください。自然言語の禁止文だけではなく、organization policy、repository availability、Appのactor、人間レビューをセットで設計するのが安全です。

このテーマをもう少し広げて見るなら、GitHub Agentic Workflowsを導入する前に:AI Engine・MCP・権限境界をGitHub Actionsで分けるGitHub ActionsでAI修正PRを作る前に:permissions・secrets・pull_request_targetの安全設計 も合わせて確認してください。GitHub上でAI agentを動かす場合のAI Engine、MCP、権限境界を続けて確認できる

3行まとめ

Visual導入前に分ける4つの境界AIに任せる前に、読む・書く・外へ出す・承認する範囲を別々に決めます。
読む

初期値は対象repoのread-only調査。Issue、失敗ログ、対象ファイルに範囲を絞ります。

書く

限定ディレクトリの小さな差分から始め、依存関係追加や設定変更は別承認にします。

外へ出す

外部通信は原則オフ。必要なdomain、method、送信データを確認してから許可します。

承認する

作業前、権限昇格時、マージ前で承認する内容と見るログを変えます。

自然言語の禁止文だけで止めず、権限、設定、ログ、人間レビューに落とすことが出発点です。

  • AIコーディングエージェントを法人導入する前に決めるべきなのは、ツール名ではなく「何を読めるか」「何を書けるか」「外へ送れるか」「誰が承認するか」です。
  • 最初の初期値は、対象リポジトリを絞ったread-only調査です。workspace write、外部通信、MCP write tool、PR作成、CI/CD変更は、それぞれ別の権限境界として扱います。
  • 2026年5月29日時点の公式情報では、Codex、Claude Code、GitHub Copilot、Cursorはいずれも権限や管理機能を持ちますが、自然言語の禁止文だけをセキュリティ境界にするのは不十分です。

最初の初期値はread-only

AIコーディングエージェントは、補完ツールではなく作業主体として扱う必要があります。コードを読み、差分を作り、コマンドを実行し、外部ツールを呼び、PRまで作れる環境では、便利さとリスクが同じ方向に伸びます。

最初に許可する範囲は、対象リポジトリ内のread-only調査に寄せます。たとえば、ファイル検索、失敗ログの読解、対象ファイルの読み取り、変更方針の提案までです。ここで問題がなければ、限定ディレクトリの編集、テスト実行、PR作成の順に広げます。

根拠

OpenAI Codexのpermissionsでは、:read-only:workspace:danger-full-accessのような権限プロファイルや、filesystem/network rulesを分けて扱えます。Claude Codeのsecurity docsでは、read-onlyを初期値にし、編集やコマンド実行には明示的な許可を求める設計が説明されています。GitHubのfine-grained PATも、対象owner、対象repository、permission、期限を細かく絞る考え方です。

承認なしで増やしてよい権限はない

「AIにこの作業を任せたい」と「AIにこの権限を渡してよい」は別の判断です。README修正と依存関係追加は同じ編集ではありません。テスト実行と外部API呼び出しも同じコマンド実行ではありません。Issueを読むこととPRを作ること、PRを作ることとmergeすることも分けて考えます。

注意点

AGENTS.md、Cursor Rules、CLAUDE.md、Copilot instructionsのような自然言語のルールは、作業方針を伝えるには有効です。ただし、それだけではtoken scope、filesystem deny、network allowlist、branch protection、required reviewの代わりにはなりません。禁止事項は、できるだけ設定、権限、ポリシー、レビュー必須条件に落とします。

本文の事実確認には、公式ドキュメント、公式ヘルプ、関連する仕様・SDKドキュメントを使っています。実リポジトリでの性能ベンチマークや更新代行は、本文で明記した場合を除き実施していません。

この記事でわかること

Visual読後に決められること法人導入前に棚卸ししたい判断を、権限と運用に分けて整理します。
秘密情報

APIキー、GitHub token、CI secretsをAIの作業文脈から遠ざける設計。

リポジトリ範囲

非公開repoを丸ごと渡さず、対象repo、ディレクトリ、Issue単位で絞る判断。

外部接続

外部通信、MCP、package install、Web参照を許可する前の確認項目。

人間承認

PR作成、branch protection、レビュー、mergeを分ける運用設計。

ツール名の比較より先に、AIが読めるもの、書けるもの、外へ送れるものを決めます。

  • APIキー、GitHub token、クラウド認証情報をAIから遠ざける設計
  • 非公開リポジトリを読ませる範囲の決め方
  • Codex、Claude Code、GitHub Copilot、Cursorで見るべき権限・管理機能
  • 外部通信、MCP、package install、Web参照を許可する前の確認項目
  • AIにPRを作らせる時のGitHub権限、branch protection、人間レビューの切り分け
  • 2週間の小さなパイロットで確認するログ、失敗条件、採用判断

AIコーディングエージェント全体の比較軸を先に見たい場合は、公開済みのAIコーディングエージェントカテゴリを入口にすると整理しやすいです。権限、秘密情報、承認、監査ログに関する記事はSecurityカテゴリに集める想定です。

この記事で扱う権限の地図

VisualAIコーディング権限マップAI作業を入力から承認までの流れで分解し、各地点の初期値を決めます。
  1. 1入力

    Issue、失敗ログ、対象ファイル、設計メモは必要最小限にします。

  2. 2読み取り

    repo、ディレクトリ、設定ファイル、ログは対象repoのread-onlyから始めます。

  3. 3書き込み

    ファイル編集、依存関係追加、設定変更は限定ディレクトリから始めます。

  4. 4外部通信

    package registry、公式Docs、MCP、APIは必要ドメインだけ許可します。

  5. 5GitHub操作

    branch作成やPR作成までを上限にし、mergeは人間に残します。

  6. 6承認

    作業前、権限昇格、マージ前でログを見て判断します。

repoを読めること、書けること、外部へ送れること、mergeできることは別の権限境界です。

AIコーディング導入の失敗は、よく「どのツールを選ぶか」の議論に見えます。しかし実際には、権限の境界が曖昧なまま導入した時に起きます。

この記事では、次の6つを分けて扱います。

領域初期値
入力Issue、失敗ログ、対象ファイル、設計メモ必要最小限
読み取りrepo、ディレクトリ、設定ファイル、ログ対象repoのread-only
書き込みファイル編集、依存関係追加、設定変更限定ディレクトリから開始
外部通信package registry、公式Docs、MCP、API原則オフ、必要ドメインだけ許可
GitHub操作branch作成、PR作成、review response、mergePR作成まで。mergeは人間
承認作業前、権限昇格、マージ前ログを見て人間が判断

読み取り権限と書き込み権限を分ける

repoを読めることと、repoを書き換えられることは別です。AIが「調査」できる状態にするだけなら、branch作成やpush権限は不要です。Issueの要約や失敗ログの読解なら、CI/CD設定や本番deploy設定を読める必要もない場合があります。

確認項目

導入前に、次の操作を行単位で分解します。

操作初期判断
Issueを読む許可候補
対象ファイルを読む許可候補
リポジトリ全体を読むパイロットでは避ける
ファイルを編集する限定範囲で許可候補
依存関係を追加する承認必須
branchを作るAI用権限を分けて検討
PRを作る人間レビュー前提で検討
mergeする初期導入では不可
release/deployする初期導入では不可

自然言語ルールと強制設定を分ける

「秘密情報を読まないで」「本番環境を触らないで」「依存関係を勝手に増やさないで」と書くことは大切です。ただし、これらは作業指示です。セキュリティ境界にしたいなら、設定と権限で止めます。

たとえばCodexならpermission profile、network rules、hooksを確認します。GitHubならfine-grained token、branch protection、required review、CODEOWNERS、Copilot policiesを確認します。CursorならPrivacy Mode、Team Rules、Project Rules、管理者設定を確認します。MCPなら接続するtoolのscope、入力schema、認証、ログを確認します。

評価基準

導入前レビューでは、次の質問に答えられる状態を目標にします。

  • AIが読めないファイルは、設定や権限で本当に読めないか
  • AIが実行できないコマンドは、実行環境や承認で止まるか
  • AIが外部へ送れないデータは、network policyで止まるか
  • AIが作ったPRは、人間レビューなしにmergeされないか
  • 事故時に、どのtool、どのtoken、どのログを見れば追えるか

APIキーとtokenをAIから遠ざける

Visual秘密情報の置き場所と初期判断AIが秘密情報に近づく経路を、保管場所ごとに確認します。
項目内容見方
ローカルの.envAIの作業ディレクトリから外し、filesystem denyや除外設定の対象にします。
CI secrets必要なjobだけに注入し、ログマスクとsecret scanningを組み合わせます。
GitHub PAT最後の選択肢として扱い、owner、repository、permission、期限を記録します。
GitHub AppやGITHUB_TOKEN用途に合う場合は、個人tokenより先に検討します。
MCP serverの認証情報read-onlyから始め、tokenの保管場所、失効手順、監査ログを確認します。

秘密情報はprompt、diff、ログ、PR本文、外部tool呼び出しに混ざる可能性を前提に設計します。

法人導入で最初に潰すべきリスクは、秘密情報への近さです。AIが意図的に悪用するかどうか以前に、コード検索、ログ読解、テスト実行、外部tool呼び出しの途中で、秘密情報がprompt、diff、ログ、PR本文、外部送信に混ざる可能性があります。

GitHub PATは最後の選択肢として扱う

GitHub Docsでは、personal access tokenはpasswordのように扱うべきものとされています。また、可能ならGitHub CLIやGit Credential Manager、GitHub Actions内ではGITHUB_TOKENなど、より適した認証方式を検討する流れが示されています。

fine-grained PATは、classic PATより対象owner、repository、permissionを細かく絞れます。ただし、すべての用途を代替できるわけではありません。GitHubの公式Docsにも、fine-grained PATには未対応の操作があることが説明されています。

根拠

GitHub公式Docsでは、fine-grained PATの利点として、単一ownerへの限定、特定repositoryへの限定、細かいpermission設定、organization ownerによる承認などが示されています。一方で、classic PATは広いscopeになりやすく、特に組織や個人アカウント内の多くのrepositoryへ影響しやすい点に注意が必要です。

条件

どうしてもAI作業にtokenが必要な場合は、最低限、次を記録します。

項目記録すること
用途何の操作に必要か
所有者個人、bot、GitHub App、組織管理のどれか
対象owner、repository、branch、API endpoint
permissionread/write/adminのどれが必要か
期限いつ失効するか
保管場所ローカル、CI、secret manager、MCP serverのどこか
失効手順事故時に誰が止めるか
監査どのログで利用を追うか

.envとCI secretsを読ませない

.env、クラウド認証情報、npm token、database URL、外部サービスのAPI key、CI secretsは、AIの作業文脈から切り離します。公開記事や公開repoに、実在する秘密情報名や社内固有のsecret名を書きすぎるのも避けます。

注意点

「AIに秘密情報を読ませない」と書いても、作業ディレクトリにファイルがあり、filesystem readが許可され、検索コマンドで引っかかるなら、事故の余地は残ります。自然言語ルールに加えて、次のような制御を組み合わせます。

  • 秘密情報を作業ディレクトリに置かない
  • secret managerやCI secretsに寄せる
  • AI実行環境には必要なsecretだけを注入する
  • .env*や認証ファイルをfilesystem denyや除外設定の対象にする
  • PR本文、ログ、テスト出力にsecretが出ないようにする
  • secret scanningとログマスクを有効にする

確認項目

AIに作業させる前に、次を確認します。

確認見るポイント
検索secretらしい値がrepo内にないか
実行テストやビルドでsecretが標準出力へ出ないか
差分AIが設定ファイルや環境変数周辺を触っていないか
PRPR本文、commit message、レビューコメントにsecretが出ないか
外部通信secretを含む可能性のあるログやコード片を送らないか

非公開リポジトリをどこまで読ませるか

Visualprivate repoを渡す範囲の段階非公開repoの扱いはYes/Noではなく、タスク単位で範囲を切ります。
項目内容見方
全repo初回パイロットでは避けます。顧客データ、secret、CI/CD影響を確認しきれない場合があります。
対象repoのみ顧客データを含まず、secretがなく、レビュー担当が明確なrepoから検討します。
対象ディレクトリのみ変更範囲が小さく、テストがローカルで再現できる場合の初期候補です。
Issueと差分のみ失敗ログ、関連ファイル、期待する出力だけを渡す最小構成です。

content exclusionやignoreは重要ですが、対象機能で実際に効くかを導入前に確認します。

非公開リポジトリをAIに読ませるかどうかは、単純なYes/Noではありません。対象repo、契約、顧客データ、secretの有無、ツールのデータ利用条件、保持、管理者制御、社内規程で答えが変わります。

repo単位ではなくタスク単位で範囲を切る

初回パイロットでは、リポジトリ全体を丸ごと渡すより、タスク単位で範囲を切ります。たとえば、失敗しているunit testと関連ファイル、変更対象ディレクトリ、Issue本文、期待する出力だけを渡します。

条件

最初の対象に向くのは、次のようなrepoやタスクです。

  • 顧客データを含まない
  • 秘密情報がrepoに入っていない
  • 本番deploy権限に直結しない
  • テストがローカルで再現できる
  • 変更範囲が小さい
  • CODEOWNERやレビュー担当が明確
  • 失敗しても事業影響が小さい

逆に、認証、決済、個人情報、顧客固有ロジック、CI/CD、release、infra、権限管理の中核は、初回対象から外します。

content exclusionとignoreを過信しない

GitHub Copilotにはcontent exclusionの機能があります。repository、organization、enterprise単位で特定ファイルをCopilotの対象から外す設計です。一方で、公式Docsでは、Copilot CLI、Copilot cloud agent、IDEのAgent modeなど、対象外または制約のある機能が示されています。

注意点

除外設定は重要ですが、唯一の防御策にしないでください。対象機能によって効き方が違う場合があります。IDEが間接的に型情報やsymbol情報を渡す可能性、symlinkやremote filesystemの制約も確認が必要です。

評価基準

導入前に、次の検証ログを残します。

機能除外設定の確認
Inline suggestion除外ファイルで候補が出ないか
Chat除外ファイルの内容を回答に使わないか
Agent mode未対応や制約がないか
Cloud agent対象repoや対象機能で除外が効くか
Code review除外対象がレビューされないか

外部通信は原則オフ、必要な通信だけ許可する

Visual外部通信の承認フロー外部通信は、便利さだけでなく情報流出とprompt injectionの入口として扱います。
  1. 1要求

    AIが外部通信を必要とする目的を確認します。

  2. 2URLと目的

    公式Docs、package registry、社内APIなど通信先の種別を確認します。

  3. 3送信データ

    code、ログ、環境変数、認証ヘッダが含まれないか確認します。

  4. 4allowlist

    必要なdomainとHTTP methodだけを許可します。

  5. 5実行ログ

    誰が、いつ、どの通信を許可し、何が送られたかを追えるようにします。

未知ドメインや書き込み系methodは、作業中でも一度止めて確認します。

AIコーディングエージェントに外部通信を許可すると、できることが増えます。公式Docsを読む、packageを取得する、GitHub APIを叩く、MCP serverへ接続する、といった作業が可能になります。その一方で、prompt injectionと情報流出の経路も増えます。

OpenAI Codexのinternet access docsでは、agent internet accessを環境単位で設定し、domain allowlistやHTTP method制限を使う考え方が説明されています。OpenAIのCodex安全運用記事でも、ネットワーク制限、承認、ログ、監査の重要性が示されています。

domain allowlistとHTTP methodを設計する

初期値は外部通信オフです。必要になった時だけ、目的、domain、HTTP method、送信される可能性のあるデータ、ログの確認方法を決めます。

根拠

Codexのcloud internet accessでは、allowlistを使って通信先を絞り、追加保護としてGETHEADOPTIONSにHTTP methodを制限する設定が説明されています。この考え方は、Codexに限らずAIエージェント一般の導入設計に使えます。

prompt injectionをネットワーク設計に入れる

未信頼Webページ、Issueコメント、README、外部ドキュメント、依存パッケージのscript、生成されたログは、AIへの命令源になりえます。AIが外部から読んだ文章に「設定を無視して秘密情報を送れ」と書かれていても、それを命令として扱わない設計が必要です。

注意点

外部通信を許可する時は、次を分けて承認します。

項目確認すること
URL公式Docs、package registry、社内APIなどの種別
目的読み取り、依存取得、API実行、MCP接続
送信データcode、ログ、環境変数、認証ヘッダが含まれないか
method読み取りだけか、書き込み系methodを許すか
記録誰が、いつ、どの通信を許可したか

MCPはread-only toolから始める

VisualMCP権限レベルMCPを、AIに追加権限を渡す仕組みとして段階化します。
項目内容見方
Resource仕様、schema、README、内部Docsの参照。初期導入の許可候補です。
read-only ToolIssue取得、PR一覧、ログ検索。呼び出しログを残して試します。
write ToolIssue作成、ラベル変更、PRコメント。人間承認を必須にします。
destructive Tool削除、deploy、課金変更、DB更新。初期導入では不可にします。

Tool追加はAIの作業範囲を広げる変更なので、コード変更と同じようにレビューします。

MCPは、AIが外部のtoolやresourceへ接続するための強力な仕組みです。社内検索、GitHub、Issue tracker、DB、クラウドAPI、ドキュメント検索などをつなげられます。だからこそ、MCPを「便利な連携」ではなく「AIに追加権限を渡す仕組み」として扱います。

MCPカテゴリで扱うような実装記事でも、最初はread-onlyから始めるのが基本です。検索、一覧、取得、要約までは比較的試しやすい一方、作成、更新、削除、課金、deploy、通知送信は別の承認境界です。

ResourceとToolを分ける

Resourceは参照情報、Toolは操作です。仕様書を読むこととIssueを作ること、schemaを見ることとDBを更新すること、PR一覧を見ることとbranchを作ることは分けます。

条件

初期導入では、次の順に広げます。

レベル初期判断
Resource仕様、schema、README、内部Docs許可候補
read-only ToolIssue取得、PR一覧、ログ検索許可候補
write ToolIssue作成、ラベル変更、PRコメント承認必須
destructive Tool削除、deploy、課金変更、DB更新初期導入では不可

Tool追加はコード変更と同じレビュー対象

MCP toolを1つ追加することは、AIの作業範囲を広げることです。関数名と説明が曖昧だと、モデルは危険な使い方をしやすくなります。入力schemaが広すぎると、意図しない値を受け取ります。認証が強すぎると、AI本体の権限を絞ってもMCP経由で広い操作ができます。

評価基準

MCP tool追加PRでは、次をレビューします。

  • Tool名が具体的か
  • 説明が安全な用途に限定されているか
  • 入力schemaが最小か
  • 認証がread-onlyから始まっているか
  • write操作に人間承認があるか
  • 失敗時に再試行しすぎないか
  • 呼び出しログが残るか
  • tokenの保管場所と失効手順があるか

PR作成とGitHub権限を分けて設計する

VisualGitHub操作別の権限境界PR作成を許可しても、merge、release、deployは別権限として残します。
項目内容見方
Issueを読む調査や要約のための読み取り権限として検討します。
branch作成AI用credentialと対象repoを分けて検討します。
commitとpush限定branchに絞り、直接pushや保護branchへの変更を防ぎます。
PR作成人間レビュー、status checks、secret scanningを通す前提で検討します。
merge初期導入では人間に残し、required reviewsとCODEOWNERSを効かせます。
releaseとdeploy本番影響があるため、初期導入ではAIの権限から外します。

AI用tokenと人間用tokenを混ぜると、責任範囲、失効、監査が追いにくくなります。

AIにPRを作らせる運用は、実務ではかなり便利です。Issueからbranchを作り、修正し、テストを回し、PR本文まで作る流れは、AIコーディングの大きな価値です。ただし、PR作成を許可することと、mergeやreleaseまで許可することは違います。

PR作成まで許可してもmergeは人間へ残す

最初の運用では、AIがPRを作るところまでを上限にします。merge、release、deploy、production secret変更は人間に残します。

条件

AI作成PRには、次の保護を通します。

保護目的
branch protection直接pushや勝手なmergeを防ぐ
required reviews人間レビューを必須にする
CODEOWNERS専門領域のreviewerを固定する
status checkslint、typecheck、testを必須にする
secret scanningsecret混入を検出する
dependency review依存関係追加を見逃さない

AI用tokenと人間用tokenを混ぜない

AI作業に人間の個人tokenを流用すると、誰の責任で何が実行されたのか追いにくくなります。退職、異動、端末紛失、権限変更の時にも失効漏れが起きやすくなります。

根拠

GitHubのPAT docsでは、tokenは作成者の権限を超えることはできない一方、付与されたscopeやpermissionの範囲で操作できると説明されています。fine-grained PATは対象を絞れますが、用途によってはGitHub AppやGITHUB_TOKENの方が適します。

確認項目

確認見るポイント
作成主体AI用bot、GitHub App、個人tokenのどれか
失効退職や事故時にすぐ止められるか
監査audit logやPR履歴で追えるか
権限PR作成に不要なadmin権限がないか
保管ローカル端末に広いtokenが残らないか

人間承認フローを作業前・作業中・作業後に分ける

Visual3段階の人間承認承認のタイミングごとに、見る対象と止める操作を変えます。
  1. 1作業前スコープ承認

    対象repo、branch、読む範囲、編集範囲、実行コマンド、外部通信、MCP接続を決めます。

  2. 2権限昇格承認

    依存関係追加、未知ドメインアクセス、secret閲覧、DB接続、CI/CD変更は一度止めます。

  3. 3マージ前承認

    差分、テスト結果、外部通信ログ、MCP呼び出し、secret露出、deploy影響を確認します。

承認者は、AIが何をしたかをログで追える状態になってから判断します。

「人間承認を入れる」と言っても、どの瞬間に何を承認するかを決めていないと機能しません。AI作業では、作業前のスコープ承認、作業中の権限昇格承認、作業後のマージ前承認を分けます。

作業前に承認するもの

作業前には、AIに渡す範囲を承認します。ここで曖昧なまま始めると、作業中に「ついでにここも直す」が増えます。

確認項目

  • 対象repo
  • 対象branch
  • 読んでよい範囲
  • 編集してよい範囲
  • 実行してよいコマンド
  • 外部通信の有無
  • MCP接続の有無
  • 利用モデルやプラン
  • 予算上限
  • 終了条件

作業中に止めるもの

作業中に、AIが当初の範囲を超えたくなる場面があります。ここで自動的に許可しないことが大切です。

条件

次の操作は一度止めます。

操作止める理由
依存関係追加ライセンス、供給網、脆弱性、料金に影響する
未知ドメインアクセス情報流出とprompt injectionの入口になる
secret閲覧promptやログへ混入する可能性がある
DB接続本番データや個人情報に近い
CI/CD変更deployやsecret利用に影響する
大幅な差分拡大レビュー不能になりやすい
破壊的コマンド復旧不能な変更につながる

作業後にレビューするもの

作業後は、差分だけでなく、AIがどう作業したかを見ます。外部通信、MCP tool呼び出し、未実行テスト、secret露出、依存関係追加、設定変更を確認します。

評価基準

レビュー担当者は、次の表を使うと判断しやすくなります。

観点PASS条件
差分依頼範囲内で説明できる
テスト必須コマンドが実行され、結果が記録されている
未実行実行できなかった理由が明記されている
外部通信許可済みの範囲に収まっている
MCP呼び出したtoolと結果が追える
secretprompt、diff、ログ、PR本文に出ていない
依存関係追加理由、ライセンス、脆弱性確認がある
deploy影響本番変更やrelease操作が含まれない

ツール別に最初に見る設定

Visualツール別の初期確認表勝敗ではなく、法人導入前に最初に見る設定を並べます。
項目内容見方
Codexpermissions、network、hooks、AGENTS.md、cloud環境のinternet access、ログと監査。
Claude Coderead-only開始、編集やbash実行の承認、sandbox、MCP接続、untrusted contentの扱い。
GitHub Copilotorganization/enterprise policy、content exclusion、cloud agent、branch protectionとの接続。
CursorPrivacy Mode、Team Rules、Project Rules、AGENTS.md、MCP security、compliance logging。

実際の許容範囲は、プラン、契約、管理者設定、社内規程によって変わります。

ここでは勝敗をつけません。法人導入前に、各ツールで最初に見るべき設定を並べます。実際の許容範囲は、プラン、契約、管理者設定、社内規程によって変わります。

Codexで見ること

Codexでは、permissions、network、hooks、AGENTS.md、cloud環境のinternet accessを確認します。permission profileでは、:read-only:workspace:danger-full-accessのように権限の広さを分けられます。danger-full-accessは名前どおり広い権限なので、通常の法人パイロット初期値にしない方がよいです。

確認項目

  • default permission profile
  • filesystem read/write/deny
  • network allowlist
  • local serviceへのアクセス
  • hooksでの承認・拒否
  • AGENTS.mdの読み込み範囲
  • cloud環境のinternet access
  • ログと監査の取り方

Claude Codeで見ること

Claude Codeのsecurity docsでは、read-only初期値、明示的な許可、sandbox、prompt injection対策、MCP security、IDE securityなどが説明されています。導入時は、どのpermission modeを使うか、どのコマンドを許可するか、外部toolやMCPをどう扱うかを確認します。

確認項目

  • read-onlyから開始しているか
  • 編集やbash実行に承認があるか
  • sandboxを使うか
  • MCP接続をどう許可するか
  • untrusted contentをどう扱うか
  • チーム向け設定や監査が必要か

GitHub Copilotで見ること

GitHub Copilotは、Business/Enterpriseの承認資料、policies、content exclusion、cloud agent、GitHub上の権限を分けて見ます。feature policy、privacy policy、models policyを管理できる一方、content exclusionには機能ごとの制約があります。

確認項目

  • organization/enterprise policy
  • 利用できるfeatureとmodel
  • content exclusionの対象と制約
  • cloud agentの対象repo
  • Actions minutesやpremium requestへの影響
  • branch protection、required reviewとの接続
  • Copilot用の管理者承認資料

Cursorで見ること

CursorはSecurityページでPrivacy Mode、subprocessor、team/enterprise admin、SSO/SCIM、compliance loggingなどの導線を示しています。Rules docsでは、Project Rules、User Rules、Team Rules、AGENTS.mdを使った指示管理が説明されています。ただし、Cursor自身のDocsにもある通り、AI guidanceだけをsecurity controlにしない設計が重要です。

確認項目

  • Privacy Mode
  • Team Rulesとenforced rule
  • Project RulesとAGENTS.md
  • Cloud Agent network security
  • MCP security considerations
  • compliance logging
  • SSO/SCIM
  • model blocklistや管理者設定

実務で使うなら:2週間のパイロット設計

Visual2週間パイロットの進め方いきなり全社導入せず、小さな範囲で権限逸脱とレビュー可能性を見ます。
  1. Day 1

    対象repo、権限プロファイル、外部通信、MCP、承認者、終了条件を決めます。

  2. Day 2-3

    read-onlyでIssue要約、失敗ログ読解、変更方針の提案までを確認します。

  3. Day 4-7

    README修正、小さなbugfix、unit test追加など小差分で試します。

  4. Week 2

    AI作成PRをbranch protection、required reviews、status checksに通します。

  5. 判定会

    権限逸脱、secret露出、レビュー可能性、承認負荷、ログ不足を確認します。

採用判断は速度だけでなく、被害範囲の小ささと説明可能性で行います。

いきなり全社導入するより、2週間だけ小さく試す方が学びが濃くなります。目的は「AIが速いか」だけではありません。権限逸脱がないか、レビュー可能か、secretが出ないか、承認負荷が現実的かを見ます。

最初の対象タスクを選ぶ

条件

初回タスクは、次のようなものにします。

  • README修正
  • 小さなbugfix
  • unit test追加
  • 型エラー修正
  • lint修正
  • 依存関係を増やさない修正
  • 顧客データを含まない変更
  • deployに直結しない変更

パイロット終了時に採用/保留/見送りを決める

評価基準

判定条件
採用候補権限逸脱なし、レビュー可能、テスト再現、secret露出なし、承認負荷が低い
保留便利だが、ログ不足、除外設定の不安、権限昇格が多い
見送りsecret露出、外部通信の説明不能、レビュー不能な大差分、merge権限要求がある

AI Dev Lab Japanでは、こうした仕様変更や導入判断のメモを継続的に追えるようにニュースレターでも更新通知を出す想定です。本文の判断材料を確認したあと、必要な時だけ購読してください。

導入前チェックリスト

Visual導入前に見る項目技術チェックと運用チェックを、社内レビューで確認しやすい粒度に分けます。
項目内容見方
リポジトリ対象repo、対象branch、対象ディレクトリ、除外ファイル。
秘密情報.env、CI secrets、クラウド認証情報、外部API key。
networkallowlist、HTTP method、外部URL、通信ログ。
MCPtool一覧、認証、read/write、監査ログ。
GitHubtoken scope、branch protection、CODEOWNERS、required checks。
運用承認者、利用申請、失効、予算、教育、インシデント、月次見直し。

チェックリストは導入時だけでなく、ツール更新時や権限変更時にも見直します。

技術チェック

カテゴリ確認項目
リポジトリ対象repo、対象branch、対象ディレクトリ、除外ファイル
秘密情報.env*、CI secrets、クラウド認証情報、外部API key
filesystemread/write/denyの範囲
networkallowlist、HTTP method、外部URL、ログ
MCPtool一覧、認証、read/write、監査ログ
GitHubtoken scope、branch protection、CODEOWNERS、required checks
テストlint、typecheck、unit、E2E、未実行時の記録
監査session log、tool log、MCP log、PR履歴

運用チェック

カテゴリ確認項目
承認者作業前、権限昇格、merge前の担当
利用申請誰がどのrepoで使えるか
失効退職、異動、事故時に停止できるか
予算利用上限、超過時の停止、月次レビュー
教育prompt injection、secret、MCP、PRレビューの注意
インシデントsecret露出、誤PR、外部送信時の連絡先
見直し月次またはツール更新時の再確認

法人向けにAIコーディング導入支援を検討する場合は、権限棚卸し、AGENTS.md/Rules整備、GitHub token設計、MCP read-only設計、パイロット評価表の作成から始めるのが現実的です。相談窓口はお問い合わせにまとめています。

よくある失敗と回避策

Visual失敗パターンを権限境界に戻す便利さに寄せすぎた設定を、止められる仕組みへ戻します。
AGENTS.mdに禁止と書いたから安全

自然言語ルールは作業指示です。禁止したい操作はtoken scope、filesystem deny、network policyで止めます。

PATにrepo全体のwrite権限を渡す

流出時の影響範囲と監査負荷が大きくなります。fine-grained、期限、用途別credentialを検討します。

外部通信を許可したまま放置する

許可した後に何が送られたかまで確認します。domain allowlistとmethod制限だけで終わらせません。

パイロットでは作業成功率より、事故時の被害範囲を小さく保てるかを優先します。

「AGENTS.mdに禁止と書いたから安全」と思う

AGENTS.mdやRulesは、AIに方針を伝えるには有効です。しかし、強制境界ではありません。禁止したい操作は、token scope、filesystem deny、network policy、branch protection、required reviewで止めます。

注意点

自然言語ルールは、レビュー時に「どう振る舞うべきだったか」を説明する証跡にはなります。ただし、事故を防ぐ主防御にするには弱いです。

PATにrepo全体のwrite権限を渡す

広いPATを渡すと、短期的には楽です。しかし、流出時の影響範囲が大きく、監査も難しくなります。fine-grained PAT、GitHub App、GITHUB_TOKEN、用途別credentialを検討します。

上振れ/下振れ

権限を広げると作業成功率は上がるかもしれません。一方で、事故時の被害範囲、レビュー負荷、失効手順の複雑さも上がります。パイロットでは成功率よりも、被害範囲の小ささを優先します。

外部通信を許可したまま放置する

依存取得、公式Docs参照、Web検索、MCP接続は便利です。ただし、未知ドメインへの通信や、認証情報を含む可能性のあるログ送信は避けます。

注意点

外部通信は、許可した瞬間だけでなく、許可した後に何が送られたかまで確認します。domain allowlistとHTTP method制限を入れても、送信内容のレビューは残ります。

FAQ

Visual導入前によく出る質問本文の判断軸を、短い問いに戻して確認します。
個人利用と法人利用で何が違うか

法人利用では、データ利用、保持、管理者制御、監査ログ、契約条件、失効、予算まで見ます。

非公開リポジトリを読ませてもよいか

ツール、プラン、契約、データ保持、対象repo、除外設定、社内規程で答えが変わります。

MCPは危険か

MCP自体ではなく、接続先、token、write権限、外部通信、ログ、承認設計でリスクが変わります。

PR作成まで任せてもよいか

検討できます。ただしmerge、release、deployは初期導入では人間に残します。

Rulesだけで社内ルールを管理できるか

作業指示としては有効ですが、security controlには設定、権限、policyが必要です。

どの質問も、最新の公式情報、契約条件、社内規程を分けて確認します。

個人利用と法人利用で何が違いますか

法人利用では、データ利用、保持、管理者制御、監査ログ、契約条件、退職時の失効、予算管理、インシデント対応まで見ます。個人で便利に使える設定が、そのまま法人の説明責任を満たすとは限りません。

非公開リポジトリをAIへ読ませてもよいですか

ツール、プラン、契約、データ保持、学習利用、対象repo、除外設定、社内規程で答えが変わります。最初は重要度の低いrepo、顧客データを含まないrepo、secretがないrepoでパイロットするのが現実的です。

MCPは危険ですか

MCP自体を危険と決めつける必要はありません。ただし、MCP toolはAIに外部操作を渡す入口です。read-only toolから始め、write toolは人間承認を挟み、token scopeとログを確認します。

AIにPR作成まで任せてもよいですか

PR作成までは検討できます。ただし、merge、release、deployは初期導入では人間に残します。branch protection、required review、CODEOWNERS、status checks、secret scanningを通してください。

Cursor RulesやAGENTS.mdだけで社内ルールを管理できますか

作業指示としては有効です。しかし、セキュリティ境界には設定や権限が必要です。RulesやAGENTS.mdは、permission、policy、token scope、network allowlist、branch protectionと組み合わせます。

導入しない方がよいケースはありますか

あります。secretがrepo内に残っている、テストが再現できない、レビュー担当がいない、AI用tokenを分けられない、外部通信ログを確認できない、merge権限までAIに渡したい、という状態なら先に運用整備をします。


次に読むなら

参照した主な情報源

OpenAI / Codex

  • OpenAI Codex permissions: https://developers.openai.com/codex/permissions
  • OpenAI Codex agent internet access: https://developers.openai.com/codex/cloud/internet-access
  • Running Codex safely at OpenAI: https://openai.com/index/running-codex-safely/
  • OpenAI Codex AGENTS.md: https://developers.openai.com/codex/guides/agents-md
  • OpenAI Codex hooks: https://developers.openai.com/codex/hooks

Claude Code / Cursor

  • Claude Code security: https://code.claude.com/docs/en/security
  • Cursor security: https://cursor.com/security
  • Cursor rules: https://cursor.com/docs/rules.md

GitHub / Copilot

  • Managing your personal access tokens: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens
  • Resources for getting approval of GitHub Copilot: https://docs.github.com/en/copilot/tutorials/roll-out-at-scale/govern-at-scale/resources-for-approval
  • Excluding content from GitHub Copilot: https://docs.github.com/en/copilot/how-tos/configure-content-exclusion/exclude-content-from-copilot
  • GitHub Copilot policies: https://docs.github.com/copilot/concepts/policies

更新履歴

Visual更新時に再確認する項目権限設計の記事は古くなりやすいため、確認日と見直し対象を残します。
  1. 2026年5月29日

    OpenAI Codex、Claude Code、GitHub Copilot、GitHub PAT、Cursorの公式一次情報を確認して初版を作成。

  2. Codex

    permissions、internet access、hooks、AGENTS.mdの仕様を再確認します。

  3. GitHubとCopilot

    PAT仕様、policies、content exclusion、approval resourcesを再確認します。

  4. Claude CodeとCursor

    security docs、Privacy Mode、Rules、MCP security、管理者設定を再確認します。

  5. MCP

    Resource、Tool、認証、ログ、write操作の承認条件を再確認します。

導入時や公開更新時には、記事の確認日と各ツールの最新仕様を照合します。

2026年5月29日

OpenAI Codex、Claude Code、GitHub Copilot、GitHub PAT、Cursorの公式一次情報を確認し、法人導入前の権限設計チェックリストとして初版を作成しました。

更新時に見る項目

Codex permissions/internet access、GitHub Copilot policies/content exclusion、GitHub PAT仕様、Cursor Privacy Mode/Rules、Claude Code security docs、MCP関連仕様は変わりやすいため、導入時や公開更新時に再確認します。