首页
社区
课程
招聘
[原创] AI Agent Kernel,拥有agent runtime机制,动态能力注册等
发表于: 5天前 833

[原创] AI Agent Kernel,拥有agent runtime机制,动态能力注册等

5天前
833

# AgentKernel


> 一个轻量、可嵌入、WebSocket 驱动的 AI Runtime Kernel。

> 让你的网页、脚本、服务端项目不再反复从 0 写 Agent Runtime。



## 为什么做 AgentKernel?


我一直想做一个类似 Claude Code 的“基座”。Claude Code 的工程能力很强,但它本身很重,也内置了大量偏工程化的工具能力。很多场景里,我们只是想把 AI Runtime 嵌入自己的产品、网页、脚本或自动化系统,并不一定需要完整的 CLI 工程代理。


真正麻烦的不是“调用一次 LLM”,而是一旦你要做长期运行的 Agent Runtime,就会反复遇到这些问题:


- Session 怎么管理?

- 上下文怎么持久化?

- 工具怎么动态注册、调用、回传?

- 模型流式输出、工具调用、错误、阈值提醒怎么统一事件化?

- 多语言项目怎么复用同一套 Agent 能力?

- 不同模型供应商怎么切换?


所以 AgentKernel 的目标很明确:



**把 AI Runtime 做成一个独立 Kernel。**


以后不管你开发 Python、Go、Node.js、PHP、Rust、Web 项目,业务端只需要连接 AgentKernel 的 WebSocket,就可以复用同一套 Session、Context、Tool、Event、Storage、Trace 能力。


## 核心亮点


### 1. 不需要重改 Kernel 源码


AgentKernel 的目标是:编译、运行,然后通过 WebSocket 动态配置。


你想让它拥有什么能力,不需要改 Kernel 源码,而是通过 WS 注册工具声明:


```json

{

 "command": "tool.register",

 "session_id": "debug_session",

 "payload": {

   "tool_name": "get_time",

   "description": "获取当前时间",

   "schema": {

     "type": "object",

     "properties": {

       "format": { "type": "string" }

     }

   },

   "client_id": "my-app"

 }

}

```


当模型需要调用工具时,Kernel 会通过事件主动推送:


```json

{

 "type": "event",

 "event_type": "tool.call.request",

 "session_id": "debug_session",

 "payload": {

   "tool_name": "get_time",

   "call_id": "tool_xxx",

   "input": { "format": "locale" }

 }

}

```


业务端执行完成后,再把结果回传给 Kernel。


### 2. 全量历史保留,但不盲目全量提交


AgentKernel 的 Message Log 永久保留,但模型请求使用的是 Active Context View。


也就是说:


```text

历史记录完整保存

但提交给模型的是可控上下文视图

```


未来你可以自由选择:


- 直接裁剪上下文

- 调用新的 compact agent 做智能压缩

- 注入 summary seed

- 重置当前 context

- 排除某些历史区间


Kernel 只负责检测阈值并发事件,不硬编码你的压缩策略。


### 3. 工具能力动态热插拔


工具不是写死在 Kernel 里,而是由业务端动态注册。


这让 AgentKernel 可以很轻:


- 你做浏览器 Agent,就注册 browser 工具

- 你做 Android Agent,就注册 adb 工具

- 你做数据分析,就注册 database / python 工具

- 你做业务系统,就注册自己的业务 API 工具


Kernel 不关心工具怎么执行,只负责:


1. 保存工具定义

2. 告诉模型有哪些工具

3. 接收模型 tool_use

4. 通过 WS 发送 tool.call.request

5. 等待业务端 tool.execute.result

6. 把 tool_result 回填给模型继续推理


### 4. 事件流是运行时的一等公民


AgentKernel 会在运行过程中主动推送事件,例如:


- `model.delta`:模型流式输出

- `model.completed`:模型完成

- `tool.call.request`:请求业务端执行工具

- `tool.call.result`:Kernel 已确认工具结果

- `context.threshold.reached`:上下文达到阈值

- `error`:运行错误


事件流不是轮询查询结果,而是 Runtime 执行过程中主动上报。


这对调试、可视化、业务编排、分布式 Agent 都很关键。


### 5. 保持轻量,不内置重型记忆/规则/技能系统


AgentKernel 当前不内置复杂的:


- 长期记忆系统

- 规则库

- 技能市场

- MCP 编排

- 业务 Agent 模板


这不是缺点,而是边界。


这些能力完全可以由业务端通过工具、prompt、context seed、外部服务去实现。Kernel 保持干净,才能被更多项目复用。


## 当前能力


- Rust workspace 架构

- WebSocket Runtime Protocol

- OpenAI-compatible / Claude 协议适配

- Session 级 provider 配置

- Session 级 system prompt

- 文件式 session 持久化

- 消息历史 JSONL 保存

- 工具动态注册 / 注销

- 工具调用 WS 路由

- 多工具调用并发执行与聚合回填

- 模型流式输出事件

- 上下文阈值事件

- 调试 Web Console

- 原始 WS 消息可视化

- 事件流中文可视化


## 适合什么场景?


AgentKernel 很适合这些方向:


- 给现有业务系统接入 AI Runtime

- 做网页 Agent

- 做浏览器自动化 Agent

- 做 Android / iOS 自动化 Agent

- 做多语言脚本自动化系统

- 做本地 AI 助手

- 做多 Agent 编排平台

- 做 ComfyUI 式 Agent Runtime

- 做云端 Agent SaaS 的底层 runtime



bd4K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6U0K9h3R3I4z5e0V1$3i4K6u0r3b7h3N6W2L8Y4c8w2k6i4u0F1k6h3H3`.

(agent runtime Kernel)



011K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6U0K9h3R3I4z5e0V1$3i4K6u0r3j5h3W2Q4x3X3c8Z5N6h3t1`.

(这是基于claude cli核心额外写的一个agent对话,也是我日常编码使用)




[培训]《冰与火的战歌:Windows内核攻防实战》!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。

收藏
免费 2
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回