AGENT SKILL 一日工作坊 · 階梯 7

OAuth + 寫回 Google Sheet,讓 AI 動你的雲端

申請一把 Google 金鑰、用 OAuth 同意畫面授權,讓你的 skill 把結果直接寫進自己的 Google Sheet。不必寫程式,只要照步驟做。

⏱ 約 45 分鐘 10 頁 OAuth · 非 Service Account
今天的里程碑:從「AI 給我文字」升級成「AI 直接幫我填 Google Sheet」。寫進去的就是你自己的 Sheet,不必分享給機器帳號,也不需要 IT 幫忙。

這段你要做到的事

申請一把金鑰,讓 skill 寫進你的 Sheet

學習目標

用 OAuth 同意畫面授權自己的 Google 帳號,讓 skill 取得寫入 Google Sheet 的權限。整個流程你親手走一遍,之後可以複製到任何專案。

你會帶走

一個能把 SEO 關鍵字研究結果自動寫進 Google Sheet 的 skill。同事開試算表就能看,不需要你口頭轉述。

里程碑感:這是今天第一次「AI 直接寫進我的雲端」。從這一刻起,skill 產的東西不再只存在對話視窗裡,而是進了你的工作系統。

授權方式對比

我們走 OAuth,不走 Service Account

✦ OAuth 同意畫面

我們今天走這條

你自己的 Google 帳號授權。不必另外建機器帳號、不必把 Sheet 分享給一串 email。第一次點「允許」,之後自動記住。

Service Account(不走這條)

需要另外建一個機器帳號、下載 JSON 金鑰、然後把 Sheet 的編輯權限分享給機器 email。步驟多一倍,非工程背景的人容易卡死。

OAuth 的核心優勢:你授權自己的帳號,所以寫進去的就是你自己的 Sheet。不需要分享、不需要 IT、不需要記機器 email。自己的帳號,你說了算。

講師大螢幕一步一步帶

OAuth 同意畫面,五步走完

1
建立專案 console.cloud.google.com → 新增專案(課前已建好的人跳過)
2
啟用 API APIs & Services → Library → 搜尋並啟用 Google Sheets API。技術端可加:GSC API、GA Data API
3
設定同意畫面 OAuth consent screen → External → 填 app 名稱 → 加 Scopes(Sheets)→ ⚠ Test users 把自己的 Google 帳號加進去
4
建立金鑰 Credentials → Create Credentials → OAuth client ID → Application type:Desktop app → 下載 client_secret.json
5
第一次授權 跑 skill → 瀏覽器自動跳出同意畫面 → 用你的 Google 帳號點「允許」→ token 存在本機,之後不需再授權

非工程背景必卡的點

做之前,先把這三個記起來

⚠ 雷 1:忘加 Test users

OAuth 同意畫面的 Test users 沒把自己的帳號加進去,第一次授權就會被 Google 擋。畫面顯示「你不是測試使用者」。補救:回去補加就好。

⚠ 雷 2:「未驗證應用程式」警告

同意畫面跳出「Google 尚未驗證此應用程式」。這是正常的,因為這是你自己的測試 app,Google 還沒幫你審核。點「進階 → 繼續前往」即可。

⚠ 雷 3:client_secret.json 的位置

這個檔案是機密,等同你的 Google 密碼。下載後放進專案的 secrets/ 資料夾。請 Claude 把 secrets/ 加進 .gitignore。別放桌面、別貼進聊天視窗。

記住這句話:遇到 403 或「授權被擋」,九成是忘了在同意畫面把自己加進 Test users,或那支 API 還沒在 Library 啟用。先查這兩個,再問我。

你對 Claude 說這句話

先讓 AI 寫三個字,確認授權成功

# 貼進 Claude Code 的對話框,把 Sheet 網址換成你自己的 我有一個 Google OAuth client, client_secret.json 放在專案的 secrets/ 資料夾。 我有一個自己的 Google Sheet(網址貼上)。 幫我寫一個腳本,用 OAuth 授權我的 Google 帳號, 把 A、B、C 三個字寫進這個 Sheet 的第一欄# 第一次會跳瀏覽器要我授權,之後就不用再授權了。
預期結果:Google Sheet 第一欄出現 A、B、C。這是你今天最重要的里程碑。第一次 AI 寫進了你的雲端。

把前面的成果整合進來

把關鍵字研究結果,直接整理進 Sheet

# 把這段貼給 Claude Code 把前面 keyword-cleaner 跟 serp-checker 的結果, 連同搜尋意圖摘要,整理成一張表, 寫進我的 Google Sheet「關鍵字研究」。 每一列是一個關鍵字,欄位有: - 關鍵字 - 意圖分類(資訊型 / 商業型 / 導覽型 / 交易型) - 前三名網址 - 搜尋意圖摘要
預期產出:一張雲端的關鍵字研究表,你傳 Sheet 連結給同事,他們馬上能看到。不需要你口頭轉述,不需要手動整理格式。

技術端可以多做這步

把 GSC / GA 數據,也拉進同一張 Sheet

第一步:開 API

在前面 OAuth 授權的 Library 步驟,同時啟用 Google Search Console APIGoogle Analytics Data API,Scopes 也一起加進去。

第二步:告訴 Claude

「幫我把這個關鍵字最近 28 天在 GSC 的點擊數、曝光數拉進關鍵字研究表,跟現有資料合併在同一列。」

最終效果:一張表同時有 AI 分析的意圖分類,也有 GSC 的真實點擊數與排名。研究數據 + 成效數據合一,再也不用在兩個地方切換。

GCP 卡住也沒關係

卡關有備援路線,不要硬卡在授權

備援 A
GCP 完全卡住,或公司組織禁建金鑰

改走 Apps Script 路線。打開你的 Google Sheet → 擴充功能 → Apps Script → 請 Claude 幫你寫程式貼進去。零 GCP、零金鑰。這也是組織擋 key 時的標準解法。

備援 B
更零門檻:先存本機 Excel

今天先讓 AI 把結果存成本機 Excel 檔案,課後再慢慢研究怎麼寫雲端。不要因為授權卡住就放棄整個 skill。

403 錯
遇到 403 授權被擋

先查兩個地方:① 同意畫面有沒有把自己加進 Test users?② 那支 API 有沒有在 Library 啟用?這兩個查完,九成的 403 都能解。

混合班分層

每個人的達標線,長得不一樣

行銷端

做到「把 A B C 寫進 Sheet」就算達標。理解整個授權流程的概念,知道 OAuth 是怎麼回事。至於技術細節,交給會的人來跑就好。

技術端

做完完整的關鍵字研究表寫入。可加開 GSC、GA API,試著把搜尋成效資料也拉進同一張表。目標是一張表涵蓋 AI 分析 + 真實搜尋數據。

OAuth 卡關

不要硬卡。全部退到 Apps Script 路線:Google Sheet → 擴充功能 → Apps Script → 請 Claude 寫。零 GCP 也能寫進 Sheet,概念一樣學到了。

關鍵原則:這段的核心是「AI 可以寫進我的雲端」這個概念,不是非要走某一條技術路線。用任何方法讓結果進 Sheet,你今天的目標就達到了。