render-env-vars — Claude Code skill: what it does, how to install
Configures environment variables, secrets, and env groups on Render. Helps wire cross-service dependencies in Blueprints and fix port binding issues.
npx skills add render-oss/skills --skill render-env-vars -a claude-codeWhat render-env-vars does
This skill guides AI assistants when configuring secrets and variables on Render. It handles Blueprint directives such as fromDatabase, fromService, sync: false, and generateValue, preventing configuration drift across the Dashboard and YAML files.
The instructions enforce platform-specific networking defaults. Web processes must listen on 0.0.0.0, with PORT defaulting to 10000. For native Python services, it configures GUNICORN_CMD_ARGS so custom start commands match platform health checks.
Binding to localhost or hardcoding an arbitrary port breaks deployment health checks immediately. The skill directs agents to fetch current markdown docs via curl before mutating any environment settings.
What it helps with
- wire database credentials into web services via Blueprints
- configure shared environment groups across multiple services
- resolve port binding errors and health check failures
- set up generateValue and sync: false in Render YAML
Example prompts for the agent
- Wire DATABASE_URL from my Postgres instance to the backend service in render.yaml
- Fix health check port binding for this Python web service on Render
- Create a shared environment group for staging API keys
How to install render-env-vars
1Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-env-vars -a claude-code2Manually: put the files in place
~/.claude/skills/render-env-vars/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/render-env-vars/
1Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-env-vars -a codex2Manually: put the files in place
.agents/skills/render-env-vars/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-env-vars -a cursor2Manually: put the files in place
.cursor/skills/render-env-vars/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install render-oss/skills render-env-vars2Manually: put the files in place
.github/skills/render-env-vars/SKILL.md1Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-env-vars -a gemini-cli2Platform CLI
gemini skills install https://github.com/render-oss/skills --path skills/render-env-varsManually: put the files in place
.devin/skills/render-env-vars/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add render-oss/skills --skill render-env-vars -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about render-env-vars
How do I install render-env-vars in Claude Code?
Run npx skills add render-oss/skills --skill render-env-vars -a claude-code in your terminal.
What does render-env-vars do?
It provides runtime rules and Blueprint wiring patterns for Render, helping assistants configure environment variables and fix binding errors.
What port should my web service listen on in Render?
Render expects servers to bind to 0.0.0.0 and read the PORT variable, which defaults to 10000. Hardcoding a different port causes health checks to fail.
Source text
SKILL.md · MIT
--- name: render-env-vars description: >- Configures environment variables, secrets, and env groups on Render. Use when the user needs to set env vars, wire secrets between services, create env groups, use generateValue, set sync: false, or troubleshoot missing or incorrect environment variable values in Blueprints or the Dashboard. license: MIT compatibility: Render Dashboard, CLI, or MCP tools metadata: author: Render version: "1.0.0" category: configuration --- # Environment Variables on Render Before inspecting or changing environment variables, secrets, secret files, or environment groups, read `references/environment-variables.md` for the current documentation, source-of-truth, safety, and mutation workflow. Blueprint wiring examples and language-specific application notes live under `references/`. ## When to Use This Skill Use this skill when users want to: - Add, change, or remove environment variables or secrets - Understand Dashboard vs Blueprint vs API/MCP flows - Use **environment groups** for shared configuration - Wire `fromDatabase`, `fromService`, `fromGroup`, `sync: false`, or `generateValue` in Blueprints - Debug missing vars, secret files, precedence, or platform-injected names For full Blueprint authoring, pair with **render-blueprints**. For first-time deploys, **render-deploy**. For web service behavior and ports, **render-web-services**. ## Blueprint Wiring (Summary) After reading `references/environment-variables.md`, use `references/wiring-reference.md` for task-specific `fromDatabase`, `fromService`, and `fromGroup` examples. Consult **render-blueprints** for the complete Blueprint workflow. ## Platform-Injected Variables Use the current default-variable reference fetched through `references/environment-variables.md` instead of relying on a fixed catalog. Language-specific application notes remain in `references/platform-variables.md`. ## Runtime-Specific Defaults Always bind HTTP servers to **`0.0.0.0`** and **`PORT`** (or the stack’s documented port env) unless using a static site or custom Docker entrypoint. - When diagnosing a port-binding failure, first establish whether the service uses a native runtime or Docker and inspect its actual start command; the applicable defaults differ. - For a web service, `PORT` defaults to **`10000`**. Prefer reading `$PORT` in the start command rather than hardcoding that number or setting `PORT` merely to match an arbitrary hardcoded port. - Native Python services currently receive `GUNICORN_CMD_ARGS` with a default bind to **`0.0.0.0:10000`**. A custom Gunicorn start command should bind to **`0.0.0.0:$PORT`** so the process and Render's health checks use the same port. ## Common Issues `WEB_CONCURRENCY` defaults differ for some older and newer services. When debugging worker counts, compare service creation date and explicit overrides, then confirm current behavior using `references/environment-variables.md` and `references/platform-variables.md`. ## References - `references/environment-variables.md` — Current configuration docs, secret handling, groups, platform variables, and mutation safety - `references/wiring-reference.md` — Blueprint cross-resource wiring examples and workspace edge cases - `references/platform-variables.md` — Concurrency, native-runtime versus Docker behavior, and application parsing notes ## Related Skills - **render-blueprints** — Full Blueprint authoring, validation, multi-service layouts - **render-deploy** — First deploy, repo requirements, MCP vs YAML - **render-web-services** — Ports, health checks, scaling behavior tied to env-driven servers <!-- shared:documentation-retrieval --> ## Current documentation retrieval Whenever this skill directs you to consult current Render documentation: 1. Retrieve the linked Markdown document directly with an available URL-fetching tool or HTTP client, such as `curl`. Do not substitute web-search summaries for the document. 2. Confirm that retrieval succeeded and returned the expected document, then read its contents. Saving a file or printing its path is not sufficient. 3. If the request fails or your tool cannot read the Markdown response, open and read the linked HTML version instead. 4. If neither version can be retrieved, disclose that the current reference is unavailable and follow any topic-specific fallback in the skill. Use bundled guidance only for stable constraints, and do not guess at changeable platform details. When a task requires multiple references, apply this workflow to each one and distinguish the documents you verified from those that remain unavailable. <!-- /shared:documentation-retrieval -->
© Render · MIT · render-oss/skills