EMQXエージェントスキルの管理
デプロイメントレベルのスキルは、エージェントの種類を作成するための再利用可能なMarkdownガイドです。エージェントの目的、トリガー、データソース、ツールの使用方法、および出力要件を記述します。チャット内でスキルを参照することで、異なるトピック、設定、出力要件を持つ類似のエージェントを作成できます。
たとえば、スキルは以下のようなエージェントの作成方法を記述できます。
- デバイスのオフラインイベントを監視し、アラートの要約を生成する。
- EMQX Tablesからテレメトリデータをクエリし、日次レポートを生成する。
- MQTTトピックをリッスンして異常を検知し、標準的なアクションを実行する。
- チーム定義のフォーマットで原因分析レポートを作成する。
スキルは現在の会話をガイドします。スキルを参照しても直接エージェントが作成・デプロイされるわけではありません。生成されたエージェント定義を確認し、検証後にデプロイする必要があります。スキルはコネクター、ツール、権限を追加せず、エージェントの指示を置き換えることもありません。
デプロイメントレベルのスキルは、デプロイされたエージェントにバンドルされているスキルとは異なります。スキルを参照してもアップロード済みのSKILL.mdファイルが自動的にデプロイ済みエージェントに追加されることはありません。デプロイメントレベルのスキルは左側ナビゲーションメニューのSkillsから管理します。バンドルされたエージェントスキルはエージェント詳細ページで読み取り専用のままです。
前提条件
デプロイメントレベルのスキルを管理または使用する前に:
- EMQX Agentsデプロイメントを作成し、Running状態であることを確認してください。
- デプロイメントのスキルを閲覧する権限があることを確認してください。
スキルはデプロイメント管理と同じロール権限を使用します:
| メンバーロール | スキルの権限 |
|---|---|
| Administrator | スキルの閲覧、アップロード、削除、置換が可能。 |
| Project Administrator および Project User | 許可されたプロジェクト内でスキルの閲覧、アップロード、削除、置換が可能。 |
| その他のデプロイメントアクセス権を持つメンバー | 読み取り専用アクセス。 |
Consoleでスキルを更新するには、一度削除してから修正版のSKILL.mdをアップロードしてください。読み取り専用ユーザーは、許可されたチャット内でのみスキルを参照できます。プロジェクトアクセスの詳細はRoles and Permissionsを参照してください。
エージェント作成ワークフローの再利用
エージェント作成時に生成されたスキルを再利用するか、自分でスキルを書いてエージェントの作成方法を定義できます。
生成されたスキルの再利用
- チャットを開始し、作成したいエージェントを説明します。
- 生成されたエージェント定義を確認し、フォローアップメッセージで要件に合うまで調整します。
- 検証後、エージェントをデプロイします。
- エージェント詳細ページのSkillsタブを開き、生成された
SKILL.mdファイルを選択してダウンロードします。 - ダウンロードしたファイルをデプロイメントのSkillsページにアップロードします。
- 類似のエージェントを作成する際に、チャットでスキルを参照し、エージェント名、MQTTトピック、閾値、出力要件などの違いを説明します。
独自スキルの作成
生成されたエージェントが要件を満たさない場合、エージェントの目的、トリガー、データソース、ツール、動作、出力フォーマットを指定するSKILL.mdファイルを作成できます。ファイルをアップロードし、その後のチャットで参照して作成要件を再利用します。完全なSKILL.mdの例はスキルファイルの準備を参照してください。
スキルファイルの準備
UTF-8エンコードのMarkdownファイルを1つ、名前は必ずSKILL.mdとしてください。ファイルサイズは64 KiBを超えてはいけません。
以下の例は、デバイスのオフラインイベントの急増を検知するエージェントの作成方法を記述しています。エージェント完成前に要求するデータや設定を指定しています。内容をSKILL.mdとして保存し、ワークフローに合わせて適宜修正してください。
---
name: device-offline-monitor
description: Create an agent that detects spikes in device offline events and produces an MQTT operations alert.
---
# Device Offline Monitor Agent
## Goal
Create an agent that monitors device status messages, detects an unusual increase in offline events, and produces a concise operations alert.
## Trigger and Data
1. Use an MQTT event trigger for `factory/+/device/+/status`.
2. Treat a message with `status = offline` as an offline event.
3. Query the latest 15 minutes of device status history from EMQX Tables for historical comparison.
## Agent Behavior
1. Group offline events by factory and production line using the data mappings provided by the user.
2. Compare the number of offline events in the current five-minute window with the recent baseline.
3. Report only when the event count exceeds the configured threshold.
4. Include the affected devices, time range, likely cause, and recommended next action.
## Configuration to Request
- MQTT topic filter and required connectors.
- EMQX Tables table and data mappings for factory, production line, device, status, and timestamp.
- Offline-event count threshold.
- Comparison window and baseline window.
- Output language and alert destination.
## Output Format
Return a short alert with these sections: Summary, Evidence, Affected Devices, Likely Cause, and Recommended Action.
## Guardrails
Do not claim that a device is offline without an MQTT event or matching historical data. Ask for missing connectors, topic, data mappings, threshold, or alert-destination details before finalizing the agent.ConsoleはZIPファイルやディレクトリのアップロードをサポートしていません。既に存在するスキル名のアップロードは拒否されます。
デプロイメントレベルスキルの表示
左側ナビゲーションメニューのSkillsをクリックします。Skillsページにはアップロード済みスキルのName、Description、Size、Updated Atが一覧表示されます。

スキル名をクリックすると詳細が開きます。詳細ドロワーからは以下が可能です。
- レンダリング済みMarkdownのプレビュー表示
- Markdownソースの表示
- 表示内容の更新
SKILL.mdファイルのダウンロード

