目录

AgentOS-Lite

面向多智能体系统的操作系统级执行时原型。

AgentOS-Lite 不是一个新的工作流编排框架,也不是把若干 Agent 页面拼在一起的展示项目。它位于 LangGraph、CrewAI、AutoGen AgentChat 和原生多 Agent 应用之下,把 Agent 建模为可由 Runtime 统一创建、调度、通信、授权、观测、恢复和回收的系统级执行对象,并在 Linux/openEuler 上形成可运行、可审计的用户态 Runtime。

可复现实验的聚合结果、公开报告和校验清单位于 AgentOS-Lite/evidence/。参赛项目说明书、 原创承诺书、作品介绍 PPT 和演示视频按大赛要求作为独立材料提交,并在最终提交时 置于 master 分支根目录。

解决什么问题

针对赛题提出的四类困难,AgentOS-Lite 给出的回答是:

  • 多 Agent 缺少统一调度,容易资源竞争、执行低效:由 Runtime 持久化 AgentProcess/Attempt,基于 DAG、优先级、公平性、老化、有界绕行、反压和多资源原子准入统一决定何时执行,并用 Allocation/Lease 解释等待与释放。
  • 上下文与 KV Cache 频繁冗余拷贝、系统开销大:用 AgentMessage、ContextRef 和 ContextFS 分离消息元数据与大对象,以内容寻址、不可变快照、权限和压缩治理 Runtime 内部上下文;模型侧 KV 则单独使用本地 llama.cpp/Qwen 的真实 Provider 信号验证,不把两者混为一谈。
  • 模型调用、工具调用与系统资源缺乏统一抽象:把每一次 ModelInvocation、ToolInvocation 及其资源占用变成 Runtime 权威对象,在 Provider 或工具真正执行前完成准入,结束后统一记录终态并释放资源。
  • 复杂任务缺少系统级可观测性与控制能力:以 SQLite 权威状态为事实源,从 Attempt、调用、消息、ContextRef、Lease 和 Checkpoint 重建 Trace;Trace 失败不改变业务结果,恢复过程不伪造缺失事实。

核心抽象

Runtime 对象 系统职责 类比的操作系统概念
AgentProcess Agent 身份、依赖、资源需求和生命周期 进程控制块
Attempt 一次具体执行、PID/PGID、超时、退出和重试 进程实例/执行代次
Scheduler + Allocation + Lease DAG、优先级、公平、反压、多资源原子准入与回收 调度器、资源表、锁/信号量
ModelInvocation / ToolInvocation 模型和工具执行的调用者、准入、计量与终态 受控设备/系统调用
AgentMessage / ContextRef / ContextFS 有序消息、引用传递、隔离、快照与压缩 IPC、文件描述符、文件系统
Checkpoint / Trace 持久事件边界恢复与可重建观测 检查点、审计与 tracing

总体架构

AgentOS-Lite 总体架构

Runtime authority 是本项目的关键边界:上层框架保留业务编排或会话语义,但不能成为资源、调用和执行状态的最终权威;Runtime 负责准入、持久状态、资源所有权、故障收敛与审计解释。

四个应用与框架关系

应用 上层框架/语义 Runtime 接入重点 默认入口
RepoSec Workbench LangGraph 动态修复 DAG、模型/工具调用、补丁反馈 ContextRef、Trace http://127.0.0.1:8800
主机安全智能研判中心 AgentOS Native,含 LangGraph 子流程 决策链、Checkpoint、Context、Trace、本地模型 KV 证据 http://127.0.0.1:8900
CrewNews CrewAI Crew/Task 映射、模型与工具治理、Context 与 Trace http://127.0.0.1:9000
TeamChat AutoGen AgentChat RoundRobinGroupChat Team Manager → 回答助手 → 审校助手 → 整合助手 → UserProxyAgent;本地模型单并发准入 http://127.0.0.1:9100
Runtime Console AgentOS-Lite 四应用统一的 Agent DAG、调用、Context 通信、Trace、资源和证据视图 http://127.0.0.1:8765

TeamChat 只允许访问 http://127.0.0.1:8080/v1 的本地 Qwen3 1.7B,由 Runtime 以单槽位准入;健康检查地址为 http://127.0.0.1:8080/health。它不会回退到 DeepSeek 或其他外部模型。

环境与安装

已验证环境为 openEuler 24.03 LTS x86_64、Linux 6.6、Python 3.11。核心 Runtime 只依赖 Python 标准库;四个框架应用使用可选依赖。

cd AgentOS-Lite
python3.11 -m venv .venv
.venv/bin/python -m pip install --upgrade pip
.venv/bin/python -m pip install -e '.[all-frameworks,dev]'

模型密钥或本地 Provider 配置必须只放在本机环境变量或已忽略的本地配置中。仓库不提供、也不需要提交任何真实密钥。TeamChat 不需要外部 API Key;scripts/autogen_teamchat.sh start 会在 8080 未就绪时通过 scripts/teamchat_local_model.sh 自动启动本地 Qwen3 1.7B。已存在的健康外部本地模型只会被复用,不会被脚本接管或停止。

最小 Runtime 验证

下面的流程使用确定性场景,不需要真实模型;命令均在 AgentOS-Lite/ 源码目录中执行:

.venv/bin/agentosd

在另一个终端执行:

