Option
HeimHeim Skill API-Entwicklung slack-to-teams

slack-to-teams

microsoft/skills microsoft/skills

Migrieren Sie Slack-Bots zu Microsoft Teams, erstellen Sie plattformübergreifende Bots und konvertieren Sie zwischen Block Kit und Adaptive Cards unter Verwendung eines routengesteuerten Expertensystems mit über 100 Micro-Expert-Dateien.

...Alle erweitern
35
Zeit aktualisiert 19. September 2026

Slack-zu-Teams-Expertensystem

Ein routendes Expertensystem mit über 100 Mikro-Expertendateien zur Migration von Slack-Bots zu Teams und zum Aufbau plattformübergreifender Bots.

Übergeordnete Fähigkeit: Für ATK-CLI-Einrichtung und Routing siehe ../SKILL.md. Für lokale Tests siehe ../test-playground/test-playground.md oder ../test-teams/test-teams.md. Für Cloud-Bereitstellung siehe ../provision-deploy/provision-deploy.md. Für Fehlerbehebung siehe ../troubleshoot/troubleshoot.md.

Wann ist es anzuwenden?

  • Erstellung eines neuen Slack-Bots, Teams-Bots oder plattformübergreifenden Bots
  • Hinzufügen der Teams-Unterstützung zu einem vorhandenen Slack-Bot (oder umgekehrt)
  • Migration eines Bots zwischen Plattformen
  • Bereitstellung eines Bots in Azure oder AWS
  • Konfiguration von KI-Modellanbietern für einen Bot
  • Konvertierung der Benutzeroberfläche zwischen Block Kit und Adaptive Cards
  • Brückenschlag von Identität, Ereignissen, Dateien oder Transport zwischen Plattformen
  • Kompatibilität eines Teams-Bot-Projekts mit dem Microsoft Agents Toolkit (m365agents.yml, env/, appPackage-Platzhalter)

Verfahren

Schritt 1: Projekttyp bestimmen

Beurteilen Sie, ob der Entwickler über einen bestehenden Codebase verfügt oder von Grund auf neu beginnt.

  • Neues Projekt → Gehen Sie zum New-Project-Flow
  • Bestehendes Projekt → Gehen Sie zum Existing-Project-Flow

New-Project-Flow

1a: Plattformauswahl

Fragen Sie den Entwickler, welche Plattform(en) unterstützt werden sollen:

  • Slack + Teams (plattformübergreifend)
  • Nur Slack
  • Nur Teams

1b: Laden des Expertensystems

  1. Lesen Sie experts/index.md — den Root-Router.
  2. Führen Sie das in dieser Datei definierte Vor-Aufgaben-Interview aus.
  3. Routen basierend auf der Plattformwahl:
    • Slack + Teams → Lesen Sie experts/bridge/index.md. Laden Sie cross-platform-advisor.
    • Nur Slack → Lesen Sie experts/slack/index.md.
    • Nur Teams → Lesen Sie experts/teams/index.md.

1c: Architektursetup

  1. Lesen Sie cross-platform-architecture (auch für Single-Platform — etabliert Muster für das spätere Hinzufügen einer zweiten Plattform).
  2. Überlassen Sie dem Domain-Router und -Berater die weitere Steuerung.
  3. Erstellen Sie eine PLAN.md im Stammverzeichnis des Zielprojekts mit Plattform, Funktionen und geladenen Experten.

1d: Implementierung

Folgen Sie der Ausgabe des Beraters oder Domain-Routers. Implementieren Sie Funktion für Funktion:

  1. Wählen Sie die nächste Funktion aus der priorisierten Liste.
  2. Laden Sie den/die für diese Funktion angegebenen Experten.
  3. Implementieren Sie unter Verwendung der Muster und Regeln des Experten.
  4. Überprüfen Sie gegen den Abschnitt mit den Fallstricken des Experten.

Existing-Project-Flow

2a: Projektanalyse

Führen Sie diese vier Unteranalysen parallel durch:

Sprache erkennen — Scannen Sie nach 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).

Aktuelle Plattform erkennen — Scannen Sie Abhängigkeiten nach SDK-Anzeichen:

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

Funktionen erkennen — Scannen Sie nach Slash-Befehlen, Block Kit/Adaptive Cards, Action-Handlern, OAuth, Datei-Upload/-Download, Zeitplanung, Threadung, KI/LLM-Aufrufen, proaktiven Nachrichten.

Architektur erkennen — Scannen Sie nach Web-Framework (Express, Fastify usw.), Hosting-Ziel (Azure, AWS, Docker), Cloud-Anbieter, Architekturmuster (Single-Bot, Dual-Bot, Monolith).

2b: Sprachtor

Klassifizieren Sie die erkannte Sprache in SDK-Stufen:

