gws workflow +weekly-digest 实战指南:用 Google Workspace CLI 一键生成周例会与未读邮件摘要
gws workflow weekly-digest 实战指南用 Google Workspace CLI 一键生成周例会与未读邮件摘要【免费下载链接】cliGoogle Workspace CLI — one command-line tool for Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin, and more. Dynamically built from Google Discovery Service. Includes AI agent skills.项目地址: https://gitcode.com/gh_mirrors/cli413/cligws workflow weekly-digest是 Google Workspace CLIgws内置的高层生产力助手命令它一次性拉取未来 7 天的主日历会议安排与 Gmail 未读邮件总数输出结构化摘要全程只读、绝不修改任何数据。本文以 skills/gws-workflow-weekly-digest/SKILL.md 为骨架结合仓库源码深入讲解该命令的用法、输出格式、底层实现原理及其在 AI Agent 工作流中的典型应用场景读完即可在自己的终端或 Agent 技能体系中直接使用。一、weekly-digest 在 gws 中的定位gws是一个由 Google Discovery Service 动态构建的单体命令行工具覆盖 Drive、Gmail、Calendar、Sheets、Docs、Chat 等 Google Workspace 服务。在标准 API 调用之外它还提供了一批前缀的 Helper 命令把多个服务的高频操作编排成「一条命令解决一个场景」的快捷入口。weekly-digest属于 workflow 命令组跨服务生产力工作流下的五个 Helper 之一其余四个分别是standup-report、meeting-prep、email-to-task和file-announce完整清单见 skills/gws-workflow/SKILL.md 的 Helper Commands 表格。它的职责一句话即可概括本周会议安排 未读邮件数量 每周总结Weekly summary。该命令的注册与分发逻辑位于源码 crates/google-workspace-cli/src/helpers/workflows.rsinject_commands()L30-L41负责把weekly-digest等子命令注入gws workflow的命令树handle()L43-L72在匹配到weekly-digest时转调handle_weekly_digest()L535-L618后者是真正的业务实现同文件测试模块中的test_build_weekly_digest_cmd()L755-L758断言命令名注册正确。二、前置条件安装与认证运行该命令前需要满足两个前提详见 skills/gws-shared/SKILL.md安装gws二进制并确保其在$PATH中。仓库 README.md 提供了多种安装途径从 GitHub Releases 下载预编译二进制解压后放入$PATHnpm install -g googleworkspace/cli需 Node.js 18cargo install --git https://github.com/googleworkspace/cli --lockedmacOS/Linux 亦可brew install googleworkspace-cli。完成 OAuth 认证两种方式任选# 浏览器交互式 OAuth gws auth login # 或使用服务账号 export GOOGLE_APPLICATION_CREDENTIALS/path/to/key.jsongws workflow weekly-digest需要同时访问 Calendar 与 Gmail 数据认证时会申请calendar.readonly与gmail.readonly两个只读 scope见 workflows.rs不会请求任何写权限。三、命令用法与 Flags基本用法gws workflow weekly-digest这是唯一必须记住的调用形式命令无必填参数直接执行即可输出从当前时刻起 7 天的会议列表与未读邮件统计。Flags 一览Flag是否必填默认值说明--format否json输出格式json默认、table、yaml、csv--format是全局标志global(true)在 build_weekly_digest_cmd() 中声明。注意当前命令不支持--calendar之类的参数会议固定读取主日历calendars/primary如需指定其他日历可参考同文件的meeting-prep其--calendar参数默认值为primary。示例# 默认 JSON 输出 gws workflow weekly-digest # 表格输出便于终端直接阅读 gws workflow weekly-digest --format table四、输出结构详解命令的结果由format_and_print()workflows.rs经 crates/google-workspace-cli/src/formatter.rs 统一格式化后输出。核心 JSON 结构包含四个字段{ meetings: [ { summary: 产品周会, start: 2026-09-21T10:00:0008:00 } ], meetingCount: 5, unreadEmails: 23, periodStart: 2026-09-18T07:32:0308:00, periodEnd: 2026-09-25T07:32:0308:00 }字段类型含义meetings数组未来 7 天主日历事件每项含summary标题缺省为(No title)与startRFC3339 起始时间兼容全天事件的date字段meetingCount整数会议总数unreadEmails整数Gmail 未读邮件数量Gmail API 的估算值resultSizeEstimateperiodStart/periodEnd字符串统计时间窗起止RFC3339--format table会将该结构渲染为对齐文本表格yaml输出 YAML 文档csv输出逗号分隔值方便导入表格软件或后续脚本处理。formatter.rs中OutputFormat::parse()L42-L50接受json/table/yaml含yml/csv四种取值未知值回退为 JSON。五、底层实现原理一次调用背后的两条 API 链路handle_weekly_digest()workflows.rs的实现非常直观可以拆解为四个步骤1. 解析账户时区L544-L549通过timezone::resolve_account_timezone()获取账户所在时区以「当前时刻」为time_min、「当前时刻 7 天」为time_max构造统计窗口。这意味着摘要覆盖的不是自然周周一到周日而是从你执行命令的那一刻起接下来的 168 小时适合「滚动周报」类场景。2. 拉取主日历事件L551-L586调用 Google Calendar v3 APIGET https://www.googleapis.com/calendar/v3/calendars/primary/events ?timeMinnowtimeMaxnow7d singleEventstrueorderBystartTimemaxResults50关键参数singleEventstrue把重复性事件展开为单个实例避免拿到重复规则orderBystartTime按开始时间排序输出即时间线顺序maxResults50单次最多取 50 条足以覆盖普通一周的会议量。 每条事件只保留summary与start两个字段start优先取dateTime全天事件回退到date保证输出轻量。3. 统计 Gmail 未读邮件L588-L606调用 Gmail v1 API 的列表接口查询条件为is:unreadGET https://gmail.googleapis.com/gmail/v1/users/me/messages?qis:unreadmaxResults1这里只请求maxResults1真正的计数取自响应的resultSizeEstimate字段Gmail API 返回的匹配总数估算值因此几乎零开销——不需要逐封拉取邮件元数据。4. 容错与输出L565-L571、L596-L602、L608-L617两处 API 调用都做了防御性处理失败时向 stderr 打印Warning: Failed to fetch ...内容经sanitize_for_terminal清洗并以空对象兜底继续执行保证即使 Calendar 或 Gmail 某一侧异常命令也不会崩溃另一侧数据仍能正常输出。这也解释了为什么文档明确标注该命令是只读且安全的。与 gmail triage 的对比weekly-digest只取未读数量而 crates/google-workspace-cli/src/helpers/gmail/triage.rs 实现的gws gmail triage会逐封拉取未读邮件的 From/Subject/Date 明细默认最多 20 封并发度 10。两者使用相同的gmail.readonlyscope 与qis:unread查询区别仅在于「要数量」还是「要明细」可以按需组合先weekly-digest看总量再triage深入处理。六、在 AI Agent 与 Persona 中的组合应用weekly-digest是为 Agent 场景设计的技能skill其 Frontmatter 声明了requires.bins: [gws]与cliHelp: gws workflow weekly-digest --help并强调前置阅读 skills/gws-shared/SKILL.md认证、全局标志与安全规则若缺失可运行gws generate-skills重新生成全部技能索引见 docs/skills.md。在 crates/google-workspace-cli/registry/personas.toml 中weekly-digest被多个角色技能包引用例如管理助理exec-assistantworkflows [standup-report, weekly-digest]用于每周开始的日程与收件箱快照销售运营sales-ops提示语建议「Get a weekly sales pipeline summary withgws workflow weekly-digest」项目经理、团队负责人等角色同样把它作为周度例行任务的第一环。典型 Agent 使用模式Agent 收到指令「给我一份本周摘要」→ 执行 gws workflow weekly-digest → 解析 JSON 输出中的 meetingCount / unreadEmails / meetings → 结合其他命令如 gws calendar agenda、gws gmail triage生成自然语言汇报由于命令只读且输出为结构化 JSONAgent 可以放心地把它的 stdout 交给jq或 LLM 解析而无需担心副作用。七、注意事项与最佳实践只读安全weekly-digest不修改任何数据可放心在定时脚本、CI 或 Agent 上下文中反复调用。若需验证其他写操作请遵循 skills/gws-shared/SKILL.md 的安全规则写命令前必须与用户确认、优先使用--dry-run。时区语义统计窗口基于账户时区的当前时刻向后滚动 7 天不是固定自然周。需要「本周一至周日」口径时建议在周初执行。未读数为估算值unreadEmails来自 Gmail API 的resultSizeEstimate在超大邮箱中可能与精确值有少量偏差属于 API 语义并非缺陷。窗口容量会议上限为 50 条maxResults50对一周会议量完全够用若日历事件极多可自行用gws calendar系列命令补充查询。管道友好默认 JSON 输出可直接| jq .meetingCount, .unreadEmails如需表格请显式传--format table避免把 JSON 与人类可读文本混在 stdout 中。八、延伸阅读skills/gws-workflow-weekly-digest/SKILL.md — 本文对应技能文档命令、Flags、示例与提示skills/gws-workflow/SKILL.md — workflow 命令组总览与其他四个 Helperskills/gws-shared/SKILL.md — 认证、全局标志、安全规则与 Shell 使用技巧crates/google-workspace-cli/src/helpers/workflows.rs —weekly-digest及全部 workflow Helper 的源码实现与单元测试crates/google-workspace-cli/src/formatter.rs — json/table/yaml/csv 格式化实现crates/google-workspace-cli/src/helpers/gmail/triage.rs — 未读邮件明细查询实现crates/google-workspace-cli/registry/personas.toml —weekly-digest在各类 Agent 角色技能包中的引用【免费下载链接】cliGoogle Workspace CLI — one command-line tool for Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin, and more. Dynamically built from Google Discovery Service. Includes AI agent skills.项目地址: https://gitcode.com/gh_mirrors/cli413/cli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Windows 上 npx 报错禁止运行脚本?PowerShell 执行策略原理与修复指南

