AI自动化CLI守护程序

CronBot是一款混合AI自动化CLI守护程序,通过分离确定性过滤器和AI推理层来解决LLM代理的上下文限制和成本问题,适用于自动化任务处理和复杂推理场景。

  • by V1Zak
  • HTML
  • 本地部署
  • 更新于
在 GitHub 查看 V1Zak/CronBot

使用说明

CronBot AI对决

欢迎来到 CronBot,自主软件工程中的一项独特实验。

前提很简单:为多个AI编码代理提供完全相同的架构计划(plan.md)以及编码标准(rules.md),然后看看每个人如何在最少的人为干预下自主构建相同的复杂应用程序。

应用程序:CronBot

目标应用程序是 混合AI自动化CLI守护进程. 它通过将工作分为两个不同的层来解决LLM代理的上下文限制和成本问题:

  1. 确定性过滤器: 使用 模型上下文协议(MCP) 快速免费获取数据(例如,搜索未读的Gmails,获取Slack历史记录)。
  2. AI推理: 只将优化、转换的数据块传递给LLM(如Claude)进行复杂的推理(总结、分类)。

运作原理

每个AI代理都有:

  1. plan.md --技术栈(Bun、TypeScript、SQLite、MCP、Anthropic SDK)和架构调用图。
  2. rules.md --严格的编码标准、幂等性要求、安全指南、分支规则和强制性 BUILD_META.json 要求。
  3. 最低限度的援助 --人工智能构建项目,编写核心引擎,实现MCP集成,构建数据转换器,并编写YAML测试作业,而无需持续的手动操作。

每个AI都会创建自己的 git 分支 (例如。, Claude, Codex, Gemini)完整实施。这 main 该分支仅保存共享文档。

生成元数据

每个AI都必须产生一个 BUILD_META.json 在其分支的项目根中包含:

  • 使用的型号名称和版本
  • 提供者和代理工具
  • 构建日期和持续时间
  • 令牌使用(输入/输出)和估计成本
  • 提交次数

法官使用这些数据进行公平、透明的报告。

法官与挑战

法官 是一个公正的人工智能评估者(参见 judge.md)这会产生孤立的子代理,进入每个分支,并通过残酷的三部分挑战:

  1. 本地机器警报 --机器人能否通过YAML作业管道触发操作系统级别的声音?
  2. 审计概念 --机器人能否通过MCP连接到Notion,发现模式(而不是产生幻觉),并创建记录?
  3. 执行摘要 --机器人链能否过滤->人工智能->操作来读取自己的日志,与克劳德一起总结,并起草一份Gmail?

用 /judge Claude代码中的slash命令。结果发布到 Judge/gauntlet-report.html.

评估标准

  • 易于设置: 最少的人为干预来修复依赖关系或语法错误
  • 有效期: 无无限循环或崩溃的最佳错误处理
  • MCP集成: 无缝处理标准MCP服务器,而不会产生工具名称或模式的幻觉
  • 代码质量: 严格的TypeScript、测试覆盖率、模块化

先决条件和快速入门

  1. 安装Bun: curl -fsSL https://bun.sh/install | bash
  2. 克隆仓库: git clone https://github.com/V1Zak/CronBot.git && cd CronBot
  3. 复制环境变量: cp .env.example .env 并填写API密钥(请参阅 .env.example 对于必需的变量:Anthropic、Notion、Google OAuth)。
  4. 切换到分支: git checkout <BranchName> (每个AI实现都有自己的分支)
  5. 安装依赖项: bun install
  6. 运行机器人:
    • bun run src/index.ts run <job.yaml> --运行单个YAML作业
    • bun run src/index.ts daemon <jobs-dir> --启动cron守护进程
    • bun run src/index.ts validate <job.yaml> --在不运行的情况下验证作业
    • bun run src/index.ts logs --查看执行历史记录
    • bun run src/index.ts list <jobs-dir> --列出可用作业
  7. 运行测试: bun test

存储库结构

CronBot/
├── plan.md              # Architecture and tech stack
├── rules.md             # Coding standards and build rules
├── judge.md             # The Judge's evaluation methodology
├── .env.example         # Required environment variables
├── Judge/
│   └── gauntlet-report.html   # Latest evaluation report
├── .claude/
│   └── commands/
│       └── judge.md     # /judge slash command skill
└── test_v1/             # Archived v1 implementations (local only)

每个分支都是由不同的AI自主构建的自包含实现。探索和比较。