Teams App Developer
Build, test, and deploy Teams and Microsoft 365 agents with ATK.
The skill explicitly forbids hardcoded secrets, asks users for missing configuration, and flags destructive migration options; however, provisioning, deployment, file movement, and telemetry tagging have limited confirmation, least-privilege, data-flow, and rollback guidance, so points are deducted.
It provides workflow routing, wait rules for long commands, background-process guidance, common error diagnostics, and restart advice; however, nothing was executed, key paths are not statically reproduced by the supplied material, some code and platform claims require validation, and abnormal-input failure feedback is limited, so points are deducted.
The audience, scenarios, and broad non-fit range are stated clearly, with useful triggers for Teams, Copilot, and Slack migration; however, the scope is very broad, semantic boundaries remain coarse, Chinese-language support is absent, and reachability of Teams, Azure, and Dev Tunnels from mainland-China networks is not addressed, so points are deducted.
The documentation is well layered across the main skill, sub-skills, shared references, and workflow chains, and includes a CLI version threshold, examples, limitations, and repository MIT metadata; however, the skill lacks a clear version, changelog, maintenance owner, and update path, and reference completeness is not fully established, so points are deducted.
It covers project creation, testing, deployment, troubleshooting, and Slack-to-Teams migration with many directly reusable commands, mappings, and code patterns; however, static review cannot establish that commands and examples run, and complex scenarios still require manual design, permissions, and validation, so direct-utility evidence is limited.
The supplied files contain auditable commands, code, limitation statements, and claims about deterministic routing, completeness, and pattern evaluations; however, no actual CI workflows, committed test suites, or third-party execution results were supplied, and nothing was executed in this review, so the score remains low.
- Before any atk provision or atk deploy operation, explicitly confirm Azure resources, permissions, costs, target environment, and a rollback plan.
- Telemetry tagging sends a skill-origin marker to the CLI; verify organizational telemetry policy and data-flow requirements.
- The documentation is broad, but examples were not executed in this static review; validate CLI versions, SDK APIs, Adaptive Card structures, and Graph permissions first.
- Reachability from mainland-China networks, tenant restrictions, and licensing requirements for Teams, Azure, Bot Framework, and Dev Tunnels are not addressed.
What it does & when to use it
Teams App Developer is a Microsoft 365 Agents Toolkit CLI skill for building Teams apps and Copilot agents. It covers project creation, local testing, Azure provisioning, cloud deployment, troubleshooting, and Slack-to-Teams migration. The skill recommends Agents Playground as the first local testing route and requires the relevant sub-skill document to be read before each workflow. It fits developers working with Teams, Copilot, and ATK, but not general web development or non-Teams projects.
It guides users through checking or installing the ATK CLI, setting ATK_CLI_SKILL, and using commands such as atk new, atk provision, and atk deploy to create, provision, and deploy projects. It explains how to start local services, test with Agents Playground or Teams, monitor background logs, and inspect env/.env.local, .localConfigs, and atk auth list. It also maps common failures such as AADSTS7000229, a missing TENANT_ID, persistent Bot Connector 401 responses, and potentially blacklisted devtunnel URLs to diagnostic actions.
- A Teams developer needs to scaffold a new Teams app or agent and test it locally.
- A Copilot developer wants to test an existing project in Agents Playground without Microsoft 365.
- An Azure developer needs to provision resources and deploy a Teams or Microsoft 365 app remotely.
- A bot engineer needs to diagnose authentication, YAML, port, or stale-bot failures.
- A Slack bot developer needs to migrate to Teams or convert Block Kit to Adaptive Cards.
Pros & cons
- Covers the Teams development path from project creation through local testing and Azure deployment.
- Provides a concrete Agents Playground-first testing strategy and troubleshooting signals.
- Supports Teams apps, Copilot agents, and Slack-to-Teams migration scenarios.
- Explicitly prohibits hardcoded secrets and invented environment values.
- Requires the Microsoft 365 Agents Toolkit CLI, shell access, and local configuration files.
- Its detailed workflows depend on sub-skill documents not included in the supplied material.
- The source does not provide independent test coverage or platform compatibility results for this individual skill.
- It explicitly excludes general web development and non-bot, non-Teams projects.
How to install
Install the collection with npx skills add microsoft/skills, then select the required skill in the wizard. Skills are installed in the selected agent directory, such as .github/skills/ for GitHub Copilot. This skill is located at .github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer/SKILL.md. If ATK is missing or is not newer than 1.1.5-beta, run npm i -g @microsoft/m365agentstoolkit-cli@beta.
How to use
Use a prompt such as “Create a Teams agent and test it first in Agents Playground” or “Troubleshoot this Teams bot’s 401 error.” Before executing a workflow, read its corresponding sub-skill document; before any atk command, run export ATK_CLI_SKILL=true. Wait for long-running commands such as atk new, atk provision, and atk deploy to finish. Run persistent services such as npm run dev, npm start, python app.py, and devtunnel host in the background, then launch Agents Playground or the Teams testing URL from a new terminal.
Compared to similar skills
The skill distinguishes Agents Playground from the Teams workflow: Agents Playground is recommended as the faster local testing option that does not require Microsoft 365, while the Teams workflow should be used when explicitly requested.