尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Agent-native backend-as-a-service: a deny-by-default policy engine, self-correcting errors, and native MCP — in a single Go binary.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
The agent-native backend.
A backend-as-a-service built for AI coding agents — deny-by-default policies,
self-correcting errors, one-call introspection, and native MCP — in a single Go binary.
Generic backends were built for humans clicking dashboards. Coding agents operate
through APIs — and generic backends fail them in three ways: they fail silently,
they leak data through missing access rules, and they're undiscoverable. Purple
Sparrow is designed so an agent can drive it correctly and recover on its own.查看完整 README ↗Generic backends were built for humans clicking dashboards. Coding agents operate through APIs — and generic backends fail them in three ways: they fail silently, they leak data through missing access rules, and they're undiscoverable. Purple Sparrow is designed so an agent can drive it correctly and recover on its own.
| 🛡️ Secure by default | Access is deny-by-default. An app-layer policy engine compiles rules into parameterized SQL with USING and WITH CHECK. Fuzz-tested; the compiler never emits a raw literal. |
| 🧭 Self-correcting | Every error carries machine-readable remediation + next_actions. When an agent hits a wall, the response tells it how to get past it. |
| 🔎 Discoverable | GET /meta returns the whole backend's shape in one call. Docs are served over the API. An advisor lints the config. |
| 🪶 Runs anywhere | One static binary + embedded SQLite — zero dependencies for a solo dev. Point PS_DATABASE_URL at Postgres to scale. Same code, same behavior (CI proves parity). |
| 🔌 MCP-native | purplesparrow mcp exposes the whole backend as tools for Cursor, Claude, and friends. |
# one static binary, embedded SQLite — no external services
CGO_ENABLED=0 go build -o purplesparrow ./cmd/purplesparrow
PS_ADMIN_API_KEY=ps_sk_dev ./purplesparrow # → 127.0.0.1:8787
ADMIN="Authorization: Bearer ps_sk_dev"
# create a table (id + created_at are automatic)
curl -s -H "$ADMIN" -X POST localhost:8787/v1/tables \
-d '{"name":"todos","columns":[{"name":"title","type":"text"},{"name":"owner_id","type":"text"}]}'
# access is deny-by-default — grant a policy, then use records
curl -s -H "$ADMIN" -X POST localhost:8787/v1/policies \
-d '{"table":"todos","action":"select","roles":["anon"],"using":"true"}'
curl -s -H "$ADMIN" -X POST localhost:8787/v1/tables/todos/records -d '{"title":"ship","owner_id":"u1"}'
curl -s localhost:8787/v1/tables/todos/records
# introspect · read docs · lint config
curl -s -H "$ADMIN" localhost:8787/meta
curl -s localhost:8787/docs
curl -s -H "$ADMIN" localhost:8787/advisor
Connect an agent: purplesparrow mcp-config prints a client config snippet;
purplesparrow mcp runs the MCP stdio server.
Agents (MCP · CLI · REST)
│
HTTP gateway — request-id · authn · recovery · access-log · security-headers
│
Data+Records · Auth · Storage · Functions · Realtime · Agent layer · Dashboard
│
┌───────────────── Policy engine (deny-by-default, USING + WITH CHECK) ─────────────────┐
│ the authorization boundary — one place to get right │
└───────────────────────────────────────────────────────────────────────────────────────┘
│
DataEngine · BlobStore · FuncRunner · EventBus ports
│
SQLite + local FS (solo) | Postgres + S3 (scale)
/.serve / mcp / mcp-config / version.GET /openapi.yaml and kept in lock-step with the code by a route-parity test.Beta. The full feature surface is built and tested end-to-end — review it before trusting it with regulated data.
go test -race, go vet, staticcheck, govulncheck — all green. Postgres parity proven in CI.make build # single static binary
make test # go test -race ./...
make check # fmt + vet + staticcheck + govulncheck + test (matches CI)
Spec-driven, deny-by-default, tests required — see CONTRIBUTING.md. Report vulnerabilities privately via SECURITY.md, not public issues.
Apache-2.0. Built in the open. Not affiliated with any other backend platform.