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.