Docs

Install

The one-line installer, what setup creates in your account, what it costs to run, and how to uninstall.

On this page
Early access

Warden is in an early access preview, and access arrives by e-mail. Leave your email and we will send it to you. Until then the installer finds no release to install, and stops before it changes anything. The command and the steps below are what you will run.

The command

curl -fsSL https://wardensec.ai/install | sh

The script installs one program, warden, and nothing else. It fetches only from https://wardensec.ai/releases/, checks the release index, the release record and the program against the root key built into the script, and needs OpenSSH 8.2 or later to do so. It writes only under ~/.local/share/warden, plus one link in ~/.local/bin, and does not use sudo. At the end it prints which keys signed the release, the class of each key, and the fingerprint of each root file, so you can compare them with your license e-mail.

You should read any script before you pipe it to a shell. To read this one first:

curl -fsSL https://wardensec.ai/install.sh

The whole script sits inside a main function that is called on its last line. If the download is cut short, the shell never reaches that line and nothing runs. The install page also gives a pinned line that checks the script’s SHA-256 before running it.

The steps

  1. Install the program. The command above verifies and installs warden, then prints the next step.
  2. Run warden setup. Setup reads your account first and changes nothing while it does. It asks three questions: the console’s name (a domain you control, such as wardensec.example.com, which your passkeys are bound to), your e-mail (the first person to sign in, and the address every readback and waiting change is mailed to), and how long to keep the record (400 days by default, 30 for a trial). It confirms the region and the cluster, and discovers the rest.
  3. Setup creates the install. It prints every resource it will create, why, and a dollar line for each item, then asks before it creates anything. It creates the read-only roles Watch needs, the hub’s CloudFormation stacks, the console’s address under your domain, and the Helm chart in the wardensec namespace of your cluster. The console is required: the first signature and every signed change happen in it. Setup refuses to install without a console. It ends on one card: the console’s address, the setup words, and “Open the console to finish”. If your domain is outside Route 53, or AWS needs a click from you, the console shows a guided step with a Check button; see Install checks.
  4. Become the first keeper. Open the console’s address in your browser, sign in with the temporary password mailed to you, and register your passkey there. You are the first keeper; you can invite more later.
  5. Finish in onboarding. Five screens with their defaults chosen: what to watch, the agents, the alerts, and Defend and your license. Slack is a channel a keeper adds in the console, under the alerts, by pasting an incoming-webhook URL. You sign once with your passkey and the choices take effect. Add your license (download the Watch license from your account on this site), or skip it: the watch runs unlicensed, and changes stay off until you add one. Warden checks a license offline, and the first read of your estate starts at once. See Onboarding, and Recovery if the console or its door is lost.

What your computer needs

  • Docker or Podman, to run the setup image.
  • The AWS CLI, signed in as an administrator of the account, for setup only.
  • A browser that can use a passkey. Any passkey works: one saved in a password manager, on a phone or laptop, or on a security key.

What your AWS account needs

One AWS account, an EKS cluster at Kubernetes 1.30 or later with access entries, a domain you control, and one passkey. An organization, more keepers, hardware keys and control-plane audit logs are stronger options the install offers and the assurance panel shows. A separate Witness account comes after launch: this release installs none.

  • One AWS account. An estate is the AWS accounts and EKS clusters one hub watches: a single account, or an organization’s accounts.
  • An EKS cluster at Kubernetes 1.30 or later with access entries enabled, to run the hub in. One hub watches your whole estate.
  • A domain you control, for the console and the signing page. Setup creates a hosted zone for the name you choose, such as wardensec.example.com, and prints the records to delegate it from your DNS provider.
  • An operator with admin rights, for setup only. After setup, Warden runs with its own scoped roles.
  • A CloudTrail trail covering every enabled region. If the account has none, setup offers one and prices its storage.
  • Bedrock model access, for the agents. If it is off, Warden runs rules-only and says so on every page. See Bedrock access.
  • A license file. The Watch license is free. See Licensing.

What it costs to run

You pay AWS for what Warden creates in your account. The license does not change that. Setup prints a dollar line for each item before it creates anything, at list price, for one and for two availability zones, and the console’s Footprint page carries the same figures afterwards.

ItemWhat drives it
Interface endpointsAbout $7.30 per endpoint per availability zone a month at list price. Setup offers to reuse endpoints your VPC already has.
Node groupThe instances that run the wardensec namespace, at their on-demand price.
Load balancer and web firewallThe console’s edge.
Bedrock modelsThe agents. Hard ceiling of $15 a day, plus a $30 attack reserve usable only while an attack is in progress. Setup prints the expected month for your estate.
KMS keys and secretsA few keys and secrets, priced per key and per secret.
The ledgerRecords nobody can delete for ten years, the root user included: a few kilobytes, cents a year.
Defend, when onA NAT gateway with a fixed address (about $33 a month) and an STS endpoint (about $15 a month).
Options you chooseControl-plane audit log ingestion and the recon rule, each priced before you turn it on. A Witness account comes after launch and is not installed by this release.

With the cost-allocation tag turned on, the Footprint page shows what AWS billed beside the estimate.

What setup creates

  • In AWS: stacks named wardensec-<part>, all tagged with your install id and grouped as one application in the AWS console. The read-only roles, the state and ledger buckets, the event lane’s bus and queue, the agents’ invoke-only role, the console’s edge and address.
  • In each watched account and region: a member stack with the read role and the event forwarder.
  • In your cluster: one namespace, wardensec, with the console, the egress proxy, the event lane and the scheduled scan.
  • With Defend on: a separate Defend stack and member stacks holding the act roles. With Defend off, they do not exist.

Run warden footprint at any time to list every resource, why it exists and what it costs.

What the installer never does

  • Use sudo or ask for your password.
  • Send your credentials, or anything about your estate, to wardensec.ai or to us.
  • Give Warden write access to your accounts for Watch.
  • Turn on Defend. Defend stays off until a keeper signs it on.
  • Run a half-downloaded script, or a release whose signatures do not check.

Uninstall

Start from the console’s Uninstall page. It lists every resource that goes and what stays, with its cost today. It refuses to continue while Defend holds anything, and offers to undo every hold first. A keeper signs the decommission with a passkey; then warden uninstall, run as an account administrator, removes everything in order and runs warden footprint --after-uninstall to prove what is left. What stays is the ledger bucket under its retention lock, the key that reads it, and the trail if Warden created your only one.