From e10c70a31995a70a7bdbe421089d154656c17df4 Mon Sep 17 00:00:00 2001 From: carlevison Date: Mon, 28 Sep 2026 15:22:14 +0100 Subject: [PATCH 1/2] Add SDK code generation guidance to cloudinary-transformations skill Detect the user's Cloudinary SDK from project dependencies and pull SDK-specific syntax from the Transformation Reference parameter pages instead of guessing it from URL parameters. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../cloudinary-transformations/SKILL.md | 55 ++++++++++++++++++- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/skills/platform/cloudinary-transformations/SKILL.md b/skills/platform/cloudinary-transformations/SKILL.md index 1b35ebe..8a73cc5 100644 --- a/skills/platform/cloudinary-transformations/SKILL.md +++ b/skills/platform/cloudinary-transformations/SKILL.md @@ -1,10 +1,10 @@ --- name: cloudinary-transformations -description: Create and debug Cloudinary transformation URLs from natural language instructions. Use when building Cloudinary delivery URLs, applying image/video transformations, optimizing media, or debugging transformation syntax errors. +description: Create and debug Cloudinary transformation URLs and the equivalent SDK code from natural language instructions. Use when building Cloudinary delivery URLs, writing transformation code with a Cloudinary SDK, applying image/video transformations, optimizing media, or debugging transformation syntax errors. license: MIT metadata: author: cloudinary - version: '1.0.4' + version: '1.1.0' --- # Cloudinary Transformation Rules @@ -12,6 +12,7 @@ metadata: ## When to Use - Building Cloudinary delivery/transformation URLs +- Writing transformation code with a Cloudinary SDK (see the Generating SDK Code section) - Converting natural language requests to transformation syntax - Debugging transformation URLs that aren't working - Optimizing images or videos with Cloudinary @@ -125,6 +126,55 @@ https://res.cloudinary.com//// Date: Mon, 28 Sep 2026 15:35:15 +0100 Subject: [PATCH 2/2] Handle missing companion skills in SDK guidance Make references to cloudinary-next and cloudinary-react conditional on them being installed, and add a rawTransformations fallback for Next.js projects when cloudinary-next isn't available. Co-Authored-By: Claude Opus 5.5 (1M context) --- skills/platform/cloudinary-transformations/SKILL.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/skills/platform/cloudinary-transformations/SKILL.md b/skills/platform/cloudinary-transformations/SKILL.md index 8a73cc5..4942979 100644 --- a/skills/platform/cloudinary-transformations/SKILL.md +++ b/skills/platform/cloudinary-transformations/SKILL.md @@ -136,8 +136,8 @@ Check the project's dependency files for a Cloudinary package, and use the match | Dependency found | File | Code-block tag | |---|---|---| -| `next-cloudinary` | `package.json` | Use the cloudinary-next skill | -| `@cloudinary/react` | `package.json` | `react` (also see the cloudinary-react skill) | +| `next-cloudinary` | `package.json` | Use the cloudinary-next skill if it's installed. Otherwise, see the Next.js note below this table. | +| `@cloudinary/react` | `package.json` | `react` (use the cloudinary-react skill too, if it's installed) | | `@cloudinary/vue` | `package.json` | `vue` | | `@cloudinary/ng` | `package.json` | `angular` | | `cloudinary-react-native` | `package.json` | `react_native` | @@ -155,6 +155,8 @@ Check the project's dependency files for a Cloudinary package, and use the match | `cloudinary_url_gen` only | `pubspec.yaml` | `dart` | | `Cloudinary` | `Podfile`, `Package.swift` | `swift` | +**Next.js without the cloudinary-next skill:** The Transformation Reference has no Next.js examples, so don't guess `CldImage` props. Do step 2, then pass the whole transformation string to `CldImage` or `getCldImageUrl` through `rawTransformations`, for example `rawTransformations={['c_fill,g_auto,h_300,w_400/f_auto/q_auto']}`. Keep every transformation in `rawTransformations`. Don't also set the equivalent props (such as `format` or `quality`), because mixing the two produces duplicate parameters. Suggest that the user install the cloudinary-next skill for more idiomatic code. + If there's no dependency file, go by the language of the file the user is editing. If it's still unclear, or the project uses more than one SDK (for example, a Node.js backend and a React frontend), ask which one the code is for. ### 2. Design the transformation in URL syntax