agent-council について
Agent Councilは、OpenClawを通じて自律型AIエージェントを作成・管理するスキルで、Discordと連携します。スクリプトでワークスペース、エージェント登録、チャンネルルーティング、カテゴリ管理、認証プロファイル、任意のcronジョブを扱います。
主な機能
- 01エージェントのワークスペース作成と削除
- 02OpenClawへのエージェント登録
- 03Discordチャンネルの作成または紐付け
- 04Discordカテゴリの所有管理
- 05認証プロファイルのコピー
- 06任意のcronジョブ設定
活用シーン
- 01エージェント用のDiscordチャンネルを新規設定
- 02既存エージェントを追加チャンネルに紐付け
- 03Discordカテゴリをエージェントに割り当て
- 04エージェントを削除し、必要に応じてワークスペースやチャンネルも削除
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ itsahedge/ agent-council --skill agent-councilインストール後、Claude Code で/agent-councilを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
.gitignoreLICENSEREADME.mdexamples/category-owners.example.jsoncron-jobs-principles.mdchannels-cache.example.jsonscripts/claim-category.shbind-channel.shlist-agents.shlist-categories.shremove-agent.shsync-category.shcreate-agent.sh詳細
エージェント協議会
Discord と完全に統合された、自律型 AI エージェントを作成・管理します。
OpenClaw 2026.3.x に対応しています。可能な場合はネイティブ CLI コマンド(openclaw agents add/delete/bind/unbind/bindings/set-identity)を使用し、Discord チャンネル固有のルーティング(CLI ではまだサポートされていません)に限って設定をパッチします。
機能
- エージェントのワークスペースを作成(SOUL.md、HEARTBEAT.md、IDENTITY.md、memory/)
openclaw agents addで エージェントを登録- トピック付きの Discord チャンネルを作成(任意)
- エージェントをチャンネルにバインド(設定のパッチによるルーティング)
- 認証プロファイルをコピー(デフォルトエージェントから、SecretRef を使用)
- cron ジョブを設定(毎日のメモリ記録、任意)
CLI クイックリファレンス
これらのネイティブコマンドは、スキルなしで使用できます。
# List agents and bindings
openclaw agents list
openclaw agents bindings
# Add/remove agents
openclaw agents add <id> --workspace <dir> --model <model> --non-interactive
openclaw agents delete <id>
# Channel-level routing (telegram, discord — not per-Discord-channel)
openclaw agents bind --agent <id> --bind discord
openclaw agents unbind --agent <id> --bind discord
# Identity
openclaw agents set-identity --agent <id> --name "Name" --emoji "🔬"
注: openclaw agents bind は Discord チャンネル ID ごとではなく、チャンネルの種類(discord、telegram)ごとに動作します。特定の Discord チャンネルを特定のエージェントにルーティングするには、引き続きスキルによる設定のパッチが必要です。
スクリプト
| スクリプト | 用途 |
|---|---|
create-agent.sh | Discord 統合を含むエージェントの完全なセットアップ |
bind-channel.sh | 既存のエージェントを追加の Discord チャンネルにバインド |
list-agents.sh | すべてのエージェントと Discord バインドを表示 |
remove-agent.sh | エージェントを削除(設定、cron、必要に応じてワークスペース/チャンネル) |
claim-category.sh | エージェントに Discord カテゴリーを割り当て |
sync-category.sh | カテゴリー内のすべてのチャンネルを、その所有者に同期 |
list-categories.sh | カテゴリーの所有者を表示 |
使用方法
新しい Discord チャンネルを作成してエージェントを追加
export DISCORD_GUILD_ID="123456789012345678"
~/.openclaw/skills/agent-council/scripts/create-agent.sh \
--id watson \
--name "Watson" \
--emoji "🔬" \
--specialty "Deep research and competitive analysis" \
--create "research" \
--category "987654321098765432"
次の処理が行われます。
- SOUL.md、HEARTBEAT.md、IDENTITY.md を含む
<workspace>/agents/watson/を作成 openclaw agents addでエージェントを登録- 指定したカテゴリーに Discord の #research チャンネルを作成
- watson → #research をバインド(チャンネル固有のルーティングには設定のパッチを使用)
- #research をギルドの許可リストに追加
- デフォルトエージェントから認証プロファイルをコピー(SecretRef を使用)
- 毎日午後11時にメモリ記録用の cron を作成(スキップするには
--no-cronを使用)
既存のチャンネルを使ってエージェントを追加
./create-agent.sh \
--id sage \
--name "Sage" \
--emoji "💰" \
--specialty "Personal finance" \
--channel "234567890123456789"
エージェントを追加のチャンネルにバインド
./bind-channel.sh --agent forge --channel "345678901234567890"
./bind-channel.sh --agent forge --create "defi" --category "456789012345678901"
現在の設定を一覧表示
./list-agents.sh
エージェントを削除
# Remove from config only (keeps workspace)
./remove-agent.sh --id test-agent
# Full removal (workspace trashed, channels deleted)
./remove-agent.sh --id test-agent --delete-workspace --delete-channel
カテゴリーの所有権
./claim-category.sh --agent chief --category 123456789012345678 --sync
./list-categories.sh
./sync-category.sh --category 123456789012345678
エージェントの cron ジョブ
配信パターン
オプション A:--announce(シンプルなジョブに推奨)
openclaw cron add \
--name "My Task" \
--agent myagent \
--cron "0 9 * * *" \
--session isolated \
--model sonnet \
--announce --channel discord --to "channel:YOUR_CHANNEL_ID" \
--message "Do the task."
オプション B:delivery: none とメッセージツールを使用(書式をカスタマイズする場合)
openclaw cron add \
--name "My Task" \
--agent myagent \
--cron "0 9 * * *" \
--session isolated \
--model sonnet \
--message "Do the task. Then send the result to Discord using the message tool (action=send, channel=discord, target=channel:YOUR_CHANNEL_ID)."
⚠️ よくある間違い: --channel にはプラットフォーム名(discord)を指定し、--to には送信先(channel:ID)を指定します。
ハートビートと cron の違い
- ハートビート: 複数のチェックをまとめて実行し、会話のコンテキストが必要です。実行時刻はずれることがあります
- cron: 正確な実行時刻、タスクの分離、異なるモデル、一度限りのリマインダーに適しています
主なルール
- ペイロードがメッセージツールを使って独自に配信する場合は、
delivery.modeを"none"に設定します - ツールを使用するタスクでは
timeoutSecondsを 90~120 に設定します(デフォルトの 60 秒では足りないことがよくあります) - 作成前に、必ず同じ名前の cron がないか確認します:
cron action=list
オプションのリファレンス
create-agent.sh
| オプション | 必須 | 説明 |
|---|---|---|
--id | ✓ | エージェント ID(小文字、スペースなし) |
--name | ✓ | 表示名 |
--emoji | ✓ | エージェントの絵文字 |
--specialty | ✓ | エージェントの役割 |
--model | モデル(デフォルト:claude-sonnet-4-6) | |
--channel | 既存の Discord チャンネル ID | |
--create | この名前で新しいチャンネルを作成 | |
--category | 新しいチャンネルのカテゴリー ID | |
--topic | チャンネルのトピック(未設定の場合は自動生成) | |
--cron | 毎日のメモリ記録用 cron の時刻(デフォルト:23:00) | |
--no-cron | 毎日のメモリ記録用 cron の設定をスキップ | |
--tz | タイムゾーン(デフォルト:America/New_York) | |
--own-category | Discord カテゴリーを割り当て(すべてのチャンネルを自動的にバインド) |
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
DISCORD_GUILD_ID | --create の場合 | Discord サーバー ID |
AGENT_WORKSPACE_ROOT | いいえ | エージェントのワークスペースのルート(デフォルト:~/workspace/agents) |