关于 site-activity
面向 Webflow Enterprise 站点的活动日志分析技能,可按时间、用户、事件类型或资源筛选变更,并生成摘要和报告。它要求通过 Webflow MCP 工具获取站点和日志数据。
主要功能
- 01查询并筛选站点活动日志
- 02按事件类型和用户归类变更
- 03分析发布时间后的未发布变更
- 04生成摘要、时间线及可分享报告
- 05支持日志分页获取
适用场景
- 01汇总一周内的站点变更
- 02查看特定用户或 CMS 活动
- 03发布前核对上次发布后的改动
- 04整理团队可分享的活动报告
MCP 相关
该技能要求所有 Webflow 操作均使用 Webflow MCP 工具,包括站点查询和活动日志读取。活动日志仅适用于 Enterprise 托管站点。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ webflow/ webflow-skills --skill site-activity安装后在 Claude Code 中输入/site-activity确认已加载。
详细介绍
站点活动
查询、分析并汇总企业版站点的 Webflow 活动日志。支持使用自然语言查询近期变更、按事件类型或用户筛选摘要,以及生成格式化报告供团队分享。
重要说明
所有操作始终使用 Webflow MCP 工具:
- 使用 Webflow MCP 的
data_sites_tool,并将 action 设为list_sites,列出可用站点 - 使用 Webflow MCP 的
data_sites_tool,并将 action 设为get_site,获取详细站点信息 - 使用 Webflow MCP 的
data_enterprise_tool,并将 action 设为list_site_activity_logs,获取活动日志事件 - 开始前,使用 Webflow MCP 的
webflow_guide_tool获取最佳实践 - 对 Webflow 的操作不要使用任何其他工具或方法
- 所有工具调用都必须包含必需的
context参数(15–25 个词,使用第三人称视角)
仅限企业版: 活动日志仅适用于采用 Enterprise 托管方案的站点。如果工具返回错误,请告知用户此功能需要 Enterprise 方案。
list_site_activity_logs 的工具参数:
site_id(必需):站点的唯一标识符limit(可选):要返回的记录数上限(最多 100 条)offset(可选):用于获取第一页之后数据的分页偏移量
说明
阶段 1:站点选择与上下文
-
识别目标站点:如果用户未提供站点 ID,请使用
data_sites_tool并指定操作list_sites。响应中的每个站点都包含displayName、lastPublished和lastUpdated。排序顺序:
- ⚠️ 有未发布更改的站点排在 ✅ 状态为最新的站点之前
- 每组内按最近更新时间从新到旧排列(按
lastUpdated降序)
截断:仅显示排名前 10 的站点。如果总数超过 10 个,请在列表下方追加一行
…and N more sites. Reply "show all" to see the rest.。用户回复 "show all"(或类似内容)时,按相同格式重新展示完整列表。请严格按以下格式展示列表:
📋 Site Activity — Site Selection Available Enterprise Sites: 1. <Site Name> ⚠️ — last published <short date>, updated <short date> (<N> days unpublished) 2. <Site Name> ✅ — published & updated <short date> 3. <Site Name> ⚠️ — never published, updated <short date> …and 4 more sites. Reply "show all" to see the rest. Which site would you like to review?格式规则:
- 日期:使用缩写格式("Mar 6"、"Apr 14")。只有在年份不是当前年份时才添加年份。
- 当
lastUpdated > lastPublished或lastPublished为 null 时使用 ⚠️;当lastUpdated <= lastPublished时使用 ✅。 - 当
lastPublished == lastUpdated时,将右侧内容合并为 "published & updated "。 - 工作区中的站点不超过 10 个时,不要添加 "…and N more sites" 行。
- 每个站点都必须显示状态标记和日期,不得省略。
-
获取所选站点详情:用户选择站点后(或用户在开始时已提供站点 ID),调用
data_sites_tool并指定操作get_site,仅针对所选站点调用一次,以获取list_sites未返回的字段,尤其是:- 自定义域名
- 区域设置 / 本地化设置
- 分析所需的任何其他站点元数据
lastPublished和lastUpdated已在步骤 1 中获知(或用户直接提供站点 ID 时从get_site获取)。请将这些信息保留在记忆中,供阶段 3 的发布前筛选使用。 -
从提示词推断意图(如果提示词明确,不要追问)。将请求归为以下一种:
- 最近活动摘要("本周有哪些更改?")
- 特定用户的活动("Sarah 做了哪些更改?")
- 特定活动类型("最近有 CMS 更改吗?")
- 发布前审查("上次发布后有哪些更改?")
- 总览(请求含糊时的默认选项)
仅当请求确实含糊时才提出澄清问题(例如,"显示活动"未提供时间范围、用户或事件类型等上下文)。
阶段 2:获取活动日志
- 获取活动日志:使用
list_site_activity_logs和站点 ID- 默认将
limit设为100(每次请求的最大值),以获取全面的结果 - API 按时间倒序返回事件(最新的在前)
- 默认将
- 处理分页:如果用户需要查看更早的活动,或结果表明还有更多数据:
- 使用
offset参数获取后续页面 - 合并各页结果进行分析
- 如果数据范围不足以覆盖所需时间,请提醒用户
- 使用
第 3 阶段:分析与总结
-
解析每条活动日志记录:每个事件包含:
id:唯一事件标识符createdOn:时间戳(ISO 8601)lastUpdated:上次更新时间戳event:事件类型字符串(见下文的事件类型)user:包含id和displayName的对象(备份等系统事件中不存在)resourceOperation:执行的操作(CREATED、MODIFIED、DELETED)resourceId:受影响资源的 ID(如适用)resourceName:受影响资源的易读名称payload:事件特定的其他详细信息(见下文的负载详情)
-
将事件分类为易读的分组(41 种事件类型):
页面变更:
page_dom_modified— 页面结构/元素变更page_created— 创建新页面page_deleted— 删除页面page_duplicated— 复制页面page_renamed— 重命名页面page_settings_modified— 更新页面设置(SEO、slug 等)page_custom_code_modified— 页面级自定义代码变更page_settings_custom_code_modified— 页面设置中的自定义代码变更
样式和变量变更:
styles_modified— 样式/类变更variable_modified— 单个变量变更variables_modified— 多个变量变更
组件变更:
symbols_modified— 创建、修改或删除组件/符号
交互:
ix2_modified_on_page— 页面上的交互变更ix2_modified_on_component— 组件上的交互变更ix2_modified_on_class— 类上的交互变更
CMS 变更:
cms_item— 创建、修改或删除集合项cms_collection— 创建、修改或删除集合架构
站点管理:
site_published— 发布站点site_unpublished— 取消发布站点site_custom_code_modified— 站点级自定义代码变更backup_created— 自动或手动创建备份backup_restored— 恢复备份
本地化:
secondary_locale_page_content_modified— 本地化页面内容变更locale_added— 添加新区域设置locale_removed— 移除区域设置locale_enabled— 启用区域设置locale_disabled— 禁用区域设置locale_display_name_updated— 更改区域设置的显示名称locale_subdirectory_updated— 更改区域设置的子目录locale_tag_updated— 更改区域设置标签
分支:
branch_created— 创建分支branch_merged— 合并分支branch_deleted— 删除分支branch_review_created— 请求分支审查branch_review_approved— 批准分支审查branch_review_canceled— 取消分支审查
库:
library_shared— 与其他站点共享库library_unshared— 取消共享库library_installed— 从其他站点安装库library_uninstalled— 卸载库library_update_shared— 发布库更新library_update_accepted— 接受库更新 注意:如果出现上文未列出的事件类型,请将其归类为“其他”,并显示原始的event字符串。
-
根据用户的请求应用筛选条件:
- 按事件类别筛选(例如,仅筛选 CMS 变更)
- 按用户筛选(匹配
user.displayName) - 按时间范围筛选(在客户端筛选
createdOn时间戳) - 按资源筛选(匹配
resourceName) - 发布前审核:当用户想查看上次发布以来的变更时,使用网站的
lastPublished时间戳(来自阶段 1),并筛选createdOn > lastPublished的事件。如果lastPublished为 null(从未发布),则所有事件都视为未发布。
-
生成洞察(纳入报告的“重点”部分):
- 时间段内最活跃的用户
- 事件类型分布(占主导的类别)
- 最繁忙的日期或时段
- 单人变更集中度(某人完成 40% 及以上变更时标记)
- 未发布的变更(
createdOn > lastPublished的事件数)
阶段 4:报告
-
生成摘要报告,包含以下部分:
- 覆盖的时间范围和事件总数
- 按活动类型分类
- 按用户分类
- 重点——指出相关模式,例如频繁更改单个页面/集合、多人编辑同一资源、未发布的变更(自上次发布以来),以及系统事件与用户发起的变更之间的区别
-
回答用户的具体问题:如果用户提出了具体问题,请先直接回答,再提供结构化报告。
-
根据提示选择详细程度:
- “仅计数”/“多少”/“只要数字” → 快速摘要(仅按类别统计)
- 默认 → 标准报告(按类别整理的事件,并注明用户——见示例 1)
- “逐项说明”/“显示每项变更”/“时间线” → 详细报告(按时间顺序逐项显示事件及其负载)
- “分享”/“导出”/“给我的团队”/“可发送的摘要” → 可分享/导出报告(见示例 3)
始终在第 13 步的后续选项中提供详细程度切换选项,以便用户请求其他详细程度。
-
**每份报告都必须以一个后续选项部分结尾。**这是必需项,不可省略。使用以下确切格式,并根据刚回答的查询调整编号选项,使其与查询相关:
--- 您希望: 1. 按特定用户筛选 2. 按活动类型筛选 3. 获取更早的活动(分页) 4. 切换到快速摘要(仅计数)或详细视图(逐项显示事件负载) 5. 导出为 markdown 或 JSON如果报告采用可分享/导出格式(例如“我可以分享的摘要”),请将此部分放在可分享内容之外,以便用户可以直接复制报告,而不包含后续菜单。
事件负载详情
不同事件类型包含不同的负载字段:
page_dom_modified:
pageTitle:已修改页面的名称pageId:已修改页面的 IDcount:此批次中的修改次数branchId/branchName:分支上下文(如果是 main 则为 null)
cms_item:
cmsCollectionId:父集合的 IDcmsCollectionName:父集合的名称count:受影响的条目数name:语言区域名称(例如,“English”“Spanish”)
styles_modified:
selector:CSS 选择器(如适用)variant:断点/伪类变体字符串parentChain:父级样式名称数组(组合类链)type:样式类型(例如,“class”)branchId/branchName:分支上下文
symbols_modified:
branchId/branchName:分支上下文
page_settings_modified:
pageTitle:已修改页面的名称branchId/branchName:分支上下文
backup_created:
- 无负载;
resourceName表示备份类型(例如,“Automatic backup”“Maintenance backup”) - 没有
user字段(由系统发起)
示例
用户提示词:
What happened on my site this week?
第 1 步:选择站点
📋 Site Activity — Site Selection
Available Enterprise Sites:
1. Acme Corp Website ⚠️ — last published Apr 14, updated Apr 16 (2 days unpublished)
2. Acme Blog ✅ — published & updated Apr 10
Which site would you like to review?
第 2 步:活动摘要
📋 Site Activity: Acme Corp Website
April 10–16, 2026 (93 events)
**93 events this week from 3 team members. 28 are unpublished since the last publish on Apr 14.**
---
## Activity Breakdown
📄 Page modifications 34 events
🎨 Class changes 22 events
📝 CMS updates 18 events
🧩 Component changes 8 events
🔤 Variable changes 5 events
🚀 Publishes 3 events
💾 Backups 2 events
🌿 Branch activity 1 event
---
## Activity by User
**Sarah Chen** — 42 events
└── Page modifications (18), Class changes (15), CMS updates (9)
**Alex Kim** — 31 events
└── CMS updates (9), Page modifications (12), Component changes (8), Variables (2)
**Jordan Lee** — 17 events
└── Class changes (7), Page modifications (4), Publishes (3), Backups (2), Branch (1)
**System** — 3 events
└── Backups (auto)
---
## Highlights
- ⚠️ **Unpublished changes**: 28 events since last publish (Apr 14)
- 📊 **Busiest day**: April 15 (41 events)
- 👤 **Most active**: Sarah Chen (45% of all activity)
- 🧩 8 component changes by Alex Kim — may affect multiple pages
---
Would you like to:
1. Filter by a specific user
2. Filter by activity type
3. See details for unpublished changes only
4. Switch to a quick summary (counts only) or detailed view (per-event payloads)
5. Fetch older activity
用户提示词:
Show me CMS changes on site 6924868ede9d3fbbc3195eb0
响应:
📋 CMS Activity: Acme Corp Website
April 10–16, 2026 (18 CMS events)
**18 CMS events from 2 users over 5 days. 3 changes are unpublished.**
---
## CMS Breakdown
📝 Items modified 11 events
➕ Items created 5 events
📚 Collection changes 2 events
---
## Activity by User
**Sarah Chen** — 10 events
└── 2 items created, 7 items modified, 1 collection modified
**Alex Kim** — 8 events
└── 3 items created, 4 items modified, 1 bulk publish
---
## Highlights
- ⚠️ **Unpublished**: 3 CMS changes since last publish (Apr 14)
- 📊 **Busiest day**: April 15 (8 events)
- 📚 **Schema changes**: 2 collection edits this week (review carefully before publish)
---
Would you like to:
1. Filter to a specific collection
2. Filter by user (Sarah or Alex)
3. See only the unpublished CMS changes
4. Switch to a timeline view (chronological per-event) or counts only
5. Fetch older CMS activity
用户提示词:
Give me a weekly summary I can share with my team for Acme Corp Website
(在提示词中直接提及站点名称会跳过第 1 阶段的第 1 步。如果用户未提及站点,请先运行站点选择列表,再生成此报告。)
响应:
📋 Weekly Site Activity Report
Acme Corp Website — Week of April 10–16, 2026
---
### Overview
- **93 total changes** across 3 team members
- **3 publishes** (Apr 10, Apr 12, Apr 14)
- **28 unpublished changes** pending review
- **Last publish:** April 14 at 18:30 UTC
### What Changed
- 34 page modifications across 8 pages
- 22 class/style updates
- 18 CMS content changes (5 new items, 11 edits, 2 schema changes)
- 8 component updates
- 5 variable changes
### Team Activity
| Team Member | Changes | Top Activity |
|-------------|---------|-------------------------------|
| Sarah Chen | 42 | Page edits, style updates |
| Alex Kim | 31 | CMS content, components |
| Jordan Lee | 17 | Styles, publishing, backups |
### Action Items
- ⚠️ 28 changes are unpublished — consider reviewing and publishing
- 🧩 8 component changes may affect shared layouts — verify before publish
- 💾 Last backup: April 14 — consider creating a fresh backup
---
Generated from Webflow Site Activity Log
你想要:
- 筛选特定用户的更改
- 详细拆分未发布的更改
- 使用不同的日期范围重新生成
- 切换为快速摘要(仅计数)或按事件查看详细信息
- 导出为 JSON 而非 markdown
指南
仅限企业版访问
计划要求:
list_site_activity_logs仅适用于 Enterprise 托管计划- 如果 API 返回权限错误,请明确告知用户:
⚠️ Site Activity Logs require an Enterprise hosting plan. This site does not appear to have Enterprise access. - 权限错误时不要重试——问题出在计划级别,并非暂时性故障
API 限制
分页:
- 每个请求最多返回 100 个事件
- 使用
offset分页:首次调用 offset=0,第二次调用 offset=100,以此类推 - 对于活跃的企业站点,100 个事件通常约涵盖一周的活动
- 不支持原生日期筛选——获取数据后必须在客户端完成所有筛选
何时分页:
- 用户询问超过一周的活动
- 用户需要完整情况,且首页恰好返回 100 个事件
- 始终告知用户当前数据范围:“显示最近 93 个事件(Apr 10–16)”
注意调用频率:
- 避免不必要的分页——仅获取回答问题所需的数据
- 如果用户询问“最近有发布吗?”,100 个事件可能就足够了
- 如果用户询问“整个月的活动”,请说明限制,并分页获取,最多 300 个事件
错误处理
常见错误:
- 403 / 权限被拒绝:需要 Enterprise 计划——明确告知用户
- 404 / 未找到站点:验证站点 ID,并提出列出可用站点
- 结果为空:站点可能近期没有活动——向用户确认并检查站点详情
优雅降级:
- 如果获取站点详情失败,仍尝试获取活动日志
- 如果分页中途失败,报告已成功获取的数据
- 始终显示部分结果,不要什么都不显示