вариант

slack-to-teams

microsoft/skills microsoft/skills

Перенесите ботов Slack в Microsoft Teams, создавайте боты для двух платформ и конвертируйте Block Kit в Adaptive Cards с помощью маршрутизированной экспертной системы, включающей более 100 файлов микроэкспертов.

...Расширить все
35
Обновлено время 19 сентября 2026 г.

Система экспертов Slack в Teams

Маршрутизируемая экспертная система, включающая более 100 микроэкспертных файлов для миграции ботов Slack в Teams и создания кроссплатформенных ботов.

Родительский навык: Для настройки и маршрутизации ATK CLI см. ../SKILL.md. Для локального тестирования см. ../test-playground/test-playground.md или ../test-teams/test-teams.md. Для облачного развертывания см. ../provision-deploy/provision-deploy.md. Для устранения неполадок см. ../troubleshoot/troubleshoot.md.

Когда использовать

  • Создание нового бота Slack, бота Teams или двуязычного бота
  • Добавление поддержки Teams в существующий бот Slack (или наоборот)
  • Миграция бота между платформами
  • Развертывание бота в Azure или AWS
  • Настройка поставщиков ИИ-моделей для бота
  • Конвертация интерфейса между Block Kit и Adaptive Cards
  • Связывание идентичности, событий, файлов или транспорта между платформами
  • Приведение проекта бота Teams в соответствие с Microsoft Agents Toolkit (m365agents.yml, env/, плейсхолдеры appPackage)

Процедура

Шаг 1: Определение типа проекта

Оцените, есть ли у разработчика существующая кодовая база или он начинает с нуля.

  • Новый проект → перейдите к потоку нового проекта
  • Существующий проект → перейдите к потоку существующего проекта

Поток нового проекта

1a: Выбор платформы

Спросите разработчика, какие платформы необходимо поддерживать:

  • Slack + Teams (двуязычная платформа)
  • Только Slack
  • Только Teams

1b: Загрузка экспертной системы

  1. Прочитайте experts/index.md — корневой маршрутизатор.
  2. Выполните предварительное собеседование, определенное в этом файле.
  3. Маршрутизация на основе выбора платформы:
    • Slack + Teams → Прочитайте experts/bridge/index.md. Загрузите cross-platform-advisor.
    • Только Slack → Прочитайте experts/slack/index.md.
    • Только Teams → Прочитайте experts/teams/index.md.

1c: Настройка архитектуры

  1. Прочитайте cross-platform-architecture (даже для одноязычной платформы — это устанавливает шаблоны для добавления второй платформы в будущем).
  2. Позвольте доменному маршрутизатору и советнику взять на себя управление.
  3. Создайте файл PLAN.md в корневой папке целевого проекта с указанием платформы, функций и загруженных экспертов.

1d: Реализация

Следуйте выводам советника или доменного маршрутизатора. Реализуйте функцию за функцией:

  1. Выберите следующую функцию из приоритетного списка.
  2. Загрузите эксперта(ов), указанного(ых) для этой функции.
  3. Реализуйте, используя шаблоны и правила эксперта.
  4. Проверьте соответствие разделу о подводных камнях эксперта.

Поток существующего проекта

2a: Анализ проекта

Выполните эти четыре поданализа параллельно:

Определение языка — Сканирование на наличие 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).

Определение текущей платформы — Сканирование зависимостей на наличие индикаторов SDK:

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

Определение функций — Сканирование на наличие слэш-команд, Block Kit/Adaptive Cards, обработчиков действий, OAuth, загрузки/выгрузки файлов, планирования, потоков, вызовов ИИ/LLM, проактивных сообщений.

Определение архитектуры — Сканирование на наличие веб-фреймворка (Express, Fastify и т.д.), целевой среды хостинга (Azure, AWS, Docker), облачного провайдера, шаблона архитектуры (один бот, два бота, монолит).

2b: Языковой шлюз

Классифицируйте обнаруженный язык по уровням SDK:

УровеньЯзыкиРекомендации
**1: Полный SDK**TypeScript / JavaScriptДоступна полная экспертная система
**2: Адаптация**PythonОба SDK существуют — адаптируйте шаблоны TS. Загрузите bolt-python, teams-python, python-cross-platform
**3: Раздельный SDK**Java, C#У одной платформы есть SDK, другой требуется REST. Загрузите bolt-java или teams-dotnet + rest-only
**4: Нет SDK**Go, Ruby, RustТолько REST для обеих платформ. Загрузите rest-only

