AB
AiBoss站
project

GoSkill - 开源的长任务推进工具,内置重试循环与状态追踪

GoSkill 是面向长任务与复杂任务的推进工具。工具通过装饰器或类方式封装任务,将'一次性 Skill 调用'升级为'围绕目标持续推进,直到满足成功标准或超时'的执...

GoSkill是什么

GoSkill 是面向长任务与复杂任务的推进工具。工具通过装饰器或类方式封装任务,将”一次性 Skill 调用”升级为”围绕目标持续推进,直到满足成功标准或超时”的执行模式。GoSkill适用需要明确验收标准、状态追踪和分阶段完成的自动化场景,如大规模重构、长时间分析等。

GoSkill的主要功能

  • 目标定义:支持通过 goal 参数明确任务目标,将任务意图结构化表达。
  • 成功标准:通过 criteria 字典定义多维度验收条件,量化完成标准。
  • 持续重试:内置执行循环,未达标时自动等待并继续尝试,直到成功或超时。
  • 状态追踪:提供 status 属性实时查看尝试次数、运行时长及检查结果。
  • 结构化返回run_with_result() 返回包含 success、attempts、criteria_report 的结构化结果对象。
  • 灵活封装:支持装饰器 @goskill 和类 GoSkill 两种调用方式,轻量嵌入现有代码。

如何使用GoSkill

  • 安装依赖:克隆仓库后执行 make install-dev 完成环境配置。
  • 定义任务:使用装饰器或实例化 GoSkill 类,传入 goalcriteriamax_hours 等参数。
  • 编写逻辑:在函数或 lambda 中实现具体任务逻辑并返回结果字典。
  • 执行运行:调用 run() 获取原始结果,或调用 run_with_result() 获取结构化执行报告。
  • 查看状态:通过 skill.status 查看当前目标、尝试次数、已运行时长及达标情况。
  • 运行示例:执行 python examples/basic_usage.py 查看最小可运行 Demo。

GoSkill的关键信息和使用要求

  • 项目定位:单机、单进程、轻量级的 goal-driven execution helper,非分布式调度系统。
  • 适用边界:适合长任务、复杂任务、需明确验收标准的场景;不适合单次问答、极小同步函数。
  • 依赖环境:Python 环境,通过 Makefile 管理开发、测试与构建流程。
  • 协议许可:支持Apache-2.0 开源协议,可自由商用与二次开发。
  • 当前状态:实验性执行模式原型,面向 OpenClaw / Agent workflow 的轻量封装。

GoSkill的核心优势

  • 目标驱动:将任务从”执行一次”升级为”围绕目标持续推进”,确保结果可验收。
  • 过程透明:内建状态追踪机制,随时查看尝试次数、时长及达标进度。
  • 轻量无侵入:仅通过装饰器或类封装即可接入,不改造原有业务逻辑。
  • 预期对齐:明确项目边界,不承诺分布式调度等企业级能力,建立可信预期。

GoSkill的项目地址

  • GitHub仓库:https://github.com/AIPMAndy/goskill

GoSkill的同类竞品对比

对比维度 GoSkill Tenacity Prefect
核心定位 目标驱动执行辅助工具 通用重试装饰器库 现代数据流工作流引擎
目标定义 原生支持 goal 参数 无目标概念 通过 Flow 间接定义
验收标准 结构化 criteria 字典 仅异常类型判断 支持自定义状态检查
持续重试 达标或超时自动循环 丰富退避策略 任务级重试配置
状态追踪 内建 status 实时查看 无状态对象 完整 UI 与 API 状态流
执行封装 装饰器 + 类,轻量无侵入 装饰器极简接入 需定义 Flow,较重
部署依赖 无,纯 Python 单机运行 需 Prefect Server/Cloud
适用场景 长任务/复杂任务/明确验收标准 函数级异常重试 数据管道/ETL/定时调度

GoSkill的应用场景

  • 代码工程迁移:适用大规模项目重构或跨平台迁移,如将 Android 项目迁移至鸿蒙系统,通过设定编译零错误、测试通过率等硬性指标,持续迭代直至达标。
  • 批量数据处理:适合长时间分析任务,如批量分析 1000 份财报或处理大规模数据集,利用覆盖率与完整性标准自动推进,避免人工逐轮检查。
  • 自动化验收流程:面向需要明确验收标准的 CI/CD 或测试环节,将”执行—校验—重试”封装为闭环,确保每次部署都满足预设质量门槛。
  • 科研与迭代实验:通过定义阶段性成功标准,自动追踪实验进度,减少重复手动操作。
  • Agent 工作流增强:作为 OpenClaw 或 AI Agent 的长任务执行封装层,弥补单次 Skill 调用”做完即停”的缺陷,提升复杂任务完成的可靠性。