StufeSprachenRatschläge
**1: Vollständiges SDK**TypeScript / JavaScriptVollständiges Expertensystem verfügbar
**2: Anpassen**PythonBeide SDKs vorhanden — TS-Muster anpassen. Laden Sie bolt-python, teams-python, python-cross-platform
**3: Geteiltes SDK**Java, C#Eine Plattform hat SDK, andere benötigt REST. Laden Sie bolt-java oder teams-dotnet + rest-only
**4: Kein SDK**Go, Ruby, RustNur REST für beide. Laden Sie rest-only

2c: Lückenanalyse der Expertenabdeckung

  1. Lesen Sie experts/analyzer.md.
  2. Führen Sie den Analyzer-Workflow aus: Scannen Sie Manifeste, Abhängigkeiten, Quelldateien.
  3. Vergleichen Sie die erkannte Technologie mit vorhandenen Experten.
  4. Präsentieren Sie die Lückenanalyse — abgedeckte vs. nicht abgedeckte Technologien.

2d: Fehlende Experten erstellen (falls erforderlich)

  1. Lesen Sie experts/builder.md.
  2. Für jede Lücke: Analysieren Sie die Projektverwendung → Lesen Sie den Paketquellcode → Entwerfen Sie Experten → Validieren → In das Routing einbinden.
  3. Verwenden Sie experts/_expert-ts.md als Vorlage.

2e: Laden des Expertensystems

  1. Lesen Sie experts/index.md — den Root-Router.
  2. Führen Sie das Vor-Aufgaben-Interview aus, vorab gefüllt mit den Analyseergebnissen aus 2a.
  3. Routen basierend auf der erkannten Plattform und Aufgabenabsicht:
    • Hat Slack, möchte Teams → Bridge-Domain
    • Hat Teams, möchte Slack → Bridge-Domain
    • Hat beide → Routen nach Aufgabe (Bridge-Verfeinerung, Bereitstellung, Modelle usw.)
    • Hat keine → Fragen Sie, welche Plattform(en) angestrebt werden sollen.
  4. Laden Sie cross-platform-advisor bei Brückenschaltung. Füttern Sie die Analyseergebnisse in Phase 1.

2f: Architektur und Implementierung

  1. Lesen Sie cross-platform-architecture.
  2. Erstellen Sie eine PLAN.md mit Analyseergebnissen, Routing-Entscheidungen und Reihenfolge der Funktionsmigration.
  3. Implementieren Sie Funktion für Funktion unter Verwendung der priorisierten Liste des Beraters.

Kompatibilität mit dem Agents Toolkit

Für ATK-kompatible Projektstruktur (m365agents.yml, env/-Dateien, appPackage) siehe die übergeordnete Fähigkeit:

  • Übergeordnete SKILL.md — ATK-CLI-Einrichtung, Sub-Fähigkeiten-Routing, Workflow-Ketten
  • manifest-and-yaml.md — Projektdateien, YAML-Konfiguration, Umgebungsvariablen, .localConfigs-Flow
  • commands.md — Paketieren, Validieren, Teilen, Zusammenarbeiten, Umgebungsverwaltung
  • templates.md — Alle Vorlagen mit Sprachunterstützung

Für Teams-Manifestschema und Paketierung siehe runtime.manifest-ts.

Fehlerbehebung

Wenn das Expertensystem ein Thema nicht abdecken kann:

  1. Lesen Sie experts/fallback.md.
  2. Phase 1: Scannen Sie alle Domain-Router erneut auf verpasste Experten.
  3. Phase 2: Websuche nach verbleibenden Wissenslücken.
  4. Erwägen Sie die Erstellung eines neuen Experten unter Verwendung von experts/builder.md.

Experten-Domänen

DomainIndexBeschreibung
Slackexperts/slack/index.mdBolt-Framework, Ereignisse, OAuth, Befehle, Benutzeroberfläche, CLI
Teamsexperts/teams/index.mdTeams AI SDK, Adaptive Cards, Graph, MCP, A2A, Bereitstellung
Bridgeexperts/bridge/index.md27 plattformübergreifende Konvertierungsexperten (der Kernunterschied)
Bereitstellungexperts/deploy/index.mdDurchgehende Anleitungen für Azure- und AWS-Bereitstellung
Modelleexperts/models/index.mdKI-Modellanbieter (OpenAI, Anthropic, Bedrock usw.)
Konvertierungexperts/convert/index.mdSprachkonvertierung zu TypeScript
Sicherheitexperts/security/index.mdEingabevalidierung, Geheimnisverwaltung

Plattformvergleichsdokumente

Referenzhandbücher zum seitlichen Plattformvergleich:

  • Benutzeroberflächenkomponenten — Block Kit vs. Adaptive Cards
  • Messaging & Befehle
  • Identität & Authentifizierung
  • Interaktive Antworten
  • Dateien & Links
  • Middleware & Handler
  • Infrastruktur
  • Erweiterte Funktionen
  • Funktionslücken
  • Workflow-Szenarien — Nachrichten-native Workflow-Muster (Trigger, Status, Logik, KI, Sichtbarkeit) für Teams-Bots
