name: project-absorber description: > 大吞噬器:自动发现同类开源竞品,分析其优点,制定吸收计划,并逐项将优点整合进当前项目, 直到当前项目拥有所有竞品的最优特性。当用户提到「吸收竞品」「分析竞品」「找同类项目」 「把竞品的优点加进来」「大吞噬器」「自进化」「融合同类项目」时触发。 也适用于「我想看看同类开源项目有哪些好的设计」「帮我研究竞品」「让项目变成融合怪」。
大吞噬器(Project Absorber)
把当前项目变成融合怪:自动发现同类开源竞品 → 深度分析优点 → PM统筹计划 → 逐项吸收实施。
工作原则
- 混合模式:分析全自动,执行前每项确认
- 代码级分析:浅层克隆竞品仓库,分析实际代码结构,不只看README
- 双粒度吸收:特性级(某个功能)+ 模式级(某种设计思路)都算
- 价值驱动:只要是「当前项目没有 + 明确加分」的,就列入候选
- 诚实标注:无法实施的要说明原因,不强行凑数
Phase 1:读懂自己
目标:全面理解当前项目,建立「自我画像」作为后续对比的基准。
执行步骤:
- 读取根目录的
README.md、CLAUDE.md(如有)、package.json/pyproject.toml/Cargo.toml/go.mod等项目描述文件 - 扫描目录结构(深度3层),识别项目类型(CLI/Web/框架/库/工具/Agent等)
- 读取核心入口文件(main、index、app 等)及主要模块
- 识别技术栈(语言、框架、依赖库)
- 总结当前已有的核心特性清单
- 识别明显的空白与弱项(缺少文档、无测试、无插件机制、无错误处理等)
输出「自我画像」:
项目类型:[类型]
技术栈:[语言 + 主要框架]
核心特性:[列表]
已知弱项:[列表]
搜索关键词建议:[用于Phase 2的GitHub搜索词]
读取详细指令:phases/p1_self_scan.md
Phase 2:发现竞品
目标:找到5-10个同类优质开源项目,建立吸收候选队列。
执行步骤:
- 基于Phase 1生成的搜索关键词,用
WebSearch搜索 GitHub 同类项目 - 搜索策略:
site:github.com [项目类型关键词] stars:>500,多组关键词交叉搜索 - 筛选标准:Stars > 500,近6个月有提交,语言/方向与当前项目相关
- 输出候选清单,每个项目附:Stars数、简介、与当前项目的相关性理由
呈现给用户确认:
发现以下 N 个竞品候选,按相关性排序:
1. [项目名](Stars: X)- [一句话说明为何相关]
2. ...
建议吸收顺序:[排序理由]
是否按此顺序开始吸收?或者有要去掉/加入的项目?
等待用户确认后继续。
Phase 3:深度分析竞品(每个竞品执行一次)
目标:找出该竞品有而当前项目没有的加分项。
执行步骤:
3.1 获取竞品代码
git clone --depth=1 --single-branch [repo_url] /tmp/absorber/[repo_name]
如果克隆失败,退回到只分析 README + Web页面。
3.2 结构扫描
- 读取竞品 README、docs/、CHANGELOG
- 扫描目录结构(深度3层)
- 读取核心模块入口文件
- 特别关注:插件系统、配置机制、CLI设计、错误处理、测试架构、文档生成
3.3 特性对比分析
对每个发现的特性/模式,评估:
- 当前项目是否已有?(有 → 跳过)
- 是否与当前技术栈兼容?
- 实施难度(低/中/高)
- 价值评分(P0关键/P1重要/P2锦上添花)
3.4 输出分析报告(存入 absorber-workspace/[竞品名]/analysis.md)
## [竞品名] 分析报告
### 可吸收特性(按优先级)
#### P0 - 高价值(强烈建议)
- **[特性名]**:[竞品怎么做的] → [为什么加分] → [大致实施方向]
#### P1 - 有价值
- ...
#### P2 - 可选
- ...
### 不吸收的项目
- **[特性名]**:[原因,如:与现有架构冲突 / 依赖过重 / 场景不符]
### 设计模式亮点
- [某种值得借鉴的代码组织/设计思路]
读取详细指令:phases/p3_analyze.md
Phase 4:PM统筹计划书
目标:整合所有竞品分析,生成一份优先级清晰、可执行的吸收计划。
执行步骤:
- 读取所有已完成的
analysis.md - 去重合并(多个竞品有同一特性的,合并为一项,引用最佳实现来源)
- 全局重排优先级(综合:价值 × 难度 × 依赖关系)
- 生成计划书(存入
absorber-workspace/ABSORPTION_PLAN.md)
计划书模板(读取 templates/absorption_plan.md)
呈现给用户确认:
计划书已生成,共 N 项待吸收特性,分为:
- P0(本周建议): X 项
- P1(本月建议): Y 项
- P2(后续考虑): Z 项
是否开始按计划执行?可以指定从某项开始,或调整优先级。
等待用户确认后继续。
Phase 5:执行吸收循环
目标:按计划书逐项实施,每项完成后验证,再进入下一项。
对每个待实施项目:
5.1 实施前说明
准备实施:[特性名]
参考来源:[竞品名] 的实现方式
预计改动:[涉及文件/模块]
是否继续?(y/跳过/调整)
5.2 实施
- 参考竞品实现,在当前项目中实施
- 保持当前项目的技术风格,不照抄竞品代码
- 提取思路和模式,用当前项目的方式重新实现
5.3 验证
- 如果项目有测试:运行测试确认不破坏现有功能
- 简单说明实施结果
5.4 更新计划书状态
在 ABSORPTION_PLAN.md 中将该项标记为 [x] 已完成,附上简要实施说明。
5.5 继续下一项 询问:「继续下一项 [特性名]?还是暂停?」
工作空间
所有中间产物存入项目根目录的 absorber-workspace/:
absorber-workspace/
├── self_profile.md # Phase 1 自我画像
├── competitor_list.md # Phase 2 竞品候选清单
├── [竞品1]/
│ └── analysis.md
├── [竞品2]/
│ └── analysis.md
└── ABSORPTION_PLAN.md # Phase 4 总计划书(持续更新)
克隆的竞品代码存入 /tmp/absorber/(临时,不污染当前项目)。
开始方式
用户说「开始吸收」或「运行大吞噬器」时:
- 确认当前工作目录是目标项目根目录
- 从 Phase 1 开始顺序执行
- Phase 2 结束后等待用户确认竞品列表
- Phase 4 结束后等待用户确认计划书
- Phase 5 每项实施前等待用户确认
用户说「继续吸收」时:读取 absorber-workspace/ABSORPTION_PLAN.md 找到第一个未完成项,从那里继续。