safe-publish

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Safe Publish

安全发布

Publish a Webflow site with comprehensive preview, validation, and explicit confirmation workflow.
采用全面预览、验证及明确确认的工作流发布Webflow站点。

Important Note

重要说明

ALWAYS use Webflow MCP tools for all operations:
  • Use Webflow MCP's
    data_sites_tool
    with action
    list_sites
    for listing available sites
  • Use Webflow MCP's
    data_sites_tool
    with action
    get_site
    for detailed site information
  • Use Webflow MCP's
    data_pages_tool
    with action
    list_pages
    for retrieving all pages
  • Use Webflow MCP's
    data_cms_tool
    with action
    get_collection_list
    for listing CMS collections
  • Use Webflow MCP's
    data_cms_tool
    with action
    list_collection_items
    for checking draft items
  • Use Webflow MCP's
    data_sites_tool
    with action
    publish_site
    for publishing the site
  • Use Webflow MCP's
    webflow_guide_tool
    to get best practices before starting
  • DO NOT use any other tools or methods for Webflow operations
  • All tool calls must include the required
    context
    parameter (15-25 words, third-person perspective)
始终使用Webflow MCP工具执行所有操作:
  • 使用Webflow MCP的
    data_sites_tool
    ,指定动作
    list_sites
    来列出可用站点
  • 使用Webflow MCP的
    data_sites_tool
    ,指定动作
    get_site
    来获取站点详细信息
  • 使用Webflow MCP的
    data_pages_tool
    ,指定动作
    list_pages
    来获取所有页面
  • 使用Webflow MCP的
    data_cms_tool
    ,指定动作
    get_collection_list
    来列出CMS集合
  • 使用Webflow MCP的
    data_cms_tool
    ,指定动作
    list_collection_items
    来检查草稿项
  • 使用Webflow MCP的
    data_sites_tool
    ,指定动作
    publish_site
    来发布站点
  • 开始操作前,使用Webflow MCP的
    webflow_guide_tool
    获取最佳实践
  • 请勿使用任何其他工具或方法执行Webflow操作
  • 所有工具调用必须包含必填的
    context
    参数(15-25个单词,第三人称视角)

Instructions

操作步骤

Phase 1: Site Selection & Status Check

第一阶段:站点选择与状态检查

  1. Get site: Identify the target site. If user does not provide site ID, ask for it.
  2. Fetch site details: Use Webflow MCP's
    data_sites_tool
    with action
    get_site
    to retrieve:
    • Last published date
    • Last updated date
    • Custom domains configured
    • Locale settings
  3. Check publish status: Determine if site has unpublished changes:
    • Compare
      lastUpdated
      vs
      lastPublished
      timestamps
    • If
      lastPublished
      is null, site has never been published
    • If
      lastUpdated
      >
      lastPublished
      , site has unpublished changes
  1. 获取站点:确定目标站点。如果用户未提供站点ID,请向用户索要。
  2. 获取站点详情:使用Webflow MCP的
    data_sites_tool
    ,指定动作
    get_site
    来获取以下信息:
    • 上次发布日期
    • 上次更新日期
    • 已配置的自定义域名
    • 区域设置
  3. 检查发布状态:判断站点是否存在未发布的变更:
    • 比较
      lastUpdated
      lastPublished
      时间戳
    • 如果
      lastPublished
      为null,说明站点从未发布过
    • 如果
      lastUpdated
      >
      lastPublished
      ,说明站点存在未发布变更

Phase 2: Change Detection & Analysis

