Slack To Teams
microsoft/work-iq
Sub-skill of microsoft-365-agents-toolkit. An agent skill from microsoft/work-iq.
Builds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot.
$ npx skills add microsoft/skills --skill teams-app-developer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install microsoft/skills teams-app-developer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .claude/skills/teams-app-developer && rm -rf skills-srcUse ~/.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/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .claude/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add microsoft/skills --skill teams-app-developer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install microsoft/skills teams-app-developer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .agents/skills/teams-app-developer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .agents/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microsoft/skills --skill teams-app-developer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install microsoft/skills teams-app-developer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .cursor/skills/teams-app-developer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .cursor/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/microsoft/skills.git --path .github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add microsoft/skills --skill teams-app-developer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install microsoft/skills teams-app-developer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .gemini/skills/teams-app-developer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .gemini/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install microsoft/skills teams-app-developerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add microsoft/skills --skill teams-app-developer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .github/skills/teams-app-developer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .github/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add microsoft/skills --skill teams-app-developer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install microsoft/skills teams-app-developer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/microsoft/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer .opencode/skills/teams-app-developer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "teams-app-developer" agent skill from https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer into .opencode/skills/teams-app-developer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "teams-app-developer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
teams-app-developerBuilds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot.
Teams App Developer is an agent skill from microsoft/skills, published by the product's own GitHub organization. Builds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot. Includes sub-skills for project creation, local testing, cloud deployment, troubleshooting, and Slack-to-Teams migration. USE FOR: Teams agent, bot, tab, message extension, Declarative Agents, Custom Engine Agents, local testing, Agents Playground, Azure resource provision, remote deployment, Slack to Teams migration, cross-platform bot development, Block Kit to Adaptive Cards conversion. DO NOT USE FOR: general web development…
Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 161 other files (for example `create-project/create-project.md`, `docs/README.md` and `docs/advanced-features.md`).
It sits in Documents & Office, covering Cloud office suites and Deployment. It works with Microsoft Teams, Microsoft Azure, Microsoft 365 and Slack. The repository describes itself as: Skills, MCP servers, Custom Agents, Agents.md for SDKs to ground Coding Agents. The licence is MIT.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 354361d. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
npmpythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
AZURE_OPENAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Teams App Developer loads about 1.9k tokens when it runs. Until then it costs about 140 tokens; SKILL.md has 651 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
ead error messages carefully. Check `env/.env.local`, `.localConfigs`, and `atk auth list`. Common pitfalls: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); files beside SKILL.md are not scanned.
The full file from microsoft/skills at commit 354361d, republished under its MIT licence (© microsoft). 651 words, ~1,933 tokens.
.claude/skills/teams-app-developer/SKILL.md (or your agent's skills folder). This skill also uses 157 other files; get the full folder from GitHub.Build Microsoft 365 agents and Teams apps using the ATK CLI.
Testing Strategy: Recommend Agents Playground first (faster, no M365 needed). Use Teams workflow only if user explicitly requests it.
Environment Variables: NEVER hardcode secrets or make up placeholder values. Always ask users for real values.
Error Handling: Read error messages carefully. Check env/.env.local, .localConfigs, and atk auth list. Common pitfalls:
AADSTS7000229 → aadApp/create missing generateServicePrincipal: true in YAML — add it and re-provisionTENANT_ID in .localConfigs → SDK uses wrong token authority → 401 from Bot ConnectorLong-Running Commands — WAIT for completion:
atk new, atk provision, atk deploy can take several minutesLocal Service Startup — Hangs terminal (expected):
npm run dev, npm start, python app.py, devtunnel host, etc. will hang — the process keeps running indefinitelyisBackground=true) — NEVER use isBackground=false for these commandsMonitor App Logs: Periodically check background terminal output for runtime errors. If the app crashes, read the error, fix the root cause, and restart.
Telemetry Tagging: Before running any atk CLI commands, set the session environment variable so all CLI invocations are tagged as skill-initiated:
export ATK_CLI_SKILL=trueRun this once at the start of the session. All subsequent atk commands in the same terminal will inherit it.
atk --version # Must be > 1.1.5-betaIf ATK is not found or version is too old:
npm i -g @microsoft/m365agentstoolkit-cli@beta| Option | Meaning | Recommendation |
|---|---|---|
-i | Interactive mode | Always use -i false in automation to avoid hanging |
-f | Project folder | Default to be current directory, used when specifying a custom folder. When scaffolding a new project, this is the parent folder where the project folder will be created under. |
-h | Command help | Use atk <command> -h for quick syntax checks |
| Sub-Skill | When to Use | Reference |
|---|---|---|
| create-project | Scaffold new project from template, choose template, atk new | create-project/create-project.md |
| test-playground | Test locally with Agents Playground, agentsplayground, quick testing | test-playground/test-playground.md |
| test-teams | Run on Teams, devtunnel, sideload, Teams testing, test in Copilot | test-teams/test-teams.md |
| provision-deploy | Provision Azure resources, deploy to cloud, atk provision, atk deploy | provision-deploy/provision-deploy.md |
| troubleshoot | Fix errors, 401, port conflicts, YAML errors, stale bots | troubleshoot/troubleshoot.md |
| slack-to-teams | Migrate Slack bot to Teams, cross-platform bridging, Block Kit to Adaptive Cards | slack-to-teams/SKILL.md |
MANDATORY: Before executing any workflow, read the corresponding sub-skill document.
Match user intent to the smallest valid workflow.
| User Intent | Workflow (read in order) |
|---|---|
| Build new app from scratch | create-project → test-playground |
| Test existing project locally | test-playground (recommended) or test-teams |
| Deploy to Azure | provision-deploy |
| Fix broken bot | troubleshoot → re-test |
| Migrate Slack bot to Teams | slack-to-teams |
MANDATORY: Before executing any slack-to-teams workflow, read slack-to-teams/SKILL.md first. The sub-skill contains a routed expert system with 100+ micro-expert files for cross-platform bot development.
Resolve config values only when missing. If a value is already known in the session, reuse it.
If m365agentstoolkit*.yml exists in the current folder, treat it as an ATK project and parse configuration.
Resolve variables referenced in m365agentstoolkit*.yml. Common variables:
AZURE_OPENAI_API_KEY
AZURE_OPENAI_ENDPOINT
AZURE_OPENAI_DEPLOYMENT_NAME
If required values are missing, ask the user for only the missing ones.
Refer to manifest-and-yaml.md for full config-file details.
© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 157 other files in .github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer of microsoft/skills.
Open the folder on GitHubat commit 354361d
Teams App Developer 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Teams App Developer this skillmicrosoft/skills | 3.1k | — | ~1.9k | Automated safety check: Notes | MIT | |
| Slack To Teamsmicrosoft/work-iq | 1k | 1 repos | ~2.3k | Automated safety check: Pass | Custom licence | |
| Teams App Developermicrosoft/work-iq | 1k | — | ~1.8k | Automated safety check: Notes | Custom licence | |
| M365 Agent Evaluatormicrosoft/work-iq | 1k | — | ~2k | Automated safety check: Notes | Custom licence | |
| Microsoft 365 Agents ToolkitOfficeDev/microsoft-365-agents-toolkit | 781 | — | ~2.8k | Automated safety check: Notes | Custom licence | |
| Spfx Releasepnp/docker-spfx | 134 | — | ~572 | Automated safety check: Notes | MIT |
microsoft/work-iq
Sub-skill of microsoft-365-agents-toolkit. An agent skill from microsoft/work-iq.
microsoft/work-iq
Build, test, and deploy code-based Teams apps using the M365 Agents Toolkit CLI.
microsoft/work-iq
A skill your agent uses when a user wants to create, run, or analyze evaluation suites for Microsoft 365 Copilot declarative agents with the public @microsoft/m365-copilot-eval CLI.
OfficeDev/microsoft-365-agents-toolkit
Builds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot.
pnp/docker-spfx
Automate SPFx version releases - branch, update files, commit, open PR, then tag after merge
github/awesome-copilot
Create Agent Users in Microsoft Entra ID from Agent Identities, enabling AI agents to act as digital workers with user identity capabilities in Microsoft 365 and Azure environments.
microsoft/skills
Reference for building on Microsoft Foundry with the azure-ai-projects Python SDK: project clients, versioned agents, evaluations, connections, datasets and indexes.
microsoft/skills
Python guidance for the Azure AI Search SDK covering vector, hybrid and semantic search, index management and indexers, with Entra ID authentication preferred over keys.
microsoft/skills
Covers producer, consumer, and checkpoint-store setup for Azure Event Hubs streaming in Python, with Entra ID auth and partition targeting.
microsoft/skills
Create Pydantic models following the multi-model pattern with Base, Create, Update, Response, and InDB variants.
microsoft/skills
Builds podcast-style audio narration from text with Azure OpenAI's GPT Realtime Mini over WebSocket, from a Python FastAPI backend to a React player.
microsoft/skills
Build dark-themed React applications using Tailwind CSS with custom theming, glassmorphism effects, and Framer Motion animations.
Categories
Builds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot. Teams App Developer is an agent skill from microsoft/skills, published by the product's own GitHub organization. Builds, tests, and deploys Microsoft 365 apps and agents for Teams and Copilot.
Teams App Developer fits situations like: message extension; declarative Agents; custom Engine Agents; agents Playground.
Run `npx skills add microsoft/skills --skill teams-app-developer -a claude-code`. Or copy the skill folder (.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer in microsoft/skills) into .claude/skills/teams-app-developer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add microsoft/skills --skill teams-app-developer -a codex`. Or copy the skill folder (.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer in microsoft/skills) into .agents/skills/teams-app-developer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/skills --skill teams-app-developer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/teams-app-developer, .gemini/skills/teams-app-developer, .github/skills/teams-app-developer and .opencode/skills/teams-app-developer in your project.
Going by SKILL.md and its folder, Teams App Developer needs the command-line tools its instructions call (npm and python) and credentials named AZURE_OPENAI_API_KEY. Our summary lists: Python 3; Node.js; A credential in AZURE_OPENAI_API_KEY.
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Teams App Developer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Teams App Developer: Slack To Teams (microsoft/work-iq, 1k stars), Teams App Developer (microsoft/work-iq, 1k stars), M365 Agent Evaluator (microsoft/work-iq, 1k stars) and Microsoft 365 Agents Toolkit (OfficeDev/microsoft-365-agents-toolkit, 781 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
microsoft (a GitHub organization, an official publisher) maintains it in microsoft/skills, which has 3,086 GitHub stars. The repository holds 150 skills in this directory. The repository was last updated on October 6, 2026.
Source: microsoft/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.