.venv/bin/agentctl run scenarios/software_engineering/workflow.json
.venv/bin/agentctl ps
.venv/bin/agentctl inspect --workflow WORKFLOW_ID --agent planner

其中 WORKFLOW_ID 使用 run 返回的实际值。结束后在运行 agentosd 的终端按 Ctrl-C。CLI 通过 Unix Domain Socket 进入 Runtime,不直接修改 SQLite 权威状态。

五个服务的运行与检查

以下命令均在 AgentOS-Lite/ 源码目录中执行。建议先检查状态,脚本显示“PID 未运行、API 正常”时,应再用 HTTP、psss 交叉判断,不能因此重复启动已经由其他监督方式托管的服务。

scripts/agentos_runtime.sh status
scripts/reposec_workbench.sh status
scripts/host_security_workbench.sh status
scripts/crew_news_workbench.sh status
scripts/autogen_teamchat.sh status
scripts/teamchat_local_model.sh status
curl -fsS http://127.0.0.1:8080/health

需要启动完整演示栈时,先准备相应 Provider,再按顺序执行:

scripts/agentos_runtime.sh start
scripts/reposec_workbench.sh start
scripts/host_security_workbench.sh start
scripts/crew_news_workbench.sh start
scripts/autogen_teamchat.sh start

最后一条命令会自动确保本地模型就绪后再启动 TeamChat,无需手工预启动 llama.cpp。也可以独立管理模型:

scripts/teamchat_local_model.sh start
scripts/teamchat_local_model.sh status
scripts/teamchat_local_model.sh logs
scripts/teamchat_local_model.sh stop

默认使用 $HOME/local/src/llama.cpp/build/bin/llama-server$HOME/models/qwen3-1.7b-gguf/Qwen_Qwen3-1.7B-Q4_K_M.gguf,可分别通过 AGENTOS_TEAMCHAT_LLAMA_SERVERAGENTOS_TEAMCHAT_MODEL_PATH 覆盖。

评审机只在本机访问时,建议将各脚本对应的 *_BIND_HOST 环境变量设为 127.0.0.1。请勿把带密钥的配置、Authorization、Bearer token、完整 Prompt 或完整模型正文录入截图、日志、PPT和视频。

测试与实验证据

2026 年 7 月 23 日对当前候选提交执行完整回归,结果为: 855 passed, 27 skipped, 0 failed(7 分 59 秒)。测试时显式关闭外部在线模型开关, 26 个跳过项均保留其环境或显式授权条件;没有为获得全绿结果而停止本地模型服务或运行 真实模型任务。

项目保留了可复核的冻结实验,而不是只给页面截图:

评审问题 代表性冻结证据 已验证结论
调度策略是否真实存在 资源感知调度对比与消融实验 425 次测量与消融覆盖优先级、公平、老化、反压和队首阻塞
长时间运行后是否收敛 两小时稳定性与故障恢复实验 2 小时、500 个受控模拟 Workflow、5 类故障注入,最终无活动 Lease/非终态残留
ContextRef 是否减少重复持久化 上下文引用与通信实验 线性、扇出、分支、动态任务和恢复拓扑下的引用传递、隔离与完整性
真实 KV 是否有 Provider 证据 本地模型真实 KV 复用实验 本地 llama.cpp/Qwen 的真实 cache_n、timing、slot/save/restore 信号
Trace 故障是否影响业务事实 Trace 开销与故障恢复实验 Trace 是可重建投影,失败不反向改变 Runtime 权威终态
是否承载真实多 Agent/跨框架应用 RepoSec 与跨框架应用验证 RepoSec 与 LangGraph/AutoGen/CrewAI 接入均进入统一 Runtime 治理边界

AgentOS-Lite/evidence/ 保存从本地冻结实验中精选并脱敏的汇总、报告与公开校验清单; AgentOS-Lite/benchmarks/AgentOS-Lite/scripts/ 保存可复现实验和验收入口。原始运行产物不进入提交仓库, 最终结论必须同时能够回到源码、测试和权威证据。

仓库结构

README.md              项目简介、运行说明与证据索引
架构图.png             AgentOS-Lite 总体功能模块图
项目说明书.pdf          大赛项目说明书
原创承诺书.pdf          参赛作品原创承诺书
作品介绍PPT.pptx        作品介绍演示文稿
演示视频.mp4            五分钟以内的软件演示视频
AgentOS-Lite/
├── agentos_lite/       Runtime、Store、调度、资源、Context、Trace、Adapter 与控制台
├── scenarios/          确定性场景和四类应用的任务定义
├── scripts/            Runtime、本地模型和四个应用的服务管理、状态检查与验收入口
├── experiments/        可重复实验程序,不包含本地可变运行目录
├── benchmarks/         多 Agent 与本地模型基准程序
├── tests/              单元、集成、故障、资源、框架与控制台契约测试
├── evidence/           精选、脱敏并带公开校验清单的实验与实测证据
├── third_party/        明确版本、来源和许可证边界的上游快照
├── pyproject.toml      Python 构建、依赖和命令入口配置
└── conftest.py         Pytest 全局测试配置
关于

AgentOS-Lite:面向多智能体系统的操作系统级执行时原型,提供Agent统一建模、资源感知调度、模型与工具调用治理、ContextFS、故障恢复、Trace和多框架适配。

217.6 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号