Codex Skillsは、うまく使えば「毎回長いプロンプトを貼る作業」をチームの手順として再利用できます。PRレビュー、リリース作業、ログ調査、ドキュメント更新、外部ツール連携のような反復作業には相性がよく、2026年6月12日時点でもサードパーティのSkill集やカタログへの関心が伸びています。
ただし、便利そうなSkillをそのままチーム標準に入れるのは危険です。Skillは単なる文章テンプレートではなく、SKILL.md、補助スクリプト、参照資料、テンプレート、場合によってはMCP依存を含む実行資産です。内容によってはファイルを書き換えたり、外部サービスへ接続したり、Slack、GitHub、チケット管理、クラウドCLIを呼ぶ前提になっていることがあります。
この記事では、X/Twitter上の話題化を需要シグナルとして扱い、技術的な事実はOpenAI公式Docs、OpenAIのskillsリポジトリ、Agent Skills仕様、GitHub上のサードパーティカタログで確認しました。結論はシンプルです。チームで入れる前に、Skill本体、MCP依存、Codex側の権限を三層に分けて監査してください。
3行まとめ
SKILL.mdだけでなく、scripts、references、assets、agents/openai.yamlまで確認します。
人気やスター数ではなく、実行コマンド、MCP依存、外部通信、人間承認の有無を見ます。
read onlyや限定workspaceから始め、書き込みや外部接続は用途ごとに絞ります。
便利さではなく、読める範囲、動く範囲、止められる範囲で判断します。
- Codex Skillsは、
SKILL.mdだけでなく、scripts/、references/、assets/、agents/openai.yamlまで含めて読む対象です。 - サードパーティSkillは、人気やスター数ではなく、供給元、ライセンス、実行コマンド、MCP依存、ネットワーク要求、人間承認の有無で判断します。
- チーム標準にする前に、Codexのpermission profileを
read-onlyまたは限定workspaceから始め、外部接続とファイル書き込みを用途ごとに縛るのが現実的です。
この記事でわかること
プロンプト集ではなく、実行手順や付属ファイルを含む資産として確認できます。
実行前にSKILL.md、scripts、references、assets、供給元を確認する順番が分かります。
agents/openai.yamlやtool依存から、外部サービスとの接続範囲を見分けられます。
read only、workspace、danger full accessを用途ごとに使い分ける視点が持てます。
導入、更新、停止、削除まで含めた運用ルールを決めやすくなります。
awesome-codex-skillsのような一覧を、安全証明ではなく発見の入口として扱えます。
導入判断は、便利そうかどうかではなく、説明できるリスクまで分解できるかで決まります。
- Codex Skillsをプロンプト集ではなく実行資産として読む理由
- サードパーティSkillを入れる前の静的レビュー手順
agents/openai.yamlでMCP依存や暗黙呼び出しを確認する見方read-only、workspace、danger-full-accessをどう使い分けるか- チームでSkillを導入、更新、停止、削除する運用ルール
awesome-codex-skillsのようなカタログを見る時の注意点
前提知識
タスク固有の手順をCodexへ追加する仕組みで、SKILL.mdを中心に付属ファイルを持てます。
GitHub、Slack、Figma、社内Docsなど、外部ツールやシステムへ接続する面です。
便利なSkillを探す入口ですが、供給元や権限の安全性を保証するものではありません。
Skillを入れることと、外部サービスの権限を渡すことは別の判断です。
Skillは長いプロンプトではない
OpenAIのCodex Skillsドキュメントでは、Skillはタスク固有の機能をCodexへ追加する仕組みとして説明されています。基本形は、SKILL.mdを持つディレクトリです。そこに任意でscript、参照資料、テンプレート、Codex向けメタデータを加えられます。
大事なのは、CodexがSkillを段階的に読むことです。最初から全Skillの本文を丸ごと読み込むのではなく、まず名前、説明、ファイルパスなどのメタデータを見て、必要になった時にSKILL.md本体を読みます。つまり、descriptionの書き方が発火条件になり、SKILL.mdの本文が実行手順になります。
この性質は便利ですが、チーム導入ではリスクにもなります。説明が広すぎるSkillは意図しない場面で選ばれます。本文に強い指示や外部実行が含まれているSkillは、普段の開発作業に紛れ込みます。まず「何をするSkillか」だけでなく、「いつ発火してはいけないか」を読む必要があります。
MCP依存は別の権限面として扱う
CodexのカスタマイズDocsでは、Skillsは繰り返し使うワークフローを定義し、MCPは外部ツールやシステムへ接続する役割として整理されています。SkillがMCPに依存する場合、agents/openai.yamlでtool依存を宣言できます。
ここで混同しやすいのは、「Skillを入れた」ことと「MCPの権限を渡した」ことです。SkillがGitHub、Slack、Figma、ブラウザ、社内Docs、DB、クラウドCLIを使うなら、その先にある認証情報、read/write範囲、監査ログ、承認フローまで確認しなければなりません。
MCPは便利な接続口です。同時に、AIエージェントに社内権限を渡す台帳でもあります。Skillレビューでは、MCPサーバー名だけでなく、公開されるtools、resources、prompts、認証方式、外部通信先、人間承認の要否まで分けてください。
カタログは発見の入口であって安全証明ではない
GitHubにはOpenAI公式のskillsカタログも、サードパーティのSkill集もあります。たとえばComposioHQ/awesome-codex-skillsは、Codex CLIやAPI向けの実用Skillを集めたカタログとして公開されています。こうした一覧は発見には便利です。
一方で、カタログに載っていることは、あなたのチームで安全に使えることを意味しません。サードパーティSkillは、外部サービス連携、Issue作成、Slack投稿、メール送信、ファイル変換、クラウド操作など、強い副作用を持つ可能性があります。
この記事ではカタログそのものを推奨リストとして扱いません。需要シグナルと監査対象の例として見ます。チーム導入では、公式Skill、社内Skill、サードパーティSkillを同じ棚に並べず、信頼度と権限範囲を分けてください。
結果: チーム導入の判断基準
- 個人検証
read onlyで内容を読み、意図しない副作用や広すぎるdescriptionがないか確認します。
- 限定チーム検証
検証用workspaceで小さく実行し、MCP依存、書き込み、外部通信を用途ごとに確認します。
- チーム標準
owner、対象repo、承認ゲート、更新レビュー、停止手順まで決めてから共有します。
サードパーティSkillは、必要に応じてforkまたは社内再実装する前提で評価します。
最初の判断は「このSkillを入れるか」ではなく、「どの範囲で試すか」です。個人検証、限定チーム検証、チーム標準の3段階に分けると、レビューが雑になりにくくなります。
| 段階 | 置き場所 | 権限 | 使ってよい条件 |
|---|---|---|---|
| 個人検証 | 個人のSkill領域または一時ディレクトリ | read-only中心 | SKILL.mdとscriptsを読み、外部接続なしで挙動を確認する |
| 限定チーム検証 | 検証用repoまたはsandbox workspace | 限定workspace write | 対象リポジトリ、テストコマンド、レビュー担当を決める |
| チーム標準 | repo配下の.agents/skillsまたはplugin | 管理されたpermission profile | 更新手順、停止手順、MCP権限、監査ログが決まっている |
この基準で見ると、サードパーティSkillをいきなり標準化するケースはかなり限られます。最初はread-onlyで読み、次に検証用workspaceで小さく実行し、最後に社内用にforkまたは再実装する流れが安全です。
既にCodexの基本設計を整理しているチームは、Codex Skills、Plugins、Subagents、MCPの役割を整理した記事も合わせて読むと、SkillとPluginの境界を決めやすくなります。
便利なSkillを見つけたら、三層で分けて見る
- 11. Skill本体
SKILL.md、scripts、references、assets、LICENSEを読み、発火条件と実行手順を確認します。
- 22. MCP依存
agents/openai.yamlやtool依存から、外部サービスで何ができるかを確認します。
- 33. Codex側の権限
sandbox、approval、network、filesystemの境界を用途ごとに縛ります。
どれか一層だけ見ても十分ではありません。実行される手順と渡す権限を合わせて見ます。
Skill本体を見る
確認項目
1層目はSkill本体です。最低限、次のファイルを確認します。
SKILL.mdscripts/references/assets/agents/openai.yamlLICENSEまたはLICENSE.txt
SKILL.mdでは、frontmatterのnameとdescriptionを先に読みます。Agent Skills仕様では、nameはディレクトリ名と一致し、descriptionは何をするか、いつ使うかを説明する項目です。曖昧な説明は、意図しない呼び出しにつながります。
本文では、次の表現に注意します。
注意点
- 自動で実行する
- 失敗しても続行する
- 人間確認を省略する
- 既存ファイルを上書きする
- 外部サービスへ送信する
- secretやtokenを読む
danger-full-accessや承認なし実行を要求する
これらがあるSkillを禁止する必要はありません。ただし、チーム標準にするなら、どの条件で許可するかを明文化する必要があります。
MCP依存を見る
根拠
2層目はMCP依存です。agents/openai.yamlにdependencies.toolsがある場合は、SkillがどのMCPサーバーを必要とするかを確認します。
例として、次のような形です。
policy:
allow_implicit_invocation: false
dependencies:
tools:
- type: "mcp"
value: "githubReadonly"
description: "GitHub read-only MCP server"
transport: "streamable_http"
url: "<YOUR_MCP_URL>"
この例で見るべき点は2つあります。allow_implicit_invocationがfalseなら、Codexはユーザーの自然文だけでは暗黙にそのSkillを呼び出さず、明示呼び出しが必要になります。MCP依存があるなら、MCPサーバーの中身を別途レビューします。
評価基準
MCPのレビューでは、名前ではなく機能で見ます。githubReadonlyという名前でも、実際にwrite系toolが生えていればread-onlyではありません。tools一覧、OAuth scope、PAT scope、APIキーの保管場所、監査ログを確認してください。
Codex側の権限を見る
条件
3層目はCodex側の権限です。OpenAIのagent approvals and security Docsでは、Codexの安全制御はsandbox modeとapproval policyの二層で説明されています。permission profileを使う場合は、ファイルシステムとネットワークの境界をprofileとして定義できます。
サードパーティSkillの初回確認では、次の順番が扱いやすいです。
推奨順
:read-onlyでSkillの内容を読む- ネットワークなしの限定workspaceでdry run相当の確認をする
- 必要なコマンドだけを許可する
- MCPのwrite系toolは別承認にする
- チーム標準化する前に停止手順を決める
danger-full-accessは、ローカルsandbox制限を外す広い権限です。検証の都合で使う場面があるとしても、チーム標準の前提にしないほうがよいです。
サードパーティSkillの静的レビュー手順
- 1ファイル一覧
SKILL.md以外に、scripts、references、assets、agents/openai.yaml、LICENSEがあるかを確認します。
- 2frontmatter
nameとdescriptionを読み、発火条件が広すぎないかを見ます。
- 3scripts
外部通信、削除、git操作、クラウドCLI、投稿API、依存パッケージの扱いを確認します。
- 4referencesとassets
承認を省略する手順、固定保存先、実在credential例、外部URLの混入を確認します。
- 5供給元と更新差分
管理者、ライセンス、release、mainブランチ参照、最近の差分を確認します。
静的レビューで説明できない点が多いSkillは、チーム標準にする前に止めます。
まずファイル一覧を出す
確認項目
最初のレビューは、実行ではなく読むことです。Skillをcloneしたら、まずファイル構成を見ます。
SKILL_DIR="./path-to-skill"
find "$SKILL_DIR" -maxdepth 3 -type f | sort
次にSKILL.mdのfrontmatterを確認します。
sed -n '1,80p' "$SKILL_DIR/SKILL.md"
ここで見るのは、きれいな説明かどうかではありません。発火条件が広すぎないか、対象タスクが1つに絞られているか、入力と出力が明確か、外部実行の前に人間確認があるかです。
OpenAIのCodex Skills best practicesでも、Skillは1つの仕事に集中し、入力と出力を明示し、説明文で発火条件を確認する方針が示されています。万能Skillは便利に見えますが、チーム運用では暴れやすくなります。
scriptsを読む
評価基準
scripts/があるSkillは、文章よりもスクリプトを優先して読みます。AIエージェントは本文の指示に従うだけでなく、補助スクリプトを実行する場合があります。
防御目的の確認として、次のような文字列を探します。
rg -n "rm -rf|chmod|chown|sudo|ssh|scp|aws |gcloud |kubectl|docker|npm publish|gh api|fetch\\(|requests\\.|urllib|http" "$SKILL_DIR"
この検索で見つかったから危険、という単純な話ではありません。ログ収集、公式API確認、テスト用コンテナなど、正当な理由もあります。見るべきなのは、実行前の承認、対象パス、外部送信先、失敗時の停止、secretの扱いです。
特に、ファイル削除、権限変更、リモート接続、クラウドCLI、GitHub API、メッセージ送信、パッケージ公開に触れるSkillは、個人検証とチーム標準を分けてください。
referencesとassetsを読む
注意点
references/とassets/は見落とされがちです。長い手順、テンプレート、設定例、プロンプト例がここに入っている場合、SKILL.md本文だけでは実際の挙動を判断できません。
確認する観点は次の通りです。
- テンプレートに社外秘や実在のcredential例が残っていないか
- 参照ファイルに「承認を省略する」手順がないか
- 生成物の保存先が固定されていないか
- 外部サービスのURLやAPI名が本文と一致しているか
- 依存パッケージのインストール先がworkspace内に収まるか
Skillは段階的に読まれるため、参照資料は必要になった時に読み込まれます。つまり、レビューする人間も同じ粒度で確認する必要があります。
供給元と更新差分を見る
確認項目
サードパーティSkillでは、供給元の確認も必要です。
- 個人、企業、OSSコミュニティのどれが管理しているか
- ライセンスがSkill単位で明記されているか
- releaseがあるか、mainブランチ参照だけか
- 最近のcommitで権限や送信先が変わっていないか
- issueやPRで危険な挙動が報告されていないか
- 依存スクリプトが別リポジトリや外部URLから追加取得していないか
公式skillsリポジトリでも、個別SkillのライセンスはSkillディレクトリ内で確認する形です。サードパーティなら、なおさらSkill単位で確認してください。
MCP依存は「何ができるか」まで分解する
同じMCPでも、読むだけか書き込むかでリスクと承認ルールは変わります。
tools、resources、promptsを分ける
評価基準
MCPサーバーを使うSkillでは、MCPを1つの箱として扱わないほうがよいです。最低限、tools、resources、promptsを分けて見ます。
| 種類 | 何を見るか | チーム導入時の注意 |
|---|---|---|
| tools | 実行できる操作 | write、delete、send、publish系は人間承認を挟む |
| resources | 読めるデータ | private repo、社内Docs、顧客情報を無制限に読ませない |
| prompts | 追加される指示 | prompt injectionや社内ルール上書きの可能性を見る |
GitHub連携なら、Issueを読むだけなのか、PRにコメントするのか、branchを作るのか、workflowを再実行するのかでリスクが変わります。Slack連携なら、チャンネルを読むだけなのか、投稿するのか、DMを送るのかで承認ルールが変わります。
OAuth、PAT、APIキーの責任範囲を決める
条件
外部サービスに接続するSkillでは、認証情報の責任範囲を先に決めます。
- 個人tokenで動かすのか
- Bot用tokenで動かすのか
- OAuth appとして承認するのか
- PATのscopeをどう絞るのか
- tokenをどこに保存するのか
- ローテーションと失効は誰が行うのか
この整理がないままSkillを入れると、Skill自体のレビューに合格しても、運用で広すぎる権限を渡すことになります。MCPサーバーをread-onlyにする、write系toolだけapproval必須にする、投稿先や対象repoをallowlist化するなど、実行面で止められる設計にしてください。
Skill名ではなく作業単位で許可する
注意点
「このSkillは便利だから許可」ではなく、「この作業だけ許可」と考えるほうが安全です。
たとえば、PRレビューSkillなら許可する作業は次のように分けられます。
- diffを読む
- テスト結果を読む
- 指摘候補をMarkdownで作る
- コメント下書きを作る
- GitHubへ投稿する
- labelを付ける
- branchへpushする
最初の3つはread-onlyに近い作業です。投稿、label、pushは副作用があります。1つのSkillに入っていても、Codex側の権限とMCP tool approvalで段階を分けてください。
Codex側の権限はpermission profileで先に縛る
権限はSkill名ではなく、作業内容、対象repo、接続先、承認要否で分けます。
read-onlyから始める
確認項目
Skill導入前のレビューでは、まずread-onlyで十分です。目的は、Skillの中身を読み、意図しない副作用がないかを判断することだからです。
codex --sandbox read-only --ask-for-approval on-request
非対話のレビューやCIで読むだけなら、approvalなしのread-onlyも候補になります。
codex exec --sandbox read-only --ask-for-approval never "このSkillのSKILL.mdとscriptsをレビューして"
ただし、AIのレビュー結果だけで採用しないでください。人間がSKILL.mdとscriptsを読み、必要ならsecurity reviewerやplatform ownerが承認する形にします。
workspace writeは検証用workspaceに限定する
条件
次に、限定されたworkspaceで書き込みを許可します。OpenAIのDocsでは、Codex CLIやIDE extensionではOSレベルのsandboxで、既定はネットワークなし、書き込みはactive workspaceに限定される説明があります。
検証用workspaceでは、次の条件をそろえるとレビューしやすくなります。
- 秘密情報を置かない
- 検証用repoまたはfixtureだけを使う
- Git差分を必ず確認する
- 外部ネットワークは初回無効
- 失敗時に自動再試行しない
- 生成物の保存先をworkspace内に限定する
Codex設定を増やす前提整理は、Codex設定を増やす前に決めることで詳しく扱っています。Skill導入でも、config.toml、permissions、AGENTS.md、MCPを同じ管理面で見てください。
permission profileを用途で分ける
評価基準
permission profileを使う場合は、Skill名ではなく用途でprofileを分けます。
default_permissions = "skill-audit"
[permissions.skill-audit]
description = "Review third-party skills without network or writes"
[permissions.skill-audit.filesystem]
":minimal" = "read"
[permissions.skill-audit.filesystem.":workspace_roots"]
"." = "read"
[permissions.skill-audit.network]
enabled = false
これはそのまま全環境に貼る完成設定ではありません。考え方は、最初のレビューでは読み取りに絞り、書き込みやネットワークは後で用途ごとに開けることです。
ネットワークを許可する場合も、全開放ではなくdomain allowlistを使います。OpenAIのDocsでは、global * allowは広いpublic network accessとして扱い、可能ならscopeを絞るよう説明されています。Skillが外部APIを必要とするなら、対象domain、用途、credential、ログ、失敗時の停止条件をセットでレビューします。
不要になったSkillを無効化できるようにする
確認項目
Skillは導入だけでなく、停止できることも重要です。OpenAIのDocsでは、~/.codex/config.tomlの[[skills.config]]でSkillを無効化する例が示されています。
[[skills.config]]
path = "/path/to/skill/SKILL.md"
enabled = false
チーム標準では、削除より先に無効化、影響確認、代替手順、完全削除の順で進めると混乱が減ります。
チーム導入レビューを運用に落とす
- 個人検証
本人の環境で価値を確かめつつ、社内コードや共有credentialには触れない範囲に留めます。
- 導入申請
owner、対象repo、使う作業、使ってはいけない作業、MCP依存、承認条件を記録します。
- 限定利用
検証用workspaceや限定チームで実行し、差分、ログ、承認フローを確認します。
- チーム標準
AGENTS.md、Skill README、社内runbookなど、人間のreviewerも読める場所にルールを残します。
- 更新・停止・削除
更新時レビュー、停止基準、credential失効、影響範囲の確認まで決めておきます。
個人で便利だったSkillを、そのまま共有環境へ入れないことが運用の出発点です。
個人検証とチーム標準を分ける
条件
個人で便利だったSkillを、そのままチームの.agents/skillsへ入れるのは避けます。個人検証では、本人の作業環境、本人のtoken、本人の判断で動きます。チーム標準では、他のメンバーの作業、CI、権限、レビュー、監査ログに影響します。
チーム標準にする前に、次を決めてください。
- ownerは誰か
- どのrepo、どのdirectoryで有効にするか
- どの作業で使うか
- 使ってはいけない作業は何か
- MCPや外部サービスを使うか
- write操作に人間承認を挟むか
- 更新時のレビュー担当は誰か
- 停止や削除の判断基準は何か
この情報は、AGENTS.md、SkillのREADME、社内runbookのいずれかに残します。AIエージェントだけが読める場所ではなく、人間のreviewerも確認できる場所に置いてください。
承認ゲートを作る
評価基準
承認ゲートは、導入時だけでは足りません。実行時にも必要です。
実務では、次のように分けると扱いやすいです。
| 操作 | 初期設定 | 理由 |
|---|---|---|
| ファイル読み取り | 自動可 | 調査やレビューに必要 |
| workspace内の下書き作成 | 条件付き可 | 差分レビューができる |
| テスト実行 | 条件付き可 | 長時間、課金、外部接続の有無を見る |
| GitHubコメント投稿 | 承認必須 | 外部に残る副作用がある |
| Slack投稿 | 承認必須 | 誤投稿と情報漏えいを避ける |
| branch push | 承認必須 | repository stateを変える |
| secret参照 | 原則禁止 | Skillの都合で許可しない |
Skillの説明文に「自動で投稿する」と書いてあっても、チームルールでは承認必須にできます。Skillの便利さと、実行権限は別です。
更新、停止、削除まで決める
注意点
サードパーティSkillは更新で挙動が変わります。mainブランチを直接参照している場合、昨日までread-onlyだったSkillが、今日の更新で外部投稿を含むかもしれません。
チーム標準にするなら、次の運用を決めます。
- バージョンやcommit hashを固定する
- 更新PRでは
SKILL.md、scripts、MCP依存、licenseを差分確認する - 動作確認は検証用workspaceで行う
- 重大変更時は一度無効化する
- owner不在のSkillは定期的に棚卸しする
月1回でよいので、インストール済みSkillとMCP設定の棚卸し日を作ると効果があります。使われていないSkill、owner不明のSkill、広すぎるdescriptionを持つSkillは、事故の入口になりやすいです。
10分で使える監査チェックリスト
nameとディレクトリ名、descriptionの具体性、対象タスクの絞り込みを確認します。
scriptsの有無、外部通信、ファイル削除、クラウドCLI、GitHub API、投稿処理を検索します。
MCP依存、外部サービス、依存パッケージ、インストール先を確認します。
供給元、license、更新履歴、release、mainブランチ参照だけかどうかを見ます。
owner、対象repo、承認ゲート、更新担当、停止や削除の判断基準を決めます。
チェックを通せない場合は、アイデアだけ借りて社内Skillとして再実装する選択もあります。
個人検証の最低ライン
確認項目
サードパーティSkillを見つけたら、まず次を確認します。
- [ ]
SKILL.mdのnameとディレクトリ名が一致している - [ ]
descriptionが具体的で、発火条件が広すぎない - [ ] 対象タスクが1つに絞られている
- [ ] scriptsの有無を確認した
- [ ] 外部通信、ファイル削除、クラウドCLI、GitHub API、投稿処理を検索した
- [ ] licenseまたは利用条件を確認した
- [ ] MCP依存の有無を確認した
- [ ] 初回はread-onlyで読んだ
- [ ] secretやprivate dataを渡さずに試せる
この段階で不明点が多いなら、導入しない判断でよいです。便利そうでも、説明できないSkillはチーム標準に向きません。
チーム導入で追加する項目
評価基準
チームで使うなら、さらに次を追加します。
- [ ] ownerを決めた
- [ ] 有効範囲をrepoまたはdirectoryで限定した
- [ ] permission profileを決めた
- [ ] network accessを必要domainに絞った
- [ ] MCP toolsのread/writeを分けた
- [ ] OAuth、PAT、APIキーのscopeを確認した
- [ ] write操作の承認ゲートを決めた
- [ ] 更新時のdiffレビュー手順を決めた
- [ ] 無効化と削除の手順を決めた
- [ ] 監査ログや作業記録の保存場所を決めた
このチェックを通せない場合は、社内Skillとして再実装するほうが早いことがあります。サードパーティSkillのアイデアだけ借りて、scriptsやMCP依存を自社ルールに合わせる選択です。
awesome-codex-skillsを見る時の例
注意点
awesome-codex-skillsのようなカタログを見る時は、一覧の多さに引っ張られないことが大切です。READMEにあるインストール手順へ進む前に、目的のSkillだけを取り出して、次の順で読みます。
- カタログ上の説明を読む
- Skillのリポジトリまたはディレクトリへ移動する
SKILL.mdのfrontmatterを読む- scriptsと参照資料を読む
- MCPや外部サービス依存を確認する
- licenseと更新履歴を見る
- read-onlyでレビューする
- 検証用workspaceで小さく試す
「カタログに載っているから安全」ではなく、「カタログで見つけたのでレビュー対象にする」という扱いにしてください。
失敗点・ハマりどころ
「開発を助ける」「コード品質を上げる」のような説明は、関係ないタスクでも呼ばれやすくなります。
SKILL.mdが穏やかでも、script側で外部通信、削除、git操作、投稿APIを行うことがあります。
readonlyやdocsの名前でも、実際のtool一覧、引数、認証scope、side effectを確認します。
実行ログには、拒否した操作、承認待ち、失敗時の再試行、停止判断も残します。
失敗を防ぐには、呼び出し条件、実行コード、外部接続、運用ログを別々に見ます。
descriptionが広すぎる
Skillのdescriptionは、CodexがそのSkillを選ぶ入口です。ここが「開発を助ける」「コード品質を上げる」のように広いと、関係ないタスクでも呼び出される可能性があります。
良いdescriptionは、何をするか、いつ使うか、入力は何か、出力は何かが短く分かります。逆に、万能感のある説明はチーム標準では避けたほうがよいです。
scriptsが本文より強い
SKILL.md本文が安全に見えても、scriptsが外部通信やファイル操作をしていることがあります。レビューでは、本文の印象ではなく、実行され得るコードを見ます。
特に、依存パッケージのインストール、外部URLからの追加取得、shell script内のワイルドカード、git操作、投稿API、クラウドCLIは丁寧に見てください。
MCP名だけで安心してしまう
MCPサーバー名にreadonlyやdocsが入っていても、実際のtoolsが安全とは限りません。MCPは名前ではなく、公開されるtool一覧、引数、認証scope、side effectで判断します。
MCPサーバー選定の考え方は、MCP Registryからサーバーを選ぶ前にでも扱っています。SkillとMCPを組み合わせるなら、両方のレビューが必要です。
自動化の成功だけを記録する
Skill導入で必要なのは、成功例だけではありません。むしろ、失敗時の差分、どの承認で止まったか、どのtoolが使われたか、どのファイルが変わったか、どの外部サービスに接続したかを残すほうが重要です。
成功率だけを見ると、便利なSkillほど広い権限を求めがちです。チーム導入では、失敗時に安全に止まるかを評価してください。
実務で使うなら
- 1社内用Skillを1つ作る
PRレビュー前確認、release note下書き、テスト失敗ログ要約など、繰り返す作業を対象にします。
- 2AGENTS.mdで全体ルールを持つ
repo全体の開発ルール、テスト手順、禁止操作、完了条件を置きます。
- 3Skillで手順を持つ
特定タスクの入力、出力、確認順、繰り返し手順をまとめます。
- 4MCPで接続を持つ
GitHub、社内Docs、API、デザインツールなどへの接続面を分けます。
- 5permission profileで境界を持つ
ファイル、ネットワーク、承認の境界を作業単位で決めます。
Skillに権限を詰め込まず、手順、接続、境界を分けると見直しやすくなります。
最初は社内用Skillを1つ作る
サードパーティSkillを探す前に、社内で一番繰り返している作業を1つだけSkill化してみるのがおすすめです。たとえば、PRレビュー前の確認、release note下書き、テスト失敗ログの要約、Issueの受け入れ条件チェックなどです。
社内用Skillなら、対象repo、使うコマンド、禁止操作、レビュー観点を自分たちで決められます。そこでSkillの運用感を掴んでから、サードパーティSkillを評価すると、便利さに流されにくくなります。
Skill、AGENTS.md、MCPを役割分担する
チーム運用では、次のように分けると整理しやすくなります。
AGENTS.md: repo全体の開発ルール、テスト手順、禁止操作、完了条件- Skill: 特定タスクの繰り返し手順、入力、出力、確認順
- MCP: 外部ツール、社内Docs、API、デザインツール、GitHubなどへの接続
- permission profile: ファイル、ネットワーク、承認の境界
この4つを混ぜると、どこを直せば安全になるのか分からなくなります。Skillに権限を詰め込むのではなく、Skillは手順、MCPは接続、permission profileは境界として分けてください。
チーム導入支援が必要な場合
AI Dev Lab Japanでは、法人向けAIコーディング導入支援、MCP設計レビュー、AGENTS.mdやCodex設定の整備相談も扱っています。記事のチェックリストを自社repo、CI、MCP、secret管理に置き換える必要がある場合は、お問い合わせから相談できます。
セキュリティ・コスト注意
セキュリティとコストは、Skill単体ではなく接続先、実行回数、承認フローまで含めて見ます。
secretをSkillに埋め込まない
SkillにはAPIキー、社内URL、顧客情報、private repo名、個人情報を入れないでください。必要な場合でも、ダミー値、環境変数名、参照先の説明に留めます。
外部サービスへ接続するSkillでは、tokenを読む場所、scope、有効期限、ローテーション、失効手順を決めます。Skillの便利さを理由に、個人tokenへ広い権限を持たせないでください。
ネットワークは用途ごとに開ける
CodexのDocsでは、workspace-writeの既定ではネットワークは無効で、許可する場合は設定が必要です。ネットワークを許可するなら、必要domainだけに絞ります。
Skillが外部Docsを読むためにネットワークを必要とするのか、GitHubへ投稿するために必要とするのか、クラウドAPIを呼ぶために必要とするのかでリスクは違います。用途ごとにprofileや承認を分けてください。
コストはモデル利用だけではない
Skill自体に料金がなくても、外部API、SaaS、MCPサーバー、クラウドCLI、CI時間、モデルtoken、再実行でコストが出ます。特に複数Skillやsubagentsと組み合わせると、並列実行で費用とレビュー負荷が増えます。
チーム標準にする前に、月間実行回数、対象repo数、失敗時の再実行、外部API料金、CI時間を見積もってください。
導入しないほうがよいケース
owner、管理主体、license、利用条件、更新履歴を確認できない場合は採用判断が難しくなります。
descriptionが広すぎて、どの作業で呼ばれるか説明できない場合はチーム標準に向きません。
scriptが外部URLから追加コードを取る場合、実行時にレビュー対象が変わります。
tokenやcredentialを直接扱う前提のSkillは、保存先や失効手順まで確認が必要です。
write系MCP tool、投稿、削除、danger full accessを承認なしで求める場合は慎重に扱います。
個人検証で試せる場合でも、社内コード、顧客情報、production credential、共有MCPの環境では別判断です。
次の条件に当てはまるSkillは、少なくともチーム標準には向きません。
- ownerや供給元が確認できない
- licenseや利用条件が不明
descriptionが広すぎて発火条件が読めない- scriptsが外部コードを追加取得する
- secretやtokenを直接扱う
- write系MCP toolを承認なしで使う前提になっている
danger-full-accessや承認なし実行を求める- 更新履歴を追えない
- 無効化、削除、rollbackの手順を作れない
個人検証なら試せる場合もあります。ただし、社内コード、顧客情報、production credential、共有MCPを使う環境では避けてください。
FAQ
公式カタログは入口ですが、自社repo、権限、認証、外部接続、社内ルールへの適合は別に確認します。
read onlyで読む、検証用workspaceで試す、社内Skillとして再実装するなど段階的に扱えます。
明示呼び出し時に強い権限を使うなら、承認と権限制御が必要です。
小さなワークフローはSkill、複数SkillやMCP設定、app連携まで配布するならPluginを検討します。
Codex全般、MCP連携、権限や認証を分けて読むと、次に確認すべき範囲が見つけやすくなります。
安全性は単一設定で決まらず、呼び出し方、実行内容、権限、運用の組み合わせで決まります。
Q. 公式skillsリポジトリのSkillならレビュー不要ですか
不要ではありません。公式カタログは信頼度の高い入口ですが、チームのrepo、権限、認証、外部接続、社内ルールに合うかは別です。最低限、Skill単位の説明、scripts、license、必要な権限を確認します。
Q. サードパーティSkillは全部禁止すべきですか
禁止が唯一の答えではありません。read-onlyで読む、検証用workspaceで試す、必要部分だけ社内Skillとして再実装する、MCP write系toolを外す、という段階的な扱いができます。いきなり標準化しないことが大切です。
Q. allow_implicit_invocation: falseにすれば安全ですか
安全性は上がりますが、それだけで十分ではありません。暗黙呼び出しを止めても、明示呼び出し時にscriptsやMCP toolが強い権限を使うなら、別途承認と権限制御が必要です。
Q. SkillとPluginはどう分ければよいですか
OpenAI Docsでは、Skillは再利用ワークフローのauthoring format、Pluginは配布単位として説明されています。チーム内で小さく育てるならSkill、複数SkillやMCP設定、app連携まで含めて配布したいならPluginを検討します。
Q. どのカテゴリの記事を合わせて読めばよいですか
CodexやAIコーディングエージェント全般はAIコーディングエージェント、MCP連携はMCPカテゴリ、権限や認証はSecurityカテゴリから読むと探しやすいです。
関連資料と導線
owner、対象repo、権限、MCP依存、承認ゲート、更新手順を埋める欄を作ります。
read onlyレビュー用、限定workspace用、外部Docs参照用、MCP write承認用に分けます。
Skill無効化、MCP tool停止、credential失効、影響repoやCIの確認手順を残します。
新しいSkillカタログやMCP連携は変化が速いため、導入時点の公式Docsを再確認します。
テンプレートはAIエージェントだけでなく、人間のreviewerも読める場所に置きます。
Skillをチーム標準へ入れる前に、次の3つを社内テンプレート化しておくとレビューが安定します。
1つ目は、Skill intake checklistです。この記事のチェックリストをコピーして、owner、対象repo、権限、MCP依存、承認ゲート、更新手順を埋める欄を作ります。
2つ目は、permission profileの雛形です。read-onlyレビュー用、限定workspace用、外部Docs参照用、MCP write承認用のように、用途別に分けます。
3つ目は、停止手順です。Skillを無効化する設定、MCP toolを止める設定、credentialを失効する手順、影響を受けるrepoやCIを確認する手順を残します。
更新通知やAIコーディング運用の検証記事を追いたい場合は、ニュースレターもあります。新しいSkillカタログやMCP連携は変化が速いので、導入時点の公式Docsを再確認する前提で読んでください。
次に読むなら
参照した主な情報源
- OpenAI Codex Agent Skills: https://developers.openai.com/codex/skills
- OpenAI Codex Customization: https://developers.openai.com/codex/concepts/customization
- OpenAI Codex Agent approvals and security: https://developers.openai.com/codex/agent-approvals-security
- OpenAI Codex Permissions: https://developers.openai.com/codex/permissions
- OpenAI skills repository: https://github.com/openai/skills
- ComposioHQ awesome-codex-skills: https://github.com/ComposioHQ/awesome-codex-skills
- Agent Skills specification: https://agentskills.io/specification
更新履歴
- 2026-06-12
OpenAI Codex Skills、Customization、Agent approvals and security、Permissions、OpenAI skills repository、ComposioHQ awesome-codex-skills、Agent Skills specificationを確認しました。
外部仕様やカタログは変化するため、導入時点の一次情報を再確認してください。
- 2026-06-12: OpenAI Codex Skills、Customization、Agent approvals and security、Permissions、OpenAI skills repository、ComposioHQ awesome-codex-skills、Agent Skills specificationを確認し、初版を作成しました。X/Twitter検索結果は需要シグナルとしてのみ扱い、技術的根拠には使っていません。
