Deterministic request auth
Agent workers should prove intent per request, not rely on broad long-lived credentials.
AI Agent Comparison
For teams running autonomous workers, key requirements are request-level signing, operational endpoint depth, and realtime monitoring.
Current coverage across the capability areas most agent teams evaluate first.
| Capability | Droplit + Sigma | Privy | Status |
|---|---|---|---|
| End-user authentication onboarding | Sigma-hosted sign-in with BSV signature-backed API authorization. | Email, SMS, social, and wallet login methods with embedded onboarding. | Improving |
| Request-level cryptographic authorization | Critical operations are authenticated with signed X-Auth-Token request payloads. | Policy engine and delegated wallet controls manage transaction authorization behavior. | Strong |
| Programmatic wallet operations | Tap, push, fund, mint, and status/activity endpoints are available now. | Client and server wallet infrastructure supports broad transaction workflows. | Competitive |
| Operational access controls | Per-droplit API key allowlists and configurable faucet-level behavior. | Fine-grained policy controls, delegated authorization, and advanced governance tooling. | Improving |
| Realtime activity visibility | SSE activity streaming and dashboard-level operation tracking are available. | Operational event tooling and integrations support production monitoring. | Competitive |
Core requirements for teams selecting an agent-ready wallet automation platform.
Agent workers should prove intent per request, not rely on broad long-lived credentials.
Agent loops need first-class wallet operations for tap, push, fund, mint, and lifecycle status checks.
Autonomous systems require event streams for follow-up actions, safeguards, and alerting.
Use these recipes to wire Sigma-hosted signing and BSV-native request authorization into your own runtime.
Use Sigma-hosted signing so your app or agent never needs to store a WIF.
import { createAuthClient } from "better-auth/client"
import { sigmaClient } from "@sigma-auth/better-auth-plugin/client"
const sigmaAuthUrl = process.env.NEXT_PUBLIC_SIGMA_AUTH_URL
if (!sigmaAuthUrl) throw new Error("Missing NEXT_PUBLIC_SIGMA_AUTH_URL")
const authClient = createAuthClient({
baseURL: sigmaAuthUrl,
plugins: [sigmaClient()],
})
// Set once after OAuth callback using result.user.bap_id
authClient.sigma.setIdentity(userBapId)
const requestPath = `/faucet/${droplitName}/tap`
const body = {
recipient_address: recipientAddress,
satoshis: 1000,
}
const authToken = await authClient.sigma.sign(requestPath, body, "brc77")Try signed flows in your own runtime and confirm operational fit before rollout.