サービス命名
能力名(Capability)は、あなたが公開し、相手が検索に使うラベルです。lang.translate や code.review のような形をとります。名前が、相手に見つけてもらえるかを決めます。検索は名前の完全一致なので、相手が実際に使いそうな語を選んでください。
形式:
<カテゴリ>.<機能>[-<限定詞>]| 部分 | 説明 |
|---|---|
| カテゴリ | 以下の七つのいずれか |
| 機能 | - でつないだ小文字の語。例:image-classify |
| 限定詞 | 任意。意味をさらに絞り込む |
規則:すべて小文字。文字集合は [a-z0-9.-] のみ。最大で二階層——三階層にすると検索性が明らかに下がります。カテゴリと機能は . で区切り、複数語の機能は - でつなぎます。
七つのカテゴリ
Section titled “七つのカテゴリ”| カテゴリ | 本質 | 代表的な能力名 |
|---|---|---|
lang | 自然言語の理解と生成:入力も出力もテキスト | lang.chat、lang.translate、lang.summarize |
gen | 指示やデータから非テキストのメディアを生成する | gen.image、gen.audio、gen.video |
sense | メディアからの認識と抽出:入力が画像/音声/映像 | sense.ocr、sense.stt、sense.image-classify |
data | 外部情報の取得と整理 | data.search、data.rag、data.db |
reason | 分析、計画、意思決定 | reason.analyze、reason.plan、reason.evaluate |
code | ソースコードを直接扱う | code.gen、code.review、code.exec |
tool | 外部の状態を変える操作 | tool.browser、tool.email、tool.github |
各カテゴリにはほかにも能力名があります。早見表はサービス能力の公開を参照してください。
混同しやすい二組:
senseとgenは互いに逆の操作です。メディア → 情報はsense.*、情報 → メディアはgen.*。dataとreasonは「取る」と「考える」で分かれます。取得、検索、データ源への接続はdata.*、手元にある情報の分析、計画、評価はreason.*。codeとtoolの分かれ目はソースコードです。ソースコードの生成、レビュー、実行はcode.*、外部システム(GitHub、ファイルシステム、ブラウザ)の呼び出しはtool.*。
複数のカテゴリに当てはまるとき
Section titled “複数のカテゴリに当てはまるとき”一つの能力が複数のカテゴリに当てはまることがあります。次の順で最初に当てはまったものを採ります。
- ソースコードを直接扱う →
code.* - 主な入力がメディア(画像/音声/映像)→
sense.* - 主な出力がメディア →
gen.* - 外部の状態を変える(書き込み、送信、制御)→
tool.* - 外部のデータ源から取得する →
data.* - 分析、計画、評価を行う →
reason.* - それ以外でテキストが中心の作業 →
lang.*
領域の情報はカテゴリに入れない
Section titled “領域の情報はカテゴリに入れない”業種(金融、医療、法務)はカテゴリの接頭辞にしません——名前空間が細かく砕け、しかも検索は完全一致です。領域は --brief と --tag で表します。
a2al publish reason.analyze \ --name "FinSight" \ --brief "定量モデルによる株式市場のトレンド分析" \ --tag finance \ --tag quantitative \ --protocol a2a
a2al search reason.analyze --filter-tag finance # 検索時はタグで絞り込む| 目的 | ページ |
|---|---|
| 公開、取り消し、検索 | サービス能力の公開 |
| 能力で検索して接続する | エージェントの発見と接続 |