
NiubiGEO
NiubiGEO 是一款开源的 AI 品牌可见度审计工具。它不提供一个难以解释的综合分数,而是通过模拟真实用户提问,摊开 AI 的回答、竞争对手和引用来源,让你清晰看到 AI 如何理解你的品牌以及谁正在抢走你的曝光。
Open Managed Agents (OMA) 是一个开源的 AI 代理元工具包,旨在作为 Claude Managed Agents 的完全替代方案。它提供了一套标准化的平台层,处理会话管理、沙箱执行、内存持久化、凭证隔离及崩溃恢复等棘手问题,让开发者只需专注于代理逻辑本身。
在 AI Agent 从实验走向生产的过程中,基础设施的复杂性往往成为最大阻碍。Open Managed Agents (OMA) 是一个开源的 AI 代理元工具包,旨在作为 Claude Managed Agents 的完全替代方案。它提供了一套标准化的平台层,处理会话管理、沙箱执行、内存持久化、凭证隔离及崩溃恢复等棘手问题,让开发者只需专注于代理逻辑本身。
OMA 的最大优势在于其环境无关性。相同的工具包、业务逻辑和 API 接口,可以在两种截然不同的环境中无缝运行:
| 特性 | 自托管 (Self-Hosted) | Cloudflare 边缘部署 |
|---|---|---|
| 运行环境 | VPS / Mac / Docker / K8s | Cloudflare Workers + Durable Objects |
| 数据存储 | SQLite / Postgres + 本地文件系统 | D1 (DB) + KV (Cache) + R2 (Storage) |
| 沙箱支持 | LocalSubprocess / LiteBox / E2B 等 | Cloudflare Sandbox (原生隔离) |
| 启动方式 | docker compose up | wrangler deploy |
| 适用场景 | 数据驻留要求高、本地调试、无 CF 账户 | 全球边缘扩展、免运维、高并发 |
只需更改环境变量,无需修改任何代码即可切换部署目标。
OMA 采用分层架构,清晰分离了“平台能力”与“代理逻辑”:
OMA 提供了极简的本地启动流程,默认使用 SQLite 和本地子进程沙箱:
# 1. 克隆项目
git clone https://github.com/open-ma/open-managed-agents.git
cd open-managed-agents
# 2. 配置环境变量
cp .env.example .env
# 生成必要密钥
echo "BETTER_AUTH_SECRET=$(openssl rand -hex 32)" >> .env
echo "PLATFORM_ROOT_SECRET=$(openssl rand -base64 32)" >> .env
# 3. 一键启动
docker compose up -d
# 4. 验证健康状态
curl localhost:8787/health
# 5. 访问控制台 UI
open http://localhost:8787
当默认逻辑无法满足需求时,你可以编写自定义 Harness。OMA SDK 提供了简洁的 API,让你直接访问运行时上下文:
// my-harness.ts
import { defineHarness, generateText, stepCountIs } from "@open-managed-agents/sdk";
export default defineHarness({
name: "research-agent",
async run(ctx) {
// 1. 获取历史消息
let messages = ctx.runtime.history.getMessages();
// 2. 自定义上下文过滤:只保留搜索和抓取结果
messages = keepOnly(messages, ["web_search", "web_fetch"]);
// 3. 设置缓存策略:最近 3 条消息设为临时缓存
markLastN(messages, 3, { cacheControl: "ephemeral" });
// 4. 执行推理循环
const result = await generateText({
model: ctx.model,
system: ctx.systemPrompt,
messages,
tools: ctx.tools, // 平台自动注入可用工具
stopWhen: stepCountIs(50), // 最大步数限制
onStepFinish: async ({ text }) => {
// 实时广播消息给前端
if (text) ctx.runtime.broadcast({
type: "agent.message",
content: [{ type: "text", text }],
});
},
});
// 5. 上报用量统计
await ctx.runtime.reportUsage?.(result.usage.inputTokens, result.usage.outputTokens);
},
});
部署自定义 Harness:
oma deploy --harness my-harness.ts --agent agent_abc123
/v1/agents 和 /v1/sessions 等标准接口,现有基于 Claude Managed Agents 开发的应用可低成本迁移。Open Managed Agents 填补了开源社区在“生产级 AI 代理基础设施”领域的空白。它不仅提供了一个可运行的平台,更定义了一套标准的代理开发范式。







