Skill: gerald-luo/agent-task-logger (version 1.3.0)

# Agent Task Logger - Agent 任务日志系统 一个类似 Tomcat catalina.out 的实时任务日志系统，**自动检测 Agent 工作空间**，用于记录和展示 Agent 执行任务的进度。 ## 🚀 快速使用 ### 1. 初始化日志系统（自动检测工作空间） ``` 初始化日志系统 ``` ### 2. 初始化日志系统（手动指定工作空间） ``` 初始化日志系统 workspace=/path/to/workspace ``` ### 2. 记录任务开始 ``` 记录任务开始 task-id=task-001 task-name="停止 Tomcat 8" estimated-time=5s ``` ### 3. 记录执行命令 ``` 记录执行命令 task-id=task-001 command="cd /path && ./shutdown.sh" ``` ### 4. 记录任务状态 ``` 记录任务状态 task-id=task-001 status="成功" actual-time=3.5s ``` ### 5. 查看实时日志 ```bash tail -f /Users/openclaw/.openclaw/workspace/logs/agent-task.log ``` ## 📋 参数说明 ### 初始化日志系统 | 参数 | 必填 | 默认值 | 说明 | |------|------|--------|------| | `workspace` | ❌ | 自动检测 | 工作空间根目录（可选，自动检测） | | `log-dir` | ❌ | `logs` | 日志目录（相对于 workspace） | | `log-file` | ❌ | `agent-task.log` | 日志文件名 | ### 工作空间自动检测 Skill 会自动检测 Agent 的工作空间位置，检测顺序： 1. `WORKSPACE` 环境变量 2. `OPENCLAW_WORKSPACE` 环境变量 3. 脚本所在目录的父目录 4. `~/.openclaw/workspace` 5. 当前目录 **无需手动指定工作空间，开箱即用！** ### 记录任务开始 | 参数 | 必填 | 说明 | |------|------|------| | `task-id` | ✅ | 任务唯一标识 | | `task-name` | ✅ | 任务描述 | | `estimated-time` | ❌ | 预估处理时间 | ### 记录执行命令 | 参数 | 必填 | 说明 | |------|------|------| | `task-id` | ✅ | 关联的任务 ID | | `command` | ✅ | 执行的 shell 命令 | ### 记录任务状态 | 参数 | 必填 | 说明 | |------|------|------| | `task-id` | ✅ | 关联的任务 ID | | `status` | ✅ | 任务状态（成功/失败/等待中） | | `actual-time` | ❌ | 实际处理时间 | ## 💡 触发词 - 初始化日志系统 - 记录任务开始 - 记录执行命令 - 记录任务状态 - 记录任务完成 - 记录错误信息 - 查看任务日志 ## 📝 日志格式 参考 Tomcat catalina.out 格式，中文显示： ``` 04-3 月 -2026 17:38:00.000 INFO [agent-task-1] com.openclaw.agent.TaskExecutor.execute 任务：停止 Tomcat 8 04-3 月 -2026 17:38:00.100 INFO [agent-task-1] com.openclaw.agent.TaskExecutor.execute 执行命令：cd /path && ./shutdown.sh 04-3 月 -2026 17:38:03.500 INFO [agent-task-1] com.openclaw.agent.TaskExecutor.execute 状态：Tomcat 8 关闭完成 04-3 月 -2026 17:38:03.600 INFO [agent-task-1] com.openclaw.agent.TaskExecutor.execute 预估时间：5 秒 | 实际时间：3.5 秒 04-3 月 -2026 17:38:03.700 INFO [agent-task-1] com.openclaw.agent.TaskExecutor.execute 结果：成功 ``` ## 🔧 使用示例 ### 示例 1：完整任务流程（自动检测工作空间） ```bash # 1. 初始化（自动检测工作空间） 初始化日志系统 # 2. 开始任务 记录任务开始 task-id=deploy-001 task-name="部署 Java 项目" estimated-time=60s # 3. 执行命令 记录执行命令 task-id=deploy-001 command="mvn clean package" # 4. 记录状态 记录任务状态 task-id=deploy-001 status="成功" actual-time=45s # 5. 完成任务 记录任务完成 task-id=deploy-001 ``` ### 示例 2：多任务并行 ```bash # 任务 1：编译后端 记录任务开始 task-id=backend-compile task-name="编译后端项目" estimated-time=30s 记录执行命令 task-id=backend-compile command="mvn compile" 记录任务状态 task-id=backend-compile status="成功" actual-time=25s # 任务 2：打包前端 记录任务开始 task-id=frontend-build task-name="打包前端项目" estimated-time=45s 记录执行命令 task-id=frontend-build command="npm run build" 记录任务状态 task-id=frontend-build status="成功" actual-time=40s ``` ### 示例 3：错误处理 ```bash 记录任务开始 task-id=deploy-app task-name="部署应用" estimated-time=30s 记录执行命令 task-id=deploy-app command="./deploy.sh" 记录错误信息 task-id=deploy-app error="权限不足，需要 sudo" 记录任务状态 task-id=deploy-app status="失败" actual-time=5s ``` ## 📊 日志级别 | 级别 | 说明 | 使用场景 | |------|------|---------| | `INFO` | 普通信息 | 任务开始、命令执行、状态更新 | | `WARN` | 警告信息 | 非致命错误、性能警告 | | `ERROR` | 错误信息 | 任务失败、异常 | | `DEBUG` | 调试信息 | 详细调试输出 | ## 🛠️ 高级功能 ### 查看任务统计 ```bash # 查看所有任务状态 grep "结果：" /Users/openclaw/.openclaw/workspace/logs/agent-task.log # 查看失败任务 grep "结果：失败" /Users/openclaw/.openclaw/workspace/logs/agent-task.log # 查看任务耗时 grep "实际时间：" /Users/openclaw/.openclaw/workspace/logs/agent-task.log ``` ### 日志轮转 ```bash # 按日期归档日志 mv /Users/openclaw/.openclaw/workspace/logs/agent-task.log \ /Users/openclaw/.openclaw/workspace/logs/agent-task-$(date +%Y%m%d).log ``` ## ⚠️ 注意事项 1. **日志文件权限**：确保日志目录可写 2. **日志大小**：建议定期归档，避免文件过大 3. **并发写入**：支持多任务并发记录 4. **时间格式**：使用 24 小时制，精确到毫秒 ## 📁 文件结构 ``` workspace/ ├── logs/ │ ├── agent-task.log # 主日志文件 │ ├── agent-task-20260304.log # 归档日志 │ └── ... └── skills/ └── agent-task-logger/ ├── SKILL.md # 技能说明 └── scripts/ └── logger.sh # 日志工具脚本 ``` ## 🔄 更新日志 - v1.0 - 初始版本，支持基本任务记录 - v1.1 - 添加中文支持 - v1.2 - 添加任务统计功能


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)