第二阶段:变更检测与分析

  1. List all pages: Use Webflow MCP's
    data_pages_tool
    with action
    list_pages
  2. Identify modified pages:
    • Compare each page's
      lastUpdated
      with site's
      lastPublished
    • Flag pages modified after last publish
    • Categorize by type (static, CMS template, archived, draft)
  3. List all collections: Use Webflow MCP's
    data_cms_tool
    with action
    get_collection_list
  4. Check for draft items:
    • For each collection, use Webflow MCP's
      collections_items_list_items
    • Count items where
      isDraft: true
    • Count items modified since last publish
  5. Detect issues:
    • Draft items that won't be published unless explicitly included
    • Pages missing SEO metadata
    • Broken references (if detectable)
  1. 列出所有页面:使用Webflow MCP的
    data_pages_tool
    ,指定动作
    list_pages
  2. 识别已修改页面
    • 将每个页面的
      lastUpdated
      与站点的
      lastPublished
      进行比较
    • 标记上次发布后已修改的页面
    • 按类型分类(静态页面、CMS模板、已归档页面、草稿页面)
  3. 列出所有集合:使用Webflow MCP的
    data_cms_tool
    ,指定动作
    get_collection_list
  4. 检查草稿项
    • 对于每个集合,使用Webflow MCP的
      collections_items_list_items
    • 统计
      isDraft: true
      的项数量
    • 统计自上次发布以来已修改的项数量
  5. 检测问题
    • 除非明确包含,否则不会被发布的草稿项
    • 缺少SEO元数据的页面
    • 损坏的引用(如果可检测)

Phase 3: Pre-Publish Validation & Preview

第三阶段:发布前验证与预览

  1. Run pre-publish checks:
    • Verify no broken collection references
    • Check for pages with missing required fields
    • Warn about draft items that will remain unpublished
  2. Generate detailed preview:
    • Show all pages to be published
    • Show all CMS items to be published
    • Display warnings for any issues found
    • Show which domains will be updated
  3. Ask for publish scope:
    • Webflow subdomain only
    • Custom domains only
    • Both subdomain and custom domains
  1. 执行发布前检查
    • 验证是否存在损坏的集合引用
    • 检查是否存在缺少必填字段的页面
    • 警告将保持未发布状态的草稿项
  2. 生成详细预览
    • 展示所有即将发布的页面
    • 展示所有即将发布的CMS项
    • 显示发现的所有问题警告
    • 展示将被更新的域名
  3. 确认发布范围
    • 仅Webflow子域名
    • 仅自定义域名
    • 子域名和自定义域名都包含

Phase 4: Confirmation & Publishing

第四阶段:确认与发布

  1. Require explicit confirmation:
    • User must type "publish" to proceed
    • "yes" or "y" should NOT trigger publish
    • Show clear warning about what will go live
  2. Execute publish:
    • Use Webflow MCP's
      data_sites_tool
      with action
      publish_site
      with correct parameters
    • Handle
      customDomains
      as empty array if no custom domains
    • Set
      publishToWebflowSubdomain
      based on user choice
  3. Capture publish timestamp:
    • Fetch site info again after publish
    • Record exact publish time from
      lastPublished
      field
  1. 要求明确确认
    • 用户必须输入"publish"才能继续
    • "yes"或"y"不应触发发布
    • 清晰展示即将上线内容的警告
  2. 执行发布
    • 使用Webflow MCP的
      data_sites_tool
      ,指定动作
      publish_site
      并传入正确参数
    • 如果没有自定义域名,将
      customDomains
      设为空数组
    • 根据用户选择设置
      publishToWebflowSubdomain
  3. 记录发布时间戳
    • 发布完成后再次获取站点信息
    • lastPublished
      字段记录准确的发布时间

Phase 5: Verification & Reporting

第五阶段:验证与报告

  1. Verify publish success:
    • Check that
      lastPublished
      timestamp updated
    • Verify site is accessible at published URL(s)
    • Report any verification failures clearly
  2. Generate success report:
    • Show publish timestamp
    • List what went live (pages, items)
    • Provide published URL(s)
    • Show verification status
  3. Handle failures gracefully:
    • If publish fails, show clear error message
    • Suggest remediation steps
    • Do not retry automatically
  1. 验证发布成功
    • 检查
      lastPublished
      时间戳是否已更新
    • 验证站点在已发布的URL上可访问
    • 清晰报告任何验证失败情况
  2. 生成成功报告
    • 展示发布时间戳
    • 列出已上线的内容(页面、项)
    • 提供已发布的URL
    • 展示验证状态
  3. 优雅处理发布失败
    • 如果发布失败,显示清晰的错误信息
    • 建议补救步骤
    • 请勿自动重试

