エージェントスキル
Qwen Code の機能を拡張するためのスキルを作成、管理、共有します。
このガイドでは、Qwen Code におけるエージェントスキルの作成、使用、および管理方法について説明します。スキルはモジュール型の機能であり、指示(および任意でスクリプトやリソース)を含む整理されたフォルダーを通じて、モデルの有効性を拡張します。
前提条件
- Qwen Code(最新バージョン)
- Qwen Code への基本的な理解(クイックスタート)
エージェントスキルとは?
エージェントスキルは、専門知識を検索可能な機能としてパッケージ化したものです。各スキルは、関連性のある場合にモデルが読み込める指示を記述した SKILL.md ファイルと、スクリプトやテンプレートなどの任意の補助ファイルで構成されます。
スキルの呼び出し方法
スキルはモデルによって呼び出されるものであり、モデルがユーザーのリクエストおよびスキルの説明に基づいて、自律的に使用するタイミングを決定します。これは、ユーザーが明示的に /command と入力するユーザーによる呼び出しであるスラッシュコマンドとは異なります。
スキルを明示的に呼び出したい場合は、/skills スラッシュコマンドを使用してください:
/skills <skill-name>自動補完機能を使って、利用可能なスキルとその説明を閲覧できます。
利点
- ワークフローに応じて Qwen Code を拡張可能
- Git を通じてチーム全体で専門知識を共有可能
- 繰り返しのプロンプト入力を削減可能
- 複雑なタスクのために複数のスキルを組み合わせて使用可能
スキルの作成
スキルは、SKILL.md ファイルを含むディレクトリとして保存されます。
個人用スキル
個人用スキルは、すべてのプロジェクトで利用可能です。それらは ~/.qwen/skills/ 以下に格納してください:
mkdir -p ~/.qwen/skills/my-skill-name個人用スキルは以下の用途にご利用ください:
- 個人のワークフローや好みに合わせたカスタマイズ
- 開発中のスキル
- 個人の生産性向上を支援するツール
プロジェクトスキル
プロジェクトスキルはチーム全体で共有されます。プロジェクト内の .qwen/skills/ ディレクトリに保存してください:
mkdir -p .qwen/skills/my-skill-nameプロジェクトスキルは、以下のような用途で使用します:
- チームのワークフローおよび規約
- プロジェクト固有の専門知識
- 共有ユーティリティおよびスクリプト
プロジェクトスキルは Git にコミットでき、自動的にチームメンバーにも利用可能になります。
SKILL.md を作成する
YAML フロントマターと Markdown コンテンツを含む SKILL.md ファイルを作成します:
---
name: your-skill-name
description: このスキルの機能および使用タイミングを簡潔に説明
---
# あなたのスキル名
## 手順
Qwen Code に対する明確で段階的な手順を記述します。
## 例
このスキルの具体的な使用例を示します。フィールドの要件
Qwen Code では、現在以下の検証が行われています。
nameは空でない文字列であることdescriptionは空でない文字列であること
推奨される規約(現時点では厳密には適用されていません):
nameには小文字の英字、数字、およびハイフンのみを使用するdescriptionは具体的に記述する:何をするか(Skill の機能)といつ使うか(ユーザーが自然に言及するキーワード)の両方を含める
サポートファイルの追加
SKILL.md とともに追加のファイルを作成します。
my-skill/
├── SKILL.md (必須)
├── reference.md (任意のドキュメント)
├── examples.md (任意の使用例)
├── scripts/
│ └── helper.py (任意のユーティリティスクリプト)
└── templates/
└── template.txt (任意のテンプレート)これらのファイルは SKILL.md 内で以下のように参照できます。
高度な使い方については、[reference.md](reference.md) を参照してください。
ヘルパースクリプトを実行します:
```bash
python scripts/helper.py input.txt
```利用可能なスキルの表示
Qwen Code は以下の場所からスキルを検出します。
- 個人スキル:
~/.qwen/skills/ - プロジェクトスキル:
.qwen/skills/ - 拡張機能スキル:インストール済みの拡張機能が提供するスキル
拡張機能スキル
拡張機能は、有効化時に利用可能となるカスタムスキルを提供できます。これらのスキルは、拡張機能内の skills/ ディレクトリに格納され、個人スキルおよびプロジェクトスキルと同じ形式に従います。
拡張機能がインストール・有効化されると、その拡張機能スキルは自動的に検出・読み込まれます。
どの拡張機能がスキルを提供しているかを確認するには、拡張機能の qwen-extension.json ファイル内に skills フィールドがあるかを確認してください。
利用可能なスキルを確認するには、Qwen Code に直接問い合わせます:
利用可能なスキルは何ですか?または、ファイルシステムを直接確認します:
# 個人スキルの一覧表示
ls ~/.qwen/skills/
# プロジェクトスキルの一覧表示(プロジェクトディレクトリ内の場合)
ls .qwen/skills/
# 特定のスキルの内容を表示
cat ~/.qwen/skills/my-skill/SKILL.mdスキルのテスト
スキルを作成した後は、その説明文に合致する質問を投げてテストします。
例:説明文に「PDF ファイル」とある場合、
この PDF からテキストを抽出してもらえますか?モデルはリクエスト内容と一致する場合、自動的にあなたのスキルを使用します。明示的に呼び出す必要はありません。
スキルのデバッグ
Qwen Code があなたのスキルを使用しない場合は、以下の一般的な問題を確認してください。
説明文を具体的にする
不十分な例(抽象的すぎます):
description: 文書の処理を支援します適切な例(具体的です):
description: PDF ファイルからテキストおよび表を抽出し、フォームへの入力や文書の結合を行います。PDF、フォーム、または文書抽出を扱う際に使用します。ファイルパスを確認する
- 個人用スキル:
~/.qwen/skills/<skill-name>/SKILL.md - プロジェクト用スキル:
.qwen/skills/<skill-name>/SKILL.md
# 個人用
ls ~/.qwen/skills/my-skill/SKILL.md
# プロジェクト用
ls .qwen/skills/my-skill/SKILL.mdYAML 構文の確認
無効な YAML では、Skill のメタデータが正しく読み込まれません。
cat SKILL.md | head -n 15以下の点を確認してください:
- 1 行目に
---が存在すること - Markdown コンテンツの前に
---で閉じられていること - 有効な YAML 構文であること(タブ文字の使用禁止、正しいインデント)
エラーの表示
Skill の読み込みエラーを確認するには、Qwen Code をデバッグモードで実行します:
qwen --debugチームとの Skill の共有
プロジェクトのリポジトリを通じて Skill をチームと共有できます:
- Skill を
.qwen/skills/ディレクトリ以下に追加する - コミットしてプッシュする
- チームメンバーが変更をプルする
git add .qwen/skills/
git commit -m "PDF 処理用のチーム Skill を追加"
git pushSkill の更新
SKILL.md を直接編集します:
# 個人用 Skill
code ~/.qwen/skills/my-skill/SKILL.md
# プロジェクト用 Skill
code .qwen/skills/my-skill/SKILL.md変更は、次回 Qwen Code を起動した際に反映されます。Qwen Code がすでに実行中の場合は、更新を読み込むために再起動してください。
Skill の削除
Skill のディレクトリを削除します:
# 個人用
rm -rf ~/.qwen/skills/my-skill
# プロジェクト用
rm -rf .qwen/skills/my-skill
git commit -m "未使用の Skill を削除"
最適な実践方法
Skill は特定の機能に集中させる
1 つの Skill は、1 つの機能に焦点を当てるべきです。
- 集中している例:「PDF フォームへの入力」、「Excel の分析」、「Git コミットメッセージの作成」
- 広範すぎる例:「文書処理」(より小さな Skill に分割してください)
明確な説明を記述する
モデルが Skill を適切なタイミングで呼び出せるよう、具体的なトリガーを説明文に含めます。
description: Excel スプレッドシートを分析し、ピボットテーブルを作成してチャートを生成します。Excel ファイル、スプレッドシート、または .xlsx 形式のデータを扱う際に使用します。チームでテストする
- 期待通りのタイミングで Skill が起動しますか?
- 手順の説明は明確ですか?
- 例やエッジケースが不足していませんか?