Windows 上 npx 报错禁止运行脚本?PowerShell 执行策略原理与修复指南

1. 这个报错到底卡在哪一步如果你在 Windows 上敲下npx create-react-app my-app,或者只是想跑一下npm -v验证 Node.js 装好没有,结果终端甩回来一句:npx : 无法加载文件 C:\Program Files\nodejs\npx.ps1,因为在此系统上禁止运行…

2026/9/19 21:00:25 阅读更多 →
2026年AI技术趋势:模块化架构与开发工具革新

2026年AI技术趋势:模块化架构与开发工具革新

1. 2026年3月AI领域技术格局观察2026年春季的AI竞赛比预期来得更激烈。就在上周,Anthropic突然宣布其Claude 4.5模型在AGI Benchmark排行榜上以87.3分超越GPT-5的85.6分,这是近两年来首次有模型在综合评估中超越OpenAI的旗舰产品。与此同时,微…

2026/9/19 20:59:24 阅读更多 →
xxxwww在电商爬虫中的实战应用:构建稳定采集管道

xxxwww在电商爬虫中的实战应用:构建稳定采集管道

做电商爬虫这行,时间久了你会发现,真正决定一个采集项目能不能稳定跑下去的,往往不是解析规则写得有多巧妙,而是最底层的请求环节靠不靠谱。我自己用 xxxwww 这个轻量请求模块搭过好几套电商采集链路,从商品列表到详情…

