[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6F8D6PRCAC7TH1CX6PVYPYH":3,"skill-same:01M6F8D6PRCAC7TH1CX6PVYPYH":74},{"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":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":54,"repositoryHtmlUrl":55,"repositoryHomepageUrl":56,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M6F8D6PRCAC7TH1CX6PVYPYH","clay-migration-deep-dive",null,"Migrate to Clay from other enrichment tools or consolidate multiple data sources into Clay.\nUse when migrating from ZoomInfo, Apollo, Clearbit, or custom enrichment scripts to Clay,\nor consolidating fragmented enrichment workflows.\nTrigger with phrases like \"migrate to clay\", \"clay migration\", \"switch to clay\",\n\"replace zoominfo with clay\", \"consolidate enrichment tools\".","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",66,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fclay-migration-deep-dive\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"deep","clay","clay migration deep dive","migration","edit","sources","scripts","io","consolidate","switch","openclaw","write","read","node","migrate","Bash","Tools","data","code","workflows","2026-11-10 10:12:30",false,"---\nname: clay-migration-deep-dive\ndescription: |\n  Migrate to Clay from other enrichment tools or consolidate multiple data sources into Clay.\n  Use when migrating from ZoomInfo, Apollo, Clearbit, or custom enrichment scripts to Clay,\n  or consolidating fragmented enrichment workflows.\n  Trigger with phrases like \"migrate to clay\", \"clay migration\", \"switch to clay\",\n  \"replace zoominfo with clay\", \"consolidate enrichment tools\".\nallowed-tools: Read, Write, Edit, Bash(curl:*), Bash(npm:*), Bash(node:*)\nversion: 1.0.0\nlicense: MIT\nauthor: Jeremy Longshore \u003Cjeremy@intentsolutions.io>\ncompatible-with: claude-code, codex, openclaw\ntags: [saas, clay, migration]\n\n---\n# Clay Migration Deep Dive\n\n## Overview\n\nComprehensive guide for migrating from standalone enrichment tools (ZoomInfo, Apollo, Clearbit, Lusha) to Clay, or consolidating multiple tools into a single Clay-based pipeline. Clay replaces the need for individual provider subscriptions by aggregating 150+ providers into waterfall enrichment workflows.\n\n## Prerequisites\n\n- Current enrichment tool subscription(s) with data export capability\n- Clay account on Growth or Enterprise plan\n- Understanding of current enrichment volume and costs\n- CRM with existing enriched data\n\n## Migration Types\n\n| Migration | Complexity | Duration | Risk |\n|-----------|-----------|----------|------|\n| Single provider -> Clay | Low | 1-2 weeks | Low |\n| Multiple providers -> Clay | Medium | 2-4 weeks | Medium |\n| Custom scripts -> Clay | Medium | 2-4 weeks | Medium |\n| Full GTM stack migration | High | 1-2 months | High |\n\n## Instructions\n\n### Step 1: Audit Current Enrichment Stack (Week 1)\n\n```typescript\n\u002F\u002F migration\u002Faudit.ts — document your current enrichment setup\ninterface EnrichmentAudit {\n  provider: string;\n  monthlyVolume: number;\n  monthlyCoost: number;\n  dataFields: string[];\n  hitRate: number;           \u002F\u002F % of lookups that return data\n  integrationMethod: string; \u002F\u002F API, CSV, Zapier, native CRM\n  canExportHistory: boolean;\n}\n\nconst currentStack: EnrichmentAudit[] = [\n  {\n    provider: 'ZoomInfo',\n    monthlyVolume: 5000,\n    monthlyCoost: 15000,  \u002F\u002F ZoomInfo is expensive\n    dataFields: ['email', 'phone', 'title', 'company', 'revenue'],\n    hitRate: 75,\n    integrationMethod: 'API + Salesforce native',\n    canExportHistory: true,\n  },\n  {\n    provider: 'Apollo.io',\n    monthlyVolume: 3000,\n    monthlyCoost: 400,\n    dataFields: ['email', 'title', 'company', 'linkedin'],\n    hitRate: 65,\n    integrationMethod: 'API',\n    canExportHistory: true,\n  },\n  {\n    provider: 'Custom Python scripts',\n    monthlyVolume: 1000,\n    monthlyCoost: 0,  \u002F\u002F Just developer time\n    dataFields: ['email', 'company_data'],\n    hitRate: 40,\n    integrationMethod: 'Cron job + DB',\n    canExportHistory: true,\n  },\n];\n\nfunction generateMigrationReport(stack: EnrichmentAudit[]): void {\n  const totalCost = stack.reduce((s, p) => s + p.monthlyCoost, 0);\n  const totalVolume = stack.reduce((s, p) => s + p.monthlyVolume, 0);\n  console.log(`Current stack: ${stack.length} providers`);\n  console.log(`Total monthly cost: $${totalCost}`);\n  console.log(`Total monthly volume: ${totalVolume} lookups`);\n  console.log(`Average hit rate: ${(stack.reduce((s, p) => s + p.hitRate, 0) \u002F stack.length).toFixed(0)}%`);\n  console.log(`\\nClay equivalent (Growth plan): $495\u002Fmo + provider API keys`);\n}\n```\n\n### Step 2: Map Fields to Clay Columns (Week 1)\n\n```yaml\n# migration\u002Ffield-mapping.yaml\nfield_mapping:\n  # Your current field -> Clay enrichment column\n  email: \"Work Email (Waterfall: Apollo > Hunter)\"\n  phone: \"Phone Number (Apollo)\"\n  job_title: \"Job Title (Apollo\u002FPDL)\"\n  company_name: \"Company Name (Clearbit)\"\n  company_revenue: \"Revenue (Clearbit)\"\n  employee_count: \"Employee Count (Clearbit)\"\n  industry: \"Industry (Clearbit)\"\n  tech_stack: \"Technologies (BuiltWith via Claygent)\"\n  linkedin: \"LinkedIn URL (Apollo)\"\n\n  # Fields that don't have direct Clay equivalents:\n  intent_signals: \"Use Clay's Web Intent feature (Growth plan)\"\n  custom_research: \"Claygent AI research column\"\n```\n\n### Step 3: Parallel Run (Week 2-3)\n\nRun Clay alongside your existing tools to validate data quality:\n\n```typescript\n\u002F\u002F migration\u002Fparallel-run.ts\ninterface ComparisonResult {\n  field: string;\n  oldValue: string | null;\n  clayValue: string | null;\n  match: boolean;\n}\n\nasync function compareEnrichment(\n  email: string,\n  oldData: Record\u003Cstring, unknown>,\n  clayData: Record\u003Cstring, unknown>,\n): Promise\u003CComparisonResult[]> {\n  const fieldsToCompare = ['company_name', 'job_title', 'employee_count', 'industry'];\n\n  return fieldsToCompare.map(field => ({\n    field,\n    oldValue: (oldData[field] as string) || null,\n    clayValue: (clayData[field] as string) || null,\n    match: String(oldData[field]).toLowerCase() === String(clayData[field]).toLowerCase(),\n  }));\n}\n\n\u002F\u002F Run on a sample of 500 contacts from your CRM\n\u002F\u002F Compare Clay's enrichment with your current provider's data\n\u002F\u002F Target: Clay should match or exceed current hit rates\n```\n\n### Step 4: Configure Clay Table to Replace Current Stack (Week 3)\n\n```yaml\n# Clay table configuration to replace multi-provider stack\nreplacement_table:\n  name: \"Outbound Leads (Migrated)\"\n  sources:\n    - webhook (replaces API calls to ZoomInfo\u002FApollo)\n    - CRM import (replaces native CRM enrichment)\n    - CSV upload (replaces manual processes)\n\n  enrichment_columns:\n    1_company_lookup:\n      provider: clearbit\n      replaces: \"ZoomInfo company data\"\n      own_api_key: true  # 0 Clay credits\n\n    2_email_waterfall:\n      providers: [apollo, hunter]\n      replaces: \"ZoomInfo email + Apollo email\"\n      own_api_keys: true\n\n    3_person_enrichment:\n      provider: apollo\n      replaces: \"Apollo person data\"\n      own_api_key: true\n\n    4_ai_research:\n      type: claygent\n      replaces: \"Custom Python research scripts\"\n      prompt: \"Research {{Company Name}} for recent news and tech stack\"\n\n    5_icp_scoring:\n      type: formula\n      replaces: \"Custom scoring in Python\u002FSQL\"\n```\n\n### Step 5: Gradual Traffic Migration (Week 4)\n\n```typescript\n\u002F\u002F migration\u002Ftraffic-shift.ts\ninterface MigrationConfig {\n  clayPercentage: number;   \u002F\u002F 0-100, gradually increase\n  legacyEnabled: boolean;\n}\n\nclass MigrationRouter {\n  constructor(private config: MigrationConfig) {}\n\n  shouldUseClay(): boolean {\n    return Math.random() * 100 \u003C this.config.clayPercentage;\n  }\n\n  async enrichLead(lead: Record\u003Cstring, unknown>): Promise\u003CRecord\u003Cstring, unknown>> {\n    if (this.shouldUseClay()) {\n      return this.enrichViaClay(lead);\n    }\n    return this.enrichViaLegacy(lead);\n  }\n}\n\n\u002F\u002F Migration schedule:\n\u002F\u002F Week 4, Day 1: 10% to Clay, 90% legacy\n\u002F\u002F Week 4, Day 3: 25% to Clay, 75% legacy\n\u002F\u002F Week 4, Day 5: 50% to Clay, 50% legacy\n\u002F\u002F Week 5, Day 1: 100% to Clay, legacy disabled\n```\n\n### Step 6: Cancel Legacy Subscriptions\n\nAfter full migration and 2-week monitoring:\n\n- [ ] Verify Clay hit rates match or exceed legacy providers\n- [ ] Confirm CRM sync working correctly\n- [ ] Export final data from legacy tools as backup\n- [ ] Cancel ZoomInfo\u002FApollo\u002FClearbit subscriptions\n- [ ] Remove legacy API keys from application code\n- [ ] Document Clay configuration for team\n\n## Error Handling\n\n| Issue | Cause | Solution |\n|-------|-------|----------|\n| Lower hit rate on Clay | Different provider coverage | Adjust waterfall order, add providers |\n| Missing fields | Clay uses different field names | Update field mapping |\n| Data format mismatch | Different date\u002Fnumber formats | Add transformation in webhook handler |\n| CRM duplicates during parallel | Both systems writing | Deduplicate on email in CRM |\n\n## Resources\n\n- [Clay Integrations Directory](https:\u002F\u002Fwww.clay.com\u002Fintegrations)\n- [Clay University -- Sources](https:\u002F\u002Funiversity.clay.com\u002Fdocs\u002Fsources)\n- [Clay University -- CSV Import](https:\u002F\u002Funiversity.clay.com\u002Fdocs\u002Fcsv-import-overview)\n\n## Next Steps\n\nFor advanced troubleshooting, see `clay-advanced-troubleshooting`.\n\n","# Clay Migration Deep Dive\n\n## Overview\n\nComprehensive guide for migrating from standalone enrichment tools (ZoomInfo, Apollo, Clearbit, Lusha) to Clay, or consolidating multiple tools into a single Clay-based pipeline. Clay replaces the need for individual provider subscriptions by aggregating 150+ providers into waterfall enrichment workflows.\n\n## Prerequisites\n\n- Current enrichment tool subscription(s) with data export capability\n- Clay account on Growth or Enterprise plan\n- Understanding of current enrichment volume and costs\n- CRM with existing enriched data\n\n## Migration Types\n\n| Migration | Complexity | Duration | Risk |\n|-----------|-----------|----------|------|\n| Single provider -> Clay | Low | 1-2 weeks | Low |\n| Multiple providers -> Clay | Medium | 2-4 weeks | Medium |\n| Custom scripts -> Clay | Medium | 2-4 weeks | Medium |\n| Full GTM stack migration | High | 1-2 months | High |\n\n## Instructions\n\n### Step 1: Audit Current Enrichment Stack (Week 1)\n\n```typescript\n\u002F\u002F migration\u002Faudit.ts — document your current enrichment setup\ninterface EnrichmentAudit {\n  provider: string;\n  monthlyVolume: number;\n  monthlyCoost: number;\n  dataFields: string[];\n  hitRate: number;           \u002F\u002F % of lookups that return data\n  integrationMethod: string; \u002F\u002F API, CSV, Zapier, native CRM\n  canExportHistory: boolean;\n}\n\nconst currentStack: EnrichmentAudit[] = [\n  {\n    provider: 'ZoomInfo',\n    monthlyVolume: 5000,\n    monthlyCoost: 15000,  \u002F\u002F ZoomInfo is expensive\n    dataFields: ['email', 'phone', 'title', 'company', 'revenue'],\n    hitRate: 75,\n    integrationMethod: 'API + Salesforce native',\n    canExportHistory: true,\n  },\n  {\n    provider: 'Apollo.io',\n    monthlyVolume: 3000,\n    monthlyCoost: 400,\n    dataFields: ['email', 'title', 'company', 'linkedin'],\n    hitRate: 65,\n    integrationMethod: 'API',\n    canExportHistory: true,\n  },\n  {\n    provider: 'Custom Python scripts',\n    monthlyVolume: 1000,\n    monthlyCoost: 0,  \u002F\u002F Just developer time\n    dataFields: ['email', 'company_data'],\n    hitRate: 40,\n    integrationMethod: 'Cron job + DB',\n    canExportHistory: true,\n  },\n];\n\nfunction generateMigrationReport(stack: EnrichmentAudit[]): void {\n  const totalCost = stack.reduce((s, p) => s + p.monthlyCoost, 0);\n  const totalVolume = stack.reduce((s, p) => s + p.monthlyVolume, 0);\n  console.log(`Current stack: ${stack.length} providers`);\n  console.log(`Total monthly cost: $${totalCost}`);\n  console.log(`Total monthly volume: ${totalVolume} lookups`);\n  console.log(`Average hit rate: ${(stack.reduce((s, p) => s + p.hitRate, 0) \u002F stack.length).toFixed(0)}%`);\n  console.log(`\\nClay equivalent (Growth plan): $495\u002Fmo + provider API keys`);\n}\n```\n\n### Step 2: Map Fields to Clay Columns (Week 1)\n\n```yaml\n# migration\u002Ffield-mapping.yaml\nfield_mapping:\n  # Your current field -> Clay enrichment column\n  email: \"Work Email (Waterfall: Apollo > Hunter)\"\n  phone: \"Phone Number (Apollo)\"\n  job_title: \"Job Title (Apollo\u002FPDL)\"\n  company_name: \"Company Name (Clearbit)\"\n  company_revenue: \"Revenue (Clearbit)\"\n  employee_count: \"Employee Count (Clearbit)\"\n  industry: \"Industry (Clearbit)\"\n  tech_stack: \"Technologies (BuiltWith via Claygent)\"\n  linkedin: \"LinkedIn URL (Apollo)\"\n\n  # Fields that don't have direct Clay equivalents:\n  intent_signals: \"Use Clay's Web Intent feature (Growth plan)\"\n  custom_research: \"Claygent AI research column\"\n```\n\n### Step 3: Parallel Run (Week 2-3)\n\nRun Clay alongside your existing tools to validate data quality:\n\n```typescript\n\u002F\u002F migration\u002Fparallel-run.ts\ninterface ComparisonResult {\n  field: string;\n  oldValue: string | null;\n  clayValue: string | null;\n  match: boolean;\n}\n\nasync function compareEnrichment(\n  email: string,\n  oldData: Record\u003Cstring, unknown>,\n  clayData: Record\u003Cstring, unknown>,\n): Promise\u003CComparisonResult[]> {\n  const fieldsToCompare = ['company_name', 'job_title', 'employee_count', 'industry'];\n\n  return fieldsToCompare.map(field => ({\n    field,\n    oldValue: (oldData[field] as string) || null,\n    clayValue: (clayData[field] as string) || null,\n    match: String(oldData[field]).toLowerCase() === String(clayData[field]).toLowerCase(),\n  }));\n}\n\n\u002F\u002F Run on a sample of 500 contacts from your CRM\n\u002F\u002F Compare Clay's enrichment with your current provider's data\n\u002F\u002F Target: Clay should match or exceed current hit rates\n```\n\n### Step 4: Configure Clay Table to Replace Current Stack (Week 3)\n\n```yaml\n# Clay table configuration to replace multi-provider stack\nreplacement_table:\n  name: \"Outbound Leads (Migrated)\"\n  sources:\n    - webhook (replaces API calls to ZoomInfo\u002FApollo)\n    - CRM import (replaces native CRM enrichment)\n    - CSV upload (replaces manual processes)\n\n  enrichment_columns:\n    1_company_lookup:\n      provider: clearbit\n      replaces: \"ZoomInfo company data\"\n      own_api_key: true  # 0 Clay credits\n\n    2_email_waterfall:\n      providers: [apollo, hunter]\n      replaces: \"ZoomInfo email + Apollo email\"\n      own_api_keys: true\n\n    3_person_enrichment:\n      provider: apollo\n      replaces: \"Apollo person data\"\n      own_api_key: true\n\n    4_ai_research:\n      type: claygent\n      replaces: \"Custom Python research scripts\"\n      prompt: \"Research {{Company Name}} for recent news and tech stack\"\n\n    5_icp_scoring:\n      type: formula\n      replaces: \"Custom scoring in Python\u002FSQL\"\n```\n\n### Step 5: Gradual Traffic Migration (Week 4)\n\n```typescript\n\u002F\u002F migration\u002Ftraffic-shift.ts\ninterface MigrationConfig {\n  clayPercentage: number;   \u002F\u002F 0-100, gradually increase\n  legacyEnabled: boolean;\n}\n\nclass MigrationRouter {\n  constructor(private config: MigrationConfig) {}\n\n  shouldUseClay(): boolean {\n    return Math.random() * 100 \u003C this.config.clayPercentage;\n  }\n\n  async enrichLead(lead: Record\u003Cstring, unknown>): Promise\u003CRecord\u003Cstring, unknown>> {\n    if (this.shouldUseClay()) {\n      return this.enrichViaClay(lead);\n    }\n    return this.enrichViaLegacy(lead);\n  }\n}\n\n\u002F\u002F Migration schedule:\n\u002F\u002F Week 4, Day 1: 10% to Clay, 90% legacy\n\u002F\u002F Week 4, Day 3: 25% to Clay, 75% legacy\n\u002F\u002F Week 4, Day 5: 50% to Clay, 50% legacy\n\u002F\u002F Week 5, Day 1: 100% to Clay, legacy disabled\n```\n\n### Step 6: Cancel Legacy Subscriptions\n\nAfter full migration and 2-week monitoring:\n\n- [ ] Verify Clay hit rates match or exceed legacy providers\n- [ ] Confirm CRM sync working correctly\n- [ ] Export final data from legacy tools as backup\n- [ ] Cancel ZoomInfo\u002FApollo\u002FClearbit subscriptions\n- [ ] Remove legacy API keys from application code\n- [ ] Document Clay configuration for team\n\n## Error Handling\n\n| Issue | Cause | Solution |\n|-------|-------|----------|\n| Lower hit rate on Clay | Different provider coverage | Adjust waterfall order, add providers |\n| Missing fields | Clay uses different field names | Update field mapping |\n| Data format mismatch | Different date\u002Fnumber formats | Add transformation in webhook handler |\n| CRM duplicates during parallel | Both systems writing | Deduplicate on email in CRM |\n\n## Resources\n\n- [Clay Integrations Directory](https:\u002F\u002Fwww.clay.com\u002Fintegrations)\n- [Clay University -- Sources](https:\u002F\u002Funiversity.clay.com\u002Fdocs\u002Fsources)\n- [Clay University -- CSV Import](https:\u002F\u002Funiversity.clay.com\u002Fdocs\u002Fcsv-import-overview)\n\n## Next Steps\n\nFor advanced troubleshooting, see `clay-advanced-troubleshooting`.\n\n",{"name":5,"tags":44,"author":46,"license":15,"version":47,"description":48,"allowed-tools":49,"compatible-with":50},[45,20,22],"saas","Jeremy Longshore \u003Cjeremy@intentsolutions.io>","1.0.0","Migrate to Clay from other enrichment tools or consolidate multiple data sources into Clay.\nUse when migrating from ZoomInfo, Apollo, Clearbit, or custom enrichment scripts to Clay,\nor consolidating fragmented enrichment workflows.\nTrigger with phrases like \"migrate to clay\", \"clay migration\", \"switch to clay\",\n\"replace zoominfo with clay\", \"consolidate enrichment tools\".\n","Read, Write, Edit, Bash(curl:*), Bash(npm:*), Bash(node:*)","claude-code, codex, openclaw","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fclay-migration-deep-dive",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":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill clay-migration-deep-dive",{"tool":66,"command":67},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill clay-migration-deep-dive",{"tool":69,"command":70},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill clay-migration-deep-dive","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fjeremylongshore\u002Fclaude-code-plugins-plus-skills\u002Fclay-migration-deep-dive\u002FSKILL.md",true,[],[75,89,99,108,114,121],{"skillNo":76,"name":77,"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":78,"categories":79,"keywords":85,"publishedAt":39},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[80],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[86,87,88],"model","model hierarchy","model hierarchy skill",{"skillNo":90,"name":91,"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":92,"categories":93,"keywords":95,"publishedAt":39},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[94],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},[96,97,98],"MCP","zoom","zoom mcp",{"skillNo":100,"name":101,"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":102,"categories":103,"keywords":104,"publishedAt":39},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[105,106,107,97],"sdk","zoom apps sdk","apps",{"skillNo":109,"name":110,"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":111,"categories":112,"keywords":113,"publishedAt":39},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[110],{"skillNo":115,"name":116,"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":117,"categories":118,"keywords":120,"publishedAt":39},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[119],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},[116],{"skillNo":122,"name":123,"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":124,"categories":125,"keywords":126,"publishedAt":39},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[123]]