Auf GitHub ansehen
---
name: slack-to-teams
description: Migrate Slack bots to Microsoft Teams, build dual-platform bots, and convert between Block Kit and Adaptive Cards using a routed expert system with 100+ micro-expert files.
---

# 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](../SKILL.md). For local testing, see [../test-playground/test-playground.md](../test-playground/test-playground.md) or [../test-teams/test-teams.md](../test-teams/test-teams.md). For cloud deploy, see [../provision-deploy/provision-deploy.md](../provision-deploy/provision-deploy.md). For troubleshooting, see [../troubleshoot/troubleshoot.md](../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** → go to [New Project Flow](#new-project-flow)
- **Existing project** → go to [Existing Project Flow](#existing-project-flow)

---

### 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](../experts/index.md) — the root router.
2. Execute the **pre-task interview** defined in that file.
3. Route based on platform choice:
   - **Slack + Teams** → Read [experts/bridge/index.md](../experts/bridge/index.md). Load [cross-platform-advisor](../experts/bridge/cross-platform-advisor-ts.md).
   - **Slack only** → Read [experts/slack/index.md](../experts/slack/index.md).
   - **Teams only** → Read [experts/teams/index.md](../experts/teams/index.md).

#### 1c: Architecture setup

1. Read [cross-platform-architecture](../experts/bridge/cross-platform-architecture-ts.md) (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](../experts/slack/bolt-python.md), [teams-python](../experts/teams/teams-python.md), [python-cross-platform](../experts/bridge/python-cross-platform.md) |
| **3: Split SDK** | Java, C# | One platform has SDK, other needs REST. Load [bolt-java](../experts/slack/bolt-java.md) or [teams-dotnet](../experts/teams/teams-dotnet.md) + [rest-only](../experts/bridge/rest-only-integration-ts.md) |
| **4: No SDK** | Go, Ruby, Rust | REST-only for both. Load [rest-only](../experts/bridge/rest-only-integration-ts.md) |

#### 2c: Expert coverage gap analysis

1. Read [experts/analyzer.md](../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](../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](../experts/_expert-ts.md) as the template.

#### 2e: Load the expert system

1. Read [experts/index.md](../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](../experts/bridge/cross-platform-advisor-ts.md) if bridging. Feed analysis results into Phase 1.

#### 2f: Architecture and implementation

1. Read [cross-platform-architecture](../experts/bridge/cross-platform-architecture-ts.md).
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:
- **[Parent SKILL.md](../SKILL.md)** — ATK CLI setup, sub-skill routing, workflow chains
- **[manifest-and-yaml.md](../toolkit/manifest-and-yaml.md)** — Project files, YAML config, env vars, .localConfigs flow
- **[commands.md](../toolkit/commands.md)** — Package, validate, share, collaborate, environment management
- **[templates.md](../toolkit/templates.md)** — All templates with language support

For Teams manifest schema and packaging, see [runtime.manifest-ts](../experts/teams/runtime.manifest-ts.md).

## Error Recovery

If the expert system fails to cover a topic:
1. Read [experts/fallback.md](../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](../experts/builder.md).

## Expert Domains

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

## Platform Comparison Docs

Reference guides for side-by-side platform comparison:

- [UI Components](../docs/ui-components.md) — Block Kit vs Adaptive Cards
- [Messaging & Commands](../docs/messaging-and-commands.md)
- [Identity & Auth](../docs/identity-and-auth.md)
- [Interactive Responses](../docs/interactive-responses.md)
- [Files & Links](../docs/files-and-links.md)
- [Middleware & Handlers](../docs/middleware-and-handlers.md)
- [Infrastructure](../docs/infrastructure.md)
- [Advanced Features](../docs/advanced-features.md)
- [Feature Gaps](../docs/feature-gaps.md)
- [Workflow Scenarios](../docs/workflows.md) — Message-native workflow patterns (triggers, state, logic, AI, visibility) for Teams bots

Alle Dateien

1 Dateien

slack-to-teams installieren

Laden Sie die Skill-Dateien herunter und extrahieren Sie diese in Ihr .claude/skills/-Verzeichnis.

ZIP herunterladen

Klonen Sie das Repository und kopieren Sie die Skill-Dateien in Ihr Projekt.

git clone https://github.com/microsoft/skills/tree/main/.github/plugins/microsoft-365-agents-toolkit/skills/teams-app-developer/slack-to-teams # Copy SKILL.md to your .claude/skills/ directory

Kopieren Kopieren
Schnelle Einrichtung: Kopieren Sie den Ordner „skill“ nach .claude/skills/. Claude erkennt und verwendet die Fähigkeit automatisch.
Repository microsoft/skills

Ähnliche Skills

agentwallet
Zeit aktualisiert 7. Juli 2026
brightdata-cli
Zeit aktualisiert 29. Juni 2026
humanize
Zeit aktualisiert 7. Juli 2026
korean-stock-search
Zeit aktualisiert 8. Juli 2026
OR