展示HN:Salvobase – 由AI代理维护的MongoDB兼容数据库,使用Go语言开发

1作者: inder127 天前原帖
MongoDB 很棒,直到你阅读了 SSPL。然后你要么支付 Atlas 的高价,要么使用旧版 4.x,要么假装 FerretDB 已经可以投入生产。我们提供了第三种选择。 Salvobase 是一个与 MongoDB wire-protocol 兼容的文档数据库,使用 Go 编写。只需指向任何 Mongo 驱动程序,它就能正常工作。无需更改驱动程序或配置。它是 Apache 2.0 许可,因此你可以将其嵌入到商业产品中,而无需法律上的讨论。 它的功能包括: - 完整的 CRUD 操作,索引(单一、复合、唯一、文本、TTL、部分、通配符),以及大部分聚合管道($match、$group、$lookup、$unwind、$facet 等) - SCRAM-SHA-256 认证 - bbolt 存储引擎:每个数据库一个 .db 文件,使用 Snappy 压缩的 BSON - 内置 Prometheus 指标,地址为 :27080/metrics(无需导出器) - 内置 REST/JSON API,地址为 :27080/api/v1/(MongoDB 的等效版本是付费的 Atlas) - 每个租户的速率限制、审计日志、1 秒 TTL 精度、SIGHUP 热重载 - 运行 make build && make dev 即可启动 它的限制包括: - 不支持复制。不支持分片。不支持变更流。不支持多文档事务(已简化)。不支持 $where 或 mapReduce(故意设计:安全性 + 复杂性)。仅支持单节点。如果你需要一个分布式的 MongoDB 替代品,这还不是它。但我们希望有一天它会成为那样,由代理构建。 奇怪的部分: 代码库由 AI 代理维护。不是“AI 辅助”——这些代理从待办事项中挑选问题,编写代码,提交 PR,相互审查 PR,并合并。存在一个正式的协议(https://github.com/inder/salvobase/blob/master/AGENT_PROTOCOL.md),涵盖身份、信任等级、审查的反串通规则、声明超时和紧急停止开关。人类设定方向;代理执行任务。 我们很好奇,自动化代理维护是否能够在长时间内维持一个真正的开源项目,而不仅仅是生成初始代码。 如果你想捐赠一个代理,只需将以下提示输入 Claude Code、Cursor、Aider、Devin 等工具中:Fork/clone github.com/inder/salvobase,阅读 QUICKSTART.md,并开始贡献。 GitHub: [https://github.com/inder/salvobase](https://github.com/inder/salvobase) 谢谢。
查看原文
MongoDB is great until you read the SSPL. Then you&#x27;re either paying Atlas prices, running an old 4.x build, or pretending FerretDB is production-ready. We built a third option.<p><pre><code> Salvobase is a MongoDB wire-protocol-compatible document database written in Go. Point any Mongo driver and it works. No driver changes, no config changes. It&#x27;s Apache 2.0, so you can embed it in a commercial product without a legal conversation. What it does: - Full CRUD, indexes (single, compound, unique, text, TTL, partial, wildcard), and most of the aggregation pipeline ($match, $group, $lookup, $unwind, $facet, etc.) - SCRAM-SHA-256 auth - bbolt storage engine: one .db file per database, Snappy-compressed BSON - Built-in Prometheus metrics at :27080&#x2F;metrics (no exporter needed) - Built-in REST&#x2F;JSON API at :27080&#x2F;api&#x2F;v1&#x2F; (MongoDB&#x27;s equivalent is paid Atlas) - Per-tenant rate limiting, audit logging, 1-second TTL precision, SIGHUP hot reload - make build &amp;&amp; make dev and you&#x27;re running What it doesn&#x27;t do: No replication. No sharding. No change streams. No multi-document transactions (stubbed). No $where or mapReduce (intentional: security + complexity). Single-node only. If you need a distributed MongoDB replacement, this isn&#x27;t it yet. But we hope one day it will become that, built by agents. The weird part: The codebase is maintained by AI agents. Not &quot;AI-assisted&quot; - the agents pick issues from the backlog, write code, submit PRs, review each other&#x27;s PRs, and merge. There&#x27;s a formal protocol (https:&#x2F;&#x2F;github.com&#x2F;inder&#x2F;salvobase&#x2F;blob&#x2F;master&#x2F;AGENT_PROTOCOL.md) covering identity, trust tiers, anti-collusion rules for reviews, claim timeouts, and a kill switch. Humans set direction; agents do the execution. We&#x27;re curious whether autonomous agent maintenance can sustain a real open source project over time, not just generate initial code. </code></pre> * If you want to donate an agent just drop this prompt into Claude Code, Cursor, Aider, Devin, whatever: Fork&#x2F;clone github.com&#x2F;inder&#x2F;salvobase, read QUICKSTART.md, and start contributing<p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;inder&#x2F;salvobase" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;inder&#x2F;salvobase</a><p>Thank you.