Eucalyptus-项目设想
Eucalyptus — 7x24 AI数字分身系统
序
说实话,很长一段时间我都在想一个问题:
一个人的精力到底能覆盖多少事情?
白天要上班,晚上要学习,周末要写博客,还要折腾各种副业项目。一个人的产出天花板,说到底就是时间。
直到有一天,我在用 Claude Code 写代码的时候,突然脑子里蹦出来一个想法——
如果Claude能自己跑呢?如果我不在电脑前,它也能帮我干活呢?
这个念头一出来就收不住了。
于是就有了这个项目:Eucalyptus。
一个7x24小时不间断运行的AI数字分身系统。
初心
我到底想要什么
很简单,我想要另一个我。
不是那种聊天机器人式的"数字人",而是真的能帮我干活的——能修Bug、能写需求、能重构代码、能部署上线的那种。
我在公司同时负责好几个项目,每个项目都有自己的技术栈、自己的代码仓库、自己的环境配置。每次切项目都要重新回忆上下文,特别累。
所以我的需求其实很朴素:
- 它得认识我的项目:知道每个项目的架构、技术栈、代码规范
- 它得能独立干活:我丢个任务给它,它自己能完成
- 它得7x24在线:我睡觉的时候它在干活,我摸鱼的时候它也在干活
- 它得同时处理多个任务:一个人干多个人的活
- 没有技术边界:前端后端包括安卓的活都能干
听起来是不是有点科幻?
但说实话,当我把这三个项目拼到一起之后,我发现这事真的能成。
灵感来源
灵感来自于三个很日常的场景:
场景一:半夜线上出了Bug
凌晨两点,告警短信响了。得爬起来看日志、定位问题、修代码、提PR、等CI、部署上线。等忙完天都快亮了。
我想的是:如果有个AI能自动接收这个Bug任务,自己去分析日志、定位问题、修好代码、提交上去,我早上起来只需要Review一下就行了。
场景二:同时在推进多个需求
周会上排了三个需求,后端一个、前端一个、还有个数据迁移的脚本。正常情况下得一个一个做,或者上下文来回切换。
我想的是:如果我有三个AI分身,每个负责一个需求,同时推进,我只需要最后统一验收就行。
场景三:技术债越积越多
每次Sprint结束,总有一堆"后续优化"的TODO没人认领。重构、性能优化、代码规范统一……这些事重要但不紧急,一直被搁置。
我想的是:如果有个AI能在空闲时间自动清理这些技术债,代码质量不就一直在提升了吗?
这三个场景,串起来就是Eucalyptus的核心目标。
项目组成
整个系统由三个部分组成,缺一不可:
┌─────────────────────────────────────────────────────────┐
│ Eucalyptus 全景图 │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌───────────┐ │
│ │ vistask-ai │───>│ process │───>│ Eucalyptus│ │
│ │ 任务调度中心 │<───│ 任务执行引擎 │<───│ 数字分身 │ │
│ └──────────────┘ └──────────────┘ └───────────┘ │
│ 老板 包工头 打工人 │
└─────────────────────────────────────────────────────────┘
一、vistask-ai — 任务调度中心
"老板"角色,负责发活儿。
这是一个基于Spring Boot + Vue3搭建的任务管理平台。说白了他就是一个任务看板,但是不一般的地方在于——它能让AI来接任务。
通过MCP(Model Context Protocol)协议,暴露了三个核心工具:
| 工具 | 作用 |
|---|---|
claimTask | AI自动认领待处理任务 |
completeTask | 标记任务完成 |
failTask | 标记任务失败并记录错误信息 |
任务的生命周期也很清晰:
PENDING → IN_PROGRESS → COMPLETED
→ FAILED
→ CANCELLED
任务里可以携带提示词(Prompt)、上下文文件、会话ID等等。这就意味着AI接到的不是一句空话,而是有完整上下文的、可执行的工作单。
二、Eucalyptus — 数字分身
"打工人"角色,负责干活。
这是整个系统的灵魂。基于Claude Code构建的数字分身系统,有41个技能和22个Agent。
它有多厉害呢?我简单列几个:
- master-skill:总调度,所有请求先进这里,再分发到对应的工作流
- fix-workflow:修Bug专用的六阶段流水线(分诊→复现→诊断→修复→交付→验证)
- feature-workflow:做新需求的流程
- refactor-workflow:重构代码的流程
- deploy-workflow:部署上线的流程
而且它有记忆。每个项目都有独立的知识库,包括:
context.yaml:项目上下文tech-stack.md:技术栈architecture.md:架构文档- 任务历史、Bug历史
这不就是我一直想要的那个"认识我所有项目"的AI吗?
三、Task Processor — 执行引擎
"包工头"角色,负责把老板的活儿交给打工人。
这是一个Python写的任务轮询器。它干的事很简单:
- 每隔10秒去vistask-ai看看有没有新任务
- 有任务就领回来
- 调用Eucalyptus(Claude CLI)执行
- 实时把进度流式传回vistask-ai
- 执行完了,把结果文件上传到文件服务器
while True:
task = api.claim_task() # 认领任务
if task:
result = claude.execute(task) # 交给数字分身
api.complete_task(task, result) # 上报结果
else:
sleep(10) # 没活儿就歇会
三个组件,一个完整的闭环。
安排
项目的推进计划大致如下:
Phase 1:让数字分身能认识我的项目
Phase 2:让数字分身能接到活儿
Phase 3:让数字分身7x24在线
Phase 4:一人多角
举个实际的例子
说点实际的,这套系统跑起来是什么样的?
例子:凌晨两点的Bug
时间线:
────────────────────────────────────────────────────────
02:00 监控系统检测到异常,自动在vistask-ai创建Bug修复任务
02:01 Task Processor轮询到新任务,自动认领
02:01 调用Eucalyptus的fix-workflow
02:02 fix-triage Agent:分析Bug描述,分诊分类
02:03 fix-reproduce Agent:尝试复现问题
02:05 fix-diagnose Agent:定位根因
02:08 fix-repair Agent:编写修复代码
02:10 fix-deliver Agent:提交代码,创建PR
02:11 任务标记为完成,进度上报到vistask-ai
────────────────────────────────────────────────────────
08:00 我起床了,打开vistask-ai看板,发现Bug已经修好了
08:05 Review一下代码,合并PR,收工
整个过程,我只需要在早上花5分钟Review。
这要是搁以前,我得从床上爬起来,迷迷糊糊地花一个小时才能搞定。
好处
说几点实实在在的好处:
1. 时间解放
最直观的。以前我一天能写8小时代码(算上摸鱼可能只有4小时)。现在AI可以24小时不间断工作,而且可以多个任务并行。产出不是一个量级的。
2. 上下文零损耗
以前切项目最痛苦的就是回忆上下文。现在Eucalyptus有项目记忆,每个项目的架构、技术栈、历史Bug都在知识库里。不管什么时候接手,上下文都是完整的。
3. 响应速度
线上出了问题,不需要等人响应了。从发现问题到修复完成,整个链路全是AI,不存在"等待"这个环节。
4. 一个人就是一个团队
以前要一个团队才能同时推进多个需求。现在,我一个人加上AI分身,就能同时处理多个项目的多个任务。
一个人,多个角色:
- 我是产品经理,负责定义任务
- AI是我的开发工程师,负责实现
- AI是我的测试工程师,负责验证
- AI是我的运维工程师,负责部署
- AI还是我的代码审查员,负责Review
5. 技术债自动清理
AI在空闲时间可以自动处理那些"重要但不紧急"的技术债。重构、优化、规范统一……代码质量会持续提升。
最后
这个项目的起点其实就是一个很简单的想法:让AI替我打工。
但做着做着发现,这不只是一个自动化工具,更像是在构建一个数字化的自己。它认识我的项目、理解我的代码风格、遵循我的开发规范、甚至能帮我积累经验。
Eucalyptus(桉树),生长迅速、适应力强。我希望这个系统也能像桉树一样,快速成长,适应各种项目和场景。
说到底,程序员的终极目标不就是——让自己失业吗?
当然不是真的失业,而是把重复的、机械的工作交给AI,让自己有更多的时间去思考更有价值的事情。
这才是Eucalyptus的初心。
