14 docs changed in 3 folders this week
5 new and 9 edited files across Product, Design and Customer research. The pricing proposal moved most: 4 people, 31 edits, and a new section on annual discounts.
Every Friday: the docs created or edited this week in the Drive folders you choose, who changed them, and one line on the larger edits.
What lands on your board
5 new and 9 edited files across Product, Design and Customer research. The pricing proposal moved most: 4 people, 31 edits, and a new section on annual discounts.
Shared folders change all week, and the only way to keep up is to open "Recent" and guess which edits matter. Product leads and founders lose track of the proposal that grew a new section or the research notes someone added on Tuesday.
Every Friday the agent lists what was created or edited in the folders you name, who did it and how much, and writes one line on what changed in the documents that moved most. You read the week's paperwork in two minutes and open only the docs that need you.
Call files.list with q: "'<folderId>' in parents and modifiedTime > '2026-10-10T00:00:00Z' and trashed = false", fields: "files(id,name,mimeType,createdTime,modifiedTime,lastModifyingUser(displayName),webViewLink)", and supportsAllDrives=true with includeItemsFromAllDrives=true for shared drives. Repeat for subfolders.
Call the Drive Activity API activity:query with ancestorName: "items/<folderId>" and filter: "time >= \"2026-10-10T00:00:00Z\" AND detail.action_detail_case:(CREATE EDIT RENAME MOVE)". Count edits per file and per person; actors come back as people/<id>, which the People API turns into names.
For the Google Docs with the most edits, export the text with files.export (mimeType: text/plain) and compare it with the copy saved last Friday in a local folder: sections added, removed or rewritten. A new doc gets one line from its headings.
Group by folder: new files first, then edited files by number of edits, each with who changed it and the one-line summary, linked by webViewLink. Save this week's text exports for next Friday.
With BRIEFKIN_TOKEN set, the agent sends the result as one card that updates in place every run. Without it, you get the report in the chat.
Pick your agent, where the data comes from and how to schedule it; the commands below follow.
One command. It puts the SKILL.md in ~/.claude/skills and in ~/.agents/skills, which Codex, Cursor, Gemini CLI, Copilot CLI and OpenCode read too.
shellcurl -fsSL https://briefkin.dev/skills/google-drive-weekly-changes-digest/install | shAsk Claude Code:
promptRun the google-drive-weekly-changes-digest skillOr paste the prompt instead of installing:
promptUsing the Google Drive API, list the files created or modified in the last 7 days in these folders (and their subfolders): <folder IDs>. For each give the name, folder, whether it is new, who last modified it and a link. If you can use the Drive Activity API, count edits per file and per person. For the 3 Google Docs edited the most, export their text and tell me in one line each what changed, compared with any copy you saved last week. Group the result by folder.Fridays at 16:00, from cron on any machine where Claude Code is signed in:
crontab0 16 * * 5 claude -p "Run the google-drive-weekly-changes-digest skill"Add it with crontab -e. A laptop asleep at that time runs it when it wakes if you use launchd or Task Scheduler instead; GitHub Actions works for the API route.
Connect Briefkin once with curl -fsSL https://briefkin.dev/install | sh and every run lands on your board as a report card. How setup works
SKILL.md---
name: google-drive-weekly-changes-digest
description: "Every Friday: the docs created or edited this week in the Drive folders you choose, who changed them, and one line on the larger edits. Use when the user asks for this, or when it runs on a schedule."
---
# Google Drive weekly changes digest
Every Friday: the docs created or edited this week in the Drive folders you choose, who changed them, and one line on the larger edits.
Shared folders change all week, and the only way to keep up is to open "Recent" and guess which edits matter. Product leads and founders lose track of the proposal that grew a new section or the research notes someone added on Tuesday.
Every Friday the agent lists what was created or edited in the folders you name, who did it and how much, and writes one line on what changed in the documents that moved most. You read the week's paperwork in two minutes and open only the docs that need you.
## Two ways to get the data
Use the API or MCP route when you have an MCP server, a CLI or an API token for the app. Otherwise, if you can drive a browser the user is signed in to (Claude in Chrome, a Playwright or Chrome DevTools MCP server), use the browser route. Say which one you used.
## Route A: API or MCP server
### What you need
- Read access to the folders, through the Claude Google Drive connector or a Google Cloud OAuth client with the `drive.readonly` and `drive.activity.readonly` scopes.
- The folder IDs to watch (the last part of each folder's URL).
If something is missing, say what and stop; do not invent numbers.
### Steps
1. **List changed files** (Google Drive): Call `files.list` with `q: "'<folderId>' in parents and modifiedTime > '2026-10-10T00:00:00Z' and trashed = false"`, `fields: "files(id,name,mimeType,createdTime,modifiedTime,lastModifyingUser(displayName),webViewLink)"`, and `supportsAllDrives=true` with `includeItemsFromAllDrives=true` for shared drives. Repeat for subfolders.
2. **See who did what** (Google Drive): Call the Drive Activity API `activity:query` with `ancestorName: "items/<folderId>"` and `filter: "time >= \"2026-10-10T00:00:00Z\" AND detail.action_detail_case:(CREATE EDIT RENAME MOVE)"`. Count edits per file and per person; actors come back as `people/<id>`, which the People API turns into names.
3. **Describe the larger edits** (Google Drive): For the Google Docs with the most edits, export the text with `files.export` (`mimeType: text/plain`) and compare it with the copy saved last Friday in a local folder: sections added, removed or rewritten. A new doc gets one line from its headings.
4. **Write the digest**: Group by folder: new files first, then edited files by number of edits, each with who changed it and the one-line summary, linked by `webViewLink`. Save this week's text exports for next Friday.
## Route B: the browser
### What you need
- Signed in to Google with an account that has at least Viewer access to each folder; shared drives need the account to be a member.
If something is missing, say what and stop; do not invent numbers.
### Steps
Start at https://drive.google.com/drive/recent. The user is signed in already; never type passwords or codes, and ask if a sign-in page appears.
1. **Open each folder**: Open `https://drive.google.com`, go to **My Drive** or **Shared drives**, and open the first folder you watch. Switch to list view and sort by **Last modified**; everything modified since last Friday is at the top. Repeat for subfolders.
2. **Read the activity panel**: Click the **View details** icon (the circled i) with the folder selected and open the **Activity** tab. It lists who created, edited, renamed or moved each file and when; count edits per file and per person for the last 7 days.
3. **Compare the busiest docs**: For the three Google Docs with the most edits, open **File > Version history > See version history**, select the last version from before the week, and read what the current text adds or removes. For a new doc, read its headings.
4. **Write the digest**: Group by folder: new files first, then edited files by number of edits, each with who changed it and one line on what changed, with the file link.
Note: The Activity panel is a scrolling feed, not a table, so a folder with hundreds of changes takes a long time to read; the API route is better past that. Version history only exists for Google Docs, Sheets and Slides, not for uploaded files.
## The report
- **Files changed** this week, new and edited, per folder.
- **The list**: file, folder, what happened (new, edited N times, renamed, moved) and who.
- **One line per larger edit** on what changed in the document.
- **Most active people** in the folders this week.
## Post it to Briefkin
When `BRIEFKIN_TOKEN` is set, or `~/.config/briefkin/env` exists (the installer from https://briefkin.dev/docs writes it), also send the result to the user's Briefkin board as one card. Keep the `item_key` the same on every run so the card updates in place, use a new `event_id` per run, and put today's real numbers in place of the example ones. If the request fails, say so once and carry on.
```bash
[ -n "${BRIEFKIN_TOKEN:-}" ] || . ~/.config/briefkin/env
curl -sS -X POST "${BRIEFKIN_URL:-https://briefkin.dev}/v1/events" \
-H "authorization: Bearer $BRIEFKIN_TOKEN" \
-H "content-type: application/json" \
-d @- <<'JSON'
{
"v": 1,
"event_id": "google-drive-weekly-changes-digest/<date of this run, e.g. 2026-10-16>",
"item_key": "google-drive-weekly-changes-digest",
"project": "Acme",
"source": "Google Drive weekly changes digest skill",
"kind": "update",
"title": "14 docs changed in 3 folders this week",
"summary": "**5 new** and **9 edited** files across Product, Design and Customer research. The pricing proposal moved most: 4 people, 31 edits, and a new section on annual discounts.",
"widget": [
{
"type": "Bars",
"props": {
"unit": "files",
"items": [
{
"label": "Product",
"value": 6
},
{
"label": "Customer research",
"value": 5
},
{
"label": "Design",
"value": 3
}
]
}
},
{
"type": "Table",
"props": {
"columns": [
"File",
"Folder",
"Change",
"By"
],
"align": [
"left",
"left",
"left",
"left"
],
"rows": [
[
"Pricing proposal 2027",
"Product",
"Edited 31 times: annual discounts section added",
"Dana, Sam, Priya, Theo"
],
[
"Q4 roadmap",
"Product",
"Edited 12 times: two items moved to Q1",
"Dana"
],
[
"Interview notes: Contoso",
"Customer research",
"New",
"Lena"
],
[
"Interview notes: Fabrikam",
"Customer research",
"New",
"Lena"
],
[
"Onboarding flow v3",
"Design",
"Edited 9 times: new empty states",
"Marco"
],
[
"Churn survey results",
"Customer research",
"New",
"Priya"
]
]
}
}
]
}
JSON
```
Widgets come from the Briefkin catalog (https://briefkin.dev/v1/catalog). Without a token, just give the user the report.
## Run it on a schedule
Suggested: Fridays at 16:00 (`0 16 * * 5`). From cron, with the agent signed in on that machine:
```bash
0 16 * * 5 claude -p "Run the google-drive-weekly-changes-digest skill"
# Codex: codex exec, Gemini CLI: gemini -p, Copilot CLI: copilot -p, OpenCode: opencode run
```
Or use the agent's own scheduler (Claude Code routines, Codex automations, Claude or ChatGPT scheduled tasks): https://briefkin.dev/skills/google-drive-weekly-changes-digest#schedule
Source: https://briefkin.dev/skills/google-drive-weekly-changes-digest
Read access to the folders, through the Claude Google Drive connector or a Google Cloud OAuth client with the drive.readonly and drive.activity.readonly scopes.
The folder IDs to watch (the last part of each folder's URL).
https://drivemcp.googleapis.com/mcp/v1, in developer preview with the other Google Workspace MCP servers. Enable the Drive API and the Drive MCP API in a Google Cloud project and create an OAuth client for an AI agent. Its tools include search_files, list_recent_files, get_file_metadata and read_file_content, plus create_file and copy_file, and it requests drive.readonly and drive.file (setup).drive.metadata.readonly (plus drive.activity.readonly for the activity report) and store the refresh token in GOOGLE_DRIVE_REFRESH_TOKEN. For a team folder, share it with a service account and set GOOGLE_APPLICATION_CREDENTIALS and DRIVE_FOLDER_ID.drive.metadata.readonly sees names, dates, owners and sharing but not what is inside a file; add drive.readonly only when the report has to read content.
The connector can find files changed since a date and read them, which covers the list and the summaries. The edit counts per person come from the Drive Activity API, which needs its own OAuth scope; without it the digest shows the last person to modify each file.
Drive does not hand out a diff of a Google Doc, so the skill keeps last Friday's plain-text export of each doc it reports on and compares the two. On the first run there is nothing to compare with, so it summarizes the document instead.
No. The skill runs with your own agent and gives you the report in the chat. With a Briefkin token set, each run also posts it to your board as a report card, so you can glance at it instead of asking again.
Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot CLI, OpenCode, Windsurf and Amp all read SKILL.md files. The install command puts it in ~/.claude/skills and ~/.agents/skills, where they look. ChatGPT, the Claude app and Grok take the prompt instead. Pick your agent under "Install and run it" and the commands change to match.
Yes. Switch the data source to "Your browser" and the steps change to the Google Drive pages themselves: the agent opens drive.google.com/drive/recent in a browser you are signed in to and reads the numbers off the page. Claude Code, Codex, Cursor, Claude app and ChatGPT can drive a browser out of the box; Gemini CLI, Copilot CLI and OpenCode need a Playwright or Chrome DevTools MCP server first. It is slower than the API and needs you signed in, so it suits a report you run by hand or from a scheduler on your own computer.
Skills are free to use with any agent. Briefkin is where their results land: one board for every report, number and question your agents send, with a ping when something needs you.
Free during the open beta. No card.