Skills とは何ですか?
SKILL.md ファイルで、Devin にあなたのアプリケーションをエンドツーエンドでテストする方法——サービスの起動方法、ローカルでのアプリの実行方法、ブラウザーでの変更内容の確認方法、そして PR を作成する前にすべてが正しく動作していることを検証する方法——を教えるものです。オープンな Agent Skills standard に準拠しているため、同じ skill ファイルを複数の AI コーディングツール間で共通して利用できます。
リポジトリ内の .agents/skills/<skill-name>/SKILL.md に skill ファイルを配置してください。Devin は、接続されているすべてのリポジトリからそれらを自動的に検出します。ファイル形式の詳細については、Agent Skills specification を参照してください。
スキルが重要な理由
- ローカル開発環境を起動する — どのサービスを動かすか、どのポートを使うか、テストデータをどう投入するか
- ブラウザで変更を検証する — どのページを確認するか、何が「正しい」状態か、どのような不具合を検知すべきか
- 適切なテストスイートを実行する — どのコマンドを実行するか、成功時の出力がどう見えるか
Devin はスキルを自動提案します
- 学習内容の要約(例: 「Docker でバックエンドを起動する方法」)
- 提案された
SKILL.mdファイルの内容 - スキルをリポジトリにコミットするための “Create PR” ボタン
簡単な例
スキルの検出
- インデックス済みリポジトリ — Devin のバックエンドは、組織に接続されているすべてのリポジトリにある
SKILL.mdファイルをインデックス化します。これらは、どのリポジトリもクローンされる前の、セッション開始時点からすぐに利用できます。 - クローンされたリポジトリ — リポジトリがセッションのマシンにクローンされると、Devin はディスク上の
SKILL.mdファイルをスキャンします。ディスクから検出されたスキルは、同じリポジトリ内の該当するインデックス済みスキルを更新または上書きし、作業中のブランチで常に最新バージョンが使われるようにします。
サポートされているスキルファイルの配置場所
SKILL.md ファイルを検索します:
.agents/skills/<skill-name>/SKILL.md(推奨).github/skills/<skill-name>/SKILL.md.claude/skills/<skill-name>/SKILL.md.cursor/skills/<skill-name>/SKILL.md.codex/skills/<skill-name>/SKILL.md.cognition/skills/<skill-name>/SKILL.md
スキルファイルから Devin が読み込むもの
--- ブロック)をパースして、次の項目を抽出します。
| Field | Purpose |
|---|---|
name | スキルを識別します。省略された場合は親ディレクトリ名が代わりに使われます。 |
description | スキル一覧に表示される短い要約で、Devin(とあなた)がそのスキルの内容を理解できるようにします。 |
allowed-tools | スキルがアクティブな間に Devin が使用できるツールを制限します。 |
| Field | Purpose |
|---|---|
argument-hint | 期待される引数を説明するヒントテキストで、スキル名と一緒に表示されます。 |
triggers | 誰がスキルを呼び出せるかを制御します — デフォルトは ["user", "model"] です。Devin による自動的な起動を防ぐには ["user"] に設定します。 |
$ARGUMENTS— スキル呼び出し時に渡された引数文字列全体(例:@skills:deploy staging prod)に置き換えられます。個々の引数にはインデックスでアクセスできます:1 番目は$ARGUMENTS[0]または$0、2 番目は$ARGUMENTS[1]または$1など。引数は空白で分割されます。!`command`— コマンドはリポジトリのルートで実行され、その標準出力に置き換えられます。これにより、ブランチ名やポート番号などの動的な値をスキルに含めることができます。
@skills:deploy staging を実行すると、staging が $ARGUMENTS および $0 に置き換えられます。
Devin がスキルをどのように利用するか
SKILL.md ファイル全体を読み、その内容を現在のコンテキストにシステムレベルの指示として取り込みます。これは、Devin がタスクの残りの間、そのスキルで定義された手順に積極的に従うことを意味します — 単なる参照ではなく、Devin の振る舞いを直接ガイドします。
Devin は複数の方法でスキルを使用できます:
自動呼び出し
test-before-pr というスキルが存在する場合、Devin は PR を作成する前にそのスキルを有効化します。明示的にのみ呼び出したいスキルで自動呼び出しを無効化するには、frontmatter で triggers: ["user"] を設定してください。
プロンプトでスキルを指定する
@skills:skill-name を含めることで、Devinに特定のスキルを使うよう指示できます。
$ARGUMENTS、$ARGUMENTS[0]、$1 などが現れる箇所に置き換えられます。
一度にアクティブにできるスキルは 1 つ
検索と一覧表示
制限事項
- グローバル / 組織レベルのスキル — 現時点では、スキルはリポジトリ内に存在します。組織全体で使うスキルについては、回避策として専用の「skills」リポジトリを作成できます。すべてのリポジトリに適用される組織レベルのスキルを、ファーストクラスでサポートすることを検討中です。
- 複数スキルの組み合わせ — 現在は一度に有効にできるスキルは 1 つだけです。スキルの連結やワークフローの合成をサポートする機能を開発中です。
さらに詳しく
- Agent Skills specification —
SKILL.mdファイル形式、フロントマターのフィールド、ディレクトリ構造に関するオープン標準 - Knowledge — 手順ではなく、文脈に応じたヒントや事実のための機能
- Playbooks — セッションに紐づけて再利用できるプロンプトテンプレート向け
