配置和管理 GEO 自动化任务,包括定期审计、报告生成、竞争对手监控和智能告警
配置和管理 GEO 自动化任务,包括定期审计、报告生成、竞争对手监控和智能告警
/plugin marketplace add huifer/claude-code-seo/plugin install huifer-claude-seo-assistant@huifer/claude-code-seo<action> [--task <task-name>] [--schedule <cron>] [--alerts <notification-methods>]# GEO 自动化配置执行流程
## 步骤 1: 参数解析和验证
输入:action, task, schedule, alerts
处理:
- 验证操作类型
- 检查任务名称
- 验证 cron 表达式
- 检查告警配置
输出:配置对象
## 步骤 2: 任务配置
根据 action 执行:
- enable: 启用自动化任务
- disable: 禁用任务
- status: 查看任务状态
- configure: 修改任务配置
## 步骤 3: 工作流生成
生成任务执行流程:
- 定义步骤
- 设置依赖
- 配置重试
- 设置超时
## 步骤 4: 告警规则配置
配置告警:
- 设置触发条件
- 配置通知方式
- 定义优先级
- 创建告警模板
## 步骤 5: 保存配置
保存到:.claude-flow/cache/config/automation/task-name.json
返回:配置确认和状态
描述: 每周自动执行完整的 GEO 审计并生成报告
默认调度: 每周一上午 9:00 (0 9 * * 1)
任务步骤:
task: weekly-audit
schedule: "0 9 * * 1" # 每周一 9:00
enabled: true
timezone: "Asia/Shanghai"
steps:
- id: scan-content
name: "扫描网站内容"
command: "/geo-content-audit"
params:
domain: "{{domain}}"
detailed: true
timeout: 300
retry: 3
- id: monitor-citations
name: "监控 AI 引用"
command: "/geo-citation-monitor"
params:
url: "https://{{domain}}"
period: 7
timeout: 180
retry: 2
- id: compare-competitors
name: "对比竞争对手"
command: "/geo-competitor-compare"
params:
you: "{{domain}}"
competitors: "{{competitors}}"
timeout: 240
retry: 2
- id: generate-report
name: "生成综合报告"
command: "/generate-report"
params:
type: "geo-comprehensive"
domain: "{{domain}}"
period: 7
format: "html"
interactive: true
include-charts: true
timeout: 120
告警规则:
alerts:
- condition: "citation-drop > 10%"
priority: "critical"
actions:
- type: "email"
to: ["seo-manager@company.com"]
subject: "🚨 紧急:AI 引用严重下降"
- type: "slack"
channel: "#seo-critical"
message: "AI 引用 7 天内下降超过 10%"
- condition: "score < 70"
priority: "high"
actions:
- type: "slack"
channel: "#seo-alerts"
message: "GEO 评分低于 70,需要优化"
- condition: "competitor-surpassed"
priority: "warning"
actions:
- type: "email"
to: "seo-team@company.com"
subject: "⚠️ 竞争对手超越警告"
描述: 每月自动生成执行摘要和技术分析报告
默认调度: 每月1日上午 8:00 (0 8 1 * *)
任务步骤:
task: monthly-report
schedule: "0 8 1 * *" # 每月1日 8:00
enabled: true
steps:
- id: collect-data
name: "收集月度数据"
action: "collect_metrics"
params:
period: 30
metrics:
- citations
- rankings
- traffic
- competitors
timeout: 300
- id: exec-summary
name: "生成执行摘要"
command: "/generate-report"
params:
type: "executive-summary"
domain: "{{domain}}"
period: 30
format: "pdf"
timeout: 120
- id: tech-analysis
name: "生成技术分析"
command: "/generate-report"
params:
type: "technical-analysis"
domain: "{{domain}}"
format: "html"
include-charts: true
timeout: 180
- id: send-reports
name: "发送报告"
action: "send_email"
params:
to: "{{team_email}}"
subject: "月度 GEO 报告 - {{month}} {{year}}"
body: "请查看附件中的月度 GEO 报告"
attachments:
- "executive-summary-{{date}}.pdf"
- "technical-analysis-{{date}}.html"
timeout: 60
描述: 每天监控竞争对手动态,识别快速追赶者
默认调度: 每天上午 10:00 (0 10 * * *)
任务步骤:
task: competitor-monitor
schedule: "0 10 * * *" # 每天 10:00
enabled: true
steps:
- id: detect-new
name: "检测新竞争对手"
action: "detect_new_competitors"
params:
keywords: "{{target_keywords}}"
threshold: "top-20"
timeout: 180
- id: track-changes
name: "跟踪对手变化"
action: "track_competitor_changes"
params:
competitors: "{{competitor_list}}"
metrics:
- new-content
- ranking-changes
- backlink-growth
- citation-growth
timeout: 240
- id: identify-fast
name: "识别快速追赶者"
action: "identify_fast_movers"
params:
growth-rate: "> 20%"
period: 7
timeout: 120
告警规则:
alerts:
- condition: "new-competitor-detected"
priority: "warning"
actions:
- type: "slack"
channel: "#seo-alerts"
message: "检测到新竞争对手:{{competitor}}"
- condition: "competitor-fast-growth"
priority: "high"
actions:
- type: "email"
to: "seo-manager@company.com"
subject: "⚠️ 竞争对手快速增长警告"
message: "{{competitor}} 7 天内增长超过 20%"
- condition: "competitor-surpassed"
priority: "critical"
actions:
- type: "slack"
channel: "#seo-critical"
message: "竞争对手 {{competitor}} 已超越我们的排名!"
- type: "email"
to: ["seo-manager@company.com", "cto@company.com"]
subject: "🚨 紧急:被竞争对手超越"
- type: "create-task"
priority: "urgent"
title: "分析并应对竞争对手超越"
描述: 定期检查内容新鲜度,提醒更新过期内容
默认调度: 每周一下午 2:00 (0 14 * * 1)
任务步骤:
task: content-update-reminder
schedule: "0 14 * * 1" # 每周一 14:00
enabled: true
steps:
- id: find-outdated
name: "查找过期内容"
action: "find_outdated_content"
params:
domain: "{{domain}}"
age-threshold: 90 # 天
priority: "by-impact"
timeout: 300
- id: check-freshness
name: "检查数据新鲜度"
action: "check_data_freshness"
params:
content-type: "statistics"
max-age: 180
timeout: 180
- id: create-plan
name: "生成更新计划"
action: "create_update_plan"
params:
outdated-pages: "{{outdated_list}}"
priority: "by-traffic"
timeout: 120
- id: send-reminder
name: "发送提醒"
action: "send_email"
params:
to: "content-team@company.com"
subject: "📝 内容更新提醒 - {{date}}"
body: "以下内容需要更新:{{outdated_pages}}"
timeout: 60
告警规则:
alerts:
- condition: "content-age > 180 days"
priority: "info"
actions:
- type: "email"
to: "content-team@company.com"
subject: "📝 内容更新提醒"
message: "有 {{count}} 个页面超过 6 个月未更新"
- condition: "critical-content-stale"
priority: "high"
actions:
- type: "slack"
channel: "#content-alerts"
message: "高价值内容已过期,需要立即更新"
# 启用每周 GEO 审计
/geo-automation enable --task weekly-audit
# 查看任务状态
/geo-automation status --task weekly-audit
# 禁用竞争对手监控
/geo-automation disable --task competitor-monitor
# 自定义调度时间(每周三下午 3 点)
/geo-automation enable \
--task weekly-audit \
--schedule "0 15 * * 3" \
--alerts email,slack
# 配置每月报告
/geo-automation configure \
--task monthly-report \
--schedule "0 8 1 * *" \
--alerts email
# 仅邮件告警
/geo-automation enable \
--task weekly-audit \
--alerts email
# Slack + 邮件告警
/geo-automation enable \
--task competitor-monitor \
--alerts slack,email
# ✅ 自动化任务已启用
**任务名称:** weekly-audit
**调度时间:** 每周一上午 9:00
**下次执行:** 2024-02-22 09:00
## 任务配置
### 执行步骤
1. ✅ 扫描网站内容(/geo-content-audit)
2. ✅ 监控 AI 引用(/geo-citation-monitor)
3. ✅ 对比竞争对手(/geo-competitor-compare)
4. ✅ 生成综合报告(/generate-report)
### 告警规则
- 🔴 AI 引用下降 >10% → 邮件 + Slack
- 🟡 GEO 评分 <70 → Slack
- 🟢 竞争对手超越 → 邮件
### 配置文件
`.claude-flow/cache/config/automation/weekly-audit.json`
### 执行历史
查看执行历史:
```bash
/geo-automation history --task weekly-audit
实时监控:
http://localhost:3000/automation/weekly-audit
配置时间: 2024-02-15 14:30 配置人: SEO Team 状态: 🟢 运行中
### 任务状态输出
```markdown
# 📊 任务状态:weekly-audit
## 基本信息
- **任务名称:** weekly-audit
- **状态:** 🟢 运行中
- **调度:** 每周一上午 9:00
- **下次执行:** 2024-02-22 09:00
- **时区:** Asia/Shanghai
## 执行统计
- **总执行次数:** 24
- **成功次数:** 23 (96%)
- **失败次数:** 1 (4%)
- **平均执行时间:** 845 秒
- **上次执行:** 2024-02-15 09:00
- **上次状态:** ✅ 成功
## 最近执行
| 执行ID | 时间 | 状态 | 耗时 | 告警 |
|--------|------|------|------|------|
| exec-20240215 | 2024-02-15 09:00 | ✅ | 845s | 0 |
| exec-20240208 | 2024-02-08 09:00 | ✅ | 812s | 0 |
| exec-20240201 | 2024-02-01 09:00 | ❌ | - | 1 |
## 告警统计(最近 30 天)
- 🔴 紧急告警:0
- 🟡 警告告警:2
- 🟢 信息告警:24
## 查看详细日志
```bash
/geo-automation logs --task weekly-audit --limit 10
/geo-automation disable --task weekly-audit/geo-automation configure --task weekly-audit/geo-automation run --task weekly-audit
## Cron 表达式参考
```markdown
# Cron 表达式格式
格式:分 时 日 月 周
示例:
# 每天
0 9 * * * # 每天上午 9 点
0 */6 * * * # 每 6 小时
# 每周
0 9 * * 1 # 每周一上午 9 点
0 15 * * 5 # 每周五下午 3 点
# 每月
0 8 1 * * # 每月1日上午 8 点
0 9 15 * * # 每月15日上午 9 点
# 特殊时间
@weekly # 每周(周一 0 点)
@monthly # 每月(1 日 0 点)
@daily # 每天(0 点)
@hourly # 每小时
email:
enabled: true
smtp_server: "smtp.gmail.com"
smtp_port: 587
username: "your-email@gmail.com"
password: "{{SMTP_PASSWORD}}"
from: "SEO Assistant <noreply@company.com>"
default_recipients:
- "seo-team@company.com"
- "manager@company.com"
slack:
enabled: true
webhook_url: "{{SLACK_WEBHOOK_URL}}"
channels:
critical: "#seo-critical"
warning: "#seo-alerts"
info: "#seo-reports"
username: "GEO Bot"
icon_emoji: ":robot_face:"
webhook:
enabled: true
url: "{{WEBHOOK_URL}}"
method: "POST"
headers:
Content-Type: "application/json"
Authorization: "Bearer {{WEBHOOK_TOKEN}}"
body_template: |
{
"alert": "{{alert_type}}",
"priority": "{{priority}}",
"message": "{{message}}",
"timestamp": "{{timestamp}}"
}
.claude-flow/cache/config/automation/
├── weekly-audit.json # 每周审计配置
├── monthly-report.json # 每月报告配置
├── competitor-monitor.json # 竞争对手监控配置
├── content-update-reminder.json # 内容更新提醒配置
└── automation-settings.json # 全局自动化设置
.claude-flow/cache/history/automation/
├── weekly-audit/
│ ├── 2024-02-15.json
│ ├── 2024-02-08.json
│ └── 2024-02-01.json
└── competitor-monitor/
├── 2024-02-15.json
└── 2024-02-14.json
.claude-flow/cache/history/alerts/
├── 2024-02-15-critical.json
├── 2024-02-14-warning.json
└── 2024-02-13-info.json
/generate-report - 生成各类报告/geo-content-audit - GEO 内容审计/geo-citation-monitor - AI 引用监控/geo-competitor-compare - 竞争对手对比/workflow-automation - 工作流编排