SkillAgentSearch skills...

slack-to-teams

Sub-skill of microsoft-365-agents-toolkit. Routed expert system with 100+ micro-expert files for migrating Slack bots to Teams, cross-platform bridging, and dual-platform bot development.

Install / Use

npx skills add microsoft/skills --skill slack-to-teams

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

86/100

Supported Platforms

Universal

Our assessment of slack-to-teams

slack-to-teams scores 86/100 on our quality scale, 187th of 306 Communication skills we index.

Its SKILL.md is 8.8 KB long, well organised into 20 sections and no code examples: a thorough specification that gives an agent plenty to work with.

With 3,051 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
29/30
Structure
13/20
Description
15/15
Adoption
15/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 5 days ago, so slack-to-teams is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

slack-to-teams compared with similar skills

All 4 of these similar skills score higher than slack-to-teams; compare them before choosing.

SkillScoreStarsUpdatedFormat
slack-to-teams (this skill)by microsoft863.1k5d agoSKILL.md
algorithmic-artby anthropics100177.9k6d agoSKILL.md
pptxby anthropics100177.9k6d agoSKILL.md
designby nextlevelbuilder100130.2k7d agoSKILL.md
ui-ux-pro-maxby nextlevelbuilder100130.2k7d agoSKILL.md

Frequently asked questions

How do I install slack-to-teams?
Run npx skills add microsoft/skills --skill slack-to-teams. The install tabs above show the steps for each supported agent.
Which AI agents does slack-to-teams work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is slack-to-teams safe to use?
It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is slack-to-teams still maintained?
The repository was last updated 5 days ago, so slack-to-teams is actively maintained.

name: slack-to-teams description: "Sub-skill of microsoft-365-agents-toolkit. Routed expert system with 100+ micro-expert files for migrating Slack bots to Teams, cross-platform bridging, and dual-platform bot development. USE FOR: migrating Slack bot to Teams, adding Teams support to Slack bot, building dual-platform bots, converting Block Kit to Adaptive Cards, identity/OAuth bridging, deploying bots to Azure or AWS, configuring AI model providers. DO NOT USE FOR: general web development, non-bot projects, standalone Teams development without Slack (use parent skill instead)."

Slack to Teams Expert System

A routed expert system with 100+ micro-expert files for migrating Slack bots to Teams and building cross-platform bots.

Parent skill: For ATK CLI setup and routing, see ../SKILL.md. For local testing, see ../test-playground/test-playground.md or ../test-teams/test-teams.md. For cloud deploy, see ../provision-deploy/provision-deploy.md. For troubleshooting, see ../troubleshoot/troubleshoot.md.

When to Use

  • Building a new Slack bot, Teams bot, or dual-platform bot
  • Adding Teams support to an existing Slack bot (or vice versa)
  • Migrating a bot between platforms
  • Deploying a bot to Azure or AWS
  • Configuring AI model providers for a bot
  • Converting UI between Block Kit and Adaptive Cards
  • Bridging identity, events, files, or transport between platforms
  • Making a Teams bot project compatible with Microsoft Agents Toolkit (m365agents.yml, env/, appPackage placeholders)

Procedure

Step 1: Determine project type

Assess whether the developer has an existing codebase or is starting fresh.


New Project Flow

1a: Platform selection

Ask the developer which platform(s) to support:

  • Slack + Teams (dual-platform)
  • Slack only
  • Teams only

1b: Load the expert system

  1. Read experts/index.md — the root router.
  2. Execute the pre-task interview defined in that file.
  3. Route based on platform choice:

1c: Architecture setup

  1. Read cross-platform-architecture (even for single-platform — establishes patterns for adding a second platform later).
  2. Let the domain router and advisor take over.
  3. Write a PLAN.md in the target project root with platform, features, experts loaded.

1d: Implementation

Follow the advisor's or domain router's output. Implement feature by feature:

  1. Pick the next feature from the prioritized list.
  2. Load the expert(s) specified for that feature.
  3. Implement using the expert's patterns and rules.
  4. Verify against the expert's pitfalls section.

Existing Project Flow

