Official agent skill

Python Appservice Deploy

by microsoft in microsoft/GitHub-Copilot-for-Azure

Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux.

OfficialMITAuto-check passedBackend & APIs

Install Python Appservice Deploy

skills CLI
$ npx skills add microsoft/GitHub-Copilot-for-Azure --skill python-appservice-deploy -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install microsoft/GitHub-Copilot-for-Azure python-appservice-deploy --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/azure-skills/skills/python-appservice-deploy .claude/skills/python-appservice-deploy && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
python-appservice-deploy
GitHub stars
255
Used in
1 other repo
Token cost
~688 tokens
SKILL.md length
261 words
Files
14 (incl. scripts, references)
Skills in repo
56
Repo updated
First seen
Licence
MIT

At a glance

Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux.

  • Works in 8 steps: Resolve context — smart defaults,… → Detect framework (advisory, never… → Choose path — azure.yaml host:… → …
  • : Container Apps
  • SKILL.md covers Workflow and Error Handling
  • Runs PowerShell and Shell scripts from its folder; calls az and python

What it does

Python Appservice Deploy is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux. WHEN: "Flask App Service", "Django App Service", "FastAPI App Service", "deploy Python to App Service". DO NOT USE FOR: Container Apps, Functions, non-Python, Terraform/Bicep/IaC, full infra — use azure-prepare.

Its SKILL.md is about 690 tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts and reference files (for example `references/create-app.md`, `references/deploy-azcli.md` and `references/deploy-azd.md`).

It sits in Backend & APIs, covering Backend development and Infrastructure as code. It works with Python, Microsoft Azure, Flask and Django. The repository describes itself as: GitHub Copilot for Azure. The licence is MIT.

When your agent uses it

  • : Container Apps
  • Terraform/Bicep/IaC
  • Full infra — use azure-prepare

Example prompts

  • “Flask App Service”
  • “Django App Service”
  • “FastAPI App Service”
  • “/python-appservice-deploy”

Requirements

  • Python 3
  • A Bash shell
  • PowerShell

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Resolve context — smart defaults, minimal prompts. Only the app name is interactive; RG (-rg), Plan (-plan), region (current az default or…
  2. Detect framework (advisory, never blocks). detect.md.
  3. Choose path — azure.yaml host: appservice → deploy-azd.md; else deploy-azcli.md.
  4. Ensure RG → Plan (P0v3 --is-linux) → Web App (--runtime "PYTHON:3.14") exist. On transient ARM errors, follow transient-retry.md…
  5. Set startup — Flask/Django: none (Oryx auto-detects). FastAPI: always python -m uvicorn main:app --host 0.0.0.0. Other: warn…
  6. Set SCM_DO_BUILD_DURING_DEPLOYMENT=true.
  7. Deploy — azd deploy or az webapp deploy --type zip --track-status false.
  8. STOP. Print the post-deploy message (post-deploy-message.md) and end the turn.

What it can do on your machine

Read from SKILL.md and the folder at commit d8f4f4e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (PowerShell and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • az
    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use az, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Python Appservice Deploy loads about 688 tokens when it runs, and up to ~8.7k if it reads all its reference files. Until then it costs about 77 tokens; SKILL.md has 261 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~77
When it runs · the whole SKILL.md, loaded when a task matches
~688
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from microsoft/GitHub-Copilot-for-Azure at commit d8f4f4e, republished under its MIT licence (© microsoft). 261 words, ~688 tokens.

Download SKILL.mdSave it as .claude/skills/python-appservice-deploy/SKILL.md (or your agent's skills folder). This skill also uses 13 other files; get the full folder from GitHub.
name
python-appservice-deploy
description
Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux. WHEN: "Flask App Service", "Django App Service", "FastAPI App Service", "deploy Python to App Service". DO NOT USE FOR: Container Apps, Functions, non-Python, Terraform/Bicep/IaC, full infra — use azure-prepare.
license
MIT
metadata.author
Microsoft
metadata.version
0.0.0-placeholder

Python on Azure App Service — Code Deploy

Deploys Python (Flask, Django, FastAPI, generic) code to Azure App Service Linux (P0v3, Python 3.14). Creates RG + Plan + Web App if missing. Hand off to azure-prepare for VNet, Key Vault, databases, or IaC.

MCP tools used: mcp_azure_mcp_subscription_list, mcp_azure_mcp_group_list, mcp_azure_mcp_appservice, mcp_azure_mcp_azd (when azure.yaml is present).

Workflow

  1. Resolve context — smart defaults, minimal prompts. Only the app name is interactive; RG (<app>-rg), Plan (<app>-plan), region (current az default or eastus2), subscription are derived. create-app.md §1.
  2. Detect framework (advisory, never blocks). detect.md.
  3. Choose path — azure.yaml host: appservice → deploy-azd.md; else deploy-azcli.md.
  4. Ensure RG → Plan (P0v3 --is-linux) → Web App (--runtime "PYTHON:3.14") exist. On transient ARM errors, follow transient-retry.md. create-app.md.
  5. Set startup — Flask/Django: none (Oryx auto-detects). FastAPI: always python -m uvicorn main:app --host 0.0.0.0. Other: warn. startup-commands.md.
  6. Set SCM_DO_BUILD_DURING_DEPLOYMENT=true.
  7. Deploy — azd deploy or az webapp deploy --type zip --track-status false.
  8. STOP. Print the post-deploy message (post-deploy-message.md) and end the turn.
Hard rules
  • ⛔ NO POST-DEPLOY VERIFICATION — after deploy returns, do not run az webapp log tail, curl, Invoke-WebRequest, or any health probe. App Service needs 2–3 min to warm; a quiet log or early 5xx is not failure.
  • ⛔ SHELL SAFETY — for --runtime always use "PYTHON:3.14" (colon). Never "PYTHON|3.14" (pipe is a shell operator).
  • ⛔ NEVER az webapp up — deprecated. Use Step 7 commands.
  • ✅ URL FORMAT — present endpoints as https://... URLs.

Error Handling

See errors.md for the full symptom → cause → fix matrix. Quick triage: missing plan/app → re-run Step 4; container ping timeout on 8000 → fix startup (Step 5); ModuleNotFoundError after deploy → ensure Step 6 ran, redeploy.

© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 13 other files (scripts, references) in plugins/azure-skills/skills/python-appservice-deploy of microsoft/GitHub-Copilot-for-Azure.

  • SKILL.md
  • references/create-app.md
  • references/deploy-azcli.md
  • references/deploy-azd.md
  • references/detect.md
  • references/errors.md
  • references/post-deploy-message.md
  • references/startup-commands.md
  • references/transient-retry.md
  • scripts/generate-app-name.ps1
  • scripts/generate-app-name.sh
  • scripts/retry-az-create.ps1
  • scripts/retry-az-create.sh
  • version.json

Open the folder on GitHubat commit d8f4f4e

Used in 3 other repositories

We found 4 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in microsoft/GitHub-Copilot-for-Azure, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Python Appservice Deploy next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Python Appservice Deploy compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Python Appservice Deploy this skillmicrosoft/GitHub-Copilot-for-Azure2551 repos~688Automated safety check: PassMIT
Fix Slow Endpointvpcarlos/profyle123—~2.1kAutomated safety check: PassMIT
Framework Migration AssistantArabelaTso/Skills-4-SE253—~1.9kAutomated safety check: PassApache-2.0
Sentry Python SDKgetsentry/sentry-for-ai268—~4.1kAutomated safety check: PassApache-2.0
Otel Pythonollygarden/opentelemetry-agent-skills1061 repos~911Automated safety check: PassApache-2.0
Python Devdoccker/cc-use-exp1.1k—~790Automated safety check: PassCustom licence

Similar skills

  • Fix Slow Endpoint

    vpcarlos/profyle

    Diagnose and fix a slow endpoint or request in a Python web app (FastAPI, Flask, Django, Tornado, any ASGI/WSGI framework) using real Profyle/VizTracer traces, then prove the fix by replaying the…

    123 GitHub stars~2.1k tokensUpdated 2 days ago
    Backend & APIsAuto-check passed
  • Framework Migration Assistant

    ArabelaTso/Skills-4-SE

    Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).

    253 GitHub stars~1.9k tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Sentry Python SDK

    getsentry/sentry-for-ai

    Official

    Full Sentry SDK setup for Python. An agent skill from getsentry/sentry-for-ai.

    268 GitHub stars~4.1k tokensUpdated today
    Backend & APIsAuto-check passed
  • Otel Python

    ollygarden/opentelemetry-agent-skills

    OpenTelemetry in Python — SDK setup, declarative config, zero-code instrumentation (opentelemetry-instrument, opentelemetry-distro), contrib auto-instrumentation, manual API, performance tuning…

    106 GitHub starsUsed in 1 repo~911 tokens
    DevOps & CloudAuto-check passed
  • Python Dev

    doccker/cc-use-exp

    Python 开发规范。当用户操作 .py、pyproject.toml、requirements.txt、setup.py 文件, 或涉及 FastAPI、Django、Flask、pytest、asyncio 开发时触发。

    1.1k GitHub stars~790 tokensUpdated 1 mo ago
    Backend & APIsAuto-check passed
  • Fastapi Templates

    jh941213/my-cc-harness

    Production-grade FastAPI project creation and setup guide. An agent skill from jh941213/my-cc-harness.

    126 GitHub stars~945 tokensUpdated 2 mo ago
    Backend & APIsAuto-check passed

More from microsoft/GitHub-Copilot-for-Azure

All 56 skills in this repo
  • Capacity

    microsoft/GitHub-Copilot-for-Azure

    Official

    Discovers available Azure OpenAI model capacity across regions and projects.

    255 GitHub starsUsed in 2 repos~1.7k tokens
    Auto-check passed
  • Deploy Model

    microsoft/GitHub-Copilot-for-Azure

    Official

    Unified Azure OpenAI model deployment skill with intelligent intent-based routing.

    255 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Entra Agent Id

    microsoft/GitHub-Copilot-for-Azure

    Official

    Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant)…

    255 GitHub starsUsed in 3 repos~4k tokens
    Auto-check passed
  • Microsoft Foundry

    microsoft/GitHub-Copilot-for-Azure

    Official

    Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.

    255 GitHub starsUsed in 1 repo~6.7k tokens
    Auto-check passed
  • Azure Storage

    microsoft/GitHub-Copilot-for-Azure

    Official

    Azure Storage Services including Blob Storage, File Shares, Queue Storage, Table Storage, and Data Lake.

    255 GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check passed
  • Azure Diagnostics

    microsoft/GitHub-Copilot-for-Azure

    Official

    Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage.

    255 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Questions about Python Appservice Deploy

What does Python Appservice Deploy do?

Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux. Python Appservice Deploy is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux.

When should I use Python Appservice Deploy?

Python Appservice Deploy fits situations like: : Container Apps; terraform/Bicep/IaC; full infra — use azure-prepare.

How do I install Python Appservice Deploy in Claude Code?

Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill python-appservice-deploy -a claude-code`. Or copy the skill folder (plugins/azure-skills/skills/python-appservice-deploy in microsoft/GitHub-Copilot-for-Azure) into .claude/skills/python-appservice-deploy in your project. Claude Code loads it when a task matches its description.

How do I install Python Appservice Deploy in Codex?

Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill python-appservice-deploy -a codex`. Or copy the skill folder (plugins/azure-skills/skills/python-appservice-deploy in microsoft/GitHub-Copilot-for-Azure) into .agents/skills/python-appservice-deploy in your project. Codex loads it when a task matches its description.

Can I use Python Appservice Deploy in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill python-appservice-deploy -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/python-appservice-deploy, .gemini/skills/python-appservice-deploy, .github/skills/python-appservice-deploy and .opencode/skills/python-appservice-deploy in your project.

What does Python Appservice Deploy need to run?

Going by SKILL.md and its folder, Python Appservice Deploy needs PowerShell and a shell for the scripts in its folder and the command-line tools its instructions call (az and python). Our summary lists: Python 3; A Bash shell; PowerShell.

Does Python Appservice Deploy access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Python Appservice Deploy safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Python Appservice Deploy use?

Python Appservice Deploy is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Python Appservice Deploy use?

About 688 tokens (SKILL.md is roughly 2.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.1k tokens, read only when the agent opens those files.

What are the alternatives to Python Appservice Deploy?

Skills that share tags, products or a category with Python Appservice Deploy: Fix Slow Endpoint (vpcarlos/profyle, 123 stars), Framework Migration Assistant (ArabelaTso/Skills-4-SE, 253 stars), Sentry Python SDK (getsentry/sentry-for-ai, 268 stars) and Otel Python (ollygarden/opentelemetry-agent-skills, 106 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Python Appservice Deploy?

microsoft (a GitHub organization, an official publisher) maintains it in microsoft/GitHub-Copilot-for-Azure, which has 255 GitHub stars. The repository holds 56 skills in this directory. The repository was last updated on October 7, 2026.

Source: microsoft/GitHub-Copilot-for-Azure on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.