尚未偵測到更新。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.