Dev VM Environment
Per-VM environment variables and automatic GitHub authentication on development VMs.
Dev VM Environment
Development VMs carry their own set of environment variables, separate from the
function and compute-service env. Manage them with
ccp env, passing the target VM with --vm <vm_id>.
ccp env list --vm <vm_id> # list your variables
ccp env get KEY --vm <vm_id> # reveal one value
ccp env set KEY=value --vm <vm_id> # add or update (upsert)
ccp env unset KEY --vm <vm_id> # remove one
ccp env refresh-system --vm <vm_id> # re-apply server-managed credentialsAll variables are made available to every command run inside the VM (interactive
shells and exec).
Visibility
Each variable has a visibility level that controls whether its value is readable back through the API:
| Visibility | In ccp env list | ccp env get |
|---|---|---|
plaintext | value shown | value shown |
sensitive (default) | value masked | value shown |
secret | value masked | write-only — never returned |
Set the level when writing:
ccp env set API_URL=https://api.example.com --plaintext --vm <vm_id>
ccp env set API_KEY=sk-... --secret --vm <vm_id>Omitting the flag keeps an existing variable's level (and defaults a new one to
sensitive), so re-setting a secret's value never silently downgrades it.
Automatic GitHub authentication
On a development VM you don't need to configure Git or gh — the platform
injects your GitHub credentials automatically when the VM is created:
ghis installed and already authenticated.gitpush/pull over HTTPS authenticates with no prompt (a host-scoped credential helper forgithub.comis wired in).- Commits are authored as you (your GitHub name and email), not a placeholder bot identity.
These credentials are managed by the server as hidden system variables
(GH_TOKEN, GH_HOST, GIT_HTTP_*, GIT_AUTHOR_*, GIT_COMMITTER_*). They
are applied to the VM but never returned by ccp env list or ccp env get,
and you cannot set or remove them — the GH_, GIT_, CCP_, and CLUSTA_
prefixes are reserved.
Credentials come from the GitHub account linked to your Cluster account. If you haven't linked GitHub, the VM still provisions — just without Git auth.
Re-applying after linking or rotating
Credentials are captured at VM-creation time. If you link GitHub (or rotate your token) afterwards, re-apply them to an existing VM with:
ccp env refresh-system --vm <vm_id>This recomputes your current GitHub credentials and pushes them into the VM. If you later unlink GitHub, running it again clears the stale credentials.