Post

AI能力集 -- 开发一个待办任务自动执行系统

AI能力集 -- 开发一个待办任务自动执行系统

1. 引言

几个Claw系列项目的核心工作流,原理上应该都是Agent的的ReAct循环+工具调用。

想法:分析学习项目代码不需要大而全,尤其现在AI生成代码速度远远超过个人能阅读的速度。只要关注自己的核心需求,并收缩一些注意力。

思路: 开发一个任务领取系统,工作上提效; 知识库;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
● 需求概述
/superpowers:brainstorming 我有个需求,设计实现一个个人的ai领取任务系统,最好是有可视化页面。我可以从页面上添加删除待办任务,ai自动从任务池获取任务并进行执行实现。结果需要形成报告,我能从页面看过程及系列:什么是否领取的,什么时候执行,完成时间,方案如何,评估如何,可以指定不同模型或者agent负责评估。我用的是腾讯的code buddy ide(类似cursor)以及相应的cli
● 现有方案调研
帮我确认下有什么热门的开源ai任务发布和执行系统,个人待办任务添加任务即可,ai自动认领,可以观察过程和结果。不用容器。
我的环境里不用openclaw类软件这么丰富的功能,不接入im,是不是从某个项目截取一部分逻辑就行。执行任务也是利用claude code的cli去完成
multica
https://mp.weixin.qq.com/s/87Qy-hPIOIZfHaucSzkdxw,要docker
openclaw
  lobster ai网易的,openclaw作为执行引擎,增加安全机制

● 轻量级解决方案设计
从 Nanobot/PicoClaw 截取的最小核心模块
不用 OpenClaw 等重型框架,直接基于 Claude Code CLI 做轻量任务执行,本质就是:极简调度 + 命令行调用 + 结果解析,无容器、无 IM、无复杂依赖。
● 核心模块设计
一、核心思路(截取最小逻辑)
你只需要保留 3 个核心模块(从现有项目/框架里抽即可):
1. 任务调度(极简)
​
● 任务队列/列表
● 简单循环/定时触发
● 状态管理(待执行/执行中/成功/失败)
​
2. Claude Code CLI 调用封装
​
● 构造命令行参数
● 非交互执行( -p )
● 权限预授权( --allowedTools )
● 输出 JSON 解析
​
3. 结果处理与循环
​
● 解析 JSON 输出
● 判断是否需要多轮( --max-turns )
● 简单记忆/上下文传递
不需要:IM 接入、多 Agent 协作、复杂记忆、插件系统、Web 服务、容器编排。
● 模块裁剪建议
1. 原项目里完全用不到的模块直接整段删除:
多智能体路由
权限/用户系统
实时消息推送
环境隔离容器层
2. 可选择性保留:
任务超时
失败重试次数
执行日志分级
● 钉钉通知集成
claude code里需要我确认和完成时,进行hook通知,调用我自己的一个钉钉通知mcp
结合你的需求:
1. 极简裁剪版架构(截取 PicoClaw/Nanobot 最小核心)
​
2. 依靠 Claude Code CLI 执行任务
​
3. 无容器、无 IM、无多余模块
​
4. Hook 关键点:Claude 需要人工确认 / 任务完成 时,调用你自研的「钉钉通知 MCP」
我给你完整落地方案 + 可直接复用代码 + 原项目对应截取位置。
● 详细实现方案
一、核心实现思路
1. 拦截 Claude Code 两种关键节点
​
● 节点A:触发人工确认(需要你手动点击同意/拒绝)
​
● 节点B:任务完整执行完成 / 异常终止
​
2. 调用方式:
你的钉钉通知是 MCP 服务,直接走 HTTP / MCP 协议请求推送消息
​
3. 完全复用之前精简的调度器,只新增两处 Hook 埋点
​
4. 从 PicoClaw / Nanobot 源码对应位置:
​
● 执行器回调钩子
​
● 任务生命周期钩子
● 源码截取位置
二、原项目对应截取位置(方便你自行摘抄)
1. PicoClaw
● 执行器生命周期钩子: app/executor/base.py  里  on_need_confirm  /  on_task_finish
 
​
● 任务状态变更回调: app/core/task_life.py​
2. Nanobot
● 进程阻塞/等待确认钩子: bot/executor/claude_exec.py​
​
● 任务结束回调: bot/agent/runner.py​
👉 你只需要抄这两处回调逻辑,删掉原有通知(飞书/企微),替换成你的钉钉 MCP 调用即可。
● 可选优化功能
六、额外可选优化(贴合你本地无容器场景)
1. 增加白名单:安全指令不触发确认通知,只高危操作推送
​
2. 增加防抖:短时间多次确认只发一条钉钉
​
3. MCP 增加鉴权头、内网token 校验
​
4. 记录到本地日志文件,和钉钉通知联动
需要我给你加上高危指令白名单防抖版本
● Claude Code 原生 Hook 方案
claude code自身配置hooks
好,直接给你 Claude Code 原生 Hooks 配置方案(完全不用你自己写调度器,直接用 Claude 内置机制触发钉钉 MCP)。
一、你要的两个关键事件(官方原生支持)
This post is licensed under CC BY 4.0 by the author.