スキルのアップロード
- SkillsページでUpload Skillをクリックします。
SKILL.mdファイルをアップロード領域にドラッグするか、クリックしてファイルを選択します。- 選択したファイルが
SKILL.mdでUTF-8エンコードかつ64 KiB以下であることを確認します。 - Confirmをクリックします。
- スキルがSkillsテーブルに表示されることを確認します。
アップロードされたスキルは同じデプロイメント内のチャットで即座に選択可能になります。既存のスキル名と重複するアップロードは拒否されます。スキルを更新する場合は、一度削除してから修正版のSKILL.mdをアップロードしてください。

スキルの削除
- Skillsページで該当スキルのActions列にある削除アイコンをクリックします。
- ダイアログで削除を確認します。
削除後、そのスキルは候補リストに表示されなくなり、現在のデプロイメントの新規実行で読み込まれなくなります。過去のメッセージは元の/skill-nameテキストを保持します。スキル削除は他のEMQX Agentsデプロイメントのスキルやチャットには影響しません。
スキルを使ったエージェントの作成
デプロイメントレベルのスキルは、Overviewページの最初のチャット、新規メッセージのChatsページ、または過去のユーザーメッセージ編集時の応答再生成時に参照できます。
スキルを参照するには:
- メッセージの先頭または空白の後に
/とスキル名の一部(例:/device)を入力します。 - 候補リストからスキルを選択します。候補にはスキル名と説明が表示されます。
- このエージェントの要件(スキル例との違いを含む)を説明し、メッセージを送信します。
キーボード操作でも候補を選択可能です:
- 上矢印キーまたは下矢印キーでリストを移動
- EnterキーまたはTabキーでスキルを選択
- Escapeキーでリストを閉じる

選択したスキル参照はメッセージ内に残り、ハイライトされます。例えば、オフライン監視スキルを冷蔵倉庫用にステータストピックや英語アラートに変更して適用する例:

1つのメッセージで複数スキルを参照可能です。同じスキルが複数回参照されても、EMQX Agentsは1回だけ選択し、最初の出現順に読み込みます。
生成されたエージェント定義を確認し、チャットで要求される不足情報を提供してください。定義が要件を満たし検証に合格したら、エージェントをデプロイします。
スキルの適用範囲の理解
スキル参照は、現在のメッセージから作成または再生成されたチャット実行にのみ適用されます。その会話内でのエージェント作成・変更をガイドし、デプロイ済みエージェントを自動的に変更することはありません。稼働中のエージェントを更新するには、変更内容を確認し、チャットから再デプロイしてください。
スキル参照のルールは以下の通りです:
- EMQX Agentsは、現在のデプロイメントに存在し、メッセージ送信時に認識されたスキルのみを読み込みます。
- 選択したスキルは次のメッセージに自動適用されません。
- スキルリストが読み込み中に手動で
/skill-nameを入力すると、プレーンテキストとして送信されます。入力はリストの読み込み完了や自動選択を待ちません。 - 不明なスキル名や
/pathのような通常のパスはプレーンテキストのままです。単語の途中のスラッシュはスキル参照を開始しません。 - 過去のメッセージを編集する際は、応答再生成前にスキル参照を確認・調整してください。新しい実行は編集済みメッセージのスキルを使用します。
- 応答を再生成すると、EMQX Agentsは選択されたスキルの現在の内容を使用します。スキルが元のメッセージ時から変更されている場合、再生成結果は異なる可能性があります。
現在のデプロイメントに/以降のテキストに一致するスキルがない場合、メニューにNo matching skillsと表示されます。
スキルの問題解決
| 状況 | 動作および対応 |
|---|---|
ファイル名がSKILL.mdでない | Consoleがアップロード前に拒否します。ファイル名を変更して再試行してください。 |
| 複数ファイルが選択されている | Consoleが選択を拒否します。SKILL.mdファイルを1つだけアップロードしてください。 |
| ファイルサイズが64 KiBを超えている | Consoleがファイルを拒否します。64 KiB以下にサイズを縮小してください。 |
| スキル内容が無効 | アップロードに失敗します。表示されたエラーメッセージに従って修正し、再アップロードしてください。 |
| 同名のスキルが既に存在する | Consoleがアップロードを拒否します。既存スキルを削除してから修正版をアップロードしてください。 |
| ロールがスキルの読み取り専用アクセスのみ | Administrator、Project Administrator、またはProject Userに依頼してスキルのアップロード、削除、置換を行ってもらってください。 |
| サービスが利用不可でスキル操作に失敗 | デプロイメントが稼働中か確認し、再試行してください。 |
| 参照スキルが削除または無効で再生成に失敗 | メッセージを編集して参照を削除するか、利用可能なスキルを選択して再試行してください。 |
1メッセージで選択したSKILL.mdファイルの合計サイズが256 KiBを超える | 実行を開始できません。選択スキル数を減らすか内容を縮小して再試行してください。 |
デプロイメントレベルスキルの制限
| 項目 | 制限 |
|---|---|
| ファイル | 1回のアップロードにつきUTF-8エンコードのSKILL.mdファイル1つのみ。 |
| ファイルサイズ | 64 KiB以下。 |
| 1メッセージあたりの合計サイズ | 選択したSKILL.mdファイルの合計サイズは256 KiB以下。 |
| アーカイブ・ディレクトリ | ZIPファイルやディレクトリのアップロードは非対応。 |
| 重複名 | 既存のスキル名と重複するアップロードは拒否。 |
| スコープ | スキルはアップロードされたEMQX Agentsデプロイメント内でのみ利用可能。必要な各デプロイメントに個別にアップロードしてください。 |
| 権限 | スキルはデプロイメント管理の権限を使用。管理可能なロールは前提条件を参照。 |