Prevent observability drift in your PRs
-
Copy the example environment file:
cp .env.example .env
-
Configure your
.envfile:- Monitor Provider: Your provider's API credentials
- AI Provider: Any OpenAI-compatible API works (OpenRouter, Together AI, Ollama, etc.)
-
Make sure you have AWS credentials configured (e.g.,
aws sso login) -
Run:
cargo run -- sync
Syncs your monitors to S3 Vectors for drift detection.
- ✅ Checks if a bucket exists, creates one if not
- ✅ Checks if an index for your provider exists, creates one if not
- ✅ Fetches monitors from your provider
- ✅ Generates embeddings
- ✅ Uploads embeddings to S3 Vectors
Monitors are cached for 1 month. Pass
-for--forceto refresh.
Checks your PR for potential monitoring drift.
- Chunks your PR
- Generates embeddings
- Compares against your synced monitors
Drifty uses S3 Vectors to store monitor embeddings. For CI/CD, we recommend using OIDC instead of long-lived access keys.
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/joswayski/drifty/releases/latest/download/drifty-installer.sh | shClick to expand setup instructions
-
Go to IAM → Policies → Create policy
-
Either use the IAM.example.json or create a new policy with the following permissions:
s3vectors:CreateIndexs3vectors:PutVectorss3vectors:GetIndexs3vectors:GetVectorBuckets3vectors:GetVectorss3vectors:CreateVectorBuckets3vectors:QueryVectors
Make sure to include the name of the bucket that you will use, and to add a wildcard on the indexes under
resources:
- Go to IAM → Identity providers → Add provider
- Select OpenID Connect
- Provider URL:
https://token.actions.githubusercontent.com - Audience:
sts.amazonaws.com - Click Add provider
- Go to IAM → Roles → Create role
- Select Web identity
- Identity provider:
token.actions.githubusercontent.com - Audience:
sts.amazonaws.com - Add your
organizationandrepository name
- Click Next, attach the policy you created in Step 1.
- Name the role (e.g.,
GitHubActionsDriftyRole)
Create a GitHub action like the one you see here. Make sure to add your environment variables as secrets in your GitHub repo settings.
- Datadog ✅
Contributions welcome for other providers!


