Skip to content
Agent Harness OS · 开源 · Apache 2.0

OryxOS

Java 原生的企业级 Agent 操作系统

一个目录定义一个 Agent,一个底座运行一群 Agent。OryxOS 装在企业自己的服务器上,为所有业务 Agent 提供统一的模型接入、推理循环、记忆、工具调用、沙箱与审计——私有部署,数据不出域。

JDK 21 · Spring Boot 3 · Spring AI Alibaba · MCP · SQLite · 单 JAR 部署

Agent 为什么停在 demo

每家公司都有该交给 Agent 的活,但真正上生产的很少。让 Agent 可靠工作,瓶颈通常不在模型,而在运行环境。

① 定义一个 Agent 要写代码 最懂业务的人反而做不了。

② 云平台要把数据拿走 严监管行业的合规过不去。

③ 执行是黑盒 没审计、没白名单,企业不敢上生产。

④ 跑一个容易,跑一群难 没有人把“一群 Agent 的操作系统”这一层交给你。

OryxOS 一次拆掉这四道门槛。

今天的做法
✗每个 Agent 都写一套后端代码
✗SaaS 平台,数据出域、锁定生态
✗工具调用不设防,事后翻日志补审计
✗Node.js / Python 方案,与 Java 体系之间全是胶水
OryxOS
✓写一份 AGENT.md,零代码定义 Agent
✓装在自己的 K8s / 虚拟机上,数据不出域
✓强制沙箱白名单,每次调用落库审计
✓Spring Boot 单 JAR,复用现有 Java 运维体系
OryxOS 整体架构

配置出 Agent,而不是写出 Agent

对接 LLM · ReAct 循环 · 记忆 · 工具体系 · Web Service,五大能力下沉到底座,业务方只写目录、配工具。

🤖

一个目录 = 一个 Agent

AGENT.md · frontmatter 即配置 · 正文即指令

# .oryxos/agents/weather/AGENT.md
---
name: weather
provider: { name: deepseek, model: deepseek-chat }
tools: [http_get, notify]
schedules:
  - key: morning
    cron: "0 0 8 * * *"
    zone: Asia/Shanghai
    message: 查询北京天气并给出穿搭建议
---

1. 调用天气 API 获取今天的天气;
2. 结合温度、降水、风力给出穿搭建议;
3. 通过 notify 推送到 team-lark 渠道。
🔌

零代码接入 MCP 工具

复用社区 MCP server · 凭证走环境变量

# .oryxos/mcp_servers.yaml
servers:
  - name: github
    transport: stdio
    command: npx -y @modelcontextprotocol/server-github
    env:
      GITHUB_TOKEN: ${GITHUB_TOKEN}

# 启动时自动连接,tools/list 拉取工具,
# 包装成 OryxTool 注册,Agent 直接可用;
# 每次调用都过沙箱、写审计。
🌐

REST API 接入业务系统

任何语言 · 会话保持 · 无状态调用

# 无状态调用一次 Agent
curl -X POST localhost:8080/api/v1/agents/weather/invoke \
  -H 'Content-Type: application/json' \
  -d '{"message":"明天上海要带伞吗?"}'

# 会话保持:创建会话,多轮对话
curl -X POST localhost:8080/api/v1/sessions \
  -d '{"profile":"weather","userId":"u-001"}'
curl -X POST localhost:8080/api/v1/sessions/{id}/messages \
  -d '{"message":"那后天呢?"}'

八个典型使用场景

01

每日天气推送

每天早上 8 点自动查天气、生成穿搭建议并推送到企业 IM 群。只有一份 AGENT.md,不需要人工触发。

02

每日科技日报

到点汇总当日科技新闻,按公共 Skill 规定的格式组稿;因为记得你说过“更关注 AI 和芯片”,日报会自然侧重这两个方向。

03

每日 GitHub 日报

Agent 目录捆绑一个脚本,拿到确定性的 trending 数据,再挑出 AI 相关项目做总结推送。脚本输出进上下文,脚本代码不进。

04

运维助手

告警经 Webhook 进来,Agent 拉日志、比对历史故障、按 runbook 自愈,并在运维群汇报。所有动作都有审计记录。

05

全渠道客服

理解用户问题、循环检索知识库、记住客户历史、查询 CRM,通过 HTTP 接入现有客服系统。

06

研发助手

理解需求、读代码改代码、记住项目惯例,接 GitHub 与 CI,从 IDE 插件或内部平台调用。

07

知识管理助手

检索合同模板、法规文档和历史案例,给出带引用来源的建议草稿,满足“回复必须可追溯”的合规要求。

08

数据分析助手

记住业务表结构,生成 SQL、执行查询并出图,集成到企业现有的 BI 工具中。

三档接入,门槛从低到高

能用零代码就不用轻代码,能用轻代码就不用重代码。

🔌

轻代码 · MCP server

用任何语言写一个 MCP server,接入 ERP、CRM、CMDB 等企业自有系统,OryxOS 作为 MCP Client 连接。

JavaPythonTypeScriptGoRustShell
☕

重代码 · @Tool Bean

用 Spring AI 的 @Tool 注解写 Java Bean,进程内直接调用企业现有 Java 服务,不走协议、不起进程,性能最好。

Spring BootSpring AI进程内调用

REST API 与命令行

CLI、REST API、定时任务三个入口最终汇入同一个 AgentService,走同一条链路、同一套审计。

会话管理
POST /api/v1/sessions创建会话
POST /api/v1/sessions/{id}/messages发送消息,驱动一轮 ReAct 循环
GET /api/v1/sessions/{id}查询会话历史(含工具调用链)
DELETE /api/v1/sessions/{id}归档会话
调用与查询
POST /api/v1/agents/{name}/invoke无状态调用一次 Agent
GET /api/v1/profiles列出已定义的 Agent
GET /api/v1/memory查询长期记忆
GET /api/v1/tools列出可用工具
GET /api/v1/health · /info健康检查与运行信息
命令行
oryxos init · status初始化工作区(幂等)、查看运行状态
oryxos chat · serve · gateway交互对话 / REST 服务 + 定时调度 / 多渠道守护进程
oryxos profile list|create|show|delete管理 Agent 目录
oryxos provider|tool|session list查看模型、工具与会话
开发中

开始构建

OryxOS 正处于阶段一(单机运行时内核)开发中。以下是 1.0 的目标用法,接口在正式发布前可能调整。

git clone https://github.com/hefrankeleyn/oryxos-practice.git
cd oryxos-practice && mvn clean package

export DEEPSEEK_API_KEY=sk-xxx

# 初始化工作区并创建一个 Agent
oryxos init
oryxos profile create weather

# 和 Agent 对话
oryxos chat --profile weather

# 以服务方式运行(REST API + 定时调度)
oryxos serve
基于 Apache 2.0 协议开源·由 oryx-labs 社区用 AI coding 构建