2c: Анализ пробелов покрытия экспертами

  1. Прочитайте experts/analyzer.md.
  2. Выполните рабочий процесс анализатора: сканирование манифестов, зависимостей, исходных файлов.
  3. Сопоставьте обнаруженные технологии с существующими экспертами.
  4. Представьте анализ пробелов — охваченные и неохваченные технологии.

2d: Создание недостающих экспертов (если необходимо)

  1. Прочитайте experts/builder.md.
  2. Для каждого пробела: проанализируйте использование в проекте → прочитайте исходный код пакета → составьте проект эксперта → проверьте → подключите к маршрутизации.
  3. Используйте experts/_expert-ts.md в качестве шаблона.

2e: Загрузка экспертной системы

  1. Прочитайте experts/index.md — корневой маршрутизатор.
  2. Выполните предварительное собеседование, предварительно заполнив его результатами анализа из 2a.
  3. Маршрутизация на основе обнаруженной платформы и намерения задачи:
    • Есть Slack, нужен Teams → домен Bridge
    • Есть Teams, нужен Slack → домен Bridge
    • Есть обе → маршрутизация по задаче (уточнение моста, развертывание, модели и т.д.)
    • Нет ни одной → спросите, какие платформы необходимо использовать
  4. Загрузите cross-platform-advisor при мостовом соединении. Передайте результаты анализа в Фазу 1.

2f: Архитектура и реализация

  1. Прочитайте cross-platform-architecture.
  2. Создайте файл PLAN.md с результатами анализа, решениями по маршрутизации и порядком миграции функций.
  3. Реализуйте функцию за функцией, используя приоритетный список советника.

Совместимость с Agents Toolkit

Для структуры проекта, совместимой с ATK (m365agents.yml, файлы env/, appPackage), см. родительский навык:

  • Родительский SKILL.md — настройка ATK CLI, маршрутизация поднавыков, цепочки рабочих процессов
  • manifest-and-yaml.md — файлы проекта, конфигурация YAML, переменные окружения, поток .localConfigs
  • commands.md — упаковка, проверка, публикация, сотрудничество, управление средой
  • templates.md — все шаблоны с поддержкой языков

Для схемы манифеста Teams и упаковки см. runtime.manifest-ts.

Восстановление после ошибок

Если экспертная система не охватывает тему:

  1. Прочитайте experts/fallback.md.
  2. Фаза 1: Повторное сканирование всех доменных маршрутизаторов на наличие пропущенных экспертов.
  3. Фаза 2: Поиск в веб-сети для устранения оставшихся пробелов в знаниях.
  4. Рассмотрите возможность создания нового эксперта, используя experts/builder.md.

Домены экспертов

ДоменИндексОписание
Slackexperts/slack/index.mdФреймворк Bolt, события, OAuth, команды, интерфейс, CLI
Teamsexperts/teams/index.mdSDK ИИ Teams, Adaptive Cards, Graph, MCP, A2A, развертывание
Bridgeexperts/bridge/index.md27 экспертов по кроссплатформенной конвертации (основное отличие)
Deployexperts/deploy/index.mdПошаговые руководства по развертыванию в Azure и AWS
Modelsexperts/models/index.mdПоставщики ИИ-моделей (OpenAI, Anthropic, Bedrock и т.д.)
Convertexperts/convert/index.mdКонвертация языков в TypeScript
Securityexperts/security/index.mdПроверка ввода, управление секретами

Документы сравнения платформ

Справочные руководства для сравнения платформ бок о бок:

  • Компоненты интерфейса — Block Kit против Adaptive Cards
  • Сообщения и команды
  • Идентичность и аутентификация
  • Интерактивные ответы
  • Файлы и ссылки
  • Промежуточное ПО и обработчики
  • Инфраструктура
  • Расширенные функции
  • Пробелы в функциях
  • Сценарии рабочих процессов — шаблоны рабочих процессов, нативные для сообщений (триггеры, состояние, логика, ИИ, видимость) для ботов Teams
Посмотреть на GitHub
---
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

Все файлы

1 файлов

Установить slack-to-teams

Скачайте и извлеките файлы навыков в директорию .claude/skills/.

Скачать ZIP

Клонируйте репозиторий и скопируйте файлы навыка в свой проект.

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

Копировать Копировать
Быстрая настройка: Скопируйте папку навыка в .claude/skills/. Claude автоматически обнаружит и использует этот навык.
Репозиторий microsoft/skills

Похожие навыки

agentwallet
Обновлено время 7 июля 2026 г.
brightdata-cli
Обновлено время 29 июня 2026 г.
humanize
Обновлено время 7 июля 2026 г.
korean-stock-search
Обновлено время 8 июля 2026 г.
OR