关于 google-sheets
面向 Google Workspace 用户的 Google Sheets 命令行技能,使用独立 OAuth 提供完整读写操作。可将表格内容输出为文本、CSV 或 JSON。
主要功能
- 01OAuth 登录与令牌刷新
- 02以文本、CSV 或 JSON 读取表格
- 03更新单元格范围
- 04追加行
- 05使用 RAW 或用户输入值
适用场景
- 01按所需格式查看表格数据
- 02修改单元格范围中的值
- 03在现有数据后添加行
MCP 相关
此技能使用独立 OAuth,不需要 MCP 服务。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sanjay3290/ ai-skills --skill google-sheets安装后在 Claude Code 中输入/google-sheets确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdrequirements.txtscripts/auth.pyrequirements.txtsheets.py详细介绍
Google Sheets
轻量级 Google Sheets 集成,采用独立的 OAuth 身份验证。无需 MCP 服务。支持完整的读写权限。
需要 Google Workspace 账号。 不支持个人 Gmail 账号。
首次设置
通过 Google 进行身份验证(将打开浏览器):
python scripts/auth.py login
检查身份验证状态:
python scripts/auth.py status
需要时退出登录:
python scripts/auth.py logout
读取命令
所有操作均通过 scripts/sheets.py 完成。若尚未登录,首次使用时会自动进行身份验证。
# Get spreadsheet content as plain text (default)
python scripts/sheets.py get-text SPREADSHEET_ID
# Get spreadsheet content as CSV
python scripts/sheets.py get-text SPREADSHEET_ID --format csv
# Get spreadsheet content as JSON
python scripts/sheets.py get-text SPREADSHEET_ID --format json
# Get values from a specific range (A1 notation)
python scripts/sheets.py get-range SPREADSHEET_ID "Sheet1!A1:D10"
python scripts/sheets.py get-range SPREADSHEET_ID "A1:C5"
# Find spreadsheets by search query
python scripts/sheets.py find "budget 2024"
python scripts/sheets.py find "sales report" --limit 5
# Get spreadsheet metadata (sheets, dimensions, etc.)
python scripts/sheets.py get-metadata SPREADSHEET_ID
写入命令
# Update a range of cells with values (JSON 2D array)
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B2" '[["Hello","World"],["Foo","Bar"]]'
# Update with RAW input (no formula parsing, treats everything as literal text)
python scripts/sheets.py update-range SPREADSHEET_ID "Sheet1!A1:B1" '[["=SUM(A1:A5)","text"]]' --raw
# Append rows after the last data row
python scripts/sheets.py append-rows SPREADSHEET_ID "Sheet1!A:Z" '[["New Row Col A","New Row Col B"]]'
# Clear values from a range (keeps formatting)
python scripts/sheets.py clear-range SPREADSHEET_ID "Sheet1!A1:B10"
# Batch update (advanced - for formatting, merging, etc.)
python scripts/sheets.py batch-update SPREADSHEET_ID '[{"updateCells":{"range":{"sheetId":0},"fields":"userEnteredValue"}}]'
电子表格 ID
你可以使用以下任一形式:
- 电子表格 ID:
1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms - 完整 URL:
https://docs.google.com/spreadsheets/d/1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms/edit
脚本会自动从 URL 中提取 ID。
输出格式
文本(默认)
使用竖线分隔的易读格式:
Spreadsheet Title: Sales Data
Sheet Name: Q1
Name | Revenue | Units
Product A | 10000 | 50
Product B | 15000 | 75
CSV
适合进一步处理的标准 CSV 格式:
Name,Revenue,Units
Product A,10000,50
Product B,15000,75
JSON
结构化数据格式:
{
"Q1": [
["Name", "Revenue", "Units"],
["Product A", "10000", "50"]
]
}
A1 表示法示例
Sheet1!A1:B10- Sheet1 中从 A1 到 B10 的范围Sheet1!A:A- Sheet1 中的 A 列Sheet1!1:1- Sheet1 中的第 1 行A1:C5- 第一个工作表中的范围
值输入选项
- USER_ENTERED(默认):值会按用户输入的内容进行解析。数字、日期和公式都会被识别。
- RAW(
--raw标志):值会按提供的内容原样存储。不解析公式或数字格式。
令牌管理
令牌使用系统密钥环安全存储:
- macOS:钥匙串
- Windows:Windows 凭据管理器
- Linux:Secret Service API(GNOME Keyring、KDE Wallet 等)
服务名称:google-sheets-skill-oauth
令牌过期后,会通过 Google 的云函数自动刷新。
评论
支持 Markdown