Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 58 additions & 25 deletions skills/cloudinary-docs/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
name: cloudinary-docs
description: Looks up implementation details in the latest Cloudinary docs via llms.txt. Use when building code or answering questions relating to image or video uploads, optimization, or transformations, and for Cloudinary SDKs, APIs, webhooks, or integrations.
description: Looks up implementation details in the latest Cloudinary docs via the relevant llms.txt file. Use when building code or answering questions relating to image or video uploads, optimization, or transformations, and for Cloudinary SDKs, APIs, webhooks, or integrations.
license: MIT
metadata:
author: cloudinary
version: '1.0.1'
version: '1.1.0'
---

# Cloudinary Documentation
Expand All @@ -19,35 +19,68 @@ Helps developers integrate Cloudinary into their applications by providing docum
- Looking up specific Cloudinary API endpoints or SDK methods
- Use this skill in conjunction with more specialized Cloudinary skills when relevant.

## Sub-file Index Overview

The main documentation llms.txt file is split into product-specific sub-files. **Go directly to the relevant sub-file** according to the descriptions below. Do not fetch the main llms.txt first unless the topic spans multiple products or you are unsure.

| Product | Topic | Sub-file URL |
|---|---|---|
| Image & Video APIs | Image/video uploads, transformations, SDKs, optimization, APIs, webhooks, add-ons, embedding widgets or players in apps, or any programmatic/automation/at-scale image and video requirements | https://cloudinary.com/documentation/llms-image-and-video-apis.txt?install_source=skillspack&referrer=docs-skill |
| Cloudinary Assets (DAM) | Digital Asset Management (DAM), Media Library, folders, metadata, collections, creative workflows, portals, digital rights, or any Cloudinary Console or UI-based asset management needs | https://cloudinary.com/documentation/llms-cloudinary-assets.txt?install_source=skillspack&referrer=docs-skill |
| MediaFlows | PowerFlows, EasyFlows, workflow automation, flow blocks | https://cloudinary.com/documentation/llms-mediaflows.txt?install_source=skillspack&referrer=docs-skill |
| Integrations | Cloudinary integrations with 3rd party apps (WordPress, Shopify, Contentful, Salesforce, Adobe, etc.) or questions about implementing new integrations | https://cloudinary.com/documentation/llms-integrations.txt?install_source=skillspack&referrer=docs-skill |
| Cross-product or unsure | — | https://cloudinary.com/documentation/llms.txt?install_source=skillspack&referrer=docs-skill |

## Instructions

When answering image and video upload, management, optimization, or transformation questions or when implementing Cloudinary code:

1. **First, get the documentation index** using llms.txt with the llms.txt URL - https://cloudinary.com/documentation/llms.txt
2. **Analyze the llms.txt content** to understand what documentation pages are available
3. **Reflect on the user's question** and identify which specific documentation URLs would be most relevant
4. **Navigate** to the specific relevant documentation URLs from the llms.txt index (you can make multiple calls)
5. **Use the fetched documentation** to provide a comprehensive, accurate answer or code implementation. When relevant, use in conjunction with more specialized Cloudinary skills like cloudinary-transformations. The best practices defined in the specialized skills should guide which doc instructions to use.
1. **Identify the product area** from the user's question using the Sub-file Index above
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

An llm might not re-read the table on each invocation. Perhaps we can make this clearer and say, "Refer to the Sub-file Index table above and identify the matching row."

2. **Fetch the relevant sub-file directly** (skip the main llms.txt unless the topic is cross-product or unclear)
3. **Analyze the sub-file** to identify which specific documentation URLs are most relevant
4. **Navigate** to those specific documentation URLs (you can make multiple calls)
5. **Use the fetched documentation** to provide a comprehensive, accurate answer or code implementation. When relevant, use in conjunction with more specialized Cloudinary skills like cloudinary-transformations. The best practices defined in the specialized skills should guide which doc instructions to use.

