Skip to main content

Robo Guardians

Robo Guardians are automated co-signers for Salt Accounts.

They make policy-controlled automation possible without requiring Salt to become a signer. An organisation can create Accounts where approved transactions can be co-signed automatically, while signing authority remains distributed across participants chosen by the organisation.

Robo Guardians are designed to stay online when human signers are not. This allows approved workflows to continue without requiring every transaction to wait for another human signature.

Robo Guardians are designed for organisation-controlled automation.

Each organisation chooses where its Robo Guardians run. They can be deployed on the organisation's own hardware, in a standard cloud environment, or through infrastructure operated by a trusted provider. This lets organisations use automated co-signing without handing that signing role to Salt.

AWS Nitro Enclaves provide an isolated compute environment for sensitive workloads, which makes them well suited to automated co-signing infrastructure. This is currently experimental and not fully supported in the current release.

What Robo Guardians do

Robo Guardians participate in Account creation and transaction signing workflows.

During Account creation, Robo Guardians take part as signing participants and receive their own signing material for the account.

During transaction signing, Robo Guardians co-sign when the proposed transaction has passed the Account's active policies.

The transaction can be broadcast after the Account's signing threshold is met.

Robo Guardian Infrastructure Specifications

To set up Robo Guardians, Salt recommends the minimums set below:

  • Ubuntu server 26.04 LTS
  • Server with 2GB RAM, 20GB HDD
  • Direct Internet Connection: end-to-end routing, i.e., not behind a NAT. Best to use a server with a static IP

Each server only hosts one Robo Guardian container. Stacking multiple Robo Guardian instances on a single server is not supported.

The Salt team recommends using a virtual machine, such as from Vultr, Contabo, Digital Ocean (droplet), AWS (EC2 container), Azure or another turnkey style infrastructure provider.

Many other infrastructure arrangements can operate without issue, including Raspberry Pi or Ubuntu PC on a home network, however they are not officially supported and Salt does not test against them.

How Robo Guardians run

Robo Guardians run on infrastructure chosen by the organisation.

An organisation can run Robo Guardians on its own hardware, in a standard cloud environment, or through infrastructure operated by a trusted provider.

Support for AWS Nitro Enclaves is planned. Nitro Enclaves add an isolation boundary for sensitive workloads, which is useful for Robo Guardian deployments. This deployment option is currently experimental and not fully supported.

A Robo Guardian container controls access to a set of Robo Guardians. Each Robo Guardian functions as an EOA, and can act as a co-signer on accounts in the organisation.

Salt provisions the number of Robo Guardians required based on the account configuration (number of proposers). The largest account configuration requires 3 Robo Guardians.

Robo Guardians maintain outbound WebSocket connections to the Salt Coordination Layer. This allows them to receive workflow messages and participate in Account creation or signing workflows without exposing inbound ports.

Salt coordinates with Robo Guardians, but does not host them, control them, or hold their key material.

For more detail on Account configurations, see Accounts.

Setting up Robo Guardians

Robo Guardians must be available before an Account can be created.

At a high level, setup involves:

  1. choosing where the Robo Guardians will run
  2. provisioning the required infrastructure
  3. retrieving the Robo Guardian configuration
  4. installing and starting the Robo Guardian container
  5. connecting the container to the Salt Coordination Layer
  6. confirming that the Robo Guardians are online
  7. creating accounts that include those Robo Guardians as signing participants

The exact setup flow depends on the hosting model used by the organisation.

For SDK users, Robo Guardian setup may be coordinated through an application or onboarding flow built with the Salt SDK. For users of the Salt App, setup may be surfaced through app.salt.space where supported.

In all cases, the Robo Guardians run on infrastructure chosen by the organisation. Salt coordinates with them, but does not operate them.

Configuration access

Robo Guardian setup requires sensitive operational information.

This may include downloadable software, a one-time-password, and configuration values needed to connect the Robo Guardian container to the Salt Coordination Layer.

Robo Guardian configuration endpoints are only available to sessions authenticated against app.salt.space.

Requests from other tenant domains cannot retrieve this information. This prevents third-party fintech web interfaces from exposing Robo Guardian deployment and management details to their own application environment.

A bot or service that needs to retrieve Robo Guardian configuration must use a valid app.salt.space JWT.