我用Go构建了一个AI代理运行时,在交付前编译并测试生成的代码,35个文件,156个测试,零依赖
摘要
ARK是一个开源的Go运行时,它管理AI代理的决策,在交付前编译和测试生成的代码,具有6阶段验证管道和成本高效的模型路由。
过去10个月我一直在构建ARK(AI Runtime Kernel)。它是一个开源运行时,位于你的AI代理和LLM之间,管理模型做出的每个决策。核心理念:模型不应该控制系统,运行时才应该。**它的功能:**当你要求ARK写Go代码时,它不会简单地将提示传给GPT然后把结果扔给你。运行时会对任务进行分类,优化提示,生成代码,然后在你看之前运行一个6阶段的验证管道:├─ 第1步: ✓ 推理已验证(置信度: 70%)│ 🧪 验证: 已测试(得分: 100%)│ ✅ 编译成功 ← go build │ ✅ 执行成功 ← go run │ ✅ 测试通过 ← 自动生成的测试 │ ✅ Lint干净 ← go vet 如果代码编译失败,ARK会将编译错误反馈给模型,强制使用更强的模型并重试。如果尝试两次后仍失败,它会拒绝交付有问题的代码。它永远不会宣称无法编译的代码成功。**可能引起本社区兴趣的Go相关内容:**整个运行时是纯Go,零外部依赖(仅标准库)。35个文件,约16,000行代码,156个测试,竞态检测器干净。一些我引以为豪的功能:* 加权工具排名,使用6个信号(相关性、成功率、贝叶斯置信度、成本、延迟、记忆奖励)——均在微秒内计算完成 * 上下文引擎,通过仅加载相关工具将工具模式令牌从60K减少到约93(减少99.9%)* 逐步骤模型路由:廉价模型(gpt-4o-mini)处理工具调用,强模型(gpt-4o)处理推理。降低成本80-90% * 认知管理者(Cognitive Governor),每次输出都用校准的置信度分数验证 * 自动修复生成的Go代码中的常见模型错误(孤立的括号、缺少错误处理)——检测制表符和空格缩进 * 事件发射器,写入JSONL以供单独的Python记忆层摄取 **成本:**一个典型任务花费$0.002-$0.005,而不是$0.05。**输出示例:** go run ./cmd/ark run agent.yaml --task "用Go编写一个读取CSV的函数" ✅ 任务成功完成 步骤: 1 | 令牌: 637 | 时间: 5.6秒 | 成本: $0.002 生成的代码在你看之前会编译、运行并通过自动生成的测试。我是芝加哥德保罗大学的一名计算机科学本科生,独自构建这个项目。已用此项目申请了YC S26。欢迎询问关于架构、验证管道或我为什么选择Go的问题。
相似文章
ARK正在改变AI代理在运行时的行为。
ARK引入了一个用于AI代理的运行时系统,该系统监控并执行策略,跟踪决策成本,并正在被开发成一个SDK,以提高代理的可靠性并减少计算浪费。
我们开源了一个代理运行时,专为人们常忽略的部分构建:在真实硬件上离线运行代理
一个开源的代理运行时,专为在真实硬件上离线运行AI代理而设计,支持硬件I/O(GPIO/MQTT/OPC-UA)作为一级节点和可视化构建器,支持多提供商LLM和本地RAG。
@DanKornas:在Go中构建AI代理不应意味着从头开始连接每个模型、工具和内存层。Agent Go SDK是一个Go…
Agent Go SDK 是一个开源 Go 框架,用于构建可配置的 AI 代理,支持多种模型提供商、内存后端、工具、MCP 连接和声明式 YAML 配置。
我构建了ARGO,一个开源Agent Loop框架,用于可追踪的AI编码交付
作者介绍了ARGO,这是一个面向Cursor、GitHub Copilot和OpenCode的开源Agent Loop框架,它将ArchiMate结构化的意图图与GraphRAG检索相结合,使AI编码交付可追踪。它分离了意图、架构和实现的责任,并通过两级验收测试来避免将每次失败都视为代码缺陷。
我在真实的LangGraph代理周围添加了一个运行时监督器——它在执行前拒绝了一个工具调用,模型重新规划了
本文介绍了ARK的开发,这是一个用于AI代理的运行时监督层,通过与LangGraph代理和OpenAI模型测试,通过拒绝不合规的工具调用来执行约束,并促进模型重新规划。