マニフェスト リファレンス

agentty-plugin.json のすべてのフィールド — 識別情報、実行方法、権限、パネル、コマンド、アイコン。

agentty-plugin.json はプラグインフォルダの直下に置かれ、そのプラグインが何であり、どう起動し、何ができ、インターフェースに何を加えるかを Agentty に伝えます。

json
{
  "id": "hello",
  "name": "Hello",
  "version": "0.1.0",
  "main": "main.mjs",
  "runtime": "node",
  "apiVersion": 1,
  "description": "Turns the current folder into a prompt.",
  "publisher": "you",
  "homepage": "https://example.com/hello",
  "permissions": ["prompt.inject"],
  "contributes": {
    "panel": { "title": "Hello", "icon": "sparkles" },
    "commands": [
      { "id": "hello.explain", "title": "Hello: Explain this folder", "icon": "bot", "paneBar": true }
    ]
  }
}

識別情報#

フィールド必須説明
idはいa-z0-9- からなる 2〜40 文字。フォルダ名と一致させてください。
nameはいストアとパネルボタンに表示
versionはいmajor.minor.patch
descriptionストアカードの 1 行説明
publisher作者
homepagehttps:// である必要があります
keywordsストア検索用
linksカードにボタンとして出る { "label", "url" } を最大 6 件(プロジェクトサイト、ドキュメント、ソース)
icon下記一覧のアイコン名

実行#

フィールド既定値説明
main必須プラグインフォルダからの相対パスのエントリポイント
runtimenodenode(ログインシェル PATH の Node.js 18+)、pythonpython3 <main>)、executable<main> を直接実行)
apiVersion1作成時に基準としたプラグイン API のバージョン
activationEvents[]["onStartup"] なら Agentty と同時に起動、なければ最初の使用時

Agentty はプラグインフォルダを作業ディレクトリとしてプログラムを起動します。

他のアプリとの連携#

フィールド説明
requires{ "name", "url", "note" } — このプラグインが対象とするアプリやサービス。カードが検出の有無を示し、なければリンクを出します
detect連携先アプリのパス(~ 可)。見つかればカードにおすすめが付きます

権限#

json
"permissions": ["prompt.inject", "terminal.write", "session.read", "workspace.read"]
権限できること
prompt.injectプロンプトの送信
terminal.write開いているペインへの入力
session.readAI 会話の読み取り
workspace.readワークスペース一覧の取得、コンテキストのフォルダ・タイトル項目の参照

使うものだけを求めてください。一覧はインストール前に利用者へ表示され、権限のない呼び出しは失敗します。プラグインの権限を参照してください。

プラグインが加えるもの#

パネル#

json
"contributes": { "panel": { "title": "Hello", "icon": "sparkles" } }

タブ領域にボタンが付き、ターミナルの右にパネルが入ります(幅 360px、縦スクロール)。プラグインが UI ツリーで中身を描きます — SDK を参照。

コマンド#

json
"contributes": {
  "commands": [
    {
      "id": "hello.explain",
      "title": "Hello: Explain this folder",
      "description": "Sends a tour request to the focused agent",
      "icon": "bot",
      "paneBar": true,
      "when": "agent",
      "palette": true
    }
  ]
}
フィールド説明
idプラグイン内で一意。SDK はこの id でハンドラを登録します
titleパレットに表示。プラグイン名を先頭に付けるとまとまって見えます
description任意の 2 行目
iconペインバーのボタンのアイコン名
paneBartrue で Claude Code・Codex ペイン上のステータスバーと分割ペインのヘッダーにアイコンボタンを追加
whenペインバーのボタンを agent ペイン、shell ペイン、always に限定
palettefalse でコマンドパレットから隠す

ペインバーのコマンドは、フォーカス中のペインではなくボタンを押したペインのコンテキストを受け取ります。

アイコン#

icon には次の名前を使います。それ以外はパズルのピースとして表示されます。

text
app-window arrow-down arrow-left arrow-right arrow-up arrow-up-right at-sign bell bell-dot
blocks book-open bookmark bot brain bug calendar chart-column check chevron-down chevron-right
chevron-up circle-check circle-dot circle-pause circle-x clipboard clipboard-paste clock cloud
code columns-2 command container copy database download ellipsis external-link eye file-input
file-plus file-text folder folder-open folder-plus git-branch git-commit-horizontal
git-pull-request globe grip-vertical hammer hash history house image info key-round
layout-panel-left lightbulb link list list-tree loader-circle mail maximize-2 message-circle-question
message-square minimize-2 minus network notebook notebook-pen package panel-left-close
panel-left-open pencil picture-in-picture-2 play plug plus power puzzle refresh-cw rocket rotate-cw
rows-2 save scroll-text search send settings shield-alert sparkles square square-plus
square-terminal star sticky-note tag terminal trash-2 undo-2 unlink upload users wand-sparkles
workflow wrench x zap git-fork file lock graduation-cap

環境変数#

プラグインのプログラムには次の環境変数が渡されます。

変数意味
AGENTTY_PLUGIN_IDプラグインの id
AGENTTY_PLUGIN_DIRプラグインフォルダ
AGENTTY_PLUGIN_DATA設定とキャッシュのための専用フォルダ
AGENTTY_VERSIONAgentty のバージョン
AGENTTY_LANGUAGE利用者の言語(enkojazh
AGENTTY_BINagentty コマンドラインツールのパス

保存するものはすべて AGENTTY_PLUGIN_DATA の中に置いてください。