Examples

示例

User prompt:
Publish my site
Step 1: Site Selection
🚀 Safe Publish - Site Selection

Available Sites:

1. **MCP Demo#1**
   - Last published: January 9, 2026 at 20:05:38 UTC
   - Last updated: January 9, 2026 at 20:49:37 UTC
   - ⚠️ **Has unpublished changes** (updated 44 minutes after last publish)

2. **MCP Demo#2**
   - Last updated: January 9, 2026 at 19:32:53 UTC
   - Status: Not yet published

Which site would you like to publish? (1-2)
Step 2: Change Detection & Preview
🚀 Publish Preview: MCP Demo#1

**Last published:** January 9, 2026 at 20:05:38 UTC
**Time since last publish:** ~1 hour 5 minutes

---
用户请求:
Publish my site
步骤1:站点选择
🚀 安全发布 - 站点选择

可用站点:

1. **MCP Demo#1**
   - 上次发布时间:2026年1月9日 20:05:38 UTC
   - 上次更新时间:2026年1月9日 20:49:37 UTC
   - ⚠️ **存在未发布变更**(上次发布后44分钟更新)

2. **MCP Demo#2**
   - 上次更新时间:2026年1月9日 19:32:53 UTC
   - 状态:尚未发布

您要发布哪个站点?(输入1-2)
步骤2:变更检测与预览
🚀 发布预览:MCP Demo#1

**上次发布时间:**2026年1月9日 20:05:38 UTC
**距离上次发布的时间:**约1小时5分钟

---

Changes to Publish:

即将发布的变更:

📄 Pages Modified: 1

📄 已修改页面:1个

└── Home (/) - SEO title updated to "Home Page" - Last modified: 21:10:52 UTC
└── 主页 (/) - SEO标题已更新为"Home Page" - 上次修改时间:21:10:52 UTC

📝 CMS Items: 2 draft items to publish

📝 CMS项:2个即将发布的草稿项

Blog Posts (2 drafts):
  1. "Why Webflow MCP Will Transform Your Workflow in 2026!"
    • Status: Draft
    • Created: 20:24:44 UTC
    • Last modified: 21:11:03 UTC
    • Featured: Yes
    • Slug: webflow-mcp-transform-workflow-2026
  2. "Webflow E-commerce: The Future of Online Shopping in 2026!"
    • Status: Draft
    • Created: 20:05:24 UTC
    • Last modified: 21:11:11 UTC
    • Featured: Yes
    • Slug: webflow-ecommerce-2026

Pre-Publish Checks:
  • ✅ No broken references detected
  • ✅ All required fields populated
  • ⚠️ 2 draft items will become published
Publish Targets:
  • Webflow subdomain: mcp-demo-1-e88499.webflow.io
  • Custom domains: None configured
⚠️ Type "publish" to make these changes live.

**Step 3: After user types "publish"**
🔄 Publishing MCP Demo#1...
Progress: ████████████████████ 100%
✅ Published Successfully!
Site: MCP Demo#1 Published at: 2026-01-09 21:12:52 UTC (January 9, 2026 at 21:12:52)

博客文章(2个草稿):
  1. "Why Webflow MCP Will Transform Your Workflow in 2026!"
    • 状态:草稿
    • 创建时间:20:24:44 UTC
    • 上次修改时间:21:11:03 UTC
    • 推荐:是
    • 别名:webflow-mcp-transform-workflow-2026
  2. "Webflow E-commerce: The Future of Online Shopping in 2026!"
    • 状态:草稿
    • 创建时间:20:05:24 UTC
    • 上次修改时间:21:11:11 UTC
    • 推荐:是
    • 别名:webflow-ecommerce-2026

