情報の自動取得

Gemini無料キーとGitHub Secretsの設定(2026)

AI Studioでキー発行、GitHub Secrets登録、429のバックオフと日次おおよそ20回。Vertex有料レーンとの取り違えを避ける通し手順。

GitHub Actionsでフィードを取り込むとき、短い日本語要約だけGeminiの無料枠に任せたい方向けの通し手順です。Vertexの有料レーンやPriority PayGoの記事をそのまま当てはめると、キー種別も料金も違います。読み終わると、AI Studioでキーを作りSecretsに置き、429を瞬間制限と日次上限に切り分け、1往復と要約の手直し(polish)の件数上限で枠を守れる状態になります。

このサイトでは、エディタやCLIのAIチャット(Cursor、Claude Code、GitHub Copilotなど)の枠は使わず、Actions上のスクリプトから呼びます。キーが無くても取得自体は動きます。

この記事でわかること

前提・環境

項目内容
執筆時点2026-09
キー種別Google AI StudioのAPIキー(無料枠想定)
置き場GitHub Actions Secretsの GEMINI_API_KEY
既定モデルgemini-3.6-flash(Variablesの GEMINI_MODEL で変更可)

GEMINI_API_KEY は、Actions上のNodeスクリプトが短い要約を依頼するときの認証情報です。ブラウザのGeminiチャットとは別経路です。キー本文はリポジトリ・Issues・チャットに書かないでください。

旧手順/Webナレッジとの手順差異

旧手順/Webナレッジ最新(この記事執筆時に確認したこと)
Vertex AI/グローバルエンドポイント/Priority PayGoを無料キーでそのまま使うAI Studio無料キーではバックオフ以外は別料金・別手順。混ぜない
要約品質のために同じ件を何度も書き直すAPIは1往復。不合格はdraftや次ランへ
直近14日を毎回全部polish年齢・件数上限(例: 3日・ランあたり上限)。日次おおよそ20回を食い尽くさない
429のたびにエディタ/CLIのAIチャットへ逃がす定時経路にAIチャットのトークンを混ぜない。取得は残し要約だけ止める
.env に書けばingestが自動読込現状は シェルの環境変数またはActions Secrets。dotenv自動読込に頼らない

手順

手順1: Google AI Studioでキーを作る

  1. APIキー画面 を通常ブラウザで開く 2.新しいキーを作成する(名前例: 243-pocket-media-ingest)
  2. Cloudプロジェクトは Default Gemini Project があればそれを使う。無い/専用に分けたいときだけ新規 4.表示されたキーをコピーする(再表示できないことがあるのですぐ次へ)

本業用プロジェクトと枠を混ぜない方がよいです。

キー文字列を手元に控え、チャットに貼っていないことを確認してください。

手順2: GitHub Secretsに登録する

1.対象リポジトリ → Settings → Secrets and variables → Actions 2. New repository secret 3. Nameは正確に GEMINI_API_KEY 4. Secretにキーを貼って保存

任意でVariablesに GEMINI_MODEL を置けます。Pages用のCloudflare秘密と混ぜないでください。

Secret名が GEMINI_API_KEY で、値は画面に再表示されないことを確認してください。

手順3: 429と枠の運用方針を決める

種類目安このサイトの扱い
瞬間制限短い待機のあと成功することがある指数バックオフで数回再試行
日次上限PerDay/quota系。数秒では戻らない回路を開き、そのプロセスでは以降Geminiを呼ばない

参考の一般論(Vertex前提が多い): DataCurrentの429コラム。無料枠でそのまま使えるのはだいたいリトライだけです。

環境変数の目安:

変数意味既定の目安
GEMINI_429_RETRIES429の再試行回数3
GEMINI_429_BASE_MS初回待機の基準(ミリ秒)2000
POLISH_MAX_AGE_DAYS要約対象の公開日上限(日)3
POLISH_MAX_PER_RUN1ランの呼び出し上限6 / 4(security / incidents)
POLISH_RETRY_PENDING既に「(要約作成中)」の件を再呼び出しオフ(1 で明示時のみ)

既に「(要約作成中)」のメモは、定時polishでは 再呼び出ししません(薄い本文で毎回pendingを返して枠を溶かすため)。残りは手埋めか POLISH_RETRY_PENDING=1 です。

日次枠のリセットは 太平洋時間の0:00 前後です。「初回429からちょうど24時間」ではありません。モデルあたり無料generateは日次おおよそ 20回(実測)です。

要約は1往復であること、POLISH_MAX_PER_RUN に件数上限があること、既に「(要約作成中)」の定時再呼び出しがオフ(既定)であることを確認してください。

手順4: Actionsで動作確認する

  1. Actions から ingest を手動実行する 2.成功して差分があれば要約付きコミットが入り、Pagesデプロイが続く 3.キー未設定でもingestは失敗しない(要約だけ原文ベース)

ログに gemini: の認証エラーが無いこと(キー有り時)、またはキー無しでも取得が残ることを確認してください。

手順5: (任意)ローカルで試す

# Windows PowerShell の例
$env:GEMINI_API_KEY = "ここにキー"
npm run ingest

.env に書いても現状のingestは自動では読み込みません。ローカル用の値はコミットしないでください。

環境変数経由で動かし、値をリポに入れてないことを確認してください。

うまくいかないとき

症状見ること
要約が英語/原文のままログの gemini: エラー。Nameが GEMINI_API_KEY か
短い待機のあと成功する429瞬間制限。追加作業は不要なことが多い
日次/quota系の429が続く回路開放。太平洋時間の日付変更後を待つ
日付が変わってもすぐ429古い未翻訳の連打、またはpendingの再呼び出し。年齢制限とpendingスキップを確認
キーを再表示できない破棄して新規発行しSecretを更新
Actionsは緑だが要約が変わらない新規エントリ無し、または「(要約作成中)」待ちなら正常

未要約の手直し完了判定は 情報メモの要約を手で埋めたら再一覧せよ です。

作業前にAIへ渡す入力

次は、読者が AIへのプロンプト(またはrules)に出す指示のサジェストです。そのままコピーして使えます。長い人間向け手順は書きません。

AI向け:永続ルール(rules / AGENTS.md)

GEMINI_API_KEY は手順解説型。Secrets/ローカル環境変数に置く。チャット・Git・スクショに鍵の値を出すな。
Vertex/PayGo の手順を AI Studio 無料キーにそのまま当てるな。
429 時は定時をエディタ/CLI の AI チャットに逃がすな。要約は1往復。polish は件数・年齢上限。既に「(要約作成中)」は定時で再呼び出しするな(手埋めか POLISH_RETRY_PENDING)。日次おおよそ20回を無制限 polish で食い尽くすな。

AI向け:この作業の開始時にチャットへ貼る文

Gemini キーと GitHub Secrets を手順解説で進める。鍵の値は表示・コミット・チャット転記するな。
前提→旧手順/Webナレッジとの手順差異→番号手順(各末尾に「〜ことを確認してください」)で案内せよ。429/枠では1往復・件数上限・AI チャットへの逃がし禁止を守れ。

人間向け

なし。上のAI向けサジェストをプロンプトに貼るだけでよい。

まとめ

参考リンク