New Meta Inc. Translation Bot / Briefing
Discord Bot × AI Agent

自動フィードバック
Bot の仕組み

eスポーツチームの練習を、毎日10分で総括レポートにする。
人手ゼロ、24時間稼働、日本語と韓国語で自動配信。

For Business Partners 2026 New Meta Inc.
New Meta Inc. Goal
本資料の目的

2つのゴール

Goal 01
自動フィードバックBotの仕組みを
直感的に理解する
私たちが運用している「練習ログを翌朝にレポート化するシステム」が、どんな技術の組み合わせで動いているのかを掴む。
Goal 02
Discord BotやAIエージェントで
他に何が出来そうかを掴む
既存業務・コミュニケーション・分析・ファン対応など、同じ仕組みが応用できる領域を具体例で理解する。
New Meta Inc. Big Picture
1分でわかる全体像

練習が終わると、
翌朝レポートが届いている。

🎙️ Discord上で練習中の会話
↓ リアルタイム翻訳
📝 翻訳Botが全発言をログ化
↓ 翌12時に自動起動
🤖 AI分析エンジン
↓ 10分で完成
📊 日本語/韓国語レポート → Discord

人間が触るのは「Discordで練習する」「朝にレポートを読む」だけ。

New Meta Inc. Glossary Preview
これから出てくる4つの専門用語

すべて「日常のもの」に
例えられます。

🪪
01
Discord Bot
API Token
Botの社員証
💻
02
CLI
キーボードで
命令する仕組み
⏰
03
Cron / Batch
自動目覚まし+
自動仕事リスト
🔌
04
API
サービスへの
自動受付窓口
New Meta Inc. 01 / Bot Token
用語 01

🪪 Discord Bot API Token
= Botの社員証

Botが Discord 内で発言・読み取りをするには、
Discord社から発行される専用ID番号が必要。これが Bot Token。

🪪 社員証 これがないと社内(Discord)に入れない
🔑 暗証番号 漏れると他人が成りすませる
📛 配達員の制服 「公式」と認識される根拠

⚠️ 漏洩したら即「リセット」して新しい番号に切り替え。我々の運用でも複数回切り替え経験あり。

New Meta Inc. 01 / Bot Token · Real Examples
具体例 — 実際の管理画面

Botの「社員証」と「入社手続き」。

左: Discord Developer Portal で Bot を作成・トークンを発行する画面。 / 右: 作った Bot を実際のサーバーに招待・参加させる承認画面。

🔗 https://discord.com/developers/applications

① Developer Portal
Bot 本体の「設計図」を作る場所
Discord Developer Portal — Bot 設定画面

アプリ名・アイコン・アプリID(社員ID)・公開キー(パスポート番号)などを管理。 ここで 「Reset Token」を押すと、新しい Bot Token(=社員証)が発行される。

② Server Install
Bot を実際のサーバーに「入社」させる
Discord — Bot をサーバーに追加する承認画面

管理者が 「Bot の管理者を追加」「ファンを管理する」「新しいロールでサーバーを管理」 等の権限を確認して承認。 これでようやく Bot がチャットに発言できる状態になる。

New Meta Inc. 02 / CLI
用語 02

💻 CLI = Command Line Interface
= 文字で命令する仕組み

普段はマウスでクリックして操作するが、
その裏側には文字でコンピュータに命令する方法がある。

📞
オペレーターへの電話注文
「あれをこうして」と口頭で頼む形式
🍣
寿司屋のカウンター注文
メニューを見ずに「特上を握って」
🤖
ロボットへの口頭命令
ボタン操作なしで言葉だけで動かす

実際の例 — 我々がAIに分析を依頼するときのコマンド:

claude -p "このログを読んで、選手別の発言量を集計して..." # これだけでAIが10分後にレポートを返してくれる
New Meta Inc. 02 / CLI · Real Example
具体例 — 実際のターミナル画面

これが「CLI」の正体。

Mac のターミナル(黒い画面)に文字を1行打つだけで、翻訳Botが起動する。
マウス・GUIは使わない。「python main.py」と打って Enter を押すだけ。

① Real Terminal
「python main.py」と打って起動する瞬間
Mac ターミナルで python main.py を実行

タイトルバー「miyoshi — -zsh — 80×24」。zshシェル上で python main.py を入力。 Enter を押すと Bot が Discord に接続して動き始める。

② What's happening
この1行で何が起きているか
  • ① Python が main.py を読む
  • ② Discord Bot トークンを .env から読込
  • ③ Discord に WebSocket 接続
  • ④ Whisper モデルを GPU に展開
  • ⑤ OpenAI API クライアント起動
  • ⑥ !join コマンド待機状態に

人間がやることは「Enterキーを押す」だけ。残りはコードに書かれた手順を Python が順番に実行する。

New Meta Inc. 03 / Cron + Batch
用語 03

⏰ Cron / Batch
= 自動目覚まし+自動仕事リスト

