Skip to main content

stp

结构化任务规划与分步执行(Structured Task Planning)。支持两种模式:(1) 文件模式 - 从 Markdown 任务文档加载步骤执行;(2) 自然语言模式 - 接受自然语言任务描述,自动生成计划书并确认后执行。触发词:/stp、任务规划、步骤执行。功能包括:步骤分解、状态跟踪、执行日志记录、快速失败策略。

الانتقال إلى التثبيت

معلومات المصدر

المستودع
Kernel8901/ai-agent-skills-classification
آخر نشاط في المصدر
٤ أبريل ٢٠٢٦ في ١٥:٢٦
لغة SKILL.md المكتشفة
الصينية
النجوم
٤
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
4 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
stp
description
结构化任务规划与分步执行(Structured Task Planning)。支持两种模式:(1) 文件模式 - 从 Markdown 任务文档加载步骤执行;(2) 自然语言模式 - 接受自然语言任务描述,自动生成计划书并确认后执行。触发词:/stp、任务规划、步骤执行。功能包括:步骤分解、状态跟踪、执行日志记录、快速失败策略。
# STP(Structured Task Planning)结构化任务规划与分步执行 ## 功能概述 1. **任务解析**:从 Markdown 任务文档加载步骤 2. **目录管理**:自动创建任务专属目录(格式:`task-{ID}`) 3. **文档生成**:生成标准化步骤文档和执行日志 4. **状态跟踪**:支持步骤状态标记(待执行/成功/失败) 5. **智能执行**:每个步骤作为子任务执行,附带成功判断标准 6. **快速失败**:步骤失败立即终止,不尝试替代方案 7. **完整日志**:所有 exec 命令和 AI 执行过程完整记录 --- ## 两种使用模式 ### 模式 A:文件模式(原有) 用户提供写好的任务文档路径: ``` /stp /path/to/task.md ``` ### 模式 B:自然语言模式(新增) 用户用自然语言描述任务: ``` /stp 我想查一下腾讯、贵州茅台、Meta 的股票价格 ``` --- ## 模式 B:自然语言任务规划流程 当用户输入的不是 `.md` 文件路径,而是自然语言描述时,执行以下流程: ### 第一步:任务分析与计划生成 1. **理解用户意图**:分析自然语言,明确任务目标 2. **拆解执行步骤**:将任务分解为可执行的具体步骤 3. **生成计划书**:按标准格式生成 Markdown 任务文档 ### 第二步:确认循环 1. **展示计划书**:将生成的计划书完整展示给用户 2. **询问确认**: ``` 📋 任务计划书已生成,请确认: - 输入 "ok" 或 "确认" → 开始执行 - 输入修改意见 → 我会调整计划后重新展示 - 输入 "取消" → 放弃此任务 ``` 3. **修改循环**:如果用户有修改意见,调整计划书后重新展示,直到用户确认 ### 第三步:保存并执行 1. **生成文件名**:基于任务内容生成简短文件名(如 `stock-query.md`) 2. **保存位置**:`~/.openclaw/workspace/task-list/<filename>.md` 3. **开始执行**:按原有 STP 流程执行任务 ### 计划书标准格式 ```markdown # 任务名称 ## 任务描述 用户原始需求的简要描述 ## 技术方案 - 使用的工具/库/API - 关键技术约束 ## 核心执行步骤 - [ ] 步骤 1:具体描述(含成功标准) - [ ] 步骤 2:具体描述(含成功标准) - [ ] 步骤 3:具体描述(含成功标准) ## 预期产出 - 输出文件/结果说明 ``` ### 示例流程 **用户输入**: ``` /stp 我想查一下腾讯、贵州茅台、Meta 的股票价格 ``` **Agent 生成计划书**: ```markdown # 三支股票收盘价查询 ## 任务描述 查询腾讯控股、贵州茅台、Meta 三支股票的最新收盘价 ## 技术方案 - 使用 AkShare 库查询股票数据 - 支持 A股(沪深)、港股、美股三个市场 ## 核心执行步骤 - [ ] 步骤 1:编写基于 AkShare 的股票查询脚本,保存至 `temp/scripts/stock_query.py` - [ ] 步骤 2:查询贵州茅台(600519.SH)收盘价 - [ ] 步骤 3:查询腾讯控股(00700.HK)收盘价 - [ ] 步骤 4:查询 Meta(META.O)收盘价 ## 预期产出 - 三支股票的收盘价信息(股票名称、代码、日期、价格、市场) ``` **Agent 询问**: ``` 📋 任务计划书已生成,请确认: - 输入 "ok" 或 "确认" → 开始执行 - 输入修改意见 → 我会调整计划后重新展示 - 输入 "取消" → 放弃此任务 ``` **用户确认后**: - 保存到 `~/.openclaw/workspace/task-list/stock-query-20260207.md` - 开始执行 STP 任务流程 --- ## Agent 执行规范(重要!) 执行每个步骤时,**必须**记录关键命令和输出: ### 方法:步骤完成后补记执行日志 1. **执行步骤时**:正常用 `exec` tool 执行命令 2. **步骤完成后**:把关键命令和输出写入临时文件,然后用 `--exec-file` 记录 ```bash # 1. 先把执行记录写入临时文件 cat > /tmp/step_exec.log << 'EOF' [命令1] python3 -c "import akshare; print(akshare.__version__)" [输出1] AkShare version: 1.18.22 [退出码] 0 [命令2] python3 stock_query.py 600519.SH [输出2] 贵州茅台 收盘价: 1515.01 [退出码] 0 EOF # 2. 记录步骤状态时附带执行日志 python3 execute_task.py --log task-8 1 success "脚本执行成功" --exec-file /tmp/step_exec.log ``` ### 执行日志格式建议 ``` [命令] <执行的完整命令> [输出] <命令输出(可截断关键部分)> [退出码] <0=成功, 非0=失败> ``` --- ## 模式 A:文件模式使用方式 ### 步骤1:准备 Markdown 任务文档 ```markdown # 任务名称 ## 核心执行步骤 - [ ] 步骤 1:具体描述 - [ ] 步骤 2:具体描述 - [ ] 步骤 3:具体描述 ``` ### 步骤2:生成任务目录和步骤文档 ```bash python3 ~/.openclaw/workspace/skills/stp/scripts/execute_task.py --task-file /path/to/task.md ``` **任务目录命名规则**:`task-{自增ID}` - 使用 `.task_counter` 计数器文件记录自增ID - 目录示例:`task-1/`、`task-2/`、`task-3/` ### 步骤3:查看生成的文档 任务目录结构: ``` tasks/ └── task-XXX/ ├── task_steps.md # 步骤文档(含状态标记和成功标准) ├── task_execution.log # 完整执行日志(含所有exec命令) ├── result.txt # 结果汇总 └── temp/ ├── scripts/ └── downloads/ ``` ### 步骤4:执行步骤并更新状态 主 Agent 读取 `task_steps.md`,逐个执行步骤,然后更新状态标记: - `[ ]` → `✓`(执行成功) - `[ ]` → `✗`(执行失败) --- ## 状态标记 | 标记 | 含义 | |------|------| | `[ ]` | 待执行 | | `✓` | 执行成功 | | `✗` | 执行失败(任务终止) | ## 执行规则(重要!) ### 1. 原方案优先原则 **必须严格按照任务文档中定义的方案执行,禁止擅自更改实现方式。** 示例: ``` ❌ 错误做法:原方案要求用 AkShare,实际改用新浪 API ✅ 正确做法:严格使用 AkShare,遇到问题按失败处理 ``` ### 2. 快速失败策略 **原则**:一步到位,不做替代方案尝试 - 子任务返回「失败」状态 → 立即终止整个任务链 - 不自动重试、不尝试其他实现方式 - 记录失败原因到日志 ### 3. 失败处理 - 方案执行失败 → 立即终止,不尝试替代方案 - 明确记录失败原因(违反方案/技术限制/接口问题) - 任务结果标记为 FAILED --- ## 资源 ### scripts/ - `execute_task.py` - 主脚本 - 解析任务文档并生成步骤文件 - 管理 `.task_counter` 自增ID - 支持 `--subtask` 模式:生成子任务 prompt - 支持 `--exec-file` 参数:附带执行日志 - 自动记录 exec 命令到日志 ### task-list/ - 存放自然语言模式生成的任务计划书 - 文件命名格式:`<简短描述>-<日期>.md` > **注意**:`stp` 是 `structured-task-planning` 的缩写。
عرض على GitHub