Security
Last updated: July 28, 2026
Have security concerns about running an AI bot? OpenClaw Launch is designed to keep your data, credentials, and bot instances safe. This page addresses common security risks and issues, and describes the measures we have in place to protect you.
Encryption
- In transit: All traffic is encrypted with TLS 1.2+ via automatic HTTPS (Caddy reverse proxy). HSTS is enforced to prevent downgrade attacks.
- API keys at rest: API keys you add — OpenRouter and other providers — are encrypted with AES-256-GCM in our database before storage. They are decrypted server-side whenever the platform needs them — to write them into your instance configuration, to show them back to you in the dashboard, or to make requests to that provider on your behalf.
- Instance configuration: your agent's configuration is stored so the platform can deploy and manage it, and the running instance keeps its own copy inside its container. It is not encrypted in a way that hides it from us, so treat anything you put in it as visible to the platform.
- Bot tokens: Telegram and Discord bot tokens you provide are written to the instance config directory, which is isolated per container.
Instance Isolation
- Container isolation: Each bot instance runs in its own Docker container with dedicated storage. Containers cannot access each other's data, network namespaces, or filesystem.
- Resource limits: Every container has CPU, memory, and disk quotas enforced at the Docker level. Instances that exceed disk limits are automatically stopped.
- Network segmentation: Containers are attached to an isolated Docker network. Outbound access is limited to the APIs your bot needs (LLM providers, chat platforms, and the OpenClaw gateway port).
- Session isolation: Each Telegram/Discord user gets their own conversation session (
per-channel-peerscope), preventing cross-talk between users of the same bot.
Authentication & Access Control
- OAuth: Sign in with Google or GitHub. We never store or handle OAuth passwords — authentication is delegated to the identity provider.
- Password hashing: Email/password accounts use bcrypt with a cost factor of 12.
- Session management: Sessions use signed JWTs with short expiry. Tokens are stored in HTTP-only, Secure, SameSite cookies.
- Gateway authentication: Every deployed instance requires a unique, randomly-generated UUID token to access its web gateway. Device pairing adds an additional layer for remote connections.
- Two-factor authentication: Credentials accounts can enable TOTP-based 2FA using any authenticator app (Google Authenticator, Authy, 1Password). When enabled, login requires both your password and a 6-digit time-based code.
- Rate limiting: Login, registration, password reset, and sensitive account operations are rate-limited per IP and per user to prevent brute-force attacks.
Input Validation
- Schema validation: All API inputs are validated with Zod schemas before processing. Malformed or unexpected data is rejected at the boundary.
- SQL injection prevention: We use Drizzle ORM with parameterized queries exclusively. No raw SQL is constructed from user input.
- Bot token verification: Telegram and Discord bot tokens are verified against platform APIs before deployment. Invalid tokens are rejected.
- URL validation: Redirect URLs are validated to prevent open-redirect vulnerabilities.
Spending Controls
- Credit limits: Each subscription tier has a built-in AI usage cap enforced through OpenRouter. Lite plans include $1/month in AI credits; Pro plans include $10/month. When credits are exhausted, the LLM provider rejects further requests — your bot remains running but cannot generate AI responses until credits renew or you purchase more.
- No surprise charges: AI usage is capped, not billed by the token. You choose your plan and optional credit top-ups. We do not charge overage fees.
- Usage alerts: When your credit usage exceeds 80%, we send you an email alert so you can take action before credits run out. Credit consumption is synced every 30 minutes.
Infrastructure
- Hosting: All infrastructure runs on Hetzner cloud servers in a dedicated environment. SSH access requires Ed25519 key authentication — password login is disabled.
- Database backups: PostgreSQL is backed up daily at 3:00 AM UTC with 7-day retention. Backups are stored on the server filesystem and can be restored on demand.
- HTTPS everywhere: Caddy automatically provisions and renews TLS certificates via Let's Encrypt. All HTTP traffic is redirected to HTTPS.
- Security headers: We set Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, and Permissions-Policy headers on all responses.
- Dependency management: We run
npm auditas part of our deployment pipeline and address critical/high vulnerabilities before release.
Data Handling
- No AI training: We do not use your configurations, conversations, or any instance data to train AI models. Your data is used solely to operate the service on your behalf.
- Minimal data collection: We collect only what's needed to operate the service: account info, configurations, and basic page-view analytics for authenticated users. We do not use third-party analytics services.
- Data export: You can export your running instance configuration at any time via the instance API. Sensitive fields (API keys, bot tokens, gateway tokens) are automatically redacted in exports.
- Data deletion: You can delete configurations and instances from your dashboard at any time. Account deletion is available in Settings and removes all associated data, containers, and API keys.
- GDPR rights: You have the right to access, export, correct, and delete your personal data. Contact [email protected] for data access or portability requests. We respond within 30 days.
Incident Response
- Audit logging: All security-relevant actions are logged: login attempts (successful and failed), account registration, password changes, 2FA changes, instance creation/deletion/start/stop, and account deletion.
- Monitoring: Instance health checks run on a continuous cycle. Containers that fail health checks or exceed resource limits are flagged and stopped automatically.
- Breach notification: In the event of a data breach affecting your account, we will notify you by email within 72 hours of discovery, consistent with GDPR requirements.
- Vulnerability reporting: If you discover a security vulnerability, please report it to [email protected]. See Reporting a Vulnerability below for what helps and how we handle reports.
- Instance kill switch: You can stop or delete any of your instances immediately from the dashboard. If you suspect compromise, stop the instance and rotate your bot tokens on the respective platform.
What We're Working On
Security is an ongoing effort. Here's what's on our roadmap:
- Gateway token rotation from the dashboard
- WebAuthn / passkey support
Reporting a Vulnerability
We welcome good-faith reports at [email protected]. So that expectations are clear on both sides:
- No bug bounty: We do not operate a bug bounty programme and do not offer monetary compensation for vulnerability reports. Please do not undertake work in the expectation of payment — a submission creates no contract or entitlement to payment, and requests for payment do not affect how we triage a report.
- What helps: Tell us the affected asset or URL, what the security impact is, and enough non-destructive detail for us to reproduce and assess it. Generic scanner output and DNS, TLS or HTTP header observations are treated as informational unless the report explains a credible, specific impact.
- Where to stop: This is a reporting route, not authorisation to test our systems. If you notice something during ordinary use of your own account, stop as soon as you have enough to report it. Do not access or affect anyone else's account or data, degrade the service, or continue testing to prove severity. We cannot authorise testing against third-party providers we rely on.
- Attribution: We do not run a public recognition programme. Acknowledgement is occasional, at our discretion, and only with the reporter's agreement on the name and wording.
Acknowledgement: July 2026 — Muhammad Usama reported missing CAA and MTA-STS configuration controls.
Contact
For security concerns, please email [email protected]. For general questions, see our Privacy Policy and Terms of Service, or reach us at [email protected].