원클릭으로
render
Deploy web services, static sites, and workers to Render using the Render CLI
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Deploy web services, static sites, and workers to Render using the Render CLI
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Deploy backend services and databases to Railway using the Railway CLI
Deploy frontend applications to Vercel using the Vercel CLI
Handle interactive CLI commands safely using tmux (local execution only)
| name | render |
| description | Deploy web services, static sites, and workers to Render using the Render CLI |
| metadata | {"version":"2.1.0","author":"OpenOps Team"} |
| risk_level | write |
| platforms | ["render"] |
| requires | {"cli":"render","install":"npm install -g @render-oss/cli"} |
Use this skill when:
Verify installation:
render --version
To install Render CLI
npm install -g @render-oss/cli
Or using Homebrew (macOS):
brew install render
Render CLI uses an API key for non-interactive authentication or browser for interactive mode.
To check login status, run
render whoami
If user has not authenticated (which raise an error of Error: failed to create client: run render login to authenticate), run this command in interactive mode:
render login
render services list
If not authenticated, the CLI typically returns:
Error: No API key configured. Set RENDER_API_KEY or run 'render config set api-key'
Resolve authentication as an agent:
https://dashboard.render.com/u/settings#api-keys).render config set api-key <api_key>
render services list
Expected output (authenticated):
┌─────────────────────────────────────────────────────────────────────────┐
│ Services │
├──────────────────┬────────────────┬──────────┬──────────────────────────┤
│ Name │ Type │ Status │ URL │
├──────────────────┼────────────────┼──────────┼──────────────────────────┤
│ my-api │ Web Service │ Live │ https://my-api.onrender │
└──────────────────┴────────────────┴──────────┴──────────────────────────┘
RENDER_API_KEYIf the user provides the key as an environment variable (e.g. in CI), ensure it is set:
export RENDER_API_KEY=<api_key>
Then verify with:
render services list
| Type | Description | Use Case |
|---|---|---|
web_service | HTTP server with public URL | APIs, web apps |
static_site | Static file hosting | SPAs, documentation |
background_worker | Non-HTTP service | Job processors, bots |
private_service | Internal service | Microservices |
Render auto-detects and builds:
| Framework | Language | Build Command | Start Command |
|---|---|---|---|
| Next.js | Node.js | npm run build | npm start |
| Express | Node.js | npm install | node index.js |
| FastAPI | Python | pip install -r requirements.txt | uvicorn main:app |
| Django | Python | pip install -r requirements.txt | gunicorn app.wsgi |
| Flask | Python | pip install -r requirements.txt | gunicorn app:app |
| Go | Go | go build -o app | ./app |
| Rust | Rust | cargo build --release | ./target/release/app |
Deployable units in Render. Common types:
Each deploy is a build + release cycle for a service. You can trigger deploys via the CLI and check status/history.
render.yaml)Infrastructure-as-code definition for services/databases. The CLI can launch a blueprint to create resources.
render services list
Expected output:
┌─────────────────────────────────────────────────────────────────────────┐
│ Services │
├──────────────────┬────────────────┬──────────┬──────────────────────────┤
│ Name │ Type │ Status │ URL │
├──────────────────┼────────────────┼──────────┼──────────────────────────┤
│ my-api │ Web Service │ Live │ https://my-api.onrender │
│ my-worker │ Background │ Live │ - │
│ my-site │ Static Site │ Live │ https://my-site.onrender │
└──────────────────┴────────────────┴──────────┴──────────────────────────┘
render services show --name <service-name>
Or by ID:
render services show --id srv-xxxxxxxxxxxxx
For an existing service, trigger a new deployment:
render deploys create --service-id srv-xxxxxxxxxxxxx
Or by service name:
render deploys create --service-name my-api
Expected output:
Deployment triggered successfully.
Deployment ID: dep-xxxxxxxxxxxxx
Status: build_in_progress
render deploys list --service-id srv-xxxxxxxxxxxxx
Expected output:
┌─────────────────────────────────────────────────────────────────────────┐
│ Deployments for my-api │
├──────────────────┬────────────────┬──────────────────────────────────────┤
│ ID │ Status │ Created │
├──────────────────┼────────────────┼──────────────────────────────────────┤
│ dep-abc123 │ live │ 2024-01-15 10:30:00 │
│ dep-xyz789 │ deactivated │ 2024-01-14 09:15:00 │
└──────────────────┴────────────────┴──────────────────────────────────────┘
render logs --service-id srv-xxxxxxxxxxxxx
With follow:
render logs --service-id srv-xxxxxxxxxxxxx --tail
render env set --service-id srv-xxxxxxxxxxxxx KEY=value
render env list --service-id srv-xxxxxxxxxxxxx
Using a render.yaml file:
render blueprint launch
This creates all services defined in render.yaml.
render --version
If CLI not installed:
npm install -g @render-oss/cli (or brew install render on macOS)render --versionrender services list
If error about API key:
https://dashboard.render.com/u/settings#api-keysrender config set api-key <key>render services listAs an agent, prefer an explicit list → user chooses → act workflow to avoid guessing the target service.
render services list
For existing service:
render deploys create --service-name <name>
For new service, guide user to:
render.yaml blueprintrender blueprint launchOr create via dashboard and then trigger deploy via CLI.
render deploys list --service-name <name>
Check latest deployment status is live.
| Type | RAM | CPU | Use Case |
|---|---|---|---|
| free | 512 MB | Shared | Development, testing |
| starter | 512 MB | 0.5 | Low-traffic apps |
| standard | 2 GB | 1 | Production apps |
| pro | 4 GB | 2 | High-traffic apps |
| pro_plus | 8 GB | 4 | Resource-intensive |
Free tier limitations:
| Error Output | Cause | Action |
|---|---|---|
No API key configured | Not authenticated | Guide user to create API key, then execute render config set api-key <key> |
Service not found | Wrong name/ID | Execute render services list to find correct service |
Deployment failed | Build error | Execute render logs to diagnose, then fix |
Rate limited | Too many requests | Wait briefly, then retry |
command not found: render | CLI not installed | Ask permission, then install CLI |
Parse table output for:
Live, Deploying, FailedLook for:
Status: live - deployment successfulStatus: build_in_progress - still buildingStatus: failed - deployment failedCheck for:
Error: or error: linesFor Infrastructure as Code:
services:
- type: web
name: my-api
env: python
buildCommand: pip install -r requirements.txt
startCommand: uvicorn main:app --host 0.0.0.0 --port $PORT
envVars:
- key: DATABASE_URL
fromDatabase:
name: my-db
property: connectionString
databases:
- name: my-db
plan: free
Render performs health checks on web services:
/Implement a /health endpoint:
@app.get("/health")
def health():
return {"status": "healthy"}
Deploy web service (CLI not installed):
User: "Deploy my Express API to Render"
Agent: [executes: render --version]
Agent: "Render CLI is not installed. May I install it for you?"
User: "Yes"
Agent: [executes: npm install -g @render-oss/cli]
Agent: "CLI installed. Checking authentication..."
Agent: [executes: render services list]
Agent: "Render requires an API key. Please create one at:
`https://dashboard.render.com/u/settings#api-keys`
Then share the key with me."
User: "Here it is: rnd_xxxxxxxxxxxxx"
Agent: [executes: render config set api-key rnd_xxxxxxxxxxxxx]
Agent: "API key configured. Checking services..."
Agent: [executes: render services list]
Agent: "Found existing service 'my-api'. Triggering deployment..."
Agent: [executes: render deploys create --service-name my-api]
Agent: "Deployment triggered! Your API will be live at https://my-api.onrender.com"
Deploy web service (already set up):
User: "Deploy my Express API to Render"
Agent: [executes: render services list]
Agent: "Found existing service 'my-api'. Triggering deployment..."
Agent: [executes: render deploys create --service-name my-api]
Agent: "Deployment triggered! Checking status..."
Agent: [executes: render deploys list --service-name my-api]
Agent: "Build in progress. Your API will be live at https://my-api.onrender.com once complete."
Check deployment status:
User: "What's the status of my Render deployment?"
Agent: [executes: render deploys list --service-name my-api]
Agent: "Latest deployment:
- Status: live
- Deployed: 5 minutes ago"