Pular para o conteúdo
Skillpedia
Agentes48 mil · #3509

m365-agents-ts

Permite criar agentes de IA para o Microsoft 365 usando TypeScript. Ajuda a desenvolver assistentes que se integram com o ambiente Microsoft.

O que ela faz

Este é um conjunto de ferramentas para criar assistentes virtuais inteligentes (agentes) que funcionam dentro do ecossistema da Microsoft, como o Teams e o Copilot Studio. Ele permite que desenvolvedores criem experiências conversacionais avançadas.

Quando usar

  • ✓Quando você quer criar um chatbot personalizado para o Microsoft Teams.
  • ✓Ao desenvolver um assistente virtual que se integra com o Copilot Studio.
  • ✓Para construir aplicações que respondem a mensagens de forma dinâmica e em tempo real.

Exemplo do que pedir para a IA

“Como posso configurar um agente para responder a mensagens no Teams?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/m365-agents-ts/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/m365-agents-ts/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele funciona conectando-se aos serviços da Microsoft e usando código para definir como o agente deve responder a diferentes tipos de mensagens ou eventos. O código gerencia a comunicação e o fluxo da conversa.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill m365-agents-ts

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/m365-agents-ts/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Disponibilidade de material de suporte

Este texto do catálogo contém as orientações inline abaixo, mas não inclui os seguintes caminhos de suporte. Eles são pré-requisitos externos, não arquivos agrupados:

  • <support-root>/references/acceptance-criteria.md

Solicite o material de suporte original ou uma instalação existente antes de usar uma etapa que dependa desses caminhos; este catálogo não identifica uma fonte de download verificada para eles. Resolva cada caminho em relação a essa instalação, inspecione seu conteúdo e verifique quaisquer licenças aplicáveis e pré-requisitos de execução. Não execute um comando nem afirme que um procedimento referenciado foi seguido até que seu arquivo necessário exista. Não fabrique os scripts ausentes nem trate um arquivo não relacionado com o mesmo nome como equivalente. Etapas independentes totalmente documentadas aqui podem prosseguir dentro do escopo autorizado do usuário; relate qualquer etapa dependente como indisponível.

Microsoft 365 Agents SDK (TypeScript)

Crie agentes empresariais para Microsoft 365, Teams e Copilot Studio usando o Microsoft 365 Agents SDK com hospedagem Express, roteamento AgentApplication, respostas em streaming e integrações de cliente Copilot Studio.

Antes da implementação

  • Use o MCP do microsoft-docs para verificar as assinaturas de API mais recentes para AgentApplication, startServer e CopilotStudioClient.
  • Confirme as versões dos pacotes no npm antes de conectar exemplos ou modelos.

Instalação

npm install @microsoft/agents-hosting @microsoft/agents-hosting-express @microsoft/agents-activity
npm install @microsoft/agents-copilotstudio-client

Variáveis de Ambiente

PORT=3978
AZURE_RESOURCE_NAME=<azure-openai-resource>
AZURE_API_KEY=<azure-openai-key>
AZURE_OPENAI_DEPLOYMENT_NAME=gpt-4o-mini

TENANT_ID=<tenant-id>
CLIENT_ID=<client-id>
CLIENT_SECRET=<client-secret>

COPILOT_ENVIRONMENT_ID=<environment-id>
COPILOT_SCHEMA_NAME=<schema-name>
COPILOT_CLIENT_ID=<copilot-app-client-id>
COPILOT_BEARER_TOKEN=<copilot-jwt>

Fluxo de Trabalho Principal: AgentApplication hospedado em Express

import { AgentApplication, TurnContext, TurnState } from "@microsoft/agents-hosting";
import { startServer } from "@microsoft/agents-hosting-express";

const agent = new AgentApplication<TurnState>();

agent.onConversationUpdate("membersAdded", async (context: TurnContext) => {
  await context.sendActivity("Welcome to the agent.");
});

agent.onMessage("hello", async (context: TurnContext) => {
  await context.sendActivity(`Echo: ${context.activity.text}`);
});

startServer(agent);

Respostas em streaming com Azure OpenAI

import { azure } from "@ai-sdk/azure";
import { AgentApplication, TurnContext, TurnState } from "@microsoft/agents-hosting";
import { startServer } from "@microsoft/agents-hosting-express";
import { streamText } from "ai";

const agent = new AgentApplication<TurnState>();

agent.onMessage("poem", async (context: TurnContext) => {
  context.streamingResponse.setFeedbackLoop(true);
  context.streamingResponse.setGeneratedByAILabel(true);
  context.streamingResponse.setSensitivityLabel({
    type: "https://schema.org/Message",
    "@type": "CreativeWork",
    name: "Internal",
  });

  await context.streamingResponse.queueInformativeUpdate("starting a poem...");

  const { fullStream } = streamText({
    model: azure(process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-4o-mini"),
    system: "You are a creative assistant.",
    prompt: "Write a poem about Apollo.",
  });

  try {
    for await (const part of fullStream) {
      if (part.type === "text-delta" && part.text.length > 0) {
        await context.streamingResponse.queueTextChunk(part.text);
      }
      if (part.type === "error") {
        throw new Error(`Streaming error: ${part.error}`);
      }
    }
  } finally {
    await context.streamingResponse.endStream();
  }
});

startServer(agent);

Tratamento de atividade de invocação

import { Activity, ActivityTypes } from "@microsoft/agents-activity";
import { AgentApplication, TurnContext, TurnState } from "@microsoft/agents-hosting";

const agent = new AgentApplication<TurnState>();

agent.onActivity("invoke", async (context: TurnContext) => {
  const invokeResponse = Activity.fromObject({
    type: ActivityTypes.InvokeResponse,
    value: { status: 200 },
  });

  await context.sendActivity(invokeResponse);
  await context.sendActivity("Thanks for submitting your feedback.");
});

Cliente Copilot Studio (Direto para o Motor)


…
Perguntas frequentes

O que são 'agentes' neste contexto?

Agentes são programas de computador que podem entender e responder a comandos ou perguntas, agindo como assistentes virtuais.

Preciso saber programar para usar isso?

Sim, este kit de ferramentas é para desenvolvedores que sabem programar, pois envolve escrever código para configurar o agente.

O que é 'streaming de respostas'?

É uma forma de o agente enviar a resposta em pedaços pequenos, conforme ela é gerada, em vez de esperar a resposta completa. Isso torna a interação mais rápida e fluida.

Detalhes

Descrição original do autor

Microsoft 365 Agents SDK for TypeScript/Node.js.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3509
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas