---
name: automation-framework
author: 王教成 Wang Jiaocheng (波动几何)
description: 自动化任务框架，提供定时任务、触发条件、执行策略的完整方法论。触发词：自动化、定时任务、调度、cron、RRULE、定时执行、meta-skill-system
---

# 自动化任务框架

## 定位

本技能提供从任务定义到执行监控的完整方法论。

**核心价值**：让AI具备定时执行、条件触发、自动化工作流的能力。

## 核心能力

### 定时任务能力

支持多种定时任务模式：

- **一次性任务**：在指定时间执行一次
- **循环任务**：按固定间隔重复执行
- **RRULE调度**：支持RFC 5545标准的复杂调度规则
- **Cron表达式**：支持标准Cron调度语法

### 触发条件能力

支持多种触发条件：

- **时间触发**：在指定时间触发
- **事件触发**：在特定事件发生时触发
- **条件触发**：当条件满足时触发
- **手动触发**：用户主动触发

### 执行策略能力

支持多种执行策略：

- **立即执行**：收到任务后立即执行
- **延迟执行**：延迟指定时间后执行
- **重试执行**：失败后自动重试
- **并行执行**：多个任务并行执行

### 监控管理能力

提供完整的监控和管理：

- **状态监控**：监控任务执行状态
- **日志记录**：记录执行日志
- **告警通知**：异常时发送告警
- **统计分析**：分析执行统计

## 三层结构

```
第一层：自动化任务清单 + 依赖拓扑   →  references/automation-catalog.md
第二层：方法论要求清单              →  references/automation-requirements.md
第三层：方法论范本库                →  references/exemplars.md
```

## 使用规则

### 执行流程

1. **任务定义**：定义自动化任务的内容和目标
2. **调度设置**：设置任务的执行时间或触发条件
3. **策略配置**：配置任务的执行策略和错误处理
4. **任务启动**：启动自动化任务
5. **监控管理**：监控任务执行状态，处理异常

### 任务类型规则

**一次性任务**：
- 设置scheduleType为"once"
- 设置scheduledAt为ISO 8601格式的时间
- 不需要设置RRULE

**循环任务**：
- 设置scheduleType为"recurring"
- 设置RRULE为RFC 5545格式的调度规则
- 可选设置validFrom和validUntil

**条件触发任务**：
- 设置triggerType为"condition"
- 定义触发条件
- 设置条件检查间隔

### 调度规则规则

**RRULE语法**：
```
FREQ=frequency;INTERVAL=interval;BYDAY=days;BYMONTH=months
```

**频率类型**：
- DAILY：每天
- WEEKLY：每周
- MONTHLY：每月
- YEARLY：每年

**示例**：
- 每天：FREQ=DAILY
- 每周一：FREQ=WEEKLY;BYDAY=MO
- 每月1日：FREQ=MONTHLY;BYMONTHDAY=1
- 每年1月1日：FREQ=YEARLY;BYMONTH=1;BYMONTHDAY=1

### 执行策略规则

**错误处理策略**：
| 策略 | 说明 | 适用场景 |
|------|------|----------|
| fail_fast | 快速失败 | 关键任务 |
| retry | 自动重试 | 临时错误 |
| continue | 继续执行 | 非关键任务 |
| fallback | 降级执行 | 有备选方案 |

**重试策略**：
| 策略 | 说明 | 适用场景 |
|------|------|----------|
| immediate | 立即重试 | 临时错误 |
| exponential | 指数退避 | 网络错误 |
| fixed | 固定间隔 | 服务不可用 |

## 执行框架

本技能内嵌了完整的自动化任务执行框架。

**核心理念**：
- **定时执行**：按预定时间自动执行任务
- **条件触发**：当条件满足时自动触发任务
- **智能调度**：根据资源和优先级智能调度任务

**统一执行流程**：收到任务后按5步执行——任务定义 → 调度设置 → 策略配置 → 任务启动 → 监控管理。

### Step 0：任务定义

定义自动化任务：
- 任务名称和描述
- 任务目标和范围
- 执行内容和输出
- 依赖关系和约束

### Step 1：调度设置

设置任务调度：
- 选择任务类型（一次性/循环/条件触发）
- 设置执行时间或触发条件
- 配置调度规则（RRULE/Cron）
- 设置有效期（validFrom/validUntil）

### Step 2：策略配置

配置执行策略：
- 选择错误处理策略
- 配置重试策略
- 设置超时控制
- 配置资源限制

### Step 3：任务启动

启动自动化任务：
- 验证任务配置
- 注册到调度器
- 启动监控
- 记录启动日志

### Step 4：监控管理

监控任务执行：
- 监控执行状态
- 记录执行日志
- 处理异常情况
- 统计执行数据

## 事实纪律

1. 任务定义必须明确，不可模糊
2. 调度设置必须准确，不可错误
3. 执行策略必须合理，不可过度
4. 监控必须及时，不可延迟
5. 日志必须完整，不可遗漏