[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71RFWDHJNC48ZX8QYNTM68N":3,"skill-same:01M71RFWDHJNC48ZX8QYNTM68N":44},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":14,"categories":15,"keywords":16,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":12,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":29,"install":30,"resources":43},"01M71RFWDHJNC48ZX8QYNTM68N","azure-eventgrid-py",null,"javiertarazon\u002Fide-agente-free-jt7-","javiertarazon","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F153141207?v=4","01M71R52TB3S9HXKH6WSNT8A7V","01M71R52VG5KS2DKDDH4GDQ30A",0,"MIT","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fazure-eventgrid-py\u002FSKILL.md",[],[17,18],"azure","azure eventgrid py","2026-11-10 13:02:02",false,"---\nname: azure-eventgrid-py\ndescription: \"|\"\n  Azure Event Grid SDK for Python. Use for publishing events, handling CloudEvents, and event-driven architectures.\n  Triggers: \"event grid\", \"EventGridPublisherClient\", \"CloudEvent\", \"EventGridEvent\", \"publish events\".\npackage: azure-eventgrid\nrisk: unknown\nsource: community\n---\n\n# Azure Event Grid SDK for Python\n\nEvent routing service for building event-driven applications with pub\u002Fsub semantics.\n\n## Installation\n\n```bash\npip install azure-eventgrid azure-identity\n```\n\n## Environment Variables\n\n```bash\nEVENTGRID_TOPIC_ENDPOINT=https:\u002F\u002F\u003Ctopic-name>.\u003Cregion>.eventgrid.azure.net\u002Fapi\u002Fevents\nEVENTGRID_NAMESPACE_ENDPOINT=https:\u002F\u002F\u003Cnamespace>.\u003Cregion>.eventgrid.azure.net\n```\n\n## Authentication\n\n```python\nfrom azure.identity import DefaultAzureCredential\nfrom azure.eventgrid import EventGridPublisherClient\n\ncredential = DefaultAzureCredential()\nendpoint = \"https:\u002F\u002F\u003Ctopic-name>.\u003Cregion>.eventgrid.azure.net\u002Fapi\u002Fevents\"\n\nclient = EventGridPublisherClient(endpoint, credential)\n```\n\n## Event Types\n\n| Format | Class | Use Case |\n|--------|-------|----------|\n| Cloud Events 1.0 | `CloudEvent` | Standard, interoperable (recommended) |\n| Event Grid Schema | `EventGridEvent` | Azure-native format |\n\n## Publish CloudEvents\n\n```python\nfrom azure.eventgrid import EventGridPublisherClient, CloudEvent\nfrom azure.identity import DefaultAzureCredential\n\nclient = EventGridPublisherClient(endpoint, DefaultAzureCredential())\n\n# Single event\nevent = CloudEvent(\n    type=\"MyApp.Events.OrderCreated\",\n    source=\"\u002Fmyapp\u002Forders\",\n    data={\"order_id\": \"12345\", \"amount\": 99.99}\n)\nclient.send(event)\n\n# Multiple events\nevents = [\n    CloudEvent(\n        type=\"MyApp.Events.OrderCreated\",\n        source=\"\u002Fmyapp\u002Forders\",\n        data={\"order_id\": f\"order-{i}\"}\n    )\n    for i in range(10)\n]\nclient.send(events)\n```\n\n## Publish EventGridEvents\n\n```python\nfrom azure.eventgrid import EventGridEvent\nfrom datetime import datetime, timezone\n\nevent = EventGridEvent(\n    subject=\"\u002Fmyapp\u002Forders\u002F12345\",\n    event_type=\"MyApp.Events.OrderCreated\",\n    data={\"order_id\": \"12345\", \"amount\": 99.99},\n    data_version=\"1.0\"\n)\n\nclient.send(event)\n```\n\n## Event Properties\n\n### CloudEvent Properties\n\n```python\nevent = CloudEvent(\n    type=\"MyApp.Events.ItemCreated\",      # Required: event type\n    source=\"\u002Fmyapp\u002Fitems\",                 # Required: event source\n    data={\"key\": \"value\"},                 # Event payload\n    subject=\"items\u002F123\",                   # Optional: subject\u002Fpath\n    datacontenttype=\"application\u002Fjson\",   # Optional: content type\n    dataschema=\"https:\u002F\u002Fschema.example\",  # Optional: schema URL\n    time=datetime.now(timezone.utc),      # Optional: timestamp\n    extensions={\"custom\": \"value\"}         # Optional: custom attributes\n)\n```\n\n### EventGridEvent Properties\n\n```python\nevent = EventGridEvent(\n    subject=\"\u002Fmyapp\u002Fitems\u002F123\",            # Required: subject\n    event_type=\"MyApp.ItemCreated\",        # Required: event type\n    data={\"key\": \"value\"},                 # Required: event payload\n    data_version=\"1.0\",                    # Required: schema version\n    topic=\"\u002Fsubscriptions\u002F...\u002Ftopics\u002F...\", # Optional: auto-set\n    event_time=datetime.now(timezone.utc)  # Optional: timestamp\n)\n```\n\n## Async Client\n\n```python\nfrom azure.eventgrid.aio import EventGridPublisherClient\nfrom azure.identity.aio import DefaultAzureCredential\n\nasync def publish_events():\n    credential = DefaultAzureCredential()\n    \n    async with EventGridPublisherClient(endpoint, credential) as client:\n        event = CloudEvent(\n            type=\"MyApp.Events.Test\",\n            source=\"\u002Fmyapp\",\n            data={\"message\": \"hello\"}\n        )\n        await client.send(event)\n\nimport asyncio\nasyncio.run(publish_events())\n```\n\n## Namespace Topics (Event Grid Namespaces)\n\nFor Event Grid Namespaces (pull delivery):\n\n```python\nfrom azure.eventgrid.aio import EventGridPublisherClient\n\n# Namespace endpoint (different from custom topic)\nnamespace_endpoint = \"https:\u002F\u002F\u003Cnamespace>.\u003Cregion>.eventgrid.azure.net\"\ntopic_name = \"my-topic\"\n\nasync with EventGridPublisherClient(\n    endpoint=namespace_endpoint,\n    credential=DefaultAzureCredential()\n) as client:\n    await client.send(\n        event,\n        namespace_topic=topic_name\n    )\n```\n\n## Best Practices\n\n1. **Use CloudEvents** for new applications (industry standard)\n2. **Batch events** when publishing multiple events\n3. **Include meaningful subjects** for filtering\n4. **Use async client** for high-throughput scenarios\n5. **Handle retries** — Event Grid has built-in retry\n6. **Set appropriate event types** for routing and filtering\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Azure Event Grid SDK for Python\n\nEvent routing service for building event-driven applications with pub\u002Fsub semantics.\n\n## Installation\n\n```bash\npip install azure-eventgrid azure-identity\n```\n\n## Environment Variables\n\n```bash\nEVENTGRID_TOPIC_ENDPOINT=https:\u002F\u002F\u003Ctopic-name>.\u003Cregion>.eventgrid.azure.net\u002Fapi\u002Fevents\nEVENTGRID_NAMESPACE_ENDPOINT=https:\u002F\u002F\u003Cnamespace>.\u003Cregion>.eventgrid.azure.net\n```\n\n## Authentication\n\n```python\nfrom azure.identity import DefaultAzureCredential\nfrom azure.eventgrid import EventGridPublisherClient\n\ncredential = DefaultAzureCredential()\nendpoint = \"https:\u002F\u002F\u003Ctopic-name>.\u003Cregion>.eventgrid.azure.net\u002Fapi\u002Fevents\"\n\nclient = EventGridPublisherClient(endpoint, credential)\n```\n\n## Event Types\n\n| Format | Class | Use Case |\n|--------|-------|----------|\n| Cloud Events 1.0 | `CloudEvent` | Standard, interoperable (recommended) |\n| Event Grid Schema | `EventGridEvent` | Azure-native format |\n\n## Publish CloudEvents\n\n```python\nfrom azure.eventgrid import EventGridPublisherClient, CloudEvent\nfrom azure.identity import DefaultAzureCredential\n\nclient = EventGridPublisherClient(endpoint, DefaultAzureCredential())\n\n# Single event\nevent = CloudEvent(\n    type=\"MyApp.Events.OrderCreated\",\n    source=\"\u002Fmyapp\u002Forders\",\n    data={\"order_id\": \"12345\", \"amount\": 99.99}\n)\nclient.send(event)\n\n# Multiple events\nevents = [\n    CloudEvent(\n        type=\"MyApp.Events.OrderCreated\",\n        source=\"\u002Fmyapp\u002Forders\",\n        data={\"order_id\": f\"order-{i}\"}\n    )\n    for i in range(10)\n]\nclient.send(events)\n```\n\n## Publish EventGridEvents\n\n```python\nfrom azure.eventgrid import EventGridEvent\nfrom datetime import datetime, timezone\n\nevent = EventGridEvent(\n    subject=\"\u002Fmyapp\u002Forders\u002F12345\",\n    event_type=\"MyApp.Events.OrderCreated\",\n    data={\"order_id\": \"12345\", \"amount\": 99.99},\n    data_version=\"1.0\"\n)\n\nclient.send(event)\n```\n\n## Event Properties\n\n### CloudEvent Properties\n\n```python\nevent = CloudEvent(\n    type=\"MyApp.Events.ItemCreated\",      # Required: event type\n    source=\"\u002Fmyapp\u002Fitems\",                 # Required: event source\n    data={\"key\": \"value\"},                 # Event payload\n    subject=\"items\u002F123\",                   # Optional: subject\u002Fpath\n    datacontenttype=\"application\u002Fjson\",   # Optional: content type\n    dataschema=\"https:\u002F\u002Fschema.example\",  # Optional: schema URL\n    time=datetime.now(timezone.utc),      # Optional: timestamp\n    extensions={\"custom\": \"value\"}         # Optional: custom attributes\n)\n```\n\n### EventGridEvent Properties\n\n```python\nevent = EventGridEvent(\n    subject=\"\u002Fmyapp\u002Fitems\u002F123\",            # Required: subject\n    event_type=\"MyApp.ItemCreated\",        # Required: event type\n    data={\"key\": \"value\"},                 # Required: event payload\n    data_version=\"1.0\",                    # Required: schema version\n    topic=\"\u002Fsubscriptions\u002F...\u002Ftopics\u002F...\", # Optional: auto-set\n    event_time=datetime.now(timezone.utc)  # Optional: timestamp\n)\n```\n\n## Async Client\n\n```python\nfrom azure.eventgrid.aio import EventGridPublisherClient\nfrom azure.identity.aio import DefaultAzureCredential\n\nasync def publish_events():\n    credential = DefaultAzureCredential()\n    \n    async with EventGridPublisherClient(endpoint, credential) as client:\n        event = CloudEvent(\n            type=\"MyApp.Events.Test\",\n            source=\"\u002Fmyapp\",\n            data={\"message\": \"hello\"}\n        )\n        await client.send(event)\n\nimport asyncio\nasyncio.run(publish_events())\n```\n\n## Namespace Topics (Event Grid Namespaces)\n\nFor Event Grid Namespaces (pull delivery):\n\n```python\nfrom azure.eventgrid.aio import EventGridPublisherClient\n\n# Namespace endpoint (different from custom topic)\nnamespace_endpoint = \"https:\u002F\u002F\u003Cnamespace>.\u003Cregion>.eventgrid.azure.net\"\ntopic_name = \"my-topic\"\n\nasync with EventGridPublisherClient(\n    endpoint=namespace_endpoint,\n    credential=DefaultAzureCredential()\n) as client:\n    await client.send(\n        event,\n        namespace_topic=topic_name\n    )\n```\n\n## Best Practices\n\n1. **Use CloudEvents** for new applications (industry standard)\n2. **Batch events** when publishing multiple events\n3. **Include meaningful subjects** for filtering\n4. **Use async client** for high-throughput scenarios\n5. **Handle retries** — Event Grid has built-in retry\n6. **Set appropriate event types** for routing and filtering\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{},"release\u002Fv4.2.11-panel-pro","a92ea02bcf7e2b3dbaf46d49696c29a3cb490d4f",".github\u002Fskills\u002Fazure-eventgrid-py","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-","https:\u002F\u002Fgithub.com\u002Fjaviertarazon","2026-07-12 07:10:45",{"source":7,"skillName":5,"commands":31,"prompt":41,"zipAvailable":42},[32,35,38],{"tool":33,"command":34},"npx","npx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-eventgrid-py",{"tool":36,"command":37},"bunx","bunx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-eventgrid-py",{"tool":39,"command":40},"pnpm","pnpm dlx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-eventgrid-py","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fazure-eventgrid-py\u002FSKILL.md",true,[],[45,77,104,124,139,161],{"skillNo":46,"name":47,"nameZh":6,"description":48,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":49,"categories":50,"keywords":56,"publishedAt":19},"01M71TQ7Q6Z10VWF3C2H5X1KW9","zustand-store-ts","Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state\u002Faction separation. Use when building React state management, creating global stores, or implementing reacti...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[51],{"categoryNo":52,"categoryName":53,"taxonomyType":54,"taxonomyTypeDesc":55},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",[57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76],"zustand","store","zustand store ts","community","middleware","implementing","use","react state management","when","unknown","react","with","state","create","state management","typescript","action","management","separation","global",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":86,"publishedAt":19},"01M71TQ5EAR40G6W0MV5ZDVEZT","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoom-automation\u002FSKILL.md",[83],{"categoryNo":84,"categoryName":85,"taxonomyType":54,"taxonomyTypeDesc":55},"01JBSEEDCAT000000000000023","Skill与智能体开发",[87,88,89,60,90,91,92,93,94,66,95,96,97,98,99,100,101,102,74,103],"zoom automation","zoom","automation","creation","for","search","schemas","MCP","first","via","meeting","search tools","tracking","webinars","composio","recordings","Tools",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":111,"publishedAt":19},"01M71TQ29B1EYBCEAP1ZBGXQ1A","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoho-crm-automation\u002FSKILL.md",[110],{"categoryNo":84,"categoryName":85,"taxonomyType":54,"taxonomyTypeDesc":55},[112,113,89,114,115,116,60,117,118,91,119,92,93,120,94,66,121,122,123,70],"crm automation","zoho crm automation","crm","zoho crm","zoho","leads","manage leads","manage","records","convert","tasks","contacts",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":131,"publishedAt":19},"01M71TPZPMN60DH0XV58KVHY23","zendesk-automation","Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzendesk-automation\u002FSKILL.md",[130],{"categoryNo":84,"categoryName":85,"taxonomyType":54,"taxonomyTypeDesc":55},[132,89,133,60,91,92,93,94,134,66,122,135,136,95,96,137,98,101,103,138],"zendesk automation","zendesk","organizations","replies","users","tickets","automate",{"skillNo":140,"name":141,"nameZh":6,"description":142,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":143,"categories":144,"keywords":145,"publishedAt":19},"01M71TPXDWKHKG4N6TVEPXWD0N","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity ...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzapier-make-patterns\u002FSKILL.md",[],[146,147,148,149,150,151,152,153,154,89,155,66,156,157,158,159,160,138],"zapier make patterns","zapier","patterns","make","No-Code","complexity","writing","spawner","business","workflow","code","integromat","apache","processes","but",{"skillNo":162,"name":163,"nameZh":6,"description":164,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":165,"categories":166,"keywords":170,"publishedAt":19},"01M71TPT5T10WXNKW9G7ZXZ27W","youtube-summarizer","Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fyoutube-summarizer\u002FSKILL.md",[167],{"categoryNo":168,"categoryName":169,"taxonomyType":54,"taxonomyTypeDesc":55},"01JBSEEDCAT000000000000016","图像与多媒体",[171,172,173,174,60,175,176,177,178,179,180,181,156,182,183,184,185,186,187,188],"summarizer","youtube","youtube summarizer","Video","content-analysis","frameworks","copilot","2025","github-copilot","extract transcripts","analysis","codex","cli","summaries","github","generate","summarization","2026"]