8000 GitHub - nocoo/steed: 🐎 AI Hub for the multi-agent era — asset visibility and relationship management across agents · GitHub
[go: up one dir, main page]

Skip to content
nocooPublic

About

🐎 AI Hub for the multi-agent era — asset visibility and relationship management across agents

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Steed

Steed

个人系统拓扑平台:一张图看清主机、服务、Agent 和供应商之间的关系。

站点 · English

这是什么

Steed 是个人系统拓扑平台:把主机、服务、Agent、数据源和外部供应商画在同一张拓扑图里,按供应商或提供方分层,标注信任域。网页只负责浏览,图的结构通过带令牌的 Connect API 写入。

v0.4.0 移除了早期的 Agent 资产盘点并清空了旧架构图和 Connect 状态;新的单一拓扑模型见 Phase 1 和 Phase 2 设计。

功能

  • Topology 页面:在只读 React Flow 画布上浏览层、节点、卫星、边界和关系,按视图或属性筛选并查看详情。
  • Connect 页面:签发、查看、轮换和吊销令牌,范围为 topology:read 或 topology:write。
  • Connect API(/api/v1/topology*):机器端使用 Bearer 令牌读取、校验、替换或增量修改拓扑,也可读取变更历史并在无冲突时撤销;写入使用修订号、幂等键和审计记录。

使用

站点 的网页和浏览器 API 使用 Cloudflare Access 控制访问,需要获准的身份。/api/live 不经过 Access;/api/v1/* 也不经过 Access,而由 Worker 校验 Connect 令牌。浏览器 /api/topology 只读,结构写入须使用 Connect API。自行部署时,需要配置自己的 Access 应用、D1 数据库和 Connect 密钥。API 路由与前置条件见设计文档。

开发

需要 Bun 和 Node.js 22.12+;Node 用于运行 Vite / Wrangler 等工具。所有示例从仓库根目录开始。

git clone https://github.com/nocoo/steed.git
cd steed
bun install --frozen-lockfile
bun run build

初始化 Web Worker 使用的本地数据库,迁移文件在 apps/web/migrations:

cd apps/web
bunx wrangler d1 migrations apply DB --env dev --local --persist-to .wrangler/state/web
cd ../..

在两个终端分别运行:

# 终端一:完整 Web Worker,回环端口 37035
bun run --cwd apps/web dev:worker
# 终端二:Vite,端口 7035,经 https://steed.dev.hexly.ai 访问
bun run dev

Vite 把 /api 代理到本地 Web Worker。通过现有 Caddy 代理访问 https://steed.dev.hexly.ai;启动前先查询 nmem 端口登记并检查 Caddy 映射和监听端口,Worker inspector 使用 38035。Access 开发豁免只允许回环地址和这个 HTTPS 源。本地 Connect 配置见架构图与 Connect 文档。

bun run build 构建 Web 静态资源;bun run typecheck 和 bun run lint 检查类型与代码风格。

apps/web/              React 页面、Web Worker、Access 校验、Connect API
apps/web/migrations/   D1 迁移
packages/api/          共享的拓扑、Connect 与用户资料契约(zod)

生产部署构建 apps/web,使用其 production 环境发布到 Cloudflare Workers。

测试

从仓库根目录运行:

测试层 命令
全部单元与组件测试 bun run test
Web 组件与视图模型测试 bun run --cwd apps/web test
拓扑与 Connect HTTP 集成测试 bun run test:e2e
本地拓扑容量与延迟基准 bun run bench:topology

bun run test 生成包含 Worker 的覆盖率报告,bun run check-coverage 检查门槛;bun run test:watch 进入监听模式。Web 测试使用 jsdom 和 React Testing Library。test:e2e 依次运行拓扑和 Connect 两个 HTTP 测试,每次启动本地 Wrangler,在临时 D1 状态目录中应用迁移并使用临时回环端口。基准使用合成的 1000 节点、5000 边拓扑,在本地 HTTP 和 D1 上测量各操作的 p95。

当前没有已配置的浏览器端到端测试命令,浏览器完整操作链路仍需手动验证。

技术栈

TypeScript Bun React Vite Cloudflare Workers D1 React Flow Cloudflare Access

部分 实现
Web 界面 React、React Router、Vite、Tailwind CSS、Radix UI
拓扑图 React Flow
服务与存储 Cloudflare Workers、D1;浏览器入口使用 Cloudflare Access
验证 Vitest、React Testing Library、jsdom、TypeScript、ESLint

依赖以各 workspace 的 package.json 和 bun.lock 为准。

文档

许可证

MIT © 2026 Zheng Li

About

🐎 AI Hub for the multi-agent era — asset visibility and relationship management across agents

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

0