[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6EX27QH9KBJB4CYZ347Q004":3,"skill-same:01M6EX27QH9KBJB4CYZ347Q004":77},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":48,"commitSha":49,"skillDirectory":50,"forksCount":51,"repositoryHtmlUrl":52,"repositoryHomepageUrl":53,"ownerHtmlUrl":54,"ownerBlogUrl":6,"ownerDescription":55,"updatedAt":56,"install":57,"resources":70},"01M6EX27QH9KBJB4CYZ347Q004","render-automation",null,"Automate Render tasks via Rube MCP (Composio): services, deployments, projects. Always search tools first for current schemas.","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Frender-automation\u002Frender-automation\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"automation","render automation","render","MCP","tasks","search","services","Tools","first","projects","automate","deployments","community","composio","via","2026-11-10 10:12:30",false,"---\nname: render-automation\ndescription: \"Automate Render tasks via Rube MCP (Composio): services, deployments, projects. Always search tools first for current schemas.\"\nrequires:\n  mcp: [rube]\nrisk: unknown\nsource: community\n---\n\n# Render Automation via Rube MCP\n\nAutomate Render cloud platform operations through Composio's Render toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Render connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `render`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `render`\n3. If connection is not ACTIVE, follow the returned auth link to complete Render authentication\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. List and Browse Services\n\n**When to use**: User wants to find or inspect Render services (web services, static sites, workers, cron jobs)\n\n**Tool sequence**:\n1. `RENDER_LIST_SERVICES` - List all services with optional filters [Required]\n\n**Key parameters**:\n- `name`: Filter services by name substring\n- `type`: Filter by service type ('web_service', 'static_site', 'private_service', 'background_worker', 'cron_job')\n- `limit`: Maximum results per page (default 20, max 100)\n- `cursor`: Pagination cursor from previous response\n\n**Pitfalls**:\n- Service types must match exact enum values: 'web_service', 'static_site', 'private_service', 'background_worker', 'cron_job'\n- Pagination uses cursor-based approach; follow `cursor` until absent\n- Name filter is substring-based, not exact match\n- Service IDs follow the format 'srv-xxxxxxxxxxxx'\n- Default limit is 20; set higher for comprehensive listing\n\n### 2. Trigger Deployments\n\n**When to use**: User wants to manually deploy or redeploy a service\n\n**Tool sequence**:\n1. `RENDER_LIST_SERVICES` - Find the service to deploy [Prerequisite]\n2. `RENDER_TRIGGER_DEPLOY` - Trigger a new deployment [Required]\n3. `RENDER_RETRIEVE_DEPLOY` - Monitor deployment progress [Optional]\n\n**Key parameters**:\n- For TRIGGER_DEPLOY:\n  - `serviceId`: Service ID to deploy (required, format: 'srv-xxxxxxxxxxxx')\n  - `clearCache`: Set `true` to clear build cache before deploying\n- For RETRIEVE_DEPLOY:\n  - `serviceId`: Service ID\n  - `deployId`: Deploy ID from trigger response (format: 'dep-xxxxxxxxxxxx')\n\n**Pitfalls**:\n- `serviceId` is required; resolve via LIST_SERVICES first\n- Service IDs start with 'srv-' prefix\n- Deploy IDs start with 'dep-' prefix\n- `clearCache: true` forces a clean build; takes longer but resolves cache-related issues\n- Deployment is asynchronous; use RETRIEVE_DEPLOY to poll status\n- Triggering a deploy while another is in progress may queue the new one\n\n### 3. Monitor Deployment Status\n\n**When to use**: User wants to check the progress or result of a deployment\n\n**Tool sequence**:\n1. `RENDER_RETRIEVE_DEPLOY` - Get deployment details and status [Required]\n\n**Key parameters**:\n- `serviceId`: Service ID (required)\n- `deployId`: Deployment ID (required)\n- Response includes `status`, `createdAt`, `updatedAt`, `finishedAt`, `commit`\n\n**Pitfalls**:\n- Both `serviceId` and `deployId` are required\n- Deploy statuses include: 'created', 'build_in_progress', 'update_in_progress', 'live', 'deactivated', 'build_failed', 'update_failed', 'canceled'\n- 'live' indicates successful deployment\n- 'build_failed' or 'update_failed' indicate deployment errors\n- Poll at reasonable intervals (10-30 seconds) to avoid rate limits\n\n### 4. Manage Projects\n\n**When to use**: User wants to list and organize Render projects\n\n**Tool sequence**:\n1. `RENDER_LIST_PROJECTS` - List all projects [Required]\n\n**Key parameters**:\n- `limit`: Maximum results per page (max 100)\n- `cursor`: Pagination cursor from previous response\n\n**Pitfalls**:\n- Projects group related services together\n- Pagination uses cursor-based approach\n- Project IDs are used for organizational purposes\n- Not all services may be assigned to a project\n\n## Common Patterns\n\n### ID Resolution\n\n**Service name -> Service ID**:\n```\n1. Call RENDER_LIST_SERVICES with name=service_name\n2. Find service by name in results\n3. Extract id (format: 'srv-xxxxxxxxxxxx')\n```\n\n**Deployment lookup**:\n```\n1. Store deployId from RENDER_TRIGGER_DEPLOY response\n2. Call RENDER_RETRIEVE_DEPLOY with serviceId and deployId\n3. Check status for completion\n```\n\n### Deploy and Monitor Pattern\n\n```\n1. RENDER_LIST_SERVICES -> find service by name -> get serviceId\n2. RENDER_TRIGGER_DEPLOY with serviceId -> get deployId\n3. Loop: RENDER_RETRIEVE_DEPLOY with serviceId + deployId\n4. Check status: 'live' = success, 'build_failed'\u002F'update_failed' = error\n5. Continue polling until terminal state reached\n```\n\n### Pagination\n\n- Use `cursor` from response for next page\n- Continue until `cursor` is absent or results are empty\n- Both LIST_SERVICES and LIST_PROJECTS use cursor-based pagination\n- Set `limit` to max (100) for fewer pagination rounds\n\n## Known Pitfalls\n\n**Service IDs**:\n- Always prefixed with 'srv-' (e.g., 'srv-abcd1234efgh')\n- Deploy IDs prefixed with 'dep-' (e.g., 'dep-d2mqkf9r0fns73bham1g')\n- Always resolve service names to IDs via LIST_SERVICES\n\n**Service Types**:\n- Must use exact enum values when filtering\n- Available types: web_service, static_site, private_service, background_worker, cron_job\n- Different service types have different deployment behaviors\n\n**Deployment Behavior**:\n- Deployments are asynchronous; always poll for completion\n- Clear cache deploys take longer but resolve stale cache issues\n- Failed deploys do not roll back automatically; the previous version stays live\n- Concurrent deploy triggers may be queued\n\n**Rate Limits**:\n- Render API has rate limits\n- Avoid rapid polling; use 10-30 second intervals\n- Bulk operations should be throttled\n\n**Response Parsing**:\n- Response data may be nested under `data` key\n- Timestamps use ISO 8601 format\n- Parse defensively with fallbacks for optional fields\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| List services | RENDER_LIST_SERVICES | name, type, limit, cursor |\n| Trigger deploy | RENDER_TRIGGER_DEPLOY | serviceId, clearCache |\n| Get deploy status | RENDER_RETRIEVE_DEPLOY | serviceId, deployId |\n| List projects | RENDER_LIST_PROJECTS | limit, cursor |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Render Automation via Rube MCP\n\nAutomate Render cloud platform operations through Composio's Render toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Render connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `render`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `render`\n3. If connection is not ACTIVE, follow the returned auth link to complete Render authentication\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. List and Browse Services\n\n**When to use**: User wants to find or inspect Render services (web services, static sites, workers, cron jobs)\n\n**Tool sequence**:\n1. `RENDER_LIST_SERVICES` - List all services with optional filters [Required]\n\n**Key parameters**:\n- `name`: Filter services by name substring\n- `type`: Filter by service type ('web_service', 'static_site', 'private_service', 'background_worker', 'cron_job')\n- `limit`: Maximum results per page (default 20, max 100)\n- `cursor`: Pagination cursor from previous response\n\n**Pitfalls**:\n- Service types must match exact enum values: 'web_service', 'static_site', 'private_service', 'background_worker', 'cron_job'\n- Pagination uses cursor-based approach; follow `cursor` until absent\n- Name filter is substring-based, not exact match\n- Service IDs follow the format 'srv-xxxxxxxxxxxx'\n- Default limit is 20; set higher for comprehensive listing\n\n### 2. Trigger Deployments\n\n**When to use**: User wants to manually deploy or redeploy a service\n\n**Tool sequence**:\n1. `RENDER_LIST_SERVICES` - Find the service to deploy [Prerequisite]\n2. `RENDER_TRIGGER_DEPLOY` - Trigger a new deployment [Required]\n3. `RENDER_RETRIEVE_DEPLOY` - Monitor deployment progress [Optional]\n\n**Key parameters**:\n- For TRIGGER_DEPLOY:\n  - `serviceId`: Service ID to deploy (required, format: 'srv-xxxxxxxxxxxx')\n  - `clearCache`: Set `true` to clear build cache before deploying\n- For RETRIEVE_DEPLOY:\n  - `serviceId`: Service ID\n  - `deployId`: Deploy ID from trigger response (format: 'dep-xxxxxxxxxxxx')\n\n**Pitfalls**:\n- `serviceId` is required; resolve via LIST_SERVICES first\n- Service IDs start with 'srv-' prefix\n- Deploy IDs start with 'dep-' prefix\n- `clearCache: true` forces a clean build; takes longer but resolves cache-related issues\n- Deployment is asynchronous; use RETRIEVE_DEPLOY to poll status\n- Triggering a deploy while another is in progress may queue the new one\n\n### 3. Monitor Deployment Status\n\n**When to use**: User wants to check the progress or result of a deployment\n\n**Tool sequence**:\n1. `RENDER_RETRIEVE_DEPLOY` - Get deployment details and status [Required]\n\n**Key parameters**:\n- `serviceId`: Service ID (required)\n- `deployId`: Deployment ID (required)\n- Response includes `status`, `createdAt`, `updatedAt`, `finishedAt`, `commit`\n\n**Pitfalls**:\n- Both `serviceId` and `deployId` are required\n- Deploy statuses include: 'created', 'build_in_progress', 'update_in_progress', 'live', 'deactivated', 'build_failed', 'update_failed', 'canceled'\n- 'live' indicates successful deployment\n- 'build_failed' or 'update_failed' indicate deployment errors\n- Poll at reasonable intervals (10-30 seconds) to avoid rate limits\n\n### 4. Manage Projects\n\n**When to use**: User wants to list and organize Render projects\n\n**Tool sequence**:\n1. `RENDER_LIST_PROJECTS` - List all projects [Required]\n\n**Key parameters**:\n- `limit`: Maximum results per page (max 100)\n- `cursor`: Pagination cursor from previous response\n\n**Pitfalls**:\n- Projects group related services together\n- Pagination uses cursor-based approach\n- Project IDs are used for organizational purposes\n- Not all services may be assigned to a project\n\n## Common Patterns\n\n### ID Resolution\n\n**Service name -> Service ID**:\n```\n1. Call RENDER_LIST_SERVICES with name=service_name\n2. Find service by name in results\n3. Extract id (format: 'srv-xxxxxxxxxxxx')\n```\n\n**Deployment lookup**:\n```\n1. Store deployId from RENDER_TRIGGER_DEPLOY response\n2. Call RENDER_RETRIEVE_DEPLOY with serviceId and deployId\n3. Check status for completion\n```\n\n### Deploy and Monitor Pattern\n\n```\n1. RENDER_LIST_SERVICES -> find service by name -> get serviceId\n2. RENDER_TRIGGER_DEPLOY with serviceId -> get deployId\n3. Loop: RENDER_RETRIEVE_DEPLOY with serviceId + deployId\n4. Check status: 'live' = success, 'build_failed'\u002F'update_failed' = error\n5. Continue polling until terminal state reached\n```\n\n### Pagination\n\n- Use `cursor` from response for next page\n- Continue until `cursor` is absent or results are empty\n- Both LIST_SERVICES and LIST_PROJECTS use cursor-based pagination\n- Set `limit` to max (100) for fewer pagination rounds\n\n## Known Pitfalls\n\n**Service IDs**:\n- Always prefixed with 'srv-' (e.g., 'srv-abcd1234efgh')\n- Deploy IDs prefixed with 'dep-' (e.g., 'dep-d2mqkf9r0fns73bham1g')\n- Always resolve service names to IDs via LIST_SERVICES\n\n**Service Types**:\n- Must use exact enum values when filtering\n- Available types: web_service, static_site, private_service, background_worker, cron_job\n- Different service types have different deployment behaviors\n\n**Deployment Behavior**:\n- Deployments are asynchronous; always poll for completion\n- Clear cache deploys take longer but resolve stale cache issues\n- Failed deploys do not roll back automatically; the previous version stays live\n- Concurrent deploy triggers may be queued\n\n**Rate Limits**:\n- Render API has rate limits\n- Avoid rapid polling; use 10-30 second intervals\n- Bulk operations should be throttled\n\n**Response Parsing**:\n- Response data may be nested under `data` key\n- Timestamps use ISO 8601 format\n- Parse defensively with fallbacks for optional fields\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| List services | RENDER_LIST_SERVICES | name, type, limit, cursor |\n| Trigger deploy | RENDER_TRIGGER_DEPLOY | serviceId, clearCache |\n| Get deploy status | RENDER_RETRIEVE_DEPLOY | serviceId, deployId |\n| List projects | RENDER_LIST_PROJECTS | limit, cursor |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{"name":5,"risk":44,"source":36,"requires":45,"description":7},"unknown",{"mcp":46},[47],"rube","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Faiskillstore\u002Fmarketplace\u002Frender-automation\u002Frender-automation",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":8,"skillName":5,"commands":58,"prompt":68,"zipAvailable":69},[59,62,65],{"tool":60,"command":61},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill render-automation",{"tool":63,"command":64},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill render-automation",{"tool":66,"command":67},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill render-automation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Frender-automation\u002Frender-automation\u002FSKILL.md",true,[71],{"path":72,"resourceType":73,"resourceTypeDesc":74,"sizeBytes":75,"sourceHtmlUrl":76},"skill-report.json","REFERENCE","参考文档",7455,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Frender-automation\u002Frender-automation\u002Fskill-report.json",[78,88,97,106,112,119],{"skillNo":79,"name":80,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":84,"publishedAt":39},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[83],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[85,86,87],"model","model hierarchy","model hierarchy skill",{"skillNo":89,"name":90,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":94,"publishedAt":39},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[93],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[27,95,96],"zoom","zoom mcp",{"skillNo":98,"name":99,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":39},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[103,104,105,95],"sdk","zoom apps sdk","apps",{"skillNo":107,"name":108,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":111,"publishedAt":39},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[108],{"skillNo":113,"name":114,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":118,"publishedAt":39},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[117],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[114],{"skillNo":120,"name":121,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":122,"categories":123,"keywords":124,"publishedAt":39},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[121]]