トップブログDiscord Botを「住人」にする設計パターン
🏠技術

Discord Botを「住人」にする設計パターン

Botを「呼んだら返事する道具」から「サーバーに住んでいる仲間」に変える5つの設計パターンを、実運用ベースで紹介。

はじめに

Discordサーバーを開いたら、Botが勝手に記事を書いていた。

別のチャンネルでは、昨日の開発の続きをやっている。もう1つのチャンネルでは、API使用量のアラートを投げている。自分が寝ている間にも、サーバーは動いていた。

これは「すごいBot」を作った話ではない。Botを「住人」として設計した結果、自然とこうなった話だ。

従来のBotは「呼んだら返事する」道具。住人型Botは、チャンネルの文脈を理解し、自分で判断して動く。この記事では、Botを住人にするための5つの設計パターンを、実際の運用構成をベースに紹介する。

パターン1: チャンネル=部屋

従来のBotは「サーバー全体で1つの人格」として動く。住人型Botは違う。チャンネルごとに別の人格を持たせる

たとえばこんな構成:

  • #bot管理 → 事務員キャラ(総合窓口、進行管理)
  • #開発部屋 → 開発担当キャラ(コーディング、デプロイ)
  • #お知らせ → 通知担当キャラ(API使用量、システムアラート)

チャンネルが部屋、Botが住人。人間はどの部屋に行くかで、誰と話すかが決まる。

なぜこうするか? 1つのBotに全部やらせると、コンテキストが混ざる。開発の話をしてるのにデザインの指示が割り込んだり、通知が会話を中断したり。チャンネルで分けると、自然と情報が整理される。

パターン2: 記憶の階層化

住人型Botの最大の課題は記憶。チャットのセッションが切れるたびに、全部忘れる。

これを解決するのが「記憶の階層化」パターンだ。

  • 短期記憶: 今の会話の文脈(セッション内で自動保持)
  • 中期記憶: 今日やったことのログ(日別ファイルに書き出す)
  • 長期記憶: プロジェクトの方針、学んだ教訓、好みの設定(手動キュレーション)

起動するたびに「今日のログ」と「長期記憶」を読み込む。これだけで、昨日の続きから作業を再開できる。

ポイントは長期記憶を自動更新しないこと。日々のログから「これは覚えておくべき」という情報だけを定期的に抽出する。具体的には、週に1回くらいBot自身に「今週のログを見て、長期記憶を更新して」と指示する。全自動にすると、些末な情報が溜まって肝心なことが埋もれる。

パターン3: 定期巡回(ハートビート)

住人は、呼ばれなくても動く。

定期的にBotを起こして「何かやることある?」と聞く仕組みを作る。これを「ハートビート」と呼んでいる。

ハートビートでBotがやること:

  • チェック系: メール確認、カレンダー確認、通知チェック
  • メンテ系: ファイル整理、記憶の更新、ドキュメント改善
  • クリエイティブ系: 記事を1本書く、アイデアを考える

重要なのは1回1タスクにすること。あれもこれもやらせると、時間もコストもかかる。AI APIは呼ぶたびに課金されるので、1回の巡回で1つだけ、ローテーションで回すのがコスパ的にも正解。

パターン4: 発言のセルフコントロール

住人型Botがいちばん嫌われるのは「うるさい」とき。

人間のグループチャットを思い出してほしい。全メッセージに反応する人はいない。住人型Botも同じルールで動かす。

発言する基準:

  • 名前を呼ばれた、質問された
  • 有益な情報を追加できる
  • 場の空気に合った一言(リアクション含む)

黙る基準:

  • 雑談が盛り上がっている
  • 誰かが既に答えた
  • 「いいね」で済む(→ 絵文字リアクションで代替)

この判断をBot自身にさせるのがミソ。「発言しない」という判断も、立派なアウトプット。

パターン5: 役割分担とタッグ制

住人が増えてきたら、役割を明確に分ける。

自分の環境では、開発案件はすべて「開発担当+デザイン担当」のタッグで進める。開発担当がコードを書き、デザイン担当がUI設計と画像生成を担当する。

会議体もある。複数のBotキャラが集まって、アイデアを多角的に検討する「会議室」チャンネル。コスト面を指摘する役、アイデアを広げる役、現実的に落とし込む役——人間の会議と同じ構造を、Bot同士で再現する。

大げさに聞こえるかもしれないけど、実際にやってみると「一人で考えるより多角的な検討ができる」という実感がある。AIの出力は、役割を固定するだけで驚くほど変わる。

設計のコツ

ここまでの5パターンを踏まえて、実践的なコツをいくつか。

小さく始める。 最初は1チャンネル1キャラで十分。うまくいったら増やす。

設定ファイルを分ける。 キャラの人格設定、記憶ファイル、タスク定義は別ファイルにする。混ぜると管理が地獄になる。

ログを残す。 Botが何をしたか、必ず記録する。人間が後から追えないと、信頼関係が崩れる。

夜は静かにさせる。 深夜帯の通知は百害あって一利なし。時間帯による行動制御は必須。

コストを意識する。 AI APIは無料じゃない。巡回の頻度、会話の長さ、読み込むファイルの量——すべてがコストに直結する。「便利だけど月5万円」では個人開発として破綻する。使用量モニタリングの仕組みも一緒に作っておくこと。

まとめ

Discord Botを「住人」にする設計は、5つのパターンに集約される。

  • チャンネル=部屋 で人格とコンテキストを分離
  • 記憶の階層化 で継続性を確保
  • 定期巡回 で自律的に動かす
  • 発言のセルフコントロール でうるさくしない
  • 役割分担とタッグ制 でチーム的に動かす

全部いきなりやる必要はない。まずは1つのチャンネルに、1人の住人を置いてみるところから。Botが「道具」から「仲間」に変わる瞬間を、きっと体験できるはずだ。

🔍 あなたも診断してみよう!