发布前检查:
  • ✅ 未检测到损坏的引用
  • ✅ 所有必填字段已填充
  • ⚠️ 2个草稿项将被发布
发布目标:
  • Webflow子域名:mcp-demo-1-e88499.webflow.io
  • 自定义域名:未配置
⚠️ 输入"publish"使这些变更生效。

**步骤3:用户输入"publish"后**
🔄 正在发布MCP Demo#1...
进度:████████████████████ 100%
✅ 发布成功!
**站点:**MCP Demo#1 **发布时间:**2026-01-09 21:12:52 UTC(2026年1月9日 21:12:52)

What Went Live:

已上线内容:

📄 Pages (1)

📄 页面(1个)

  • ✅ Home (/) - SEO title updated
  • ✅ 主页 (/) - SEO标题已更新

📝 Blog Posts (2)

📝 博客文章(2个)

  • ✅ "Why Webflow MCP Will Transform Your Workflow in 2026!"
  • ✅ "Webflow E-commerce: The Future of Online Shopping in 2026!"

  • ✅ "Why Webflow MCP Will Transform Your Workflow in 2026!"
  • ✅ "Webflow E-commerce: The Future of Online Shopping in 2026!"

Verification:

验证结果:


🎉 Your site is now live with all changes published!
All unpublished changes have been successfully published to the Webflow subdomain. The 2 draft blog posts are now visible on your site.

**Alternative: With Warnings**
🚀 Publish Preview: Company Site
Last published: January 8, 2026 at 14:30:00 UTC


🎉 您的站点现已上线,所有变更已发布完成!
所有未发布的变更已成功发布至Webflow子域名。2个草稿博客文章现已在您的站点上可见。

**另一种情况:包含警告**
🚀 发布预览:公司站点
**上次发布时间:**2026年1月8日 14:30:00 UTC

Changes to Publish:

即将发布的变更:

📄 Pages Modified: 3

📄 已修改页面:3个

├── About (/about) │ └── Content updated ├── Contact (/contact) │ └── Form fields changed └── Home (/) └── Hero section updated
├── 关于我们 (/about) │ └── 内容已更新 ├── 联系我们 (/contact) │ └── 表单字段已更改 └── 主页 (/) └── Hero区域已更新

📝 CMS Items

📝 CMS项

Blog Posts:
  • 5 published items modified
  • 2 draft items (will NOT be published automatically)
Products:
  • 3 new items created
  • 1 item updated

Pre-Publish Checks: ⚠️ Warnings Found:
  1. Missing SEO Metadata (2 pages):
    • /about - No meta description
    • /contact - No meta title or description
    • 💡 Recommendation: Add SEO metadata before publishing
  2. Draft Items (2):
    • "Upcoming Product Launch" (Blog Post)
    • "Holiday Sale Announcement" (Blog Post)
    • ⚠️ These will remain unpublished
  3. Large Change Set:
    • 3 pages + 9 CMS items will be updated
    • Consider reviewing changes carefully
Publish Targets:
  • Webflow subdomain: company-site.webflow.io
  • Custom domains: example.com, www.example.com

Would you like to:
  1. Proceed with publish (type "publish")
  2. Cancel and review (type "cancel")
undefined
博客文章:
  • 5个已发布项已修改
  • 2个草稿项(不会自动发布)
产品:
  • 3个新项已创建
  • 1个项已更新

发布前检查: ⚠️ 发现警告:
  1. 缺少SEO元数据(2个页面):
    • /about - 无元描述
    • /contact - 无元标题和元描述
    • 💡 建议:发布前添加SEO元数据
  2. 草稿项(2个):
    • "即将推出的产品发布"(博客文章)
    • "假日促销公告"(博客文章)
    • ⚠️ 这些项将保持未发布状态
  3. 变更集较大:
    • 将更新3个页面 + 9个CMS项
    • 建议仔细审核变更内容
