Keys
Three keys. Two are RunPod, one is optional. All stay on your machine.
RunPod API key
Required. It lets CozyGPU create and manage the serverless endpoints in your account and submit jobs. In the RunPod console go to Settings → API Keys → Create API Key and give it read and write access (the restricted read-only type cannot create endpoints). Copy the key once; RunPod does not show it again.
- Used for: creating or repairing endpoints, submitting and polling jobs, listing GPU availability, creating network volumes.
- Validated on save with a request to RunPod's GPU catalog.
RunPod S3 API key
Required for custom LoRAs and for inputs over 7 MB; generation works without it. RunPod network volumes expose an S3-compatible API, and this key is how the app copies LoRA files and large inputs to the volume the worker reads from, and downloads outputs over 8 MB back. In the console: Settings → S3 API Keys → Create. You get an access key id and a secret; paste both.
- Used for: uploading LoRAs and large inputs to your volumes, downloading large outputs, writing a small marker file per volume.
- Validated on save by listing buckets on one S3 datacenter.
xAI key (optional)
Only for the Enhance button, which rewrites your prompt into a more descriptive one. Create it at the xAI console (console.x.ai). When you click Enhance, the prompt text is sent to xAI; nothing else ever is. Leave it empty and the button is simply disabled.
Where keys are stored
Keys are held in memory by the app's local service while it runs and written to disk as keys.enc in the app's data folder, encrypted with Electron's safeStorage (macOS Keychain, Windows DPAPI). They are never transmitted to CozyGPU. Rotate them in Settings; revoke old ones in the RunPod and xAI consoles.
Scope and spend
A RunPod API key can spend your whole balance, so treat it like a password. Set a spend limit in RunPod under Billing if you want a hard ceiling. CozyGPU itself never runs more than one worker per model at a time. See balance and spend limit.