2a: Analyze the project

Run these four sub-analyses in parallel:

Detect language — Scan for package.json+tsconfig.json (TypeScript), pom.xml/build.gradle (Java), *.csproj/*.sln (C#), go.mod (Go), requirements.txt/pyproject.toml (Python), Gemfile (Ruby), Cargo.toml (Rust).

Detect current platform — Scan dependencies for SDK indicators:

  • Slack: @slack/bolt, @slack/web-api, slack_bolt, app.message, app.command, ack()
  • Teams: @microsoft/teams-ai, botbuilder, TeamsActivityHandler, app.turn, Adaptive Cards

Detect features — Scan for slash commands, Block Kit/Adaptive Cards, action handlers, OAuth, file upload/download, scheduling, threading, AI/LLM calls, proactive messages.

Detect architecture — Scan for web framework (Express, Fastify, etc.), hosting target (Azure, AWS, Docker), cloud provider, architecture pattern (single bot, dual-bot, monolith).

2b: Language gate

Classify the detected language into SDK tiers:

| Tier | Languages | Guidance | |---|---|---| | 1: Full SDK | TypeScript / JavaScript | Full expert system available | | 2: Adapt | Python | Both SDKs exist — adapt TS patterns. Load bolt-python, teams-python, python-cross-platform | | 3: Split SDK | Java, C# | One platform has SDK, other needs REST. Load bolt-java or teams-dotnet + rest-only | | 4: No SDK | Go, Ruby, Rust | REST-only for both. Load rest-only |

2c: Expert coverage gap analysis

  1. Read experts/analyzer.md.
  2. Execute the analyzer workflow: scan manifests, dependencies, source files.
  3. Cross-reference detected tech against existing experts.
  4. Present gap analysis — covered vs uncovered technologies.

2d: Build missing experts (if needed)

  1. Read experts/builder.md.
  2. For each gap: analyze project usage → read package source → draft expert → validate → wire into routing.
  3. Use experts/_expert-ts.md as the template.

2e: Load the expert system

  1. Read experts/index.md — the root router.
  2. Execute the pre-task interview, pre-filling with analysis results from 2a.
  3. Route based on detected platform and task intent:
    • Has Slack, wants Teams → Bridge domain
    • Has Teams, wants Slack → Bridge domain
    • Has both → Route by task (bridge refinement, deploy, models, etc.)
    • Has neither → Ask which platform(s) to target
  4. Load cross-platform-advisor if bridging. Feed analysis results into Phase 1.

2f: Architecture and implementation

  1. Read cross-platform-architecture.
  2. Write a PLAN.md with analysis results, routing decisions, and feature migration order.
  3. Implement feature by feature using the advisor's prioritized list.

Agents Toolkit Compatibility

For ATK-compatible project structure (m365agents.yml, env/ files, appPackage), see the parent skill:

For Teams manifest schema and packaging, see runtime.manifest-ts.

Error Recovery

If the expert system fails to cover a topic:

  1. Read experts/fallback.md.
  2. Phase 1: Re-scan all domain routers for missed experts.
  3. Phase 2: Web-search for remaining knowledge gaps.
  4. Consider creating a new expert using experts/builder.md.

Expert Domains

| Domain | Index | Description | |---|---|---| | Slack | experts/slack/index.md | Bolt framework, events, OAuth, commands, UI, CLI | | Teams | experts/teams/index.md | Teams AI SDK, Adaptive Cards, Graph, MCP, A2A, deploy | | Bridge | experts/bridge/index.md | 27 cross-platform conversion experts (the core differentiator) | | Deploy | experts/deploy/index.md | Azure & AWS deployment walkthroughs | | Models | experts/models/index.md | AI model providers (OpenAI, Anthropic, Bedrock, etc.) | | Convert | experts/convert/index.md | Language conversion to TypeScript | | Security | experts/security/index.md | Input validation, secrets management |

Platform Comparison Docs

Reference guides for side-by-side platform comparison:

Related Skills

View on GitHub
GitHub Stars3.1k
CategoryCommunication
Updated5d ago
Forks349

Languages

TypeScript

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions