Discord Bot統合・拡張 (#92)¶
Discord Botの構築・コマンド・連携機能に関するドキュメント。
コマンド一覧¶
基本コマンド¶
| コマンド | 説明 |
|---|---|
$help | コマンド一覧を表示 |
$status | Bot稼働状況を表示 |
$ping | レスポンス時間を表示 |
会話ログ¶
| コマンド | 説明 |
|---|---|
$savelog <title> <summary> | 会話ログを保存 |
$savelog-i | インタラクティブモードで保存 |
いいね記事要約¶
| コマンド | 説明 |
|---|---|
$likes [platform] | いいね記事を要約して投稿 |
$likes qiita | Qiitaストック記事を取得・要約 |
$likes all | 全プラットフォームの記事を取得 |
$likes --no-summary | 要約なしで投稿 |
Web記事 要約・翻訳¶
| コマンド | 説明 | 使用API |
|---|---|---|
$summary <URL> | 記事を日本語で要約 | Gemini |
$translate <URL> | 記事を日本語に全文翻訳 | Gemini |
$summarize <URL> | 記事を日本語で要約 | Claude |
AI チャット・質問¶
| コマンド | 説明 |
|---|---|
$chat <message> | Claude AIと会話(チャンネルごとに履歴を保持) |
$ask <question> | Claude AIに単発質問(履歴なし、即回答) |
$reset | 会話履歴をリセット |
コマンド詳細¶
$summarize <URL>¶
URLで指定したWeb記事をPlaywrightで取得し、Claude APIで日本語要約を生成します。
- 使い方:
$summarize https://example.com/article - クールダウン: 15秒(ユーザーごと)
- 動作:
- PlaywrightでWebページのタイトルと本文を取得
- Claude APIに本文を送信し、300〜500文字程度の日本語要約を生成
- Discord Embedとして返信
- エラー時: URL不正・取得失敗・API制限時はエラーメッセージを返信
- 前提: Playwrightが起動済み、Claude APIキーが設定済みであること
$ask <question>¶
Claude APIに単発で質問し、回答を取得します。$chat と異なり会話履歴を保持しません。
- 使い方:
$ask Pythonのデコレータとは何ですか? - クールダウン: 10秒(ユーザーごと)
- 動作:
- 質問をClaude APIに送信
- 回答をDiscord Embedとして返信
- エラー時: APIキー未設定・API制限時はエラーメッセージを返信
- 前提: Claude APIキーが設定済みであること
$chat vs $ask の使い分け¶
$chat: 前の会話を踏まえて応答してほしいとき(文脈付き)$ask: 独立した質問を投げたいとき(単発)
認証情報の設定¶
Discord Bot Token¶
Credentials/mylab_discord_bot.json:
Claude API($chat, $ask, $summarize 用)¶
Credentials/anthropic_learn_bot.json:
Gemini API($summary, $translate 用)¶
Credentials/gemini_api.json: