tag:github.com,2008:https://github.com/render-oss/cli/releasesTags from cli2026-03-14T04:14:17Ztag:github.com,2008:Repository/869646043/v2.14.02026-03-14T04:22:46Zv2.14.0<p>update changelog for v2.14.0 (#344)</p>
<p>GitOrigin-RevId: 473e5eb77283d878b905c263d0a6c3a5a1f3b74f</p>blue-kelehertag:github.com,2008:Repository/869646043/v2.13.02026-03-09T23:28:06Zv2.13.0<p>[PRDGRO-2070] Services Create Non-Interactive Command (#311)</p>
<p>* create types for runtime, envvars, region, secretfile and servicetype to help with validation of service create params</p>
<p>* Add a service type to validate and normalize cli input</p>
<p>* Create a registry helper to get registry creds by name or id</p>
<p>* Helper to get a service by it's name or id</p>
<p>* Secret file helper to read file from disk</p>
<p>* Use the service type to build a service create request</p>
<p>* Populate a service from the api so we can 'clone' an existing service</p>
<p>* Add support for string arrays, we need them for envvars</p>
<p>* Wire it all up in a command</p>
<p>* Alias service to services</p>
<p>* RegistryCredential can also be set for the docker runtime</p>
<p>* Rename to ParseOption to hopfully be a little clearer to future readers</p>
<p>* Better seperation of concerns in clone.go extract values from the api serivce then apply them to empty input fields</p>
<p>GitOrigin-RevId: 6e2cd0501061f0e8840c0041b1110e23bbbda642</p>mosslilleytag:github.com,2008:Repository/869646043/v2.12.02026-03-06T18:14:12Zv2.12.0<p>update changelog for v2.12.0 (#334)</p>
<p>GitOrigin-RevId: d47ef3e8fa359528ab5cd2f433835402279bb081</p>blue-kelehertag:github.com,2008:Repository/869646043/v2.11.02026-03-04T04:50:30Zv2.11.0<p>add CHANGELOG.md to copybara file list (#330)</p>
<p>GitOrigin-RevId: cc64a1861b911ad36db76a30ce8ab0e47cc580d4</p>blue-kelehertag:github.com,2008:Repository/869646043/v2.102026-02-17T17:37:19Zv2.10<p>Add `render skills install` command (#269)</p>
<p>## Summary</p>
<p>Add `render skills` commands for managing Render agent skills across AI coding tools.</p>
<p>## What's included</p>
<p>- **`skills install`** — Interactive or CLI-driven installation of skills from the Render skills repo to detected AI coding tools (Codex, OpenCode, Gemini CLI, and all Vercel-registry agents)
<br />- **`skills update`** — Content-hash-based update detection (SHA-256) with interactive selection of outdated skills
<br />- **`skills remove`** — Remove skills interactively or via `--skill`, `--tool`, and `--all` flags
<br />- **`skills list`** — Display installed skills and detected tools from local state (offline)
<br />- **Skills hub** — `render skills` opens a TUI palette for quick access to all subcommands</p>
<p>## Key design decisions</p>
<p>- **Shared skills directory** (`~/.agents/skills`) used by most tools, with tool-specific paths where needed (e.g. `~/.gemini/skills`)
<br />- **Scope support** — Skills can be installed at user or project scope, with scope-aware state management and labeling
<br />- **TUI-first** — All commands use Bubble Tea views with state machines; `--tool`/`--skill`/`--scope` flags available for CI
<br />- **go-git** for cloning instead of shelling out to `git`
<br />- **State persistence** in `~/.render/skills.yaml` tracking versions, content hashes, scopes, and directory names</p>mosslilleytag:github.com,2008:Repository/869646043/v2.9.12026-02-12T17:10:15Zv2.9.1<p>Show user email in `render workspaces` header, pre-select current wor…</p>
<p>…kspace (#272)</p>
<p>Replace the workspace name with the user email in the breadcrumb
<br />header for the workspaces view only. Additionally, the current
<br />workspace is pre-selected in `render workspaces` and
<br />`render workspace set` interactive views.</p>metonymtag:github.com,2008:Repository/869646043/v2.9.02026-02-18T17:27:32Zv2.9.0metonymtag:github.com,2008:Repository/869646043/v2.8.02026-02-09T22:01:06Zv2.8.0<p>`render psql` supports non-interactive outputs (#254)</p>
<p>Adds --command/-c flag that runs a query and exits, with output
<br />controlled by -o json|yaml|text. Additional psql flags pass through
<br />via -- [args].</p>
<p># Interactive mode (default)
<br />render psql my-database</p>
<p># Non-interactive outputs
<br />render psql my-database -c "SELECT NOW();" -o text
<br />render psql my-database -c "SELECT NOW();" -o json
<br />render psql my-database -c "SELECT NOW();" -o yaml</p>
<p># Passthrough psql flags
<br />render psql my-database -c "SELECT id, email FROM users;" -o text -- --csv
<br />render psql my-database -c "SELECT count(*) FROM orders;" -o text -- -t -A</p>metonymtag:github.com,2008:Repository/869646043/v2.7.12026-01-28T00:47:21Zv2.7.1<p>We should use keyvalue instead of redis for validation plan summary (…</p>
<p>…#249)</p>mosslilleytag:github.com,2008:Repository/869646043/v2.7.02026-01-26T22:12:23Zv2.7.0<p>[PRDGRO-1889] Blueprint Validate Command (#247)</p>
<p>* Generated types from OpenAPI Schema</p>
<p>* Add Blueprint validate command</p>
<p>* Add blueprints command path</p>
<p>* We don't want to swallow errors</p>
<p>* Use generated types</p>
<p>* We can just return err</p>mosslilley