[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-azure-azure-functions-best-practices":3,"mdc--1sb4sh-key":35,"related-org-azure-azure-functions-best-practices":953,"related-repo-azure-azure-functions-best-practices":1134},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":24,"repoUrl":25,"updatedAt":26,"license":27,"forks":28,"topics":29,"repo":30,"sourceUrl":33,"mdContent":34},"azure-functions-best-practices","apply Azure Functions best practices","Use when reviewing an existing Azure Function App against Azure Functions best practices and proposing safe, approval-gated remediations for runtime, configuration, identity, security, observability, performance, scale, cost, triggers, and bindings.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"azure","Azure (Microsoft)","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fazure.png","Azure",[13,17,20,21],{"name":14,"slug":15,"type":16},"Security","security","tag",{"name":18,"slug":19,"type":16},"Observability","observability",{"name":11,"slug":8,"type":16},{"name":22,"slug":23,"type":16},"Best Practices","best-practices",12,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-functions-skills","2026-07-15T06:02:48.801578",null,1,[],{"repoUrl":25,"stars":24,"forks":28,"topics":31,"description":32},[],"A repository for Azure Functions skills, prompts, and reusable definitions to support agentic development and operational workflows.","https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-functions-skills\u002Ftree\u002FHEAD\u002Ftemplates\u002Fskills\u002Fazure-functions-best-practices","---\nname: azure-functions-best-practices\ntitle: Azure Functions Best Practices Review\ndescription: \"Use when reviewing an existing Azure Function App against Azure Functions best practices and proposing safe, approval-gated remediations for runtime, configuration, identity, security, observability, performance, scale, cost, triggers, and bindings.\"\ncategory: task\n---\n\n# Azure Functions Best Practices Review\n\nUse this skill to review an existing Azure Function App, prioritize best-practice findings, and help apply approved remediations.\n\nWrite final answers in the user's language.\n\n## When to use\n\n- Review my Function App for best practices\n- Improve or harden an existing Azure Functions app\n- Check whether a Function App follows recommended settings\n- Suggest safe fixes for Function App configuration, runtime, scale, security, or observability\n- Prepare a best-practices report before production readiness review\n\n## Do not use for\n\n- Creating a new Function App: use `azure-functions-create`\n- Static inventory only: use `azure-functions-inventory`\n- Current health\u002Fstatus only: use `azure-functions-health-status`\n- Active incident root-cause analysis: use `azure-functions-diagnostics`\n- Deployment-only tasks: use `azure-functions-deploy`\n- Generic Azure compliance scans: use Azure-wide compliance tooling when available\n\n## Core principles\n\n1. **Evidence first** — do not recommend changes until app inventory is collected.\n2. **MCP guidance first** — before scoring findings, call the Azure best-practices MCP guidance for Azure Functions (`get_azure_bestpractices` \u002F `get_azure_bestpractices_get` with `resource: azurefunctions` and `action: all`) when the tool is available.\n3. **Report before remediation** — present findings and ask which fixes to apply.\n4. **Approval-gated changes** — do not update app settings, restart apps, deploy code, change networking, change identity\u002FRBAC, or modify source\u002FIaC without explicit user approval.\n5. **Load references on demand** — use `azure-functions-common` routing to load only relevant language and trigger\u002Fbinding references.\n6. **Redact secrets** — report setting names and presence only; never reveal values.\n\n## Required best-practices guidance\n\nTreat Azure best-practices MCP output as the authoritative current guidance layer for this skill. Always attempt to retrieve it before producing the review report, unless the tool is unavailable. If it is unavailable, state that the MCP guidance could not be loaded and continue with the local checklist as a fallback.\n\nUse the MCP output to update the evaluation baseline for items such as supported runtime versions, Functions Host v4, extension bundle range, Flex Consumption guidance, authentication posture, private networking, Application Insights, trigger\u002Fbinding recommendations, and language-specific recommendations.\n\n## Required inputs\n\nAsk only for missing inputs needed to start:\n\n- Function App name, unless already provided\n- Subscription ID\u002Fname and resource group, if needed to disambiguate\n- Review scope: `quick`, `full`, `security`, `performance-scale`, `cost`, `observability`, or `configuration`\n- Whether local source\u002FIaC is available when the user wants code or infrastructure fixes\n\n## Workflow\n\n1. **Collect static evidence** with `azure-functions-inventory`. If `azure-functions-inventory` is unavailable, use these Azure CLI commands as fallback:\n\n   ```bash\n   # Function App details\n   az functionapp show --name \u003Capp> --resource-group \u003Crg>\n   # Configuration\n   az functionapp config show --name \u003Capp> --resource-group \u003Crg>\n   # App settings (names only — do not reveal values)\n   az functionapp config appsettings list --name \u003Capp> --resource-group \u003Crg> --query \"[].{name:name}\"\n   # Deployed functions\n   az functionapp function list --name \u003Capp> --resource-group \u003Crg>\n   ```\n2. **Collect runtime evidence when useful** with `azure-functions-health-status` for production readiness, performance, observability, or degraded apps.\n3. **Get current MCP guidance** from Azure Functions best-practices guidance (`get_azure_bestpractices` \u002F `get_azure_bestpractices_get` with `resource: azurefunctions` and `action: all`) and cite whether it was loaded.\n4. **Route references** through `..\u002Fazure-functions-common\u002Freferences\u002Frouting.md` based on runtime and trigger\u002Fbinding inventory.\n5. **Evaluate findings** using [review-checklist.md](references\u002Freview-checklist.md).\n6. **Prioritize results** as Critical, High, Medium, or Low.\n7. **Present a report first** with evidence, risk, recommendation, and validation plan.\n8. **Ask for approval** before any remediation.\n9. **Apply approved fixes** or generate commands\u002FIaC\u002Fsource patches using [remediation-patterns.md](references\u002Fremediation-patterns.md).\n10. **Validate after changes** by rerunning the relevant inventory, health, or deployment checks.\n\n## Output shape\n\nUse this structure unless the user asks for a different format:\n\n```text\nTarget: \u003Capp> (\u003Cresource-group>, \u003Csubscription>, \u003Cregion>)\nScope: \u003Cquick\u002Ffull\u002Fsecurity\u002Fperformance-scale\u002Fcost\u002Fobservability\u002Fconfiguration>\nInventory summary: \u003Cplan\u002Fruntime\u002Ftriggers\u002Fnetwork\u002Fidentity\u002Fsettings summary>\nRuntime signals: \u003Chealth\u002Fmetrics\u002Ftelemetry summary or not collected>\nFindings:\n  Critical:\n    - \u003Cfinding with evidence and risk>\n  High:\n    - \u003Cfinding with evidence and risk>\n  Medium:\n    - \u003Cfinding with evidence and risk>\n  Low:\n    - \u003Cfinding with evidence and risk>\nRecommended remediations:\n  1. \u003Csafe fix, approval required before applying>\n  2. \u003Cmanual\u002FIaC\u002Fsource change recommendation>\nValidation plan:\n  - \u003Cpost-change checks>\nGaps: \u003Cmissing permissions\u002Ftelemetry\u002Fsource\u002FIaC>\n```\n\n## Next steps\n\n- If findings indicate active failures, suggest `azure-functions-diagnostics`.\n- If the user only wanted inventory, suggest `azure-functions-inventory` next time.\n- If approved fixes require deployment, suggest `azure-functions-deploy` after validation.\n",{"data":36,"body":39},{"name":4,"title":37,"description":6,"category":38},"Azure Functions Best Practices Review","task",{"type":40,"children":41},"root",[42,50,56,61,68,98,104,168,174,279,285,290,295,301,306,377,383,882,888,893,903,909,947],{"type":43,"tag":44,"props":45,"children":47},"element","h1",{"id":46},"azure-functions-best-practices-review",[48],{"type":49,"value":37},"text",{"type":43,"tag":51,"props":52,"children":53},"p",{},[54],{"type":49,"value":55},"Use this skill to review an existing Azure Function App, prioritize best-practice findings, and help apply approved remediations.",{"type":43,"tag":51,"props":57,"children":58},{},[59],{"type":49,"value":60},"Write final answers in the user's language.",{"type":43,"tag":62,"props":63,"children":65},"h2",{"id":64},"when-to-use",[66],{"type":49,"value":67},"When to use",{"type":43,"tag":69,"props":70,"children":71},"ul",{},[72,78,83,88,93],{"type":43,"tag":73,"props":74,"children":75},"li",{},[76],{"type":49,"value":77},"Review my Function App for best practices",{"type":43,"tag":73,"props":79,"children":80},{},[81],{"type":49,"value":82},"Improve or harden an existing Azure Functions app",{"type":43,"tag":73,"props":84,"children":85},{},[86],{"type":49,"value":87},"Check whether a Function App follows recommended settings",{"type":43,"tag":73,"props":89,"children":90},{},[91],{"type":49,"value":92},"Suggest safe fixes for Function App configuration, runtime, scale, security, or observability",{"type":43,"tag":73,"props":94,"children":95},{},[96],{"type":49,"value":97},"Prepare a best-practices report before production readiness review",{"type":43,"tag":62,"props":99,"children":101},{"id":100},"do-not-use-for",[102],{"type":49,"value":103},"Do not use for",{"type":43,"tag":69,"props":105,"children":106},{},[107,119,130,141,152,163],{"type":43,"tag":73,"props":108,"children":109},{},[110,112],{"type":49,"value":111},"Creating a new Function App: use ",{"type":43,"tag":113,"props":114,"children":116},"code",{"className":115},[],[117],{"type":49,"value":118},"azure-functions-create",{"type":43,"tag":73,"props":120,"children":121},{},[122,124],{"type":49,"value":123},"Static inventory only: use ",{"type":43,"tag":113,"props":125,"children":127},{"className":126},[],[128],{"type":49,"value":129},"azure-functions-inventory",{"type":43,"tag":73,"props":131,"children":132},{},[133,135],{"type":49,"value":134},"Current health\u002Fstatus only: use ",{"type":43,"tag":113,"props":136,"children":138},{"className":137},[],[139],{"type":49,"value":140},"azure-functions-health-status",{"type":43,"tag":73,"props":142,"children":143},{},[144,146],{"type":49,"value":145},"Active incident root-cause analysis: use ",{"type":43,"tag":113,"props":147,"children":149},{"className":148},[],[150],{"type":49,"value":151},"azure-functions-diagnostics",{"type":43,"tag":73,"props":153,"children":154},{},[155,157],{"type":49,"value":156},"Deployment-only tasks: use ",{"type":43,"tag":113,"props":158,"children":160},{"className":159},[],[161],{"type":49,"value":162},"azure-functions-deploy",{"type":43,"tag":73,"props":164,"children":165},{},[166],{"type":49,"value":167},"Generic Azure compliance scans: use Azure-wide compliance tooling when available",{"type":43,"tag":62,"props":169,"children":171},{"id":170},"core-principles",[172],{"type":49,"value":173},"Core principles",{"type":43,"tag":175,"props":176,"children":177},"ol",{},[178,189,231,241,251,269],{"type":43,"tag":73,"props":179,"children":180},{},[181,187],{"type":43,"tag":182,"props":183,"children":184},"strong",{},[185],{"type":49,"value":186},"Evidence first",{"type":49,"value":188}," — do not recommend changes until app inventory is collected.",{"type":43,"tag":73,"props":190,"children":191},{},[192,197,199,205,207,213,215,221,223,229],{"type":43,"tag":182,"props":193,"children":194},{},[195],{"type":49,"value":196},"MCP guidance first",{"type":49,"value":198}," — before scoring findings, call the Azure best-practices MCP guidance for Azure Functions (",{"type":43,"tag":113,"props":200,"children":202},{"className":201},[],[203],{"type":49,"value":204},"get_azure_bestpractices",{"type":49,"value":206}," \u002F ",{"type":43,"tag":113,"props":208,"children":210},{"className":209},[],[211],{"type":49,"value":212},"get_azure_bestpractices_get",{"type":49,"value":214}," with ",{"type":43,"tag":113,"props":216,"children":218},{"className":217},[],[219],{"type":49,"value":220},"resource: azurefunctions",{"type":49,"value":222}," and ",{"type":43,"tag":113,"props":224,"children":226},{"className":225},[],[227],{"type":49,"value":228},"action: all",{"type":49,"value":230},") when the tool is available.",{"type":43,"tag":73,"props":232,"children":233},{},[234,239],{"type":43,"tag":182,"props":235,"children":236},{},[237],{"type":49,"value":238},"Report before remediation",{"type":49,"value":240}," — present findings and ask which fixes to apply.",{"type":43,"tag":73,"props":242,"children":243},{},[244,249],{"type":43,"tag":182,"props":245,"children":246},{},[247],{"type":49,"value":248},"Approval-gated changes",{"type":49,"value":250}," — do not update app settings, restart apps, deploy code, change networking, change identity\u002FRBAC, or modify source\u002FIaC without explicit user approval.",{"type":43,"tag":73,"props":252,"children":253},{},[254,259,261,267],{"type":43,"tag":182,"props":255,"children":256},{},[257],{"type":49,"value":258},"Load references on demand",{"type":49,"value":260}," — use ",{"type":43,"tag":113,"props":262,"children":264},{"className":263},[],[265],{"type":49,"value":266},"azure-functions-common",{"type":49,"value":268}," routing to load only relevant language and trigger\u002Fbinding references.",{"type":43,"tag":73,"props":270,"children":271},{},[272,277],{"type":43,"tag":182,"props":273,"children":274},{},[275],{"type":49,"value":276},"Redact secrets",{"type":49,"value":278}," — report setting names and presence only; never reveal values.",{"type":43,"tag":62,"props":280,"children":282},{"id":281},"required-best-practices-guidance",[283],{"type":49,"value":284},"Required best-practices guidance",{"type":43,"tag":51,"props":286,"children":287},{},[288],{"type":49,"value":289},"Treat Azure best-practices MCP output as the authoritative current guidance layer for this skill. Always attempt to retrieve it before producing the review report, unless the tool is unavailable. If it is unavailable, state that the MCP guidance could not be loaded and continue with the local checklist as a fallback.",{"type":43,"tag":51,"props":291,"children":292},{},[293],{"type":49,"value":294},"Use the MCP output to update the evaluation baseline for items such as supported runtime versions, Functions Host v4, extension bundle range, Flex Consumption guidance, authentication posture, private networking, Application Insights, trigger\u002Fbinding recommendations, and language-specific recommendations.",{"type":43,"tag":62,"props":296,"children":298},{"id":297},"required-inputs",[299],{"type":49,"value":300},"Required inputs",{"type":43,"tag":51,"props":302,"children":303},{},[304],{"type":49,"value":305},"Ask only for missing inputs needed to start:",{"type":43,"tag":69,"props":307,"children":308},{},[309,314,319,372],{"type":43,"tag":73,"props":310,"children":311},{},[312],{"type":49,"value":313},"Function App name, unless already provided",{"type":43,"tag":73,"props":315,"children":316},{},[317],{"type":49,"value":318},"Subscription ID\u002Fname and resource group, if needed to disambiguate",{"type":43,"tag":73,"props":320,"children":321},{},[322,324,330,332,338,339,344,345,351,352,358,359,364,366],{"type":49,"value":323},"Review scope: ",{"type":43,"tag":113,"props":325,"children":327},{"className":326},[],[328],{"type":49,"value":329},"quick",{"type":49,"value":331},", ",{"type":43,"tag":113,"props":333,"children":335},{"className":334},[],[336],{"type":49,"value":337},"full",{"type":49,"value":331},{"type":43,"tag":113,"props":340,"children":342},{"className":341},[],[343],{"type":49,"value":15},{"type":49,"value":331},{"type":43,"tag":113,"props":346,"children":348},{"className":347},[],[349],{"type":49,"value":350},"performance-scale",{"type":49,"value":331},{"type":43,"tag":113,"props":353,"children":355},{"className":354},[],[356],{"type":49,"value":357},"cost",{"type":49,"value":331},{"type":43,"tag":113,"props":360,"children":362},{"className":361},[],[363],{"type":49,"value":19},{"type":49,"value":365},", or ",{"type":43,"tag":113,"props":367,"children":369},{"className":368},[],[370],{"type":49,"value":371},"configuration",{"type":43,"tag":73,"props":373,"children":374},{},[375],{"type":49,"value":376},"Whether local source\u002FIaC is available when the user wants code or infrastructure fixes",{"type":43,"tag":62,"props":378,"children":380},{"id":379},"workflow",[381],{"type":49,"value":382},"Workflow",{"type":43,"tag":175,"props":384,"children":385},{},[386,737,753,788,806,825,835,845,855,872],{"type":43,"tag":73,"props":387,"children":388},{},[389,394,395,400,402,407,409],{"type":43,"tag":182,"props":390,"children":391},{},[392],{"type":49,"value":393},"Collect static evidence",{"type":49,"value":214},{"type":43,"tag":113,"props":396,"children":398},{"className":397},[],[399],{"type":49,"value":129},{"type":49,"value":401},". If ",{"type":43,"tag":113,"props":403,"children":405},{"className":404},[],[406],{"type":49,"value":129},{"type":49,"value":408}," is unavailable, use these Azure CLI commands as fallback:",{"type":43,"tag":410,"props":411,"children":416},"pre",{"className":412,"code":413,"language":414,"meta":415,"style":415},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Function App details\naz functionapp show --name \u003Capp> --resource-group \u003Crg>\n# Configuration\naz functionapp config show --name \u003Capp> --resource-group \u003Crg>\n# App settings (names only — do not reveal values)\naz functionapp config appsettings list --name \u003Capp> --resource-group \u003Crg> --query \"[].{name:name}\"\n# Deployed functions\naz functionapp function list --name \u003Capp> --resource-group \u003Crg>\n","bash","",[417],{"type":43,"tag":113,"props":418,"children":419},{"__ignoreMap":415},[420,431,502,511,572,581,667,676],{"type":43,"tag":421,"props":422,"children":424},"span",{"class":423,"line":28},"line",[425],{"type":43,"tag":421,"props":426,"children":428},{"style":427},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[429],{"type":49,"value":430},"# Function App details\n",{"type":43,"tag":421,"props":432,"children":434},{"class":423,"line":433},2,[435,441,447,452,457,463,468,473,478,483,487,492,497],{"type":43,"tag":421,"props":436,"children":438},{"style":437},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[439],{"type":49,"value":440},"az",{"type":43,"tag":421,"props":442,"children":444},{"style":443},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[445],{"type":49,"value":446}," functionapp",{"type":43,"tag":421,"props":448,"children":449},{"style":443},[450],{"type":49,"value":451}," show",{"type":43,"tag":421,"props":453,"children":454},{"style":443},[455],{"type":49,"value":456}," --name",{"type":43,"tag":421,"props":458,"children":460},{"style":459},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[461],{"type":49,"value":462}," \u003C",{"type":43,"tag":421,"props":464,"children":465},{"style":443},[466],{"type":49,"value":467},"ap",{"type":43,"tag":421,"props":469,"children":471},{"style":470},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[472],{"type":49,"value":51},{"type":43,"tag":421,"props":474,"children":475},{"style":459},[476],{"type":49,"value":477},">",{"type":43,"tag":421,"props":479,"children":480},{"style":443},[481],{"type":49,"value":482}," --resource-group",{"type":43,"tag":421,"props":484,"children":485},{"style":459},[486],{"type":49,"value":462},{"type":43,"tag":421,"props":488,"children":489},{"style":443},[490],{"type":49,"value":491},"r",{"type":43,"tag":421,"props":493,"children":494},{"style":470},[495],{"type":49,"value":496},"g",{"type":43,"tag":421,"props":498,"children":499},{"style":459},[500],{"type":49,"value":501},">\n",{"type":43,"tag":421,"props":503,"children":505},{"class":423,"line":504},3,[506],{"type":43,"tag":421,"props":507,"children":508},{"style":427},[509],{"type":49,"value":510},"# Configuration\n",{"type":43,"tag":421,"props":512,"children":514},{"class":423,"line":513},4,[515,519,523,528,532,536,540,544,548,552,556,560,564,568],{"type":43,"tag":421,"props":516,"children":517},{"style":437},[518],{"type":49,"value":440},{"type":43,"tag":421,"props":520,"children":521},{"style":443},[522],{"type":49,"value":446},{"type":43,"tag":421,"props":524,"children":525},{"style":443},[526],{"type":49,"value":527}," config",{"type":43,"tag":421,"props":529,"children":530},{"style":443},[531],{"type":49,"value":451},{"type":43,"tag":421,"props":533,"children":534},{"style":443},[535],{"type":49,"value":456},{"type":43,"tag":421,"props":537,"children":538},{"style":459},[539],{"type":49,"value":462},{"type":43,"tag":421,"props":541,"children":542},{"style":443},[543],{"type":49,"value":467},{"type":43,"tag":421,"props":545,"children":546},{"style":470},[547],{"type":49,"value":51},{"type":43,"tag":421,"props":549,"children":550},{"style":459},[551],{"type":49,"value":477},{"type":43,"tag":421,"props":553,"children":554},{"style":443},[555],{"type":49,"value":482},{"type":43,"tag":421,"props":557,"children":558},{"style":459},[559],{"type":49,"value":462},{"type":43,"tag":421,"props":561,"children":562},{"style":443},[563],{"type":49,"value":491},{"type":43,"tag":421,"props":565,"children":566},{"style":470},[567],{"type":49,"value":496},{"type":43,"tag":421,"props":569,"children":570},{"style":459},[571],{"type":49,"value":501},{"type":43,"tag":421,"props":573,"children":575},{"class":423,"line":574},5,[576],{"type":43,"tag":421,"props":577,"children":578},{"style":427},[579],{"type":49,"value":580},"# App settings (names only — do not reveal values)\n",{"type":43,"tag":421,"props":582,"children":584},{"class":423,"line":583},6,[585,589,593,597,602,607,611,615,619,623,627,631,635,639,643,647,652,657,662],{"type":43,"tag":421,"props":586,"children":587},{"style":437},[588],{"type":49,"value":440},{"type":43,"tag":421,"props":590,"children":591},{"style":443},[592],{"type":49,"value":446},{"type":43,"tag":421,"props":594,"children":595},{"style":443},[596],{"type":49,"value":527},{"type":43,"tag":421,"props":598,"children":599},{"style":443},[600],{"type":49,"value":601}," appsettings",{"type":43,"tag":421,"props":603,"children":604},{"style":443},[605],{"type":49,"value":606}," list",{"type":43,"tag":421,"props":608,"children":609},{"style":443},[610],{"type":49,"value":456},{"type":43,"tag":421,"props":612,"children":613},{"style":459},[614],{"type":49,"value":462},{"type":43,"tag":421,"props":616,"children":617},{"style":443},[618],{"type":49,"value":467},{"type":43,"tag":421,"props":620,"children":621},{"style":470},[622],{"type":49,"value":51},{"type":43,"tag":421,"props":624,"children":625},{"style":459},[626],{"type":49,"value":477},{"type":43,"tag":421,"props":628,"children":629},{"style":443},[630],{"type":49,"value":482},{"type":43,"tag":421,"props":632,"children":633},{"style":459},[634],{"type":49,"value":462},{"type":43,"tag":421,"props":636,"children":637},{"style":443},[638],{"type":49,"value":491},{"type":43,"tag":421,"props":640,"children":641},{"style":470},[642],{"type":49,"value":496},{"type":43,"tag":421,"props":644,"children":645},{"style":459},[646],{"type":49,"value":477},{"type":43,"tag":421,"props":648,"children":649},{"style":443},[650],{"type":49,"value":651}," --query",{"type":43,"tag":421,"props":653,"children":654},{"style":459},[655],{"type":49,"value":656}," \"",{"type":43,"tag":421,"props":658,"children":659},{"style":443},[660],{"type":49,"value":661},"[].{name:name}",{"type":43,"tag":421,"props":663,"children":664},{"style":459},[665],{"type":49,"value":666},"\"\n",{"type":43,"tag":421,"props":668,"children":670},{"class":423,"line":669},7,[671],{"type":43,"tag":421,"props":672,"children":673},{"style":427},[674],{"type":49,"value":675},"# Deployed functions\n",{"type":43,"tag":421,"props":677,"children":679},{"class":423,"line":678},8,[680,684,688,693,697,701,705,709,713,717,721,725,729,733],{"type":43,"tag":421,"props":681,"children":682},{"style":437},[683],{"type":49,"value":440},{"type":43,"tag":421,"props":685,"children":686},{"style":443},[687],{"type":49,"value":446},{"type":43,"tag":421,"props":689,"children":690},{"style":443},[691],{"type":49,"value":692}," function",{"type":43,"tag":421,"props":694,"children":695},{"style":443},[696],{"type":49,"value":606},{"type":43,"tag":421,"props":698,"children":699},{"style":443},[700],{"type":49,"value":456},{"type":43,"tag":421,"props":702,"children":703},{"style":459},[704],{"type":49,"value":462},{"type":43,"tag":421,"props":706,"children":707},{"style":443},[708],{"type":49,"value":467},{"type":43,"tag":421,"props":710,"children":711},{"style":470},[712],{"type":49,"value":51},{"type":43,"tag":421,"props":714,"children":715},{"style":459},[716],{"type":49,"value":477},{"type":43,"tag":421,"props":718,"children":719},{"style":443},[720],{"type":49,"value":482},{"type":43,"tag":421,"props":722,"children":723},{"style":459},[724],{"type":49,"value":462},{"type":43,"tag":421,"props":726,"children":727},{"style":443},[728],{"type":49,"value":491},{"type":43,"tag":421,"props":730,"children":731},{"style":470},[732],{"type":49,"value":496},{"type":43,"tag":421,"props":734,"children":735},{"style":459},[736],{"type":49,"value":501},{"type":43,"tag":73,"props":738,"children":739},{},[740,745,746,751],{"type":43,"tag":182,"props":741,"children":742},{},[743],{"type":49,"value":744},"Collect runtime evidence when useful",{"type":49,"value":214},{"type":43,"tag":113,"props":747,"children":749},{"className":748},[],[750],{"type":49,"value":140},{"type":49,"value":752}," for production readiness, performance, observability, or degraded apps.",{"type":43,"tag":73,"props":754,"children":755},{},[756,761,763,768,769,774,775,780,781,786],{"type":43,"tag":182,"props":757,"children":758},{},[759],{"type":49,"value":760},"Get current MCP guidance",{"type":49,"value":762}," from Azure Functions best-practices guidance (",{"type":43,"tag":113,"props":764,"children":766},{"className":765},[],[767],{"type":49,"value":204},{"type":49,"value":206},{"type":43,"tag":113,"props":770,"children":772},{"className":771},[],[773],{"type":49,"value":212},{"type":49,"value":214},{"type":43,"tag":113,"props":776,"children":778},{"className":777},[],[779],{"type":49,"value":220},{"type":49,"value":222},{"type":43,"tag":113,"props":782,"children":784},{"className":783},[],[785],{"type":49,"value":228},{"type":49,"value":787},") and cite whether it was loaded.",{"type":43,"tag":73,"props":789,"children":790},{},[791,796,798,804],{"type":43,"tag":182,"props":792,"children":793},{},[794],{"type":49,"value":795},"Route references",{"type":49,"value":797}," through ",{"type":43,"tag":113,"props":799,"children":801},{"className":800},[],[802],{"type":49,"value":803},"..\u002Fazure-functions-common\u002Freferences\u002Frouting.md",{"type":49,"value":805}," based on runtime and trigger\u002Fbinding inventory.",{"type":43,"tag":73,"props":807,"children":808},{},[809,814,816,823],{"type":43,"tag":182,"props":810,"children":811},{},[812],{"type":49,"value":813},"Evaluate findings",{"type":49,"value":815}," using ",{"type":43,"tag":817,"props":818,"children":820},"a",{"href":819},"references\u002Freview-checklist.md",[821],{"type":49,"value":822},"review-checklist.md",{"type":49,"value":824},".",{"type":43,"tag":73,"props":826,"children":827},{},[828,833],{"type":43,"tag":182,"props":829,"children":830},{},[831],{"type":49,"value":832},"Prioritize results",{"type":49,"value":834}," as Critical, High, Medium, or Low.",{"type":43,"tag":73,"props":836,"children":837},{},[838,843],{"type":43,"tag":182,"props":839,"children":840},{},[841],{"type":49,"value":842},"Present a report first",{"type":49,"value":844}," with evidence, risk, recommendation, and validation plan.",{"type":43,"tag":73,"props":846,"children":847},{},[848,853],{"type":43,"tag":182,"props":849,"children":850},{},[851],{"type":49,"value":852},"Ask for approval",{"type":49,"value":854}," before any remediation.",{"type":43,"tag":73,"props":856,"children":857},{},[858,863,865,871],{"type":43,"tag":182,"props":859,"children":860},{},[861],{"type":49,"value":862},"Apply approved fixes",{"type":49,"value":864}," or generate commands\u002FIaC\u002Fsource patches using ",{"type":43,"tag":817,"props":866,"children":868},{"href":867},"references\u002Fremediation-patterns.md",[869],{"type":49,"value":870},"remediation-patterns.md",{"type":49,"value":824},{"type":43,"tag":73,"props":873,"children":874},{},[875,880],{"type":43,"tag":182,"props":876,"children":877},{},[878],{"type":49,"value":879},"Validate after changes",{"type":49,"value":881}," by rerunning the relevant inventory, health, or deployment checks.",{"type":43,"tag":62,"props":883,"children":885},{"id":884},"output-shape",[886],{"type":49,"value":887},"Output shape",{"type":43,"tag":51,"props":889,"children":890},{},[891],{"type":49,"value":892},"Use this structure unless the user asks for a different format:",{"type":43,"tag":410,"props":894,"children":898},{"className":895,"code":897,"language":49,"meta":415},[896],"language-text","Target: \u003Capp> (\u003Cresource-group>, \u003Csubscription>, \u003Cregion>)\nScope: \u003Cquick\u002Ffull\u002Fsecurity\u002Fperformance-scale\u002Fcost\u002Fobservability\u002Fconfiguration>\nInventory summary: \u003Cplan\u002Fruntime\u002Ftriggers\u002Fnetwork\u002Fidentity\u002Fsettings summary>\nRuntime signals: \u003Chealth\u002Fmetrics\u002Ftelemetry summary or not collected>\nFindings:\n  Critical:\n    - \u003Cfinding with evidence and risk>\n  High:\n    - \u003Cfinding with evidence and risk>\n  Medium:\n    - \u003Cfinding with evidence and risk>\n  Low:\n    - \u003Cfinding with evidence and risk>\nRecommended remediations:\n  1. \u003Csafe fix, approval required before applying>\n  2. \u003Cmanual\u002FIaC\u002Fsource change recommendation>\nValidation plan:\n  - \u003Cpost-change checks>\nGaps: \u003Cmissing permissions\u002Ftelemetry\u002Fsource\u002FIaC>\n",[899],{"type":43,"tag":113,"props":900,"children":901},{"__ignoreMap":415},[902],{"type":49,"value":897},{"type":43,"tag":62,"props":904,"children":906},{"id":905},"next-steps",[907],{"type":49,"value":908},"Next steps",{"type":43,"tag":69,"props":910,"children":911},{},[912,923,935],{"type":43,"tag":73,"props":913,"children":914},{},[915,917,922],{"type":49,"value":916},"If findings indicate active failures, suggest ",{"type":43,"tag":113,"props":918,"children":920},{"className":919},[],[921],{"type":49,"value":151},{"type":49,"value":824},{"type":43,"tag":73,"props":924,"children":925},{},[926,928,933],{"type":49,"value":927},"If the user only wanted inventory, suggest ",{"type":43,"tag":113,"props":929,"children":931},{"className":930},[],[932],{"type":49,"value":129},{"type":49,"value":934}," next time.",{"type":43,"tag":73,"props":936,"children":937},{},[938,940,945],{"type":49,"value":939},"If approved fixes require deployment, suggest ",{"type":43,"tag":113,"props":941,"children":943},{"className":942},[],[944],{"type":49,"value":162},{"type":49,"value":946}," after validation.",{"type":43,"tag":948,"props":949,"children":950},"style",{},[951],{"type":49,"value":952},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":954,"total":1133},[955,974,993,1012,1027,1042,1055,1070,1081,1095,1108,1121],{"slug":956,"name":956,"fn":957,"description":958,"org":959,"tags":960,"stars":971,"repoUrl":972,"updatedAt":973},"azure-arg-external-evaluation-policy-author","author and test Azure Resource Graph policies","Use when the user wants to author, design, or test an Azure Policy that queries Azure Resource Graph (ARG) at request-time — i.e. a policy whose deny\u002Faudit decision depends on data from elsewhere in the subscription (sibling\u002Fparent resource state, RG-wide invariants, multi-hop relationships, etc.). Formally called Azure Policy External Evaluation; sometimes referred to colloquially as \"Invoke\". Drives an iterative KQL co-design loop against the user's real subscription via `az graph query`, then emits a policy definition, assignment, `.http` test flow, and an `EXPLANATION.md` companion. Read-only; never provisions anything.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[961,962,965,968],{"name":11,"slug":8,"type":16},{"name":963,"slug":964,"type":16},"Compliance","compliance",{"name":966,"slug":967,"type":16},"Governance","governance",{"name":969,"slug":970,"type":16},"Policy","policy",1686,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-policy","2026-07-12T08:17:48.378432",{"slug":975,"name":975,"fn":976,"description":977,"org":978,"tags":979,"stars":990,"repoUrl":991,"updatedAt":992},"azure-blueprints-migration","migrate Azure Blueprints to Template Specs","Use when a user needs to migrate off Azure Blueprints (definitions and\u002For assignments) to Template Specs and Deployment Stacks before the January 31, 2027 retirement. Covers inventory, export, conversion to Bicep, policy decoupling, Template Spec publishing, Deployment Stack deployment with deny-settings, validation, and cutover.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[980,981,984,987],{"name":11,"slug":8,"type":16},{"name":982,"slug":983,"type":16},"Deployment","deployment",{"name":985,"slug":986,"type":16},"Infrastructure as Code","infrastructure-as-code",{"name":988,"slug":989,"type":16},"Migration","migration",260,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-blueprints","2026-07-12T08:17:49.646405",{"slug":994,"name":994,"fn":995,"description":996,"org":997,"tags":998,"stars":1009,"repoUrl":1010,"updatedAt":1011},"apiview-feedback-resolution","resolve APIView feedback on Azure SDKs","Analyze and resolve APIView review feedback on Azure SDK PRs. **UTILITY SKILL**. USE FOR: APIView comments, API review feedback, SDK API surface changes. DO NOT USE FOR: general code review, non-APIView feedback. INVOKES: azure-sdk-mcp:azsdk_apiview_get_comments, azure-sdk-mcp:azsdk_typespec_customized_code_update.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[999,1002,1003,1006],{"name":1000,"slug":1001,"type":16},"API Development","api-development",{"name":11,"slug":8,"type":16},{"name":1004,"slug":1005,"type":16},"Code Review","code-review",{"name":1007,"slug":1008,"type":16},"Documentation","documentation",133,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-tools","2026-07-12T08:17:43.350876",{"slug":1013,"name":1013,"fn":1014,"description":1015,"org":1016,"tags":1017,"stars":1009,"repoUrl":1010,"updatedAt":1026},"azsdk-common-live-and-recorded-tests","deploy resources and run Azure SDK tests","Deploy test resources and run Azure SDK tests in live, record, or playback mode. WHEN: \"run live tests\", \"run recorded tests\", \"deploy test resources\", \"record tests\", \"run tests in record mode\", \"clean up test resources\", \"run tests against live resources\". DO NOT USE FOR: writing new tests, authoring Bicep templates, playback-only test runs without resource deployment. INVOKES: azure-sdk-mcp:azsdk_package_run_tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1018,1019,1020,1023],{"name":11,"slug":8,"type":16},{"name":982,"slug":983,"type":16},{"name":1021,"slug":1022,"type":16},"SDK","sdk",{"name":1024,"slug":1025,"type":16},"Testing","testing","2026-07-12T08:17:44.718943",{"slug":1028,"name":1028,"fn":1029,"description":1030,"org":1031,"tags":1032,"stars":1009,"repoUrl":1010,"updatedAt":1041},"azsdk-common-prepare-release-plan","manage Azure SDK release plan work items","Create, get, update, abandon, and link SDK PRs to release plan work items for Azure SDK releases. **UTILITY SKILL**. USE FOR: \"create release plan\", \"get release plan\", \"update release plan\", \"update API spec in release plan\", \"update SDK details in release plan\", \"abandon release plan\", \"link SDK PR to plan\", \"namespace approval\", \"check release plan status\". DO NOT USE FOR: SDK code generation, pipeline troubleshooting, API review feedback. INVOKES: azure-sdk-mcp:azsdk_create_release_plan, azure-sdk-mcp:azsdk_get_release_plan, azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr, azure-sdk-mcp:azsdk_update_release_plan, azure-sdk-mcp:azsdk_update_api_spec_pull_request_in_release_plan, azure-sdk-mcp:azsdk_update_sdk_details_in_release_plan, azure-sdk-mcp:azsdk_abandon_release_plan, azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan, azure-sdk-mcp:azsdk_link_namespace_approval_issue.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1033,1034,1037,1040],{"name":11,"slug":8,"type":16},{"name":1035,"slug":1036,"type":16},"GitHub","github",{"name":1038,"slug":1039,"type":16},"Project Management","project-management",{"name":1021,"slug":1022,"type":16},"2026-07-12T08:17:38.345387",{"slug":1043,"name":1043,"fn":1044,"description":1045,"org":1046,"tags":1047,"stars":1009,"repoUrl":1010,"updatedAt":1054},"azsdk-common-sdk-release","release Azure SDK packages","Check release readiness and trigger the release pipeline for Azure SDK packages. **UTILITY SKILL**. USE FOR: \"release SDK\", \"trigger release\", \"check release readiness\", \"release pipeline\", \"publish package\", \"ship SDK\". DO NOT USE FOR: SDK development, code generation, pipeline debugging, release plan creation. INVOKES: azure-sdk-mcp:azsdk_release_sdk.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1048,1049,1052,1053],{"name":11,"slug":8,"type":16},{"name":1050,"slug":1051,"type":16},"CI\u002FCD","ci-cd",{"name":982,"slug":983,"type":16},{"name":1021,"slug":1022,"type":16},"2026-07-12T08:17:34.27607",{"slug":1056,"name":1056,"fn":1057,"description":1058,"org":1059,"tags":1060,"stars":1009,"repoUrl":1010,"updatedAt":1069},"azure-typespec-author","author and modify Azure TypeSpec API specifications","Authors and modifies Azure TypeSpec (.tsp) API specifications. USE FOR: any TypeSpec\u002Ftsp change — api versions (add, bump, preview, stable, promote), resources, operations, models, properties, decorators, visibility, constraints, breaking changes, LRO, suppressions, operationId, spread model. Covers ARM resource-manager and data-plane services. DO NOT USE FOR: SDK generation, releasing SDK packages, or single MCP tool calls. INVOKES: azure-sdk-mcp:azsdk_typespec_generate_authoring_plan, azure-sdk-mcp:azsdk_run_typespec_validation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1061,1062,1063,1066],{"name":1000,"slug":1001,"type":16},{"name":11,"slug":8,"type":16},{"name":1064,"slug":1065,"type":16},"OpenAPI","openapi",{"name":1067,"slug":1068,"type":16},"Technical Writing","technical-writing","2026-07-12T08:17:39.603232",{"slug":1071,"name":1071,"fn":1072,"description":1073,"org":1074,"tags":1075,"stars":1009,"repoUrl":1010,"updatedAt":1080},"generate-sdk-locally","generate and test Azure SDKs locally","Generate, build, and test Azure SDKs locally from TypeSpec with automatic customization. WHEN: \"generate SDK locally\", \"build SDK\", \"run SDK tests\", \"run CI checks\", \"validate package\", \"run checks\", \"update changelog\", \"fix SDK build errors\", \"fix breaking changes\", \"resolve SDK generation errors\", \"customize TypeSpec\", \"rename SDK client\", \"rename SDK model\", \"hide operation from SDK\", \"fix analyzer errors\", \"resolve customization drift\", \"create subclient\", \"update metadata\", \"update version\". DO NOT USE FOR: publishing to package registries, CI pipeline configuration, API design review. INVOKES: azsdk_verify_setup, azsdk_package_generate_code, azsdk_package_build_code, azsdk_package_run_check, azsdk_package_run_tests, azsdk_customized_code_update, azsdk_package_update_changelog_content, azsdk_package_update_metadata, azsdk_package_update_version.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1076,1077,1078,1079],{"name":11,"slug":8,"type":16},{"name":1050,"slug":1051,"type":16},{"name":1021,"slug":1022,"type":16},{"name":1024,"slug":1025,"type":16},"2026-07-12T08:17:37.08523",{"slug":1082,"name":1082,"fn":1083,"description":1084,"org":1085,"tags":1086,"stars":1009,"repoUrl":1010,"updatedAt":1094},"markdown-token-optimizer","optimize markdown files for token efficiency","Analyze markdown files for token efficiency and reduce context-window bloat. **UTILITY SKILL**. DO NOT USE FOR: code optimization, general file editing, non-markdown files. TRIGGERS: optimize markdown, reduce tokens, token count, token bloat, too many tokens, make concise, shrink file, file too large, optimize for AI, token efficiency, verbose markdown, reduce file size. INVOKES: waza CLI.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1087,1090,1093],{"name":1088,"slug":1089,"type":16},"LLM","llm",{"name":1091,"slug":1092,"type":16},"Performance","performance",{"name":1067,"slug":1068,"type":16},"2026-07-12T08:17:42.080413",{"slug":1096,"name":1096,"fn":1097,"description":1098,"org":1099,"tags":1100,"stars":1009,"repoUrl":1010,"updatedAt":1107},"pipeline-troubleshooting","troubleshoot Azure SDK CI pipelines","Diagnose and resolve failures in Azure SDK CI and generation pipelines. **UTILITY SKILL**. USE FOR: \"pipeline failed\", \"build failure\", \"CI check failing\", \"SDK generation error\", \"reproduce pipeline locally\", \"debug SDK pipeline\". DO NOT USE FOR: local build issues without pipeline context, API design review, SDK publishing. INVOKES: azure-sdk-mcp:azsdk_analyze_pipeline, azure-sdk-mcp:azsdk_package_build_code, azure-sdk-mcp:azsdk_package_run_check.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1101,1102,1103,1106],{"name":11,"slug":8,"type":16},{"name":1050,"slug":1051,"type":16},{"name":1104,"slug":1105,"type":16},"Debugging","debugging",{"name":1021,"slug":1022,"type":16},"2026-07-12T08:17:40.821512",{"slug":1109,"name":1109,"fn":1110,"description":1111,"org":1112,"tags":1113,"stars":1009,"repoUrl":1010,"updatedAt":1120},"sensei","improve skill frontmatter compliance","**WORKFLOW SKILL** — Iteratively improve skill frontmatter compliance using the Ralph loop pattern. WHEN: \"run sensei\", \"sensei help\", \"improve skill\", \"fix frontmatter\", \"skill compliance\", \"frontmatter audit\", \"score skill\", \"check skill tokens\". INVOKES: token counting tools, test runners, git commands. FOR SINGLE OPERATIONS: use token CLI directly for counts\u002Fchecks.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1114,1115,1116,1119],{"name":11,"slug":8,"type":16},{"name":963,"slug":964,"type":16},{"name":1117,"slug":1118,"type":16},"Process Optimization","process-optimization",{"name":1067,"slug":1068,"type":16},"2026-07-12T08:17:32.970921",{"slug":1122,"name":1122,"fn":1123,"description":1124,"org":1125,"tags":1126,"stars":1009,"repoUrl":1010,"updatedAt":1132},"skill-authoring","author agent skills for agentskills.io","Write Agent Skills that comply with the agentskills.io specification. WHEN: \"create a skill\", \"new skill\", \"write a skill\", \"skill template\", \"skill structure\", \"review skill\", \"skill PR\", \"skill compliance\", \"SKILL.md format\", \"skill frontmatter\", \"skill best practices\". DO NOT USE FOR: improving existing skills (use sensei), general documentation. INVOKES: waza CLI.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1127,1128,1131],{"name":1007,"slug":1008,"type":16},{"name":1129,"slug":1130,"type":16},"Plugin Development","plugin-development",{"name":1067,"slug":1068,"type":16},"2026-07-12T08:17:35.873862",109,{"items":1135,"total":1214},[1136,1151,1158,1168,1179,1188,1202],{"slug":1137,"name":1137,"fn":1138,"description":1139,"org":1140,"tags":1141,"stars":24,"repoUrl":25,"updatedAt":1150},"azure-functions-agents","build and deploy Azure Functions agents","Build, scaffold, extend, deploy, and troubleshoot Azure Functions serverless agents and event-driven AI agents using the Azure Functions serverless agents runtime. Use when the user says serverless agent, serverless agents, Azure Functions agent, scheduled agent, morning briefing, daily digest, timer agent, inbox summary, email or Teams briefing, background AI workflow, connector-triggered agent, event-driven AI automation, HTTP\u002Fchat agent, webhook-style agent, or Azure Functions hosted agent.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1142,1145,1146,1147],{"name":1143,"slug":1144,"type":16},"Agents","agents",{"name":11,"slug":8,"type":16},{"name":982,"slug":983,"type":16},{"name":1148,"slug":1149,"type":16},"Serverless","serverless","2026-07-12T08:19:28.200894",{"slug":4,"name":4,"fn":5,"description":6,"org":1152,"tags":1153,"stars":24,"repoUrl":25,"updatedAt":26},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1154,1155,1156,1157],{"name":11,"slug":8,"type":16},{"name":22,"slug":23,"type":16},{"name":18,"slug":19,"type":16},{"name":14,"slug":15,"type":16},{"slug":266,"name":266,"fn":1159,"description":1160,"org":1161,"tags":1162,"stars":24,"repoUrl":25,"updatedAt":1167},"reference Azure Functions documentation and configuration","Shared Azure Functions reference material for the Azure Functions skill suite: runtime\u002Flanguage routing, trigger\u002Fbinding extension references, official docs and repository pointers. Use only when another Azure Functions skill needs reusable language or binding context. Not intended as a standalone user-facing workflow.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1163,1164,1166],{"name":11,"slug":8,"type":16},{"name":1165,"slug":371,"type":16},"Configuration",{"name":1007,"slug":1008,"type":16},"2026-07-15T06:02:47.557542",{"slug":118,"name":118,"fn":1169,"description":1170,"org":1171,"tags":1172,"stars":24,"repoUrl":25,"updatedAt":1178},"scaffold Azure Functions projects and triggers","Scaffold a new Azure Functions project, or add a new function\u002Ftrigger to an existing project without re-initializing it",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1173,1174,1175],{"name":1000,"slug":1001,"type":16},{"name":11,"slug":8,"type":16},{"name":1176,"slug":1177,"type":16},"Edge Functions","edge-functions","2026-07-12T08:19:36.401016",{"slug":162,"name":162,"fn":1180,"description":1181,"org":1182,"tags":1183,"stars":24,"repoUrl":25,"updatedAt":1187},"deploy Azure Functions applications","Proxy Azure Functions deployment requests to the Azure Skills prepare, validate, and deploy workflow while preserving Azure Functions-specific guidance",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1184,1185,1186],{"name":11,"slug":8,"type":16},{"name":1050,"slug":1051,"type":16},{"name":982,"slug":983,"type":16},"2026-07-12T08:19:34.579423",{"slug":151,"name":151,"fn":1189,"description":1190,"org":1191,"tags":1192,"stars":24,"repoUrl":25,"updatedAt":1201},"diagnose and resolve Azure Functions issues","Use when diagnosing or resolving Azure Functions issues: deployment failures, runtime errors, trigger\u002Fbinding failures, language worker issues, telemetry\u002Flog analysis, known issue research, source investigation, and remediation. Acts as a facade that routes to focused Azure Functions skills and small language\u002Fextension references.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1193,1194,1195,1198],{"name":11,"slug":8,"type":16},{"name":1104,"slug":1105,"type":16},{"name":1196,"slug":1197,"type":16},"Logs","logs",{"name":1199,"slug":1200,"type":16},"Monitoring","monitoring","2026-07-12T08:19:30.738425",{"slug":1203,"name":1203,"fn":1204,"description":1205,"org":1206,"tags":1207,"stars":24,"repoUrl":25,"updatedAt":1213},"azure-functions-doctor","diagnose Azure Functions workspace configuration","Analyze local Azure Functions workspace code and configuration for common issues. Produces structured JSON findings for integration with the doctor CLI command. This skill targets local workspaces only — use azure-functions-diagnostics for deployed Azure resources.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1208,1209,1212],{"name":11,"slug":8,"type":16},{"name":1210,"slug":1211,"type":16},"Code Analysis","code-analysis",{"name":1104,"slug":1105,"type":16},"2026-07-15T06:02:46.335328",11]