Trust + privacy
We hold ourselves to the posture we measure.
AgentSmack runs red-team probes against other agents. The same kind of buyer asking “can I trust this agent?” is asking it about us. Here is what we store, where it lives, who can see it, and how you delete it.
Last reviewed
Data we store
- Raw system prompts at rest
- Stored. Visible only to the submitter (and their workspace members for Pro). Encrypted at rest by the database provider.
- Adversarial-probe responses
- Stored REDACTED through `lib/probes/redaction.ts` — secrets are replaced with `[REDACTED:<kind>:<sha256-prefix>]` BEFORE the DB write.
- Live-probe target URLs
- Hostname is logged for forensics. Bearer tokens passed in the headers object are NOT persisted (only their SHA-256 prefix for dedupe).
- Sentinel SDK telemetry
- Only the SHA-256 of the redacted prompt + response bytes is stored. The raw text never leaves your process.
- Email addresses
- Stored for magic-link auth + invite flows. Not sold, not shared. Unsubscribe links use cryptographic tokens so a leaked URL can't be replayed.
Encryption + secrets
- In transit
- HTTPS-only (HSTS). HTTP requests are upgraded.
- At rest
- Vercel Postgres / Neon — AES-256 at the database layer; same-region disk encryption by the cloud provider.
- Workspace API tokens
- We persist only sha256(plaintext); the plaintext is shown ONCE at creation.
- Stripe webhook secrets
- Three separate webhook endpoints each with its own secret. Constant-time signature verification.
- GitHub App webhook secret
- X-Hub-Signature-256 verified with timingSafeEqual against `AGENTSMACK_GITHUB_WEBHOOK_SECRET`.
Sub-processors
- VercelEdge + serverless hosting; sitemap delivery
- NeonPostgres database (per-toolset, never shared with other AgentSmack tenants)
- ResendTransactional email (magic-link auth, invite, digest)
- StripeBilling — Pro subscriptions, badge marketplace, org subscriptions
- AnthropicReal-LLM evaluator for Pro-tier credential-elicitation grading (opt-in per request)
- OpenAIDefault real-LLM evaluator for Free + Pro tiers
Deletion paths
- Soft-delete a workspace
- Dashboard → Settings → Danger Zone. A soft-deleted workspace disappears from every public surface within the request that flips the flag.
- Hard-delete a workspace
- Event-triggered cascade — the soft-delete flag fires the hard-delete sweep on the same request (Pillar 4: no cron). All linked rows are removed in transaction order.
- GDPR Art. 17 individual deletion
- Email founders. We resolve every row keyed on the user's email and execute the same hard-delete cascade.
- Submission / probe deletion
- Dashboard → Submission → Delete. A deleted submission HARD-removes its artifacts, analysis runs, findings, recommendations.
Vulnerability disclosure
Found a flaw? Email security@agentsmack.com. Please include a clear repro and your handle for credit. Default credit is your GitHub username; we will mention you in the fix’s commit message and changelog unless you ask otherwise.
AgentSmack is in active development. Every page on this site that carries data we hold is a row in a per-toolset Postgres we own — never shared with other AgentSmack tenants and never shared with our upstream platform (EchoAtlas). See the security page for the underlying architectural mandates.