毎日決まった時間に決まった作業をやらせる仕組み。
人間が眠っている間にも動くのが特徴。

☕
朝6時のコーヒーメーカー
時間が来たら勝手に始まる
🗞️
毎朝届く新聞
何もしなくても届く
🧺
タイマー予約した洗濯機
設定したら寝てる間に動く

Batch(バッチ) = 一連の作業を一気にこなすこと

例: ①古いログを取りに行く → ②必要な部分を切り出す → ③AIに分析させる → ④結果をDiscordに送る

New Meta Inc. 04 / API
用語 04

🔌 API
= サービスへの自動受付窓口

普通の人がDiscordを使うときは画面でメッセージを打つ。
プログラムは画面を持っていないので、専用の業者用入口から操作する。

🏧
銀行のATM
窓口に並ばずに定型処理ができる
🚚
配達業者の搬入口
一般客とは別の正規ルート
📡
自動販売機の補充口
中身を入れる専用の入り口

身近な例: 天気予報アプリ ← 気象庁API / 経路検索 ← Maps API / LINE通知 ← LINE API
現代のサービスの裏側は、ほぼすべてAPIで繋がっている。

New Meta Inc. 04 / API · Real Example
具体例 — Discord API ドキュメント & 実 curl 実行

「窓口」の住所と、実際の手紙。

Discord が公開している API ドキュメントを、私たちはマニュアル代わりに読む。 実際の通信を curl コマンドで再現すると、Bot がやっていることが「ただの HTTP リクエスト」だと分かる。

🔗 公式ドキュメント: https://discord.com/developers/docs/resources/message#create-message

① Endpoint Spec
POST /channels/{channel.id}/messages # Host: discord.com/api/v10 Headers: Authorization: Bot <TOKEN> Content-Type: application/json Body (JSON): { "content": "string", # 本文 ~2000 文字 "tts": false, # 読み上げ "embeds": [...], # リッチ表示 "allowed_mentions": {...} # メンション制御 } Response: 200 OK { "id": "...", "channel_id": "...", "author": {...}, "timestamp": "..." }
② curl で実テスト(コマンド)
$ curl -X POST \ -H "Authorization: Bot MTQ3..." \ -H "Content-Type: application/json" \ -d '{"content":"テスト送信"}' \ https://discord.com/api/v10/\ channels/14932977.../messages
③ 返ってきた JSON(成功時)
{ "id": "1493297771619291491", "type": 0, "content": "テスト送信", "channel_id": "1493297...", "author": { "id": "1475022391301242901", "username": "Secretary(秘書)", "bot": true }, "timestamp": "2026-06-15T09:48:42+00:00" }

Bot は内部でこれと同じ HTTP リクエストを毎日 20 回前後、自動で送り続けている。

New Meta Inc. Architecture
我々のシステム構成

3つの場所で
役割分担している。

01 / 練習の現場
🎮
Discord
・ボイスチャンネル(練習)
・テキストチャンネル(レポート受信)
02 / 翻訳の担当
🪟
Windows PC
+ Nvidia RTX 2080
・音声をリアルタイム翻訳
・全発言をログ保存
※Whisper v3 Turbo の
ローカル推論に GPU 必須
03 / 分析の担当
🍎
Mac mini
・毎日12時に自動起動(Cron)
・ログを取得
・AIで分析(CLI)
・Discordへ投稿(API + Token)

4つの用語が、ここで全部使われている。

New Meta Inc. Architecture Diagram
システム構成図

データはこう流れている。