发布目标:
  • Webflow子域名:company-site.webflow.io
  • 自定义域名:example.com, www.example.com

您希望:
  1. 继续发布(输入"publish")
  2. 取消并审核(输入"cancel")
undefined

Guidelines

指导原则

Phase 1: Critical Requirements

第一阶段:关键要求

Site Status Check:
  • Always fetch complete site details using
    sites_get
  • Compare
    lastUpdated
    vs
    lastPublished
    to detect unpublished changes
  • If timestamps are identical, inform user "No changes to publish"
  • If
    lastPublished
    is null, warn "First publish - entire site will go live"
Timestamp Handling:
  • Store both ISO format and human-readable format
  • Calculate time elapsed since last publish
  • Show timezone (prefer UTC for clarity)
站点状态检查:
  • 始终使用
    sites_get
    获取完整的站点详情
  • 比较
    lastUpdated
    lastPublished
    来检测未发布变更
  • 如果时间戳相同,告知用户"无变更可发布"
  • 如果
    lastPublished
    为null,警告用户"首次发布 - 整个站点将上线"
时间戳处理:
  • 同时存储ISO格式和人类可读格式
  • 计算自上次发布以来的时间间隔
  • 显示时区(优先使用UTC以保证清晰)

Phase 2: Change Detection Rules

第二阶段:变更检测规则

Page Change Detection:
  • Compare page
    lastUpdated
    with site
    lastPublished
  • Only flag pages where
    lastUpdated > lastPublished
  • Categorize changes:
    • Content changes (hard to detect via API)
    • SEO metadata changes (compare if available)
    • Structural changes (page created/deleted)
