vastai-multi-env-setup

v2026.09.24

Separate development, staging, and production Vast.ai identities, templates, labels, budgets, data, and evidence so one environment cannot mutate another. Use when establishing or auditing environment isolation. Trigger with: "set up Vast.ai environments", "separate Vast.ai prod and dev", "govern Vast.ai templates by environment".

GitHub
Install command
npx skhub add jeremylongshore/vastai-multi-env-setup
Markdown
SKILL.md

Vast.ai Environment Isolation

Overview

Vast.ai does not turn naming conventions into isolation automatically. Build the boundary from team/account context, scoped keys, immutable template hashes, labels, data prefixes, budgets, and promotion evidence.

Prerequisites

  • Environment owners, sensitivity, workloads, regions, budgets, and approved accounts or teams
  • Separate keys, SSH identities, storage prefixes, templates, registries, and alert routes
  • Promotion, break-glass, rollback, and access-review procedures

Instructions

Step 1: Define environment identity

Assign each environment an explicit team/account context, key IDs, labels, data prefix, budget, and owner. Reject implicit current context.

Step 2: Separate credentials

Create environment-specific scoped keys and dedicated SSH access. Production credentials must never be available to development jobs or forked CI.

Step 3: Version templates and images

Use immutable image digests and template hashes. Promote the same bytes by recorded identity rather than rebuilding for each environment.

Step 4: Constrain data and resources

Use distinct checkpoint/storage prefixes, resource labels, Serverless IDs, and notifications. Validate that a dev key cannot read or mutate production.

Step 5: Promote through evidence

Require dev tests, staging canary, recovery, cost, and security receipts before a production role references the candidate identity.

Step 6: Audit drift

Regularly compare members, roles, keys, templates, active resources, labels, budgets, and stale environment variables across contexts.

Authentication

Environment isolation depends on distinct scoped credentials and explicit team/account context. Never infer environment only from a filename, branch, or mutable image tag.

Tool Discipline

Use Read and Grep to inspect manifests, configuration, provider output, and existing tests before proposing a mutation. Use Write or Edit only for the approved plan, implementation, test, or redacted receipt; do not create, update, destroy, or fund Vast.ai resources without explicit operator approval.

Output

  • Environment authority and resource map
  • Cross-environment positive/negative access tests
  • Promotion, drift, exception, and rollback receipt

Return environment contexts, role/key IDs, immutable release identity, data prefixes, access tests, budget owners, and promotion state.

Examples

Staging and production use different team contexts and keys but promote the identical template hash; a staging key's attempted production instance read is retained as an expected denial.

Error Handling

FailureResponse
Current context is unknownStop before search or mutation and resolve the account/team explicitly.
One key spans unrelated environmentsReplace it with scoped environment-specific identities.
Promotion rebuilds mutable bytesReject the release and promote an immutable digest/hash.
Cross-environment denial failsContain access, review audit logs, and repair roles before proceeding.

Resources

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

skills/.curated/vastai-multi-env-setup

Default branch

main

Latest commit

e5a6c3b

Tree SHA

c2dc8e8