Skip to content

Releases: Ink-dark/orcha

Orcha v0.1.2-beta

Orcha v0.1.2-beta Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Jul 02:01

Orcha v0.1.2-beta

安全加固版本:按高危优先级修复 9 个安全 issue。

本次发版聚焦安全:4 个 CRITICAL + 5 个 HIGH,每个 issue 一个独立 commit,
commit message 均带工单号(fix(#N))并附验证通过的证明。CI 双平台
(ubuntu-latest / windows-latest)fmt + clippy(-D warnings) + test 全绿。


CRITICAL 修复

# 问题 修复
#7 命令超时只 kill 主进程,孤儿子进程继续运行 run_with_timeout()process_group(0) + killpg(SIGKILL) 杀整个进程组
#16 HTTP server 无认证,任意本机进程可读写任务/记忆 可选访问令牌认证(Bearer / Cookie / ?token=),None 向后兼容
#20 运行时白名单只匹配 basename,批准 src/main.rs 会覆盖 tests/main.rs 改用完整规范化相对路径匹配,杜绝同名文件越权
#23 CORS 设为 *,任意网站可跨域读取 API 移除 cors() 与所有 Access-Control-Allow-Origin 响应头

HIGH 修复

# 问题 修复
#17 Unix socket 默认 umask,同机其他用户可连入 bind 后 set_permissions(0o600)
#22 审批 action_id 用时间戳+计数器,可推算伪造 改用 uuid::Uuid::new_v4()(CSPRNG)
#26 IPC TCP 后端无认证,任意进程可注入伪造触发/审批 TCP 共享密钥握手 AUTH <secret>\n + constant_time_eq
#24 Feishu adapter 三个 Map 只增不减 → OOM 新增 TTLMap(TTL 1h + LRU maxSize 5000)替换
#27 API 错误响应 {"error":"{e}"} 泄露内部细节 改返回 {"error":"internal_error","correlation_id":"<uuid v4>"}

设计原则

  • 向后兼容 Option 模式#16(auth token)、#26(tcp secret)均用 Option<String>
    None 保留旧行为,未配置时打警告,不破坏现有部署/CI。
  • 纵深防御:Unix socket 用文件系统权限(#17)+ TCP 用共享密钥(#26),两条 IPC 路径都加锁。
  • fail-closed:审批/白名单/认证任一环节失败都返回拒绝,不放行。
  • 每个修复带回归测试:新增测试覆盖修复点,保留全部既有测试。

验证

cargo test --workspace --features orcha-core/llm
orcha-core     223 passed
orcha-gateway   67 passed
orcha-llm       46 passed
orcha-shell     13 passed
orcha-cli       40 passed
orcha-sdk       14 passed
全部 0 failed

cargo fmt --all -- --check · cargo clippy --workspace --features orcha-core/llm --all-targets -- -D warnings → exit 0
TS:npx tsc --noEmit 无错误


升级须知

两个新增的可选配置(生产建议启用,dev/CI 不配也能跑):

  • HTTP token#16):orcha shell --token <secret>ORCHA_SHELL_TOKEN=<secret>
  • IPC TCP secret#26):config.ipc.tcp_secretORCHA_IPC_TCP_SECRET=<secret>

注:本次标签打在 fix/security-high-priority 分支(CI 已绿的 b07a683),
合并 PR #29 后 main 即包含全部修复。


完整变更日志CHANGELOG.md
PR#29

Orcha v0.1.1-beta

Orcha v0.1.1-beta Pre-release
Pre-release

Choose a tag to compare

@Ink-dark Ink-dark released this 08 Jul 06:59

Let the Orcha play.

92 次提交 · 4 天 · 从零到飞书联调闭环


起源

2026 年 7 月 4 日,一行 Initial commit,学校机房,TRAE云端开发环境,一切从0开始。

四天后的现在,Orcha 已经是一个能在飞书接到一句话任务、AI 自主拆解执行、经人工审批写代码跑测试、最后把改动推到 Git 分支的全链路系统。

这不是 demo,这是实打实接了飞书长连接、跑了真实 Rust 项目的 AI Agent。


核心能力

🤖 AI 自主调度

LLM 决定每一步调哪个 Agent(Observer / Planner / Worker / Tester / Reviewer / Fixer),不再硬编码流程。调度权交 AI。

📱 飞书一键触发

@orcha 发一句话,长连接实时接入,无需公网 URL。Agent 执行进度实时推送到飞书卡片——🔍 观察中 → 📋 规划中 → 💻 写代码 → 🧪 测试中 → 👀 审核中。

🛡️ 人工审批

写文件、跑命令、删文件前推送审批卡片,管理员点击 [批准] / [拒绝] 按钮。PathGuard 硬限制 + 审批 Hook 软限制双层防护。

🌿 Git Worktree 隔离

每个任务在独立 worktree 执行,原 repo 不受污染。任务成功自动 commit 并推到 orcha/* 新分支。

🔧 完整的 Sub-Agent 体系

  • Observer — 自动检测项目类型(Rust / Go / Python / JS 等),按模块分组报告
  • Planner — 基于 workspace 现状生成结构化执行计划
  • Worker — 只读探查 + 编辑已有文件 / 创建新文件 / 删除
  • Tester — 自动检测测试框架,跑 cargo test / pytest / go test…
  • Reviewer — 审核 Worker 产出 + diff scope 校验
  • Fixer — 修复测试基础设施

🛡️ 熔断与恢复

  • 最多 30 步决策 + 连续 3 次失败强换策略
  • 命令执行 10 分钟超时保护
  • panic 自动恢复,不丢 task 状态
  • /stop 命令随时取消运行中任务

里程碑(M0 → M7)

Milestone 名称 状态
M0 骨架与契约
M1 Task 模型与本地 CLI
M2 单步 Sub-Agent 执行
M3 Cycleround 闭环 MVP
M4 编码 Agent 核心能力 + 写边界安全
M5 Web UI Shell + HTTP API
M6 Gateway 基础设施与跨进程通信
M7 IM 接入与智能守护

242 个测试全部通过,clippy 零警告。


技术栈

技术
核心调度 Rust (orcha-core)
LLM 客户端 Rust (orcha-llm),OpenAI 兼容协议
Gateway Rust (orcha-gateway),IPC + 任务队列
CLI Rust (orcha-cli)
Web UI Rust (orcha-shell),tiny_http
飞书 Adapter TypeScript (orcha-feishu-adapter),飞书官方 SDK

跨平台:Windows / Linux / macOS,IPC 支持 Unix Socket / Named Pipe / localhost TCP。


仓库

https://github.com/Ink-dark/orcha

git clone https://github.com/Ink-dark/orcha.git
cd orcha
.\scripts\start.ps1

自动化 AI-Agent 未来已来。
国内用户蓝奏云加速下载地址:https://www.ilanzou.com/s/QuZxpxTz
Orcha-dev官方账号:https://github.com/orcha-dev