Audex
Stop giving your AI agent full cloud access.
Audex wraps any command with temporary, scoped credentials for AWS, GCP, Azure, or HashiCorp Vault. When the command exits, credentials are automatically revoked. Every action is logged.
tryaudex run --allow "s3:GetObject,s3:ListBucket" -- aws s3 lsOne command. Multi-cloud. Scoped access. Auto-revoked.
The Problem
Section titled “The Problem”AI coding agents (Claude Code, Cursor, Copilot) increasingly need to interact with cloud infrastructure directly. You have three bad options:
| Approach | Risk |
|---|---|
| Give full cloud credentials | One hallucinated rm from disaster |
| Give no credentials | Agent can write code but can’t test or deploy |
| Manually scope IAM roles | Takes hours, nobody maintains them, roles never expire |
Audex is the middle ground. Scoped permissions, short-lived credentials, automatic revocation, full audit trail.
Install
Section titled “Install”# From crates.iocargo install tryaudex
# From sourcecargo install --git https://github.com/Aditya-PS-05/tryaudex
# Or build locallygit clone https://github.com/Aditya-PS-05/tryaudexcd tryaudex && cargo build --releaseQuick Start
Section titled “Quick Start”1. Set up an IAM role
Section titled “1. Set up an IAM role”Create an IAM role that Audex can assume. Audex further restricts this role with inline session policies per command.
export AUDEX_ROLE_ARN="arn:aws:iam::123456789:role/AudexAgentRole"2. Run a command with scoped credentials
Section titled “2. Run a command with scoped credentials”# Read-only S3 access for 5 minutestryaudex run --ttl 5m --allow "s3:GetObject,s3:ListBucket" -- aws s3 ls
# Deploy a Lambda with a budget captryaudex run --ttl 15m --budget 5 \ --allow "lambda:UpdateFunctionCode,lambda:GetFunction" \ -- ./deploy.sh
# Let an AI agent work with scoped accesstryaudex run --ttl 30m --allow "s3:GetObject,dynamodb:Query" \ -- your-agent "analyze the data"3. Review what happened
Section titled “3. Review what happened”# List all sessionstryaudex sessions list
# View audit log for a sessiontryaudex audit show a1b2c3d4
# Or just run `tryaudex` for the interactive dashboardtryaudexWhat Audex Does
Section titled “What Audex Does”- You specify allowed actions (
--allow "s3:GetObject") - Audex calls your cloud provider’s credential API (AWS STS, GCP IAM Credentials, Azure, or Vault)
- Temporary credentials are injected as env vars into the subprocess
- When the process exits (or TTL expires), credentials stop working
- Every session is logged to an append-only audit trail
The base role/identity’s permissions are the ceiling. The inline session policy further restricts them. The effective permissions are the intersection of both… the inline policy can only narrow, never widen.
Multi-Cloud Support
Section titled “Multi-Cloud Support”Audex supports AWS, GCP, Azure, and HashiCorp Vault. Use --provider to switch:
# AWS (default)tryaudex run --provider aws --allow "s3:GetObject" -- aws s3 ls
# GCPtryaudex run --provider gcp --allow "storage.objects.get" -- gsutil ls
# Azuretryaudex run --provider azure --allow "Microsoft.Storage/storageAccounts/read" -- az storage account list
# HashiCorp Vault (AWS secrets engine)tryaudex run --provider vault --allow "s3:GetObject" -- aws s3 lsSee Multi-Cloud for setup instructions for each provider.
Deep Dive
Section titled “Deep Dive”- How It Works — Architecture and credential flow
- Multi-Cloud — AWS, GCP, Azure, and Vault setup
- Policies — Policy syntax, profiles, and learning
- Team Mode — Server, SSO, approval workflows, and HA
- CLI Reference — All 16 commands and flags
- MCP Server — Claude Code integration
- Dashboard — Interactive TUI
- Security Model — Trust boundary and threat model