汎用個人生産性⭐ リポ 5品質スコア 57/100
add-gmail
Gmailの読み取りと送信の統合を追加
description の原文を見る
Add Gmail read and send integration
SKILL.md 本文
betaclaw Add Gmail Skill
あなたは Gmail 統合アシスタントです。betaclaw エージェントがユーザーに代わってメールを読み込んだり送信したりするためのツールとして Gmail をセットアップします。
前提条件
ユーザーに Google Cloud プロジェクト(Gmail API が有効化されている)と OAuth 2.0 認証情報(デスクトップアプリタイプ)が必要であることを伝えます。必要に応じて手順を説明します:
- https://console.cloud.google.com/ にアクセスする
- プロジェクトを作成するか既存のプロジェクトを選択する
- Gmail API を有効化する
- OAuth 2.0 認証情報を作成する(デスクトップアプリケーション)
- 認証情報 JSON をダウンロードする
ステップ 1: 認証情報の収集
GMAIL_CLIENT_IDを入力するよう促す — Google Cloud Console の OAuth クライアント ID。GMAIL_CLIENT_SECRETを入力するよう促す — OAuth クライアント シークレット。vault.addSecret()を使用して両方をボールトに暗号化して保存します。.envやプレーンテキストには書き込まないでください。
ステップ 2: OAuth 認可フロー
googleapisパッケージをインストールします:npm install googleapis。- 以下のスコープで OAuth 認可 URL を生成します:
https://www.googleapis.com/auth/gmail.readonlyhttps://www.googleapis.com/auth/gmail.sendhttps://www.googleapis.com/auth/gmail.labels
- URL をユーザーに表示し、訪問して認可し、認可コードを貼り付けるよう求めます。
- 認可コードをアクセストークンとリフレッシュトークンに交換します。
- リフレッシュトークンをボールトに
GMAIL_REFRESH_TOKENとして保存します。
ステップ 3: Gmail ツールの作成
2 つのツールを実装する src/tools/gmail.ts を作成します:
gmail_read ツール
- パラメーター:
query(文字列、Gmail 検索構文)、maxResults(数値、デフォルト 5) - クエリに一致するメールを読み込みます
- 戻り値: TOON 形式の
{ id, from, to, subject, date, snippet, body }の配列 - 本文から HTML をストリップし、トークンを節約するためメールあたり 500 文字に切り詰めます
gmail_send ツール
- パラメーター:
to(文字列)、subject(文字列)、body(文字列)、replyToId(オプション文字列) - メールを送信します(replyToId が指定されている場合は返信)
- 戻り値:
{ success: true, messageId: string }
ステップ 4: ツールの登録
-
ツール説明ファイルを作成します:
prompts/tools/tool-descriptions/gmail_read.toonprompts/tools/tool-descriptions/gmail_send.toon
-
gmail_readとgmail_sendをダイナミックツールローダーマッピングのemailインテント カテゴリに追加します。
ステップ 5: テスト
gmail_readをクエリ"is:inbox"でテストし、1 件の結果に限定します。- ユーザーにメールの件名が表示されることを確認するよう求めます。
- オプションで、ユーザー自身のアドレスにテストメールを送信することで
gmail_sendをテストします。
ステップ 6: 確認
成功を報告し、ユーザーに以下を思い出させます:
- 「メールを読み込んだり送信したりするよう依頼できるようになりました。試してみてください: 『受信トレイをチェックして』または『[アドレス]に[トピック]についてメールを送信して』」
- Gmail ツールは、インテント分類器がメール関連のリクエストを検出すると自動的に選択されます。
- リフレッシュトークンはボールトに安全に保存され、自動的に更新されます。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- Rawknee-69
- リポジトリ
- Rawknee-69/Beta-Claw
- ライセンス
- MIT
- 最終更新
- 2026/3/9
Source: https://github.com/Rawknee-69/Beta-Claw / ライセンス: MIT