一键导入
google-chat
Google Chat API でスペースのメッセージ読み取り・スペース一覧を取得する。WebFetch は認証付き Chat ページに非対応のため、Chat API + OAuth2 ユーザー認証で取得する (認証は ndf:google-auth に委譲)。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Google Chat API でスペースのメッセージ読み取り・スペース一覧を取得する。WebFetch は認証付き Chat ページに非対応のため、Chat API + OAuth2 ユーザー認証で取得する (認証は ndf:google-auth に委譲)。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
修正を複数ブランチに適用する際のブランチ戦略。featureブランチへの先行commitとcherry-pickによる短命branchへの適用手順。環境別branch(qa/staging/epsilon等)への修正適用時に参照する。
DeepWiki (Devin MCP) のドキュメント内容を対象リポジトリの Markdown ファイルとして転載する。セクション構成維持・番号付きファイル分割・GFM 準拠補正・日本語翻訳 (オプション) まで自動処理。
PRのレビューコメントを確認し、優先度に応じてコード修正を実行する。サブエージェント (general-purpose) 起動にも対応。--defer-nit / --severity-min で対応範囲を制御。
実装プランファイル作成・更新の手順。実装開始時およびPR作成時にissues/配下の実装プランの有無を確認し、なければ会話履歴・git log・git diffから生成する。複数ファイル変更・新規機能追加・DBマイグレーション伴う変更が対象。
調査レポート作成のルール。否定的結論のエビデンス要件、残課題の記載フォーマット、ハルシネーション防止のための裏取り原則を扱う。DB調査に限らずコードベース調査・仕様調査一般に適用。
ログを追加・修正する際のガイドライン。ログレベルの選択基準、ループ内ログの制御、エラー蓄積パターン、機密情報の扱いを扱う。言語/FW非依存の原則。
| name | google-chat |
| description | Google Chat API でスペースのメッセージ読み取り・スペース一覧を取得する。WebFetch は認証付き Chat ページに非対応のため、Chat API + OAuth2 ユーザー認証で取得する (認証は ndf:google-auth に委譲)。 |
| when_to_use | Google Chat スペースのメッセージ取得・スペース一覧が必要なとき。Triggers: 'Google Chat', 'chat.spaces', 'chat.messages', 'Chatスペース', 'メッセージ取得', 'チャット履歴' |
| allowed-tools | ["Read","Bash(python *)","Bash(uv *)"] |
Google Chat API (Python) を使ってチャットスペースのメッセージを取得する。
認証は ndf:google-auth スキルの共通モジュール (get_credentials()) を使用。
google-chat/
├── SKILL.md ← このファイル
├── pyproject.toml ← uv プロジェクト (Chat API 依存)
└── scripts/
└── gchat_read.py ← CLI: メッセージ一覧 / スペース一覧
gchat_read.py は実行時に ndf:google-auth スキルの google_auth.py を sys.path に追加して
get_credentials() を呼ぶ。google-auth 側で OAuth2 トークンを取得済みであれば追加の認証は不要。
| 項目 | 値 |
|---|---|
| 認証 | ndf:google-auth スキル (共通 OAuth2 モジュール) |
| Python 実行 | uv run --project ${CLAUDE_SKILL_DIR} python ... または uv run --with ... |
| client_secret.json | ndf:google-auth の手順で配置済み |
| 既存トークン | ~/.config/gcloud/google_token.json (ndf:google-auth で取得済み) |
| Cloud Console | Google Chat API の有効化が必要 |
| アカウント | Google Workspace (Business / Enterprise)。無料 Gmail では利用不可 |
Google Chat URL の末尾がそのまま Space ID になる。
https://mail.google.com/mail/u/0/#chat/space/AAQA6AWG1iE
^^^^^^^^^^^
これが Space ID
API 呼び出し時は spaces/AAQA6AWG1iE の形式で指定する (スクリプトは ID のみ受け取る)。
SKILL_DIR=${CLAUDE_SKILL_DIR}
SCRIPT=$SKILL_DIR/scripts/gchat_read.py
# スペース一覧を表示
uv run --project $SKILL_DIR python $SCRIPT --list-spaces
# メッセージ一覧 (デフォルト Space ID)
uv run --project $SKILL_DIR python $SCRIPT
# Space ID を指定
uv run --project $SKILL_DIR python $SCRIPT --space AAQA6AWG1iE
# 日付フィルタ (RFC-3339 形式)
uv run --project $SKILL_DIR python $SCRIPT --space AAQA6AWG1iE \
--after "2024-01-01T00:00:00+09:00"
# 出力先を変更
uv run --project $SKILL_DIR python $SCRIPT --space AAQA6AWG1iE --output /tmp/my_chat.json
--output で指定した JSON ファイル (デフォルト: /tmp/gchat_messages.json)| パラメータ | 型 | 説明 |
|---|---|---|
parent | string | spaces/{space_id} 形式 (必須) |
page_size | int | 最大取得件数 (デフォルト 25、最大 1,000) |
page_token | string | ページネーション用トークン |
filter | string | createTime や thread.name でフィルタ |
order_by | string | createTime ASC または createTime DESC |
show_deleted | bool | 削除済みメッセージを含めるか |
# 特定日時以降
createTime > "2024-01-01T00:00:00+09:00"
# 日付範囲
createTime > "2024-03-01T00:00:00+09:00" AND createTime < "2024-04-01T00:00:00+09:00"
# スレッド指定
thread.name = "spaces/AAQA6AWG1iE/threads/THREAD_ID"
| スコープ | 用途 |
|---|---|
chat.spaces.readonly | スペース一覧取得 (読み取り専用) |
chat.messages.readonly | メッセージ一覧取得 (読み取り専用) |
chat.messages | メッセージ読み書き (送信が必要な場合) |
ndf:google-auth でこれらのスコープを取得しておく:
! python ${CLAUDE_SKILLS_DIR:-${CLAUDE_PROJECT_DIR}/.claude/skills}/google-auth/scripts/google_auth.py \
chat.messages.readonly chat.spaces.readonly
スコープ変更時はトークンを削除して再認証 (ndf:google-auth の --clear を使う):
python ${CLAUDE_SKILLS_DIR:-${CLAUDE_PROJECT_DIR}/.claude/skills}/google-auth/scripts/google_auth.py --clear
! python ${CLAUDE_SKILLS_DIR:-${CLAUDE_PROJECT_DIR}/.claude/skills}/google-auth/scripts/google_auth.py \
chat.messages.readonly chat.spaces.readonly
"2024-01-01T00:00:00+09:00"spaces/SPACE_ID/threads/THREAD_IDGOOGLE_APPLICATION_CREDENTIALS の干渉サービスアカウントを指している場合は明示的にクリアする:
GOOGLE_APPLICATION_CREDENTIALS="" uv run --project $SKILL_DIR python $SCRIPT --list-spaces