Example workflows:

**Example 1: Upload question**
- User asks: "How do I upload images to Cloudinary?"
- You retrieve the llms.txt index: https://cloudinary.com/documentation/llms.txt
- You analyze the llms.txt content to understand what documentation pages are available
- You identify relevant pages like "image_upload.md" or "upload_api.md"
- You retrieve those specific pages from the llms.txt index
- You provide an answer with code examples and citations
## Example Workflows

**Example 2: Transformation question**
**Example 1: Transformation question**
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't we be relying on the transformation skill for transformation questions? I probably need to update that skill now for the new llms-image-and-video-apis.txt too.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point - maybe we should suggest that here -

Also, in your transformation skill, pls also add the query params to any URLs - i.e. direct links to the transformation reference.md or any other specific doc md files as well as the llms-image-and-video.txt (didn't remember that we pointed to llms.txt from yours though...?)

- User asks: "How do I resize and crop images?"
- You retrieve the llms.txt index
- You identify relevant pages like "image_transformations.md" or "transformation_reference.md"
- You fetch the specific documentation
- You provide transformation syntax and examples
- Topic maps to Image & Video APIs → fetch https://cloudinary.com/documentation/llms-image-and-video-apis.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "image_transformations.md" or "transformation_reference.md"
- Fetch the specific documentation and provide transformation syntax and examples or help implement the request in the user's code.

**Example 3: SDK question**
**Example 2: SDK question**
- User asks: "What's the Node.js SDK for Cloudinary?"
- You retrieve the llms.txt index
- You identify SDK-related pages
- You provide installation instructions and usage examples
- Topic maps to Image & Video APIs → fetch https://cloudinary.com/documentation/llms-image-and-video-apis.txt?install_source=skillspack&referrer=docs-skill
- Identify SDK-related pages and provide installation instructions and usage examples or help implement the request in the user's code.

**Example 3: DAM question**
- User asks: "How do I set up approval workflows for assets in the Media Library?"
- Topic maps to Cloudinary Assets (DAM) → fetch https://cloudinary.com/documentation/llms-cloudinary-assets.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "dam_admin_creative_approval_flows.md"
- Fetch the specific documentation and provide setup steps

**Example 4: MediaFlows question**
- User asks: "How do I build a PowerFlow that auto-moderates uploaded images?"
- Topic maps to MediaFlows → fetch https://cloudinary.com/documentation/llms-mediaflows.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "mediaflows_build_flow.md" or "mediaflows_moderation_powerflow.md"
- Fetch the specific documentation and provide a flow-building walkthrough

**Example 5: Integration question**
- User asks: "How do I connect Cloudinary to my WordPress site?"
- Topic maps to Integrations → fetch https://cloudinary.com/documentation/llms-integrations.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "wordpress_integration.md"
- Fetch the specific documentation and provide setup instructions

**Example 6: Ambiguous upload question**
- User asks: "How do I upload images to Cloudinary?"
- First, determine whether the user wants to upload **programmatically** (via SDK/API) or **via the Console UI** (DAM)
- If **programmatic** → fetch https://cloudinary.com/documentation/llms-image-and-video-apis.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "image_upload.md" or "upload_api.md"
- Retrieve those specific pages and provide an answer with code examples
- If **via the Console UI (DAM)** → fetch https://cloudinary.com/documentation/llms-cloudinary-assets.txt?install_source=skillspack&referrer=docs-skill
- Identify relevant pages like "dam_upload_store_assets.md" or "dam_admin_upload_presets.md"
- Retrieve those specific pages and provide step-by-step instructions for uploading via the Media Library.
- If **unable to determine** → fetch https://cloudinary.com/documentation/llms.txt?install_source=skillspack&referrer=docs-skill
- Look at documentation for both Image & Video APIs and Cloudinary Assets products
- Provide an answer covering both programmatic and UI-based upload options