CMS Item Detection:
  • Check
    isDraft
    field for all items
  • Compare
    lastUpdated
    with site
    lastPublished
  • Count items in each state:
    • Published + not modified
    • Published + modified
    • Draft (won't be published)
    • Archived (won't appear on site)
Collections to Check:
  • Query all collections with
    collections_list
  • For each collection, list items with
    collections_items_list_items
  • Batch queries if site has many collections (10+ collections)
页面变更检测:
  • 将页面的
    lastUpdated
    与站点的
    lastPublished
    进行比较
  • 仅标记
    lastUpdated > lastPublished
    的页面
  • 对变更进行分类:
    • 内容变更(通过API难以检测)
    • SEO元数据变更(如果可比较)
    • 结构变更(页面创建/删除)
CMS项检测:
  • 检查所有项的
    isDraft
    字段
  • lastUpdated
    与站点的
    lastPublished
    进行比较
  • 统计每种状态的项数量:
    • 已发布且未修改
    • 已发布且已修改
    • 草稿(不会被发布)
    • 已归档(不会在站点上显示)
需要检查的集合:
  • 使用
    collections_list
    查询所有集合
  • 对于每个集合,使用
    collections_items_list_items
    列出项
  • 如果站点有多个集合(10个以上),批量查询

Phase 3: Pre-Publish Validation

第三阶段:发布前验证

Required Checks:
  1. Broken References:
    • Check if referenced items exist
    • Warn if reference field points to deleted/archived item
    • Note: API may not expose this easily - best effort
  2. Missing Required Fields:
    • Verify all required CMS fields are populated
    • Warn if required fields are empty (shouldn't be possible, but check)
  3. SEO Completeness:
    • Check pages for missing
      seo.title
      or
      seo.description
    • Warn but don't block publish
    • Provide recommendations for improvement
  4. Draft Item Warning:
    • Clearly list all draft items
    • Explain they will remain unpublished
    • Offer to cancel if user wants to publish drafts first
Warning Levels:
  • 🔴 Critical: Would break site (broken refs, missing required fields)
  • ⚠️ Warning: Suboptimal but publishable (missing SEO, drafts)
  • 💡 Suggestion: Best practices (add meta descriptions, optimize images)
When to Block Publish:
  • Only block if critical errors found
  • For warnings and suggestions, allow user to proceed
  • Always show warnings prominently
必填检查:
  1. 损坏的引用:
    • 检查引用的项是否存在
    • 如果引用字段指向已删除/已归档的项,发出警告
    • 注意:API可能无法轻松暴露此信息 - 尽最大努力检查
  2. 缺少必填字段:
    • 验证所有必填CMS字段已填充
    • 如果必填字段为空,发出警告(理论上不应出现,但仍需检查)
  3. SEO完整性:
    • 检查页面是否缺少
      seo.title
      seo.description
    • 发出警告但不阻止发布
    • 提供改进建议
  4. 草稿项警告:
    • 清晰列出所有草稿项
    • 说明它们将保持未发布状态
    • 如果用户希望先发布草稿项,提供取消选项
警告级别:
  • 🔴 严重错误:会导致站点故障(损坏的引用、缺少必填字段)
  • ⚠️ 警告:不够理想但可发布(缺少SEO、草稿项)
  • 💡 建议:最佳实践(添加元描述、优化图片)
何时阻止发布:
  • 仅在发现严重错误时阻止发布
  • 对于警告和建议,允许用户继续
  • 始终突出显示警告

Phase 4: Confirmation & Publishing

第四阶段:确认与发布

Confirmation Requirements:
  • User MUST type "publish" (case-insensitive)
  • Do NOT accept: "yes", "y", "ok", "go", "confirm"
  • Rationale: Prevents accidental publishes from generic confirmations
  • If user types anything else, ask again or treat as cancel
Publish API Usage:
javascript
// Correct format for sites_publish
{
  "site_id": "site-id-here",
  "publishToWebflowSubdomain": true,  // or false
  "customDomains": []  // MUST be array, even if empty
}

// If custom domains exist:
{
  "site_id": "site-id-here",
  "publishToWebflowSubdomain": false,
  "customDomains": ["example.com", "www.example.com"]
}
Domain Selection:
  • If no custom domains: Publish to subdomain only
  • If custom domains exist: Ask user which to publish to
    • Subdomain only
    • Custom domains only
    • Both
  • Default to subdomain if user doesn't specify
Error Handling:
  • If
    customDomains
    validation error: Ensure it's an array
  • If
    400 Bad Request
    : Check request format
  • If
    403 Forbidden
    : Check site publish permissions
  • If
    500 Server Error
    : Retry once after 5 seconds, then report failure
确认要求:
  • 用户必须输入"publish"(不区分大小写)
  • 不接受:"yes"、"y"、"ok"、"go"、"confirm"
  • 理由:防止因通用确认导致的意外发布
  • 如果用户输入其他内容,请再次询问或视为取消
发布API使用:
javascript
// sites_publish的正确格式
{
  "site_id": "site-id-here",
  "publishToWebflowSubdomain": true,  // 或false
  "customDomains": []  // 必须是数组,即使为空
}

// 如果存在自定义域名:
{
  "site_id": "site-id-here",
  "publishToWebflowSubdomain": false,
  "customDomains": ["example.com", "www.example.com"]
}
域名选择:
  • 如果没有自定义域名:仅发布到子域名
  • 如果存在自定义域名:询问用户发布目标
    • 仅子域名
    • 仅自定义域名
    • 两者都包含
  • 如果用户未指定,默认发布到子域名
错误处理:
  • 如果
    customDomains
    验证错误:确保它是数组
  • 如果返回
    400 Bad Request
    :检查请求格式
  • 如果返回
    403 Forbidden
    :检查站点发布权限
  • 如果返回
    500 Server Error
    :5秒后重试一次,然后报告失败

Phase 5: Verification & Reporting

第五阶段:验证与报告

Post-Publish Verification:
  1. Fetch Updated Site Info:
    • Call
      sites_get
      again
    • Verify
      lastPublished
      timestamp updated
    • If timestamp didn't update, publish may have failed
  2. Site Accessibility Check:
    • Use WebFetch to check published URL
    • Verify site returns 200 OK
    • Check that content is served (not error page)
    • Measure response time
  3. Custom Domain Checks:
    • If published to custom domains, verify each domain
    • Some domains may take time to propagate (DNS)
    • Note: "Domain may take a few minutes to update" if slow
Verification Failure Handling:
  • If site not accessible: Report clearly
  • Note: Changes ARE published even if verification fails
  • Possible causes:
    • DNS propagation delay
    • CDN cache not yet cleared
    • Temporary Webflow infrastructure issue
  • Suggest: "Try accessing the site in 2-3 minutes"
Success Report Format:
✅ Published Successfully!

Site: [Site Name]
Published at: [ISO Timestamp] ([Human Readable])

What Went Live:
- X pages modified
- Y CMS items published
- Z draft items promoted to published

Verification:
✅ Site accessible
✅ URL: [primary URL]
✅ Response time: [Xms]

[If custom domains]
Custom Domains:
✅ example.com - accessible
⚠️ www.example.com - propagating (may take 2-3 minutes)
发布后验证:
  1. 获取更新后的站点信息:
    • 再次调用
      sites_get
    • 验证
      lastPublished
      时间戳已更新
    • 如果时间戳未更新,发布可能失败
  2. 站点可访问性检查:
    • 使用WebFetch检查已发布的URL
    • 验证站点返回200 OK
    • 检查内容是否正常提供(而非错误页面)
    • 测量响应时间
  3. 自定义域名检查:
    • 如果发布到自定义域名,验证每个域名
    • 某些域名可能需要时间完成传播(DNS)
    • 注意:如果传播缓慢,提示"域名可能需要几分钟才能更新"
验证失败处理:
  • 如果站点不可访问:清晰报告
  • 注意:即使验证失败,变更发布
  • 可能的原因:
    • DNS传播延迟
    • CDN缓存尚未清除
    • Webflow基础设施临时问题
  • 建议:"2-3分钟后尝试访问站点"
成功报告格式:
✅ 发布成功!

站点:[站点名称]
发布时间:[ISO时间戳]([人类可读格式])

已上线内容:
- X个页面已修改
- Y个CMS项已发布
- Z个草稿项已转为已发布状态

验证结果:
✅ 站点可访问
✅ URL:[主URL]
✅ 响应时间:[Xms]

[如果包含自定义域名]
自定义域名:
✅ example.com - 可访问
⚠️ www.example.com - 正在传播(可能需要2-3分钟)

Best Practices

最佳实践

Always:
  • ✅ Show comprehensive preview before publishing
  • ✅ Require explicit "publish" confirmation
  • ✅ Verify site after publish
  • ✅ Report exact publish timestamp
  • ✅ List all changes going live
  • ✅ Warn about draft items
Never:
  • ❌ Publish without explicit user confirmation
  • ❌ Accept generic confirmations like "yes"
  • ❌ Hide warnings from user
  • ❌ Retry failed publishes automatically
  • ❌ Proceed if critical errors detected
Edge Cases:
No Changes to Publish:
ℹ️ No Changes to Publish

Last published: January 9, 2026 at 20:05:38 UTC
Last updated: January 9, 2026 at 20:05:38 UTC

All changes are already published. Your site is up to date!
First Publish (Never Published Before):
⚠️ First Publish Warning

This site has NEVER been published before.

This will make the ENTIRE site publicly accessible:
- All pages (2 pages)
- All CMS items (47 items across 3 collections)
- All assets

Are you ready to make this site live?
Type "publish" to proceed, or "cancel" to abort.
Publish to Staging Subdomain:
  • If site has custom domains but user chooses subdomain only
  • Useful for testing before publishing to production domain
  • Explain: "Publishing to subdomain only. Custom domains will continue showing old version."
Partial Publish Not Supported:
  • Webflow publishes entire site, not individual pages
  • Cannot publish specific pages or collections
  • If user asks to "publish just the homepage", explain limitation
  • Alternative: Use staging subdomain for testing
始终:
  • ✅ 发布前展示全面预览
  • ✅ 要求明确的"publish"确认
  • ✅ 发布后验证站点
  • ✅ 报告准确的发布时间戳
  • ✅ 列出所有即将上线的变更
  • ✅ 警告草稿项相关信息
切勿:
  • ❌ 未经用户明确确认就发布
  • ❌ 接受"yes"等通用确认
  • ❌ 向用户隐藏警告
  • ❌ 自动重试失败的发布
  • ❌ 发现严重错误时仍继续操作

Performance Optimization

边缘情况

For Large Sites:
  • Sites with 100+ pages or 1000+ items may take time to analyze
  • Show progress: "Analyzing 150 pages..."
  • Batch API calls when possible
  • Consider skipping detailed diff for very large change sets
Caching:
  • Cache site info during workflow (don't refetch unnecessarily)
  • Only refetch after publish to verify
Timeouts:
  • Publish API may take 10-30 seconds for large sites
  • Don't timeout too quickly
  • Show: "Publishing... this may take up to 30 seconds for large sites"
无变更可发布:
ℹ️ 无变更可发布

上次发布时间:2026年1月9日 20:05:38 UTC
上次更新时间:2026年1月9日 20:05:38 UTC

所有变更已发布。您的站点是最新的!
首次发布(从未发布过):
⚠️ 首次发布警告

此站点**从未**发布过。

发布后整个站点将公开可访问:
- 所有页面(2个页面)
- 所有CMS项(3个集合共47个项)
- 所有资源

您准备好让站点上线了吗?
输入"publish"继续,或输入"cancel"取消。
发布到 staging 子域名:
  • 如果站点有自定义域名但用户选择仅发布到子域名
  • 适用于在发布到生产域名前进行测试
  • 说明:"仅发布到子域名。自定义域名将继续显示旧版本。"
不支持部分发布:
  • Webflow发布整个站点,而非单个页面
  • 无法发布特定页面或集合
  • 如果用户要求"仅发布主页",说明此限制
  • 替代方案:使用staging子域名进行测试

Error Messages

性能优化

Clear and Actionable:
Bad:
"Publish failed"
Good:
"Publish Failed: Validation Error

The Webflow API returned an error:
- customDomains parameter must be an array

This is likely a configuration issue. Retrying...
Common Errors:
  1. Validation Error (customDomains):
    • Fix: Ensure
      customDomains: []
      is an array
    • Don't pass null or omit the field
  2. Site Not Found:
    • User may have provided wrong site ID
    • List available sites and ask user to select
  3. Insufficient Permissions:
    • Site may require specific publish permissions
    • Check workspace access settings
  4. Publish Already in Progress:
    • Another publish may be running
    • Wait 30 seconds and try again
针对大型站点:
  • 拥有100+页面或1000+项的站点可能需要较长时间分析
  • 显示进度:"正在分析150个页面..."
  • 尽可能批量调用API
  • 对于非常大的变更集,考虑跳过详细差异分析
缓存:
  • 工作流期间缓存站点信息(避免不必要的重复获取)
  • 仅在发布后重新获取以进行验证
超时设置:
  • 对于大型站点,发布API可能需要10-30秒
  • 不要设置过短的超时时间
  • 显示:"正在发布... 大型站点可能需要长达30秒"

错误消息

清晰且可操作:
不佳示例:
"发布失败"
良好示例:
"发布失败:验证错误

Webflow API返回错误:
- customDomains参数必须是数组

这可能是配置问题。正在重试...
常见错误:
  1. 验证错误(customDomains):
    • 修复方法:确保
      customDomains: []
      是数组
    • 不要传入null或省略该字段
  2. 站点未找到:
    • 用户可能提供了错误的站点ID
    • 列出可用站点并让用户选择
  3. 权限不足:
    • 站点可能需要特定的发布权限
    • 检查工作区访问设置
  4. 发布已在进行中:
    • 可能有另一个发布任务正在运行
    • 等待30秒后重试