flowchart LR
  classDef discord fill:#23272A,stroke:#5865F2,color:#fff,stroke-width:2px
  classDef windows fill:#1a2332,stroke:#0078D4,color:#fff,stroke-width:2px
  classDef mac    fill:#202020,stroke:#A8A8A8,color:#fff,stroke-width:2px
  classDef ai     fill:#2a1f1a,stroke:#CC785C,color:#fff,stroke-width:2px
  classDef api    fill:#2a2f10,stroke:#E6FF3D,color:#fff,stroke-width:2px

  subgraph D[" 🎮 DISCORD "]
    direction TB
    VC["🎙️ Voice Channel
(練習中の会話)"]:::discord JA["💬 #ai-summary-jp"]:::discord KR["💬 #ai-summary-kr"]:::discord end subgraph W[" 🪟 WINDOWS PC + 🎮 NVIDIA RTX 2080 "] direction TB TB["🌐 翻訳Bot
(Whisper v3 Turbo)"]:::windows GPU["⚡ RTX 2080 (CUDA)
Whisper ローカル推論"]:::windows LG[("📝 transcript_*.txt
練習ログ")]:::windows end subgraph M[" 🍎 MAC MINI "] direction TB CR["⏰ Cron
毎日 12:00"]:::mac SH["📜 自動分析
スクリプト"]:::mac CL["💻 Claude CLI
(claude -p)"]:::mac end subgraph AI[" ☁️ ANTHROPIC "] AIA["🤖 Claude Opus
分析エンジン"]:::ai end subgraph AP[" 🔌 DISCORD API "] EP["api/v10/channels
+ Bot Token"]:::api end VC ==>|"① 音声"| TB TB -.->|"翻訳テキスト表示"| VC TB ==>|"② 全発言追記"| LG CR ==>|"③ 起動"| SH SH -->|"④ SSH取得"| LG SH -->|"⑤ プロンプト"| CL CL <==>|"⑥ 推論"| AIA SH -->|"⑦ JA レポート"| EP SH -->|"⑧ KR 翻訳→送信"| EP EP -->|"HTTP POST"| JA EP -->|"HTTP POST"| KR
Discord
Windows PC
Mac mini
Claude AI
Discord API
New Meta Inc. Feature 01 / Translation · Components
機能① 翻訳機能 — コンポーネント図

音声を瞬時に翻訳する6つの部品。

flowchart TB
  classDef discord fill:#23272A,stroke:#5865F2,color:#fff,stroke-width:2px
  classDef bot     fill:#1a2332,stroke:#0078D4,color:#fff,stroke-width:2px
  classDef gpu     fill:#1f3a1f,stroke:#76B900,color:#fff,stroke-width:2px
  classDef openai  fill:#1a2a23,stroke:#10A37F,color:#fff,stroke-width:2px
  classDef storage fill:#202020,stroke:#A8A8A8,color:#fff,stroke-width:2px

  subgraph User[" 👤 USER "]
    Speaker["話者
日本語 / 韓国語"]:::discord end subgraph Discord[" 🎮 DISCORD "] VoiceCh["🎙️ Voice Channel"]:::discord TextCh["💬 Text Channel
(翻訳結果表示)"]:::discord end subgraph Bot[" 🤖 翻訳Bot (Windows PC) "] AudioCap["📡 音声キャプチャ"]:::bot STT["🎧 STT 呼び出し"]:::bot LangDet["🌐 言語判定"]:::bot Trans["🔄 翻訳呼び出し"]:::bot Sender["📤 メッセージ送信"]:::bot Logger["📝 ログ追記"]:::bot end subgraph LocalGPU[" ⚡ ローカル GPU (RTX 2080) "] Whisper["Whisper v3 Turbo
(faster-whisper)"]:::gpu end subgraph OpenAI[" ☁️ OPENAI "] GPT["ChatGPT 4o mini
(ja ↔ ko 翻訳)"]:::openai end subgraph Storage[" 💾 LOCAL STORAGE "] Log[("📝 transcript_*.txt")]:::storage end Speaker -.->|発話| VoiceCh VoiceCh ==>|Opus 音声| AudioCap AudioCap ==> STT STT <==>|ローカル推論| Whisper STT ==> LangDet LangDet ==> Trans Trans <==>|REST API| GPT Trans ==> Sender Trans ==> Logger Sender ==>|Discord SDK| TextCh Logger ==> Log
New Meta Inc. Feature 01 / Translation · Data Flow
機能① 翻訳機能 — データのフローチャート

1発話あたり、約 0.5 秒で完了。

sequenceDiagram
  autonumber
  participant U as 👤 話者
  participant V as 🎙️ Voice Ch
  participant B as 🤖 翻訳Bot
  participant W as ⚡ Whisper v3 Turbo
(ローカル GPU) participant G as ☁️ ChatGPT 4o mini
(OpenAI API) participant T as 💬 Text Ch participant L as 📝 Log U->>V: 発話「ガンクお願い」 V->>B: Opus 音声ストリーム B->>W: faster-whisper.transcribe() W-->>B: text: 「ガンクお願い」 B->>B: 言語判定 → ja B->>G: POST /v1/chat/completions (ja→ko) G-->>B: 「갱크 부탁해요」 par 並列処理 B->>T: POST messages Note over T: ユーザー画面に表示 and B->>L: 追記 (タイムスタンプ付き) Note over L: 後のAI分析の原料 end
New Meta Inc. Feature 01 / Translation · Real Data
機能① 翻訳機能 — 具体的なデータの流れ

実際の発話を例に。

flowchart TB
  classDef stage   fill:#1a1a1a,stroke:#5865F2,color:#fff,stroke-width:2px
  classDef payload fill:#000,stroke:#E6FF3D,color:#E6FF3D,stroke-dasharray:5 3

  S1["① 音声入力 ( ≈ 0.8 秒 )"]:::stage
  P1["🔊 「ガンクお願い」
Opus 40kbps / Discord Voice"]:::payload S2["② Whisper v3 Turbo ( ≈ 200ms )
ローカル GPU 推論 (RTX 2080)"]:::stage P2["text: 「ガンクお願い」
confidence: 0.94"]:::payload S3["③ 言語判定 ( ≈ 20ms )"]:::stage P3["lang: ja
score: 0.98"]:::payload S4["④ ChatGPT 4o mini ( ≈ 250ms )
OpenAI API"]:::stage P4["text: 「갱크 부탁해요」"]:::payload S5a["⑤a Discord に投稿"]:::stage S5b["⑤b Log に追記"]:::stage P5["💬 表示メッセージ
HRK (ja): ガンクお願い
→ ko: 갱크 부탁해요"]:::payload P6["📝 transcript_2026-06-13.txt
[2026-06-13 21:42:18] HRK (ja):
ガンクお願い -> ko: 갱크 부탁해요"]:::payload S1 --> P1 --> S2 --> P2 --> S3 --> P3 --> S4 --> P4 P4 --> S5a --> P5 P4 --> S5b --> P6
New Meta Inc. Feature 02 / Scrim Summary · Components
機能② スクリムサマリー送信 — コンポーネント図

毎日12:00、自動でレポートを配信する6部品。

flowchart TB
  classDef trigger fill:#202020,stroke:#A8A8A8,color:#fff,stroke-width:2px
  classDef source  fill:#1a2332,stroke:#0078D4,color:#fff,stroke-width:2px
  classDef mac     fill:#1f1f1f,stroke:#A8A8A8,color:#fff,stroke-width:2px
  classDef ai      fill:#2a1f1a,stroke:#CC785C,color:#fff,stroke-width:2px
  classDef api     fill:#2a2f10,stroke:#E6FF3D,color:#fff,stroke-width:2px
  classDef discord fill:#23272A,stroke:#5865F2,color:#fff,stroke-width:2px

  subgraph T[" ⏰ TRIGGER "]
    LaunchD["launchd
StartCalendarInterval"]:::trigger Script["📜 scrim-report-cron.sh"]:::trigger end subgraph Src[" 🪟 WINDOWS PC "] WLog[("📝 transcript_
YYYY-MM-DD.txt")]:::source end subgraph Mac[" 🍎 MAC MINI "] SSHC["🔐 ssh / scp"]:::mac Grep["✂️ grep
(時間範囲抽出)"]:::mac CLI["💻 claude -p
(分析依頼)"]:::mac KrCLI["💻 claude -p
(韓国語翻訳)"]:::mac Curl["📤 curl POST
+ Bot Token"]:::mac end subgraph AI[" ☁️ ANTHROPIC "] Claude["🤖 Claude Opus"]:::ai end subgraph Api[" 🔌 DISCORD API "] EP["api/v10/channels/
{channel_id}/messages"]:::api end subgraph Discord[" 🎮 DISCORD "] JaCh["💬 #ai-summary-jp"]:::discord KrCh["💬 #ai-summary-kr"]:::discord end LaunchD ==>|12:00 JST 起動| Script Script ==>|① SSH 接続| SSHC SSHC <==>|SCP取得| WLog Script ==>|② 抽出| Grep Grep ==>|6,500行| CLI CLI <==>|③ Messages API| Claude CLI ==>|④ JA MD| Curl Curl ==>|⑤ HTTP POST| EP EP ==> JaCh CLI ==>|⑥ MD 渡し| KrCLI KrCLI <==>|⑦ 翻訳| Claude KrCLI ==>|⑧ KR MD| Curl Curl ==>|⑨ HTTP POST| EP EP ==> KrCh
New Meta Inc. Feature 02 / Scrim Summary · Data Flow
機能② スクリムサマリー送信 — データのフローチャート

起動から配信完了まで約10分。

sequenceDiagram
  autonumber
  participant LD as ⏰ launchd
  participant SH as 📜 cron.sh
  participant WP as 🪟 Windows
  participant FS as 💾 /tmp
  participant CL as 💻 claude
  participant CA as ☁️ Claude
  participant DA as 🔌 Discord API
  participant DC as 🎮 Discord

  Note over LD: 12:00:00 JST
  LD->>SH: 起動
  SH->>WP: SSH PowerShell
  WP-->>SH: 最新ファイル名
  SH->>WP: SCP 取得
  WP-->>FS: transcript_full.txt
  SH->>FS: grep 18:00 - 翌06:00
  FS-->>SH: transcript_target.txt

  SH->>CL: claude -p "分析せよ"
  CL->>CA: POST /v1/messages
  CA-->>CL: Markdown レポート
  CL-->>SH: report_*.md

  SH->>SH: --- でセクション分割
  loop 各セクション
    SH->>DA: POST /channels/JA/messages
    DA-->>SH: 200 OK
    DA->>DC: メッセージ配信
  end

  SH->>CL: claude -p "韓国語に翻訳"
  CL->>CA: POST /v1/messages
  CA-->>CL: 韓国語版 MD
  CL-->>SH: report_*_kr.md
  loop 各セクション
    SH->>DA: POST /channels/KR/messages
    DA-->>SH: 200 OK
    DA->>DC: メッセージ配信
  end
        
New Meta Inc. Feature 02 / Scrim Summary · Real Data
機能② スクリムサマリー送信 — 具体的なデータの流れ

実際のサイズと件数で追う。

flowchart TB
  classDef stage   fill:#1a1a1a,stroke:#5865F2,color:#fff,stroke-width:2px
  classDef payload fill:#000,stroke:#E6FF3D,color:#E6FF3D,stroke-dasharray:5 3

  S1["① launchd 起動 (12:00:00)"]:::stage
  P1["scrim-report-cron.sh 実行開始"]:::payload
  S2["② Windows → Mac mini 転送"]:::stage
  P2["📂 transcript_2026-06-12.txt
21,113 行 / 4.2 MB"]:::payload S3["③ 時間範囲抽出 (grep)"]:::stage P3["📄 transcript_target.txt
6,549 行 / 1.2 MB
(18:00 〜 翌 06:00)"]:::payload S4["④ Claude Opus に分析依頼"]:::stage P4["📄 report_2026-06-12_discord.md
179 行 / 12 KB"]:::payload S5["⑤ セクション分割 (---)"]:::stage P5["11 セクション
(各 1,800 文字以下)"]:::payload S6a["⑥a JA Discord 投稿"]:::stage S6b["⑥b 韓国語翻訳 (Claude)"]:::stage P6["💬 #ai-summary-jp
11 メッセージ配信
HTTP 200 × 11"]:::payload P7["📄 report_*_kr.md
9 セクション"]:::payload S7["⑦ KR Discord 投稿"]:::stage P8["💬 #ai-summary-kr
9 メッセージ配信
HTTP 200 × 9"]:::payload S1 --> P1 --> S2 --> P2 --> S3 --> P3 --> S4 --> P4 --> S5 --> P5 P5 --> S6a --> P6 P5 --> S6b --> P7 --> S7 --> P8
New Meta Inc. Raw Prompts · Translation
参考資料 — 翻訳時に AI に渡している生プロンプト

翻訳プロンプト(リアルタイム翻訳用)

OpenAI gpt-4o-mini に対して、1発話ごとに送られる system プロンプト。 変数: {target_lang_name}("Japanese" or "Korean")/ {context_block}(直近10発言)

# === SYSTEM PROMPT === You are a professional translator for League of Legends players. Translate the received text to {target_lang_name}. Output ONLY the translated text, no explanations. Recent conversation for context (use this to understand pronouns, topics, and maintain consistency): {context_block} # === USER MESSAGE === {ユーザーの発話テキスト} # === PARAMETERS === model: gpt-4o-mini temperature: 0.3 # 翻訳の安定性のため低温 # === 実際の context_block の例 === [Eria (Japanese)]: ジャングルガンクお願いします [advance (Korean)]: 미드도 부탁드려요 [HRK (Japanese)]: ドラゴンも見ます # === 応答例 === 入力:「ガンクお願い」(ja) 出力:「갱크 부탁해요」(ko)
New Meta Inc. Raw Prompts · Summary
参考資料 — サマリー時に AI に渡している生プロンプト

サマリープロンプト(毎日12時のレポート生成用)

Anthropic Claude Opus に渡される、6,000行のログを読ませて Markdown レポートに変換する指示。

# === CLAUDE -p PROMPT === あなたは eSports (League of Legends) チーム 「Team New Meta」のスクリム分析アシスタントです。 /tmp/transcript_target.txt を全行読んで分析し、 ${REPORT_FILE} にMarkdownレポートを書き出してください。 ログ形式: [YYYY-MM-DD HH:MM:SS] ユーザー名 (言語): 発言内容 -> 翻訳先言語: 翻訳 チームメンバー: TOP: advance, JG: HRK or はむ, MID: Alps or Eria, ADC: godot or すや/황성, SUP: toraneko or ukyo スタッフ: むぎちゃ@MANAGER, 黒崎@lanecoach, ジョンウ_PADO@coach, meipuru レポート内容: 1. 当日の時間配分(試合ごとのタイムライン + サマリ) 2. 試合ごとの出場選手と会話量(■試合中 と ■FB中 を分離) 3. 当日の全体会話量(コードブロックで等幅表示) 4. フィードバックの要点 (各選手最低3個最大8個 + チーム全体最大20個) 重要フォーマットルール: - 各セクションを --- で区切ること(Discord分割送信用) - テーブルは使わない(Discordが非対応) - グラフ・バーチャート・ASCII art は絶対に使わない - 会話量はコードブロックで数値のみ等幅表示 - 引用ブロック > でヘッダ情報を表示 - 全て日本語(韓国語話者の引用も日本語に翻訳) - 各セクションは1800文字以内 - セクション見出しは重複させない

★ 「テーブル禁止」「ASCII art 禁止」などは過去の事故から逆算した安全装置。
毎日 6,000行 → 12KB / 11セクションの Markdown に圧縮される。

New Meta Inc. 24h Timeline
1日の流れ

練習終わりから10分で、
レポートが届く。

18:00 〜 チームがDiscordで集まり、練習開始 —
練習中 翻訳Botが日本語↔韓国語を即時翻訳 翻訳Bot
練習中 同時に全発言がログファイルに記録 ファイル保存
〜 翌6:00 練習終了 —
12:00 Mac mini が「目覚まし」で自動起動 Cron
12:01 Windows PCからログを取得・切り出し 転送 + 抽出
12:02 AIに「このログを分析して」と命令 CLI + AI
12:08 日本語レポート完成 AI生成
12:09 Discordに自動投稿 API + Token
12:10 韓国語に翻訳して韓国語チャンネルに投稿 AI + API

人間の操作: ゼロ

New Meta Inc. Report Contents
レポートの中身

AIは練習の全発言を読み、
5つの軸で自動集計する。

  • 01 時間配分 試合・FB・休憩がそれぞれ何分だったか
  • 02 試合ごとの発言量 誰が何回発言したか(試合中/FB中で分離)
  • 03 当日の総会話量 選手別の発言回数 → 推定会話時間を可視化
  • 04 選手別フィードバック要点 コーチの指摘・自己反省・次への宿題を抽出
  • 05 チーム全体の所見 メンタル・戦術課題・環境要因まで

これを毎日 10分以内 に、選手・コーチ・関係者全員に届く形で生成。

New Meta Inc. Why Automate
自動化の効果

同じレポートを
人手で作ると何が起きるか。

▼ 従来の方法

1. コーチが練習を全部録画する

2. 翌日に2-3時間かけて見返してメモ

3. 各選手にコメントを書く

4. 全員にメッセージを送る

3〜4時間 / 日 × コーチ人数
▼ 自動化後

1. 練習は普段通り

2. 翌朝には全員が読める形で
Discordにレポートがある

 

 

0 時間 / 日

コーチは「レポートのクオリティを上げる」「次の戦略を練る」など、
人間にしかできない仕事に時間を使えるようになる。

New Meta Inc. Applications
Other Applications

同じ仕組みで
他に何ができるか。

Discord BotとAIエージェントの応用領域を、4つのジャンルに分けて。

New Meta Inc. Apps 01 / Business Automation
応用例 01

既存業務の自動化

  • 📅 練習スケジュール調整 Botが選手の予定を聞いて、最適日程を自動提案
  • 🍱 ケータリング注文 「明日のお弁当、麺類で」だけでお店に発注
  • 📊 月次レポート 月初に「先月の練習サマリー」を自動配信
  • 🎬 試合映像の自動編集 キル/集団戦の場面だけ自動切り出し
  • 💸 経費精算リマインド 月末に「領収書を送って」と自動DM
New Meta Inc. Apps 02 / Communication
応用例 02

コミュニケーション支援

  • 🌐 多言語チーム運営 日韓・日英など多言語チームの会話を全自動翻訳(既に運用中)
  • 🤝 新人オンボーディング 「初めての方はここを読んでね」を自動案内
  • 🎂 誕生日通知 選手・スタッフの誕生日を自動でチャンネル告知
  • 📞 緊急連絡 体調不良の自己申告で自動的にマネージャーに通知
  • 🎓 FAQ自動回答 よくある質問を Bot が即座に返答、人間の負荷を削減
New Meta Inc. Apps 03 / Analytics
応用例 03

分析・意思決定支援

  • 📈 選手コンディション可視化 発言量の推移から「元気がない選手」を検知
  • 🎯 相手チーム分析 試合映像を AI に見せて傾向を要約
  • 💡 戦術ブリーフィング 試合前に「今日の対戦相手の癖」を自動レポート
  • 🏆 個人成長トラッキング 過去3ヶ月のFBを総括して、個別成長プランを生成
  • 📉 離脱予兆検知 発言量・参加率の低下から離脱リスクを早期発見
New Meta Inc. Apps 04 / Fans & Sponsors
応用例 04

ファン・スポンサー向け

  • 📺 ハイライト動画 試合のキルシーンを抽出してSNS自動投稿
  • 📰 試合後レポート 試合終了 → 5分後にファン向け速報をXに自動投稿
  • 💬 ファンとの対話 Discordコミュニティで Bot がファンの質問に回答
  • 🎁 スポンサー報告 露出回数・視聴者数をスポンサーに自動レポート
  • 🎯 マーケ施策の自動運用 キャンペーンの応募受付・抽選・通知をフルオート化
New Meta Inc. Recap
まとめ

覚えてほしい4つのキーワード。

🪪
01
Bot Token
Botの社員証

Discordに発言する権限
💻
02
CLI
文字で命令する仕組み

AIに分析を依頼する手段
⏰
03
Cron / Batch
自動目覚まし+仕事リスト

毎日12時に勝手に動かす
🔌
04
API
自動受付窓口

Discordに自動投稿する手段

この4つを正しく組み合わせるだけで、
人手の業務が自動化できる。

New Meta Inc. Appendix / Setup Guide
付録 — 翻訳Botの導入手順

導入手順説明

翻訳Bot は「Discord に入って会話を聞き、文字にして記録する新人スタッフ」。
荷物受け取り → 社員証発行 → 暗証番号 → 入社手続き → 出社 の順に、画面を見ながら進めます。

📦
Step 1 · 約15分
荷物を受け取る
zip を解凍して setup.bat を押すだけ。あとは待つ
🪪
Step 2 · 約3分
社員証を作る
Discord の開発者ページで Bot を登録
🔑
Step 3 · 約1分
暗証番号を発行
Bot Token を発行してコピー
🤝
Step 4 · 約3分
入社手続き
権限を 5 つ選んで、サーバーに招待
🎙️
Step 5 · 約3分
出社と席決め
起動して、Discord で 2 つのコマンドを送る
用意するもの: NVIDIA GPU 搭載の Windows PC / Python 3.10 / Ollama(起動しておく)/ 配布された Bot の zip / Bot を入れる Discord サーバーの「サーバー管理」権限。 画面の黄色い枠が「押す場所」です。
New Meta Inc. Appendix / Step 1
Step 1 — 📦 荷物を受け取る(前半)

zip を解凍して、setup.bat をダブルクリック。

1
zip を右クリック → 解凍 → デスクトップに解凍
zip を右クリックして解凍するメニュー

「esports-transcribe-bot」というフォルダがデスクトップにできる。

2
フォルダを開いて setup.bat をダブルクリック
解凍後のフォルダの中身。setup.bat を選択

他のファイルは触らなくて OK。start_bot.bat は Step 5 で使う。

3
黒い画面が開けば成功。あとは待つだけ
setup.bat を起動した直後の画面

ロゴの後に「セットアップ」と出て、.env 作成 → Python 確認 → ライブラリ導入が自動で進む。

New Meta Inc. Appendix / Step 1
Step 1 — 📦 荷物を受け取る(後半)

10〜15 分待つと「セットアップ完了」が出る。

4
文字起こし用のモデル(約 2.9GB)を自動ダウンロード中
Whisper モデルのダウンロード進捗と環境チェック

% 表示が 100% になり、緑の「Whisper モデル large-v3 を取得しました」が出るまで待つ。途中で閉じない。

5
「セットアップ完了」が出たら、何かキーを押して閉じる
環境チェックの結果とセットアップ完了画面

[注意] が「DISCORD_TOKEN は未設定」「サマリー送信先は未設定」の 2 つだけなら正常。この 2 つは Step 3 と Step 5 で入れる。

途中で画面が止まることがあります。その場合は Enter を 1 回押してください。続きが流れ始めます。 「Ollama 接続 NG」と出たら、Ollama を起動してから setup.bat をもう一度ダブルクリック(2 回目はダウンロードを飛ばすのですぐ終わる)。
New Meta Inc. Appendix / Step 2
Step 2 — 🪪 社員証を作る(前半)

Discord の開発者ページで、Bot を新規登録する。

🔗 https://discord.com/developers/applications ← ブラウザで開く(普段の Discord アカウントでログイン)

1
右上の「新しいアプリケーション」を押す
Developer Portal 上部。新しいアプリケーションボタン

「アプリケーション」一覧ページの右上にある青いボタン。

2
名前を入力 → 規約にチェック → 作成
アプリを新規作成するダイアログ

名前は「チーム名 + Bot」など分かりやすいもの。Discord 上での Bot の表示名になる(後から変更できる)。

New Meta Inc. Appendix / Step 2
Step 2 — 🪪 社員証を作る(後半)

「Bot」ページで、スイッチを 1 つだけ ON にして保存。

3
左メニュー「Bot」→ 下へスクロール → Message Content Intent を ON → 保存
Bot ページの Privileged Gateway Intents。Message Content Intent を ON にして保存
拡大 ① ON にするのはこれだけ
Message Content Intent のスイッチ拡大

上 2 つ(Presence / Server Members)は OFF のまま。これを ON にすると、Bot が「!join」などの文字コマンドを読めるようになる。

拡大 ② 保存を忘れない
保存していない変更がありますの帯と緑の保存ボタン

画面の下に「注意:保存していない変更があります!」の帯が出るので、右端の緑ボタンを押す。帯が消えたら OK。

New Meta Inc. Appendix / Step 3
Step 3 — 🔑 暗証番号を発行

Bot Token を発行して、「コピー」を押す。

1
同じ「Bot」ページの上の方、「トークンをリセット」を押す
Bot ページのトークンをリセットボタン

「ユーザー名」のすぐ下にある青いボタン。

2
「実行します!」を押す
トークンをリセットしますかの確認ダイアログ

2 段階認証をしている人は、ここで認証コードを聞かれる。

3
緑の帯が出たら、「コピー」を押す
新しいトークンが生成された画面とコピーボタン

長い英数字がトークン。この画面を離れると二度と見られないので、Step 5 まではメモ帳などに貼っておく。

トークンは「社員証の暗証番号」。チャットに貼らない・スクショに写さない・他人に渡さない。 もし漏れたら、同じ手順でもう一度「トークンをリセット」すれば古い番号はすぐ無効になる。
New Meta Inc. Appendix / Step 4
Step 4 — 🤝 入社手続き(前半)

「OAuth2」ページで、チェックを 6 つ入れる。

1
左メニュー「OAuth2」→ 下へスクロール → スコープの「bot」にチェック
OAuth2 URL ジェネレーターのスコープで bot にチェック

「OAuth2 URL ジェネレーター」という欄。bot にチェックすると、下に「Bot の権限」が現れる。

2
「Bot の権限」で、この 5 つだけにチェック
Bot の権限で 5 つにチェック

チャンネルを表示/メッセージを送る/メッセージ履歴を読む/接続/音声検出を使用。「管理者」は付けない(必要最小限が安全)。

New Meta Inc. Appendix / Step 4
Step 4 — 🤝 入社手続き(後半)

できた URL を開いて、サーバーに追加する。

3
一番下の「生成された URL」をコピーして、新しいタブで開く
生成された招待 URL

「連携タイプ」は「ギルドのインストール」のまま。URL の末尾が「permissions=34671616」なら、チェックの付け方が合っている。

4
「サーバーに追加」で自分のサーバーを選んで、「はい」
Bot をサーバーに追加する承認ダイアログ

選べるのは自分が「サーバー管理」権限を持つサーバーだけ。続けて権限の確認画面が出たら「認証」。メンバー一覧に Bot が(オフラインで)現れれば OK。

New Meta Inc. Appendix / Step 5
Step 5 — 🎙️ 出社と席決め(前半)

start_bot.bat を起動して、トークンを貼り付ける。

1
フォルダの start_bot.bat をダブルクリック → 右クリック(または Ctrl + V)で貼り付け → Enter
start_bot.bat でトークンの入力を求められる画面

「DISCORD_TOKEN:」の後ろで右クリックすると、Step 3 でコピーしたトークンが貼り付く(右クリックで入らないときは Ctrl + V)。Enter で「.env に保存しました」と出る。聞かれるのは初回だけ。

2
ロゴの後に、この 3 行が出れば起動成功
Bot が起動してログイン完了した画面

「ログイン完了」「Ollama: 接続 OK」「Whisper モデルの読み込み完了」。初回は読み込みに少し時間がかかる。この黒い画面は閉じずに置いておく。

New Meta Inc. Appendix / Step 5
Step 5 — 🎙️ 出社と席決め(後半)

Discord で 2 つのコマンドを送れば、運用スタート。

3 · 席を決める
# レポート用チャンネル
あなた!setchannel
Bot(このチャンネルを送信先に設定)
サマリーを受け取りたいテキストチャンネルで送る。起動時の「サマリー送信先が未設定」の警告はこれで消える。
4 · 練習に呼ぶ
🔊 自分がボイスチャンネルに入ってから
あなた!join
Bot(同じボイスチャンネルに参加 → 文字起こし開始)
一度 !autojoin on を送っておくと、次からは誰かがボイスに入った時点で自動で来る。
5 · あとは待つだけ
⏰ 毎日 12:00(日本時間)
Bot📊 昨日の練習サマリー(自動投稿)
あなた!summary ← すぐ欲しいとき
止めるときは黒い画面で Ctrl + C か、ウィンドウを閉じる。翌日はまた start_bot.bat をダブルクリック(トークンは聞かれない)。

※ 吹き出しはイメージ図。Bot の返事の文言は実際の画面と異なる場合があります。

New Meta Inc. Appendix / Troubleshooting
付録 — つまずきやすいポイント

困ったときは、まずここを見る。

Step 1
setup.bat が途中で止まる/遅い
止まったら Enter を 1 回押す。それでも進まないときは、ウィンドウを閉じて setup.bat をもう一度ダブルクリック(ダウンロード済みの分は飛ばして続きから進む)。
Step 1
「Ollama 接続 NG」と出る
Ollama が起動していない。Ollama を起動してから setup.bat(または start_bot.bat)をやり直す。
Step 2
Bot がコマンドに反応しない
Message Content Intent が保存されていない。Bot ページでスイッチが ON か、「保存していない変更」の帯が残っていないか確認する。
Step 3
トークンを貼っても「ログイン失敗」
コピー漏れ・前後の空白混入が多い。「トークンをリセット」で発行し直し、start_bot.bat で貼り直す。
Step 4
Bot がボイスチャンネルに入れない
招待時の権限不足。Step 4 の 5 つにチェックが入っているか確認し、同じ URL でもう一度招待すると権限が上書きされる。
いつでも
トークンが漏れたかもしれない
迷わず Developer Portal で「トークンをリセット」。古いトークンは即無効になる。その後 start_bot.bat で新しいトークンを貼り直せば復旧。
日々の運用で人間がやること:Bot の黒い画面を閉じずに PC を起動しておく/練習前にボイスチャンネルへ入る(!autojoin on なら Bot は自動で来る)/翌日 12:00 のサマリーを読む。これだけ。