• 核心发现:当底层 API (如 MiniMax) 发生 429 时,Claude CLI 内部会自动开启一段漫长的 exponential backoff 重试逻辑(期间完全静默,耗时可达 3 分钟之久)。
    如果最终依然失败,它会抛出一个合法的 JSON 格式的 `type: "result"` 报文,此时 `is_error: true`。
    
    旧版本会将这个 result 报文当做正常的 Agent 文本流式处理,导致把错误输出混进正常消息里。
    新版本增加逻辑,在解析到 result 且 is_error 为 true 时,不进行正常 resolve,而是立即 reject Promise 抛给上层,中断一切任务并给前台报红。
    yibo authored
     
    Browse Code »
  • 修复 Claude CLI 遇到严重 API 错误 (如 Http 429) 时,输出的不是合法 JSON,而是像
    'MiniMax 检查失败: HTTP 429: {...}' 这样的纯文本行。
    旧版本在 JSON.parse 失败后直接忽略。
    新版本增加 fallback,匹配非 JSON 行中的错误关键字并强制中断死等和前端展示。
    yibo authored
     
    Browse Code »
  • - 当底层模型 (MiniMax等) 抛出 API 错误时,Claude CLI 不会崩溃也不会输出 stderr,而是通过 stdout 输出 event.type='error' 的 JSON 块。
    - 未处理该事件导致协议层无法等到 result 事件,引发 Promise 永久挂起。
    - 修复:在_handleStreamEvent 拦截 error 块,主动抛出错误打断等待链,前端即可正常展示 ❌ API 请求失败。
    yibo authored
     
    Browse Code »
  • Claude CLI 遇到 API rate limit/hang 时可能既不输出 stdout 也不输出 stderr,
    导致 sendPrompt Promise 永远挂起,前端卡在思考中状态。
    
    - 新增 120s 空闲超时:无 stdout 活动自动 reject
    - 有 stdout 活动时重置计时器(避免长任务误判)
    - result 到达时清理计时器
    yibo authored
     
    Browse Code »
  • - ClaudeCliProtocol: stderr 检测 rate_limit/429/401 等致命错误时自动 reject sendPrompt Promise
    - agent-chat.js: 监听 stderr/disconnected 事件并通过 SSE 推送到前端
    - AgentChat.vue: error 事件停止 thinking 状态 + ACP 日志面板显示错误
    yibo authored
     
    Browse Code »
  • - System agents: 只保留 master (data/system/agents/master)
    - Templates: 所有可复用 agent 模板 (data/system/templates/)
    - Companies: 公司创建时自动部署 5 个元 Agent (innovator/hunter/digester/evolver/agent-creator)
    
    路径修复:
    - agent-chat.js: /list 扫描路径修正 (system/agents + companies/*/agents)
    - agent-manager.js: 动态 agent 查找路径修正
    - skill-config-loader.js: 修正 agents root
    - pipeline-service.js: pipelines 输出到 companies/{id}/pipelines/
    - billing.log: 移至 companies/{id}/logs/ 下
    
    Skills 标准化:
    - 所有 template agent 建立 .claude/skills/main_skill/SKILL.md
    - company-service._copyTemplate() 新增 .claude/ 目录复制
    - innovator SKILL.md v3.0: 移除旧 l3-hunt/l2-digest 命名
    - 清理重复 agent_creator, 统一为 agent-creator
    
    清理:
    - 移除 data/agents, data/workspace, data/logs, data/goals 旧目录
    - 清除所有未使用的 DATA_DIR 声明
    - 清除 template 中的 conversations/logs/memory 运行态数据
    yibo authored
     
    Browse Code »
  • scripts/demo-harness-company.js creates a company, hires a Base Agent
    worker, and simulates the full RPEV lifecycle with real API calls:
    - Company creation (skipBootstrap)
    - Agent hiring with base template
    - meta-research initial skill mount
    - 3 transition API calls (plan → execute → verify)
    - Hot Swap verification at each stage
    - Artifact production validation
    yibo authored
     
    Browse Code »
  • scripts/test-harness.js covers:
    - Meta-Skill file existence & content
    - Base Agent template completeness
    - Hot Swap simulation
    - Context Flush simulation
    - _lessons.md injection
    - billing.log format
    - GoalsService new statuses
    - CLI registration
    - Transition API route verification
    - Optional --online mode for live API tests
    yibo authored
     
    Browse Code »
  • The plugin bootstrap was calling resolveOpenclawDist() synchronously
    at module load time, which crashed the entire server if the optional
    @mas/openclaw-dist package wasn't installed. Now all three call sites
    defer resolution to runtime with try/catch graceful fallback.
    yibo authored
     
    Browse Code »
  • - Add task transition CLI and API for Context Flush & Hot Swap
    - Enforce strict bash-only tool policy for Base Agents
    - Inject  into system prompt for self-retrying loop
    - Implement Goal node updates on transitions
    - Add P0 Execute pre-approval block (Human-in-the-loop)
    - Track token metrics to billing.log
    yibo authored
     
    Browse Code »

  • 文档更新:
    - 重写 11-directory-structure.md (data/system/ + data/{companyId}/)
    - 重写 13-api-design.md (100+ 实际 API 端点)
    - 更新 24-company-layer-architecture.md (规划中→已实现, Todo 全标完成)
    - 更新 23-agent-active-heartbeat.md (规划中→已完成)
    - 更新 architecture-v5.md (v5.3, Phase 4-6 新增)
    - 更新 21-fde-pipeline-architecture.md (阈值 90→95, 路径修正)
    - 更新 LEMONBOSS-SYSTEM-DESIGN.md (v2.0, 章节 15-26 索引)
    - 新增 25-bootstrap-mechanism.md (公司自举机制)
    - 新增 26-automated-hiring-orchestration.md (全自动招聘编排)
    
    Bug 修复:
    - fix(server): 修复 body sanitizer 空 body 时未设置 _bodyParsed
      导致 express.json() 重复读取已消费流的 stream-not-readable 错误
    Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • 核心改动:
    1. agent-chat.js buildSystemPrompt 新增 Layer 0: 为公司Agent自动注入
       公司环境上下文(companyId、roleName、公司共享工作区路径)
       明确禁止写入全局 workspace/ 或 data/workspace/
    2. CEO 模板更新: workspace/ 引用改为"公司共享工作区"
    3. 清理旧的 workspace/ 和 data/workspace/ 下的废弃公司目录
    yibo authored
     
    Browse Code »
  • 这些目录是Agent执行任务时误写到全局agents目录下的,
    公司Agent的正确路径应为 data/<companyId>/agents/<role>/
    yibo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • Yi Bo authored
     
    Browse Code »
  • 核心改动:
    1. agent.md: 公司创建流程从5步手动操作改为1条命令自动完成
    2. agent.md: 新增自主决策规则 — 用户不给ID时自己起名立刻执行,禁止追问
    3. agent.md: 管辖实体从 agent-creator 更新为各公司 HR
    4. agent.md: 新增完整的 Bootstrap 自动流水线图示
    5. tools.md: 新增 company templates / company fire CLI 文档
    6. tools.md: company create 标注为自动Bootstrap
    yibo authored
     
    Browse Code »
  • Phase A - Company Bootstrap 自举:
    - 新增 _company_bootstrap/manifest.json 模板
    - company create 时自动部署 CEO/CTO/COO/HR 四名核心骨干
    - 自动启动公司 + 2s后向CEO dispatch战略启动令
    - 支持 skipBootstrap 参数跳过自举
    
    Phase B - HR 大一统 (招留管退):
    - 新增 hr 模板(agent_creator 的进化体)
    - HR 具备完整生命周期管理:招聘/技能装配/监控/辞退
    - HR 具备模板发现能力(lemon company templates 查看可用模板如 scrapling_crawler)
    - CTO 模板重写:不再亲自 hire,全部通过 task dispatch 向 HR 下发招聘需求单
    - CEO 模板更新:确认 Bootstrap 已部署骨干,委派时强调 CTO→HR 招聘链
    - 新增 POST /company/:id/fire API(停心跳→归档→更新名单)
    - 新增 CLI: lemon company fire / lemon company templates
    yibo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • - Added async orchestration in `/company/:id/hire` when no template is found.
    - Triggers Agent-Creator to write definition files based on scaffold.
    - Searches Arena (skillDb) for 3 basic skills matching the role and injects them.
    - Dispatches Innovator to run FDE pipeline and evaluate initial capabilities.
    Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • - Agent names are clickable links to chatbot page
    - Action button group per agent: heartbeat ▶/⏹, 💬 Chat, 📋 Skills, 🎓 Train
    - Expandable skills panel shows agent's loaded skills
    - Train button sends instruction to CEO to arrange Innovator training
    - Backend: GET /api/company/:id/agents/:agentId/skills API
    Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • Phase 4 人机流转机制打通:
    
    1. 新增 API 与 CLI:
       - POST /api/agent/human-request 支持 Agent 求助
       - `node bin/lemon.js human request` CLI 暴露给 Agent 使用
       - 请求将自动追加至根目录 .env 文件并带有时间戳注释
       - 同时将记录追加至 Master 的 workspace/human_todo.md 待办清单
       - 触发实时通知事件给 Master Agent
    
    2. `agent_creator` 人事专员模板创建:
       - 专门负责使用 `skill_search` (或自述构建) 并在新员工的 .claude/skills/ 下写武器代码
       - 强制为技能预留 .env 读取代码,并当 key 不存在时使用 human request
       - 强制在装配初版后将该技能推入 innovator-001 队列进行强化学习训练
    
    3. 架构优化:
       - 修改 CTO Agent 模板指令:在 hire 底层员工的同时,强制 hire 一名 agent_creator
       - CTO 不再亲自绑定技能,全部通过 `task dispatch` 给 agent_creator 完成装配
    yibo authored
     
    Browse Code »
  • Yi Bo authored
     
    Browse Code »
  • - Add Company Overview tab as default landing page
    - Show company info: status, uptime, agent count, heartbeat status
    - Start/Stop company buttons (activate/deactivate all agent heartbeats)
    - Per-agent heartbeat controls: interval dropdown, start/stop buttons
    - Backend APIs: GET status, POST start/shutdown, PUT/POST agent heartbeat
    - Track startedAt timestamp for uptime calculation
    - Update CEO agent.md with mandatory 5-step startup workflow
    - Fix company nav to default to overview tab
    Yi Bo authored
     
    Browse Code »
  • 解决 CTO 无法自动把 CEO 设计图转化为系统流水线的问题:
    - bin/lemon.js: 新增 pipeline create / pipeline list 命令行接口
    - templates/cto/agent.md: 重写 4 步强制工作流, 明确用 json 注册流水线及循环 hire 工具
    - templates/cto/tools.md: 新增 pipeline 注册命令与环境初始化命令
    - templates/cto/soul.md & identity.md: 泛化架构师角色设定, 移除写死的旧业务名
    yibo authored
     
    Browse Code »
  • Phase 3 反馈进化闭环:
    
    1. DataSourceService (运营数据接入):
       - 新增 datasource-service.js: 抽象适配器模式
       - MockAdapter: 模拟运营数据 (开发调试)
       - FileAdapter: 从本地 JSON 文件读取数据
       - 可扩展: 预留 WechatAdapter/DouyinAdapter 接口
       - API: GET /data/metrics, /data/trending, /data/attribution
    
    2. 归因分析引擎:
       - analyzeAttribution(): 自动对比两个时间段指标
       - 计算变化百分比和趋势方向
       - 自动提取显著变化维度并生成洞察文本
       - API: GET /api/company/:id/data/attribution
    
    3. Know-how 自动更新 (memory-service.js):
       - 新增 updateAgentKnowhow() 函数
       - autoReflect 产出的 patterns/lessons 自动写回 SKILL.md
       - 在 SKILL.md 末尾维护'经验教训(自动沉淀)'段落
       - 保留最近 20 条记录,自动清理过旧条目
       - 闭环: Agent执行 → 反思 → 经验写入SKILL → 下次读取改进行为
    yibo authored
     
    Browse Code »
  • Phase 2 改进:
    
    1. 工作日历系统 (ScheduleService):
       - 新增 schedule-service.js: 公司级日程管理
       - 支持按小时调度、按周几过滤、时区感知
       - 心跳触发时自动检查到期 slots 并触发 Agent
       - 执行去重(同日同 slot 不重复触发)
       - CRUD API: GET/POST/PUT/DELETE /api/company/:id/schedule/slots
       - CLI: schedule add / schedule list
    
    2. 告警通道 (Alert Channel):
       - Pipeline 步骤超时自动告警 Master Agent
       - 心跳异常自动告警 Master Agent
       - _sendAlertToMaster() 统一告警接口
    
    3. CEO → Pipeline 自动生成:
       - CEO 模板从 3 步升级为 5 步工作流
       - 新增 Step 2: Pipeline JSON 设计(含 loop/cron/steps 结构)
       - 新增 Step 4: OKR 创建
       - Pipeline 设计输出为 CTO 搭建流水线的蓝图
    
    4. Master 晨会日报:
       - 每天 08:00 自动生成全公司运营日报
       - 包含公司状态、Pipeline 运行、OKR 进度、Agent 活跃度
       - 自动推送给 Master Agent
       - 防重复机制(每天只生成一次)
    
    5. Pipeline 驳回信息注入:
       - 驳回步骤被心跳重新触发时,__rejection 信息注入 prompt
       - 让 Agent 知道被驳回的原因和重做次数
       - 替换原有 curl 汇报指令为 task report CLI
    yibo authored
     
    Browse Code »
  • Phase 1 核心改进:
    
    1. Pipeline↔Task 系统打通:
       - task/report 回调自动推进 Pipeline 步骤
       - findActiveRunStep() 按 agentId 定位活跃步骤
       - 扫描所有公司的 Pipeline Runs 实现跨公司桥接
    
    2. Pipeline 循环执行:
       - 新增 pipeline.loop 配置项
       - Run 完成后自动启动下一轮 (最大 maxLoops=365)
       - loopCount 计数器追踪循环轮次
    
    3. COO 质量门控:
       - 新增 rejectStep() 驳回方法,含驳回历史记录
       - POST /api/agent/task/reject API 端点
       - POST /api/company/:id/pipelines/runs/:runId/reject 路由
       - node bin/lemon.js task reject CLI 命令
       - 驳回后自动唤醒 Agent 重做,注入改进意见
    
    4. COO 模板全面强化:
       - agent.md: 4维度评分体系、质量审核流程图
       - soul.md: 性格、价值观、决策原则
       - tools.md: 新增 task reject 核心工具
       - heartbeat.md: 结构化巡检清单 + 升级规则
    yibo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • 1. Rewrote master/agent.md: strict anti-overreach rules, cleaned git merge conflicts
    2. Enhanced agent-creator/agent.md: force Write tool for new files, mandatory task report
    3. Implemented task/report callback: auto-wakes sender agent to continue next steps
       - Added .tasks/ metadata persistence for dispatch→report traceability
       - task/report sends [TASK_CALLBACK] to dispatching agent on done/failed
    Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • - company.js: call heartbeatService._setupAgentHeartbeat after hire
    - CEO agent.md: enforce 3-step continuous execution in same turn
    - All CXO heartbeat intervals: 5 minutes
    - task dispatch message: self-drive directive, use lemon CLI
    - bin/lemon.js: add 'task report' command
    yibo authored
     
    Browse Code »
  • Yi Bo authored
     
    Browse Code »
  • yibo authored
     
    Browse Code »
  • …ter Agent cognitive auto-recovery loop
    
    - Refactored CompanyDashboard into read-only Observer UI
    - Enforced strict companyId:roleId namespacing across Node APIs and AgentManager
    - Added dynamic <env_status> injection to PromptBuilder for robust context
    - Introduced bin/lemon.js CLI for structured LLM tool execution
    - Implemented in-stream error interceptors for implicit silent retry loop
    yibo authored
     
    Browse Code »