2026/9/19 20:59:24 阅读更多 →

最新新闻

SpringBoot三层架构实战:从零实现用户管理系统

SpringBoot三层架构实战:从零实现用户管理系统

1. 项目概述:SpringBoot三层架构实战刚入行Java开发时,总听前辈们念叨"三层架构",但真正自己动手实现一个完整的用户管理系统才发现,理论到实践之间藏着不少门道。这次就用SpringBoot从零实现带三层架构的用户增删改查&…

2026/9/21 2:01:05 阅读更多 →
AI基础知识核心框架:从机器学习到大模型的应用与学习路径

AI基础知识核心框架:从机器学习到大模型的应用与学习路径

简介:这是一份面向人工智能初学者的入门级PPT讲义,共61页,系统梳理AI的核心概念与基础知识。内容从人工智能的定义、关键点、智能维度出发,清晰介绍符号主义、联结主义、行为主义等主要学派,并依据智能水平区分弱人工智…

2026/9/21 2:01:05 阅读更多 →
二进制与十进制互转全解析:整数、小数、负数及精度处理

二进制与十进制互转全解析:整数、小数、负数及精度处理

1. 为什么二进制和十进制互转值得单独拿出来讲很多人第一次接触进制转换,是在计算机基础课上。老师写一个除2取余的竖式,再写一个按权展开的多项式,然后说“记住就行”。结果到了实际用的时候,比如看内存地址、分析协议报文、处理…

2026/9/21 2:01:05 阅读更多 →
Si3N4与SiNx有什么区别?芯片制造中两种氮化硅的工艺差异详解

Si3N4与SiNx有什么区别?芯片制造中两种氮化硅的工艺差异详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 2:01:05 阅读更多 →
大型汽车集团数智化战略规划:145页PPT框架拆解与实操落地

大型汽车集团数智化战略规划:145页PPT框架拆解与实操落地

简介:某大型汽车集团数字化转型数智化战略规划设计方案PPT,聚焦“互联网1354”顶层战略框架,面向企业数字化战略规划人员、咨询顾问、汽车行业管理者及对转型顶层设计感兴趣的从业者。压缩包内含单个145页PPT文件,约26.35MB&#…

2026/9/21 2:01:05 阅读更多 →
美团数据分析手册拆解:指标体系、SQL与归因实战

美团数据分析手册拆解:指标体系、SQL与归因实战

简介:这份《美团数据分析手册》是一份面向数据分析初级与进阶学习者的业务实战指南,聚焦外卖、到店、酒旅、出行、金融、闪购等核心业务线,系统讲解如何构建指标体系、应用数据分析方法论并支撑业务决策。资源为单个PDF文件,仅1.1…

2026/9/21 2:00:05 阅读更多 →

日新闻

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程 【免费下载链接】agentic-awesome-skills AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and …

2026/9/21 0:00:01 阅读更多 →
gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析 【免费下载链接】gin-vue-admin 🚀ViteVue3Gin拥有AI辅助的基础开发平台,企业级业务AI开发解决方案,内置mcp辅助服务,内置skills管理,…

2026/9/21 0:00:01 阅读更多 →
Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

桌面应用AI 应用插件系统 【免费下载链接】Wox A cross-platform launcher that simply works 项目地址: https://gitcode.com/gh_mirrors/wo/Wox 点击查看 免费下载 全功能插件(Full-featured Plugin)是 Wox 三类插件实现方式中能力最完整的…

2026/9/21 0:00:01 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/20 0:00:46 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →