Comece com o plug-in do Power Pages para CLI do GitHub Copilot e Claude Code

O plug-in Power Pages para GitHub Copilot CLI e Claude Code fornece um fluxo de trabalho assistido por IA para criar, implantar e gerenciar sites modernos de aplicativos de página única (SPA) no Power Pages. Em vez de estruturar manualmente projetos, escrever código de API clichê e configurar permissões, descrever o que você deseja em linguagem natural e o plug-in manipula a implementação.

O plug-in dá suporte ao ciclo de vida de desenvolvimento de site completo por meio de habilidades de conversação, desde o scaffolding de um novo site até a implantação dele, a configuração de modelos de dados do Dataverse e a configuração da autenticação.

Importante

  • Um agente de codificação de IA generativo, como GitHub Copilot CLI ou Claude Code, usa as habilidades e os fluxos de trabalho desse plug-in para concluir tarefas Power Pages específicas.
  • O código e a configuração gerados pelo agente de codificação de IA podem ser imprecisos. Examine, teste e valide todo o conteúdo gerado antes de aprová-lo ou implantá-lo. Sempre examine as propostas do agente antes de aprová-las .

Pré-requisitos

Antes de começar, verifique se você tem o software e as permissões necessários.

Requisitos de software

Componente Versão mínima Mais informações
Node.js 18.0 ou posterior Baixar Node.js
CLI do Power Platform (CLI do PAC) 2.6.3 ou posterior (necessário para a lógica do servidor) Instalar a CLI do PAC
CLI do Azure Latest Instalar CLI do Azure
GitHub Copilot CLI ou Claude Code Latest GitHub Copilot CLI ou Claude Code
Extensão do Visual Studio Code e do Power Platform Tools (opcional) Latest Baixar o VS Code e instalar ferramentas do Power Platform

Você também precisará de:

  • Um ambiente do Power Platform com o Power Pages habilitado.
  • Uma sessão autenticada da CLI do PAC conectada ao seu ambiente de destino. Execute o pac auth create se você ainda não se conectou.
  • Sessão da CLI do Azure conectada ao mesmo locatário. Execute az login --allow-no-subscriptions para autenticar.

Verifique a autenticação:

Verifique se você está autenticado usando o pac auth list comando.

pac auth list           # Should show authenticated profile

Se você não estiver autenticado, execute este comando:

pac auth create --environment <Instance url>        # Authenticate to Power Platform

Tip

Para obter a URL da instância, vá para a página inicial do Power Pages, selecione o ícone Configurações no canto superior direito e selecione Detalhes da sessão.

Instalar o plug-in

Instale o plug-in Power Pages do marketplace. Se você usar GitHub Copilot CLI, consulte a documentação de extensões da CLI Copilot para obter etapas de instalação equivalentes. Os comandos a seguir usam a sintaxe claude code.

Execute o instalador para configurar todos os plug-ins com a atualização automática habilitada:

Windows (PowerShell):

iwr https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js -OutFile install.js; node install.js; del install.js

macOS/Linux/Windows (cmd):

curl -fsSL https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js | node

O instalador automaticamente:

  • Instala a pac CLI se ela ainda não estiver instalada.
  • Detecta ferramentas disponíveis, como Claude Code e GitHub Copilot CLI.
  • Registra o marketplace de plug-ins e instala todos os plug-ins listados.
  • Habilita a atualização automática para que os plug-ins permaneçam atualizados.

Após a instalação, reinicie a CLI do Claude Code ou do GitHub Copilot para acessar as habilidades do plug-in como comandos de barra na sessão do agente.

Instalar por meio do marketplace

  1. Abra o Claude Code em seu terminal.

  2. Adicione o marketplace da Microsoft:

    /plugin marketplace add microsoft/power-platform-skills
    
  3. Instale o plug-in do Power Pages:

    /plugin install power-pages@power-platform-skills
    

Após a instalar o plug-in, reinicie a CLI do Claude Code ou do GitHub Copilot para acessar as habilidades do plug-in como comandos de barra na sessão do agente.

Tip

Para receber atualizações e habilidades automaticamente no marketplace, ative a atualização automática. Use o /plugin comando, vá para Marketplaces, escolha o marketplace e ative a atualização automática.

Visão geral de habilidades

O plug-in fornece habilidades que abrangem todo o ciclo de vida de um site Power Pages. Chame cada habilidade de forma conversacional, seja por comando de barra ou descreva o que você deseja fazer.

Habilidade Command O que faz
Criar site /create-site Estrutura um site, aplica sua direção de design e cria páginas e componentes
Implantar site /deploy-site Cria o projeto e o carrega para Power Pages usando a CLI do PAC
Ativar site /activate-site Provisiona um registro de site e atribui uma URL pública
Configurar o modelo de dados /setup-datamodel Cria tabelas, colunas e relações do Dataverse
Adicionar dados de exemplo (opcional) /add-sample-data Popula tabelas do Dataverse com registros de teste realistas
Integrar API da Web /integrate-webapi Gera o código do cliente de API tipada, serviços e permissões de tabela
Adicionar resumos de IA /add-ai-webapi Integra as APIs de resumo com IA generativa (resumo de pesquisa e resumo de dados) às suas páginas. Gera um serviço de resumo tipado com manipulação de token contra falsificação, wrappers específicos da estrutura, locais de chamadas integrados e as configurações de site correspondentes Summarization
Configurar a autenticação /setup-auth Adiciona entrada, saída e controle de acesso baseado em função. Dá suporte a Microsoft Entra ID, ID externa do Microsoft Entra, OpenID Connect, SAML 2.0, WS-Federation, conta Microsoft, Facebook, Google e autenticação local de nome de usuário e senha, incluindo configurações de vários provedores
Criar funções da Web /create-webroles Gera arquivos YAML de funções na Web para gerenciamento de acesso do usuário
Adicionar lógica de servidor /add-server-logic Gera pontos de extremidade JavaScript seguros do lado do servidor para validação, chamadas de API externas, gerenciamento de segredos e operações de dados.
Adicionar fluxo de nuvem /add-cloud-flow Integra fluxos de nuvem Power Automate existentes em seu site para fluxos de trabalho de aprovação, notificações e automação agendada
Integrar back-end /integrate-backend Analisa seu protótipo, determina a abordagem certa (API Web, Lógica do Servidor ou fluxo de nuvem) para cada recurso e orquestra a sequência de build completa
Adicionar SEO /add-seo Gera robots.txt, sitemap.xml e meta tags
Executar revisão de segurança /security-review Orquestra as habilidades de segurança focadas e consolida cada descoberta em um único relatório HTML. Inclui código, dependências, varredura do site implantado, cabeçalhos do navegador, firewall de aplicação web, permissões de tabela e configuração de autenticação
Examinar o código-fonte /scan-code Executa análise estática e varredura de dependências em arquivos-fonte locais; apresenta achados em padrões de código, pacotes vulneráveis, segredos embutidos no código e problemas de licenciamento
Digitalizar o site implantado /scan-site Inicia uma verificação de segurança do lado do servidor no site ao vivo, busca o relatório mais recente e agrupa as descobertas por gravidade
Gerenciar cabeçalhos de segurança do navegador /manage-headers Inspeciona e configura os cabeçalhos de segurança HTTP que um site envia aos navegadores — Política de Segurança de Conteúdo, proteção contra frames e clickjacking, compartilhamento entre origens, comportamento dos cookies e outras configurações relacionadas do site
Gerenciar o firewall do aplicativo Web /manage-firewall Inspeciona e configura o WAF (firewall do aplicativo Web) em um site de produção: habilita a proteção, adiciona ou remove blocos IP, blocos de país, blocos de caminho e limites de taxa
Permissões da tabela de auditoria /audit-permissions Audita as permissões de tabela existentes no código do site e nos metadados do Dataverse; produz um relatório HTML agrupado por gravidade com correções sugeridas
Planejar a implantação /plan-alm Detecta o estado do projeto, reúne sua estratégia de promoção, renderiza um plano visual e orquestra as outras habilidades de ALM (gerenciamento de ciclo de vida do aplicativo) na ordem certa
Criar solução /setup-solution Cria um publicador e uma solução, adiciona componentes do Power Pages, classifica as configurações do site e propõe variáveis de ambiente e segredos do Azure Key Vault
Configurar o host do pipeline /ensure-pipelines-host Provisiona ou detecta um ambiente de host para Pipelines do Power Platform
Configurar o pipeline /setup-pipeline Registra uma definição de pipeline no Dataverse e associa estágios de promoção a ambientes de destino
Implantar por meio do pipeline /deploy-pipeline Aciona a implantação do pipeline para um estágio de destino com substituições nas variáveis de ambiente por estágio
Ambiente de vinculação forçada /force-link-environment Reatribui um ambiente de destino para um novo host do Power Platform Pipelines quando um conflito de host bloqueia a implantação
Exportar solução /export-solution Exporta a solução como um zip gerenciado ou não gerenciado, com uma verificação de integridade antes da exportação
Importar solução /import-solution Importa um arquivo .zip de solução em um ambiente de destino, em etapas ou diretamente
Site de teste /test-site Verifica um site implantado com um teste baseado em navegador: rastreamento de página, verificações de acesso baseadas em função e verificação de API Web
Diagnosticar a implantação /diagnose-deployment Compara falhas de implantação com um catálogo de erros conhecidos e propõe uma correção

Fluxo de trabalho típico

Um fluxo de trabalho de ponta a ponta comum segue esta sequência:

  1. /create-site : estruturar, desenhar e construir páginas
  2. /deploy-site: faça upload para o seu ambiente do Power Pages
  3. /activate-site : configurar uma URL pública
  4. /setup-datamodel : Criar tabelas do Dataverse
  5. /add-sample-data : preencher tabelas com registros de teste
  6. /integration-webapi : gerar código do cliente de API e configurar permissões
  7. /create-webroles: Definir funções de acesso
  8. /setup-auth : adicionar entrada, saída e interface do usuário baseada em função
  9. /add-server-logic : Adicionar endpoints seguros do lado do servidor
  10. /add-cloud-flow: integrar fluxos de Power Automate existentes
  11. /add-seo : otimização do mecanismo de pesquisa
  12. /deploy-site: enviar por push as alterações finais ao vivo
  13. /security-review : executar uma revisão de segurança de ponta a ponta antes de ir para a produção
  14. /plan-alm : Promover seu site para ambientes de teste e produção

Tip

  • Você não precisa seguir esta ordem exata. Cada habilidade verifica seus próprios pré-requisitos e informa se algo está ausente. Por exemplo, você pode executar /setup-auth antes /integrate-webapi se seu site precisar de autenticação primeiro.
  • Se você não tiver certeza de qual abordagem usar para cada recurso, execute /integrate-backend em vez das etapas 4 a 10 individualmente. Ele analisa seu protótipo, determina se cada recurso precisa de API Web, Lógica do Servidor ou um fluxo de nuvem e orquestra as habilidades na ordem correta.
  • Para adicionar resumos de pesquisa e registro gerados por IA, execute /add-ai-webapi após /integrate-webapi. Ele reutiliza as permissões da tabela e as configurações do site que /integrate-webapi configura, portanto, execute isso depois que a integração da Web API estiver em funcionamento.

Criar seu site do Power Pages

Este passo a passo aborda todo o processo completo de criação de um site do Power Pages com o complemento, desde a estruturação até a implantação. Cada etapa descreve o que você diz e o que o plug-in faz em resposta.

Etapa 1: Criar seu site

Descreva o site que você deseja em linguagem natural: para o que ele é, para quais páginas ele precisa e quaisquer preferências de design, como esquema de cores, estilo de layout ou fontes. Execute /create-site ou apenas descreva seu site e o plug-in reconhece a intenção.

Se você não especificar uma estrutura, o plug-in solicitará que você escolha uma (React, Vue, Angular ou Astro), em seguida:

  1. Estrutura o projeto a partir de um template e aplica o nome do seu site, as cores e os tokens de design.
  2. Instala dependências, inicia um servidor de desenvolvimento e abre uma visualização do navegador ao vivo.
  3. Cria cada página, componente e rota solicitadas com imagens relevantes.
  4. Cria confirmações do git em marcos significativos para que você tenha um histórico de reversão integrado.

Etapa 2: Implantar seu site

Execute /deploy-site para carregar seu site no Power Pages. O plug-in:

  1. Verifica se a CLI do PAC está instalada e sua sessão de autenticação está ativa.
  2. Confirma o ambiente de destino com você antes de continuar.
  3. Executa um build de produção e carrega a saída compilada.
  4. Cria um diretório de artefatos de implantação caso ainda não exista.

Note

Se o ambiente bloquear determinados anexos de arquivo, o plug-in detectará o problema e fornecerá instruções para resolvê-lo.

Etapa 3: Ativar seu site

Execute /activate-site para tornar o site publicamente acessível. O plug-in:

  1. Sugere um subdomínio com base no nome do site e permite personalizá-lo.
  2. Provisiona um registro de site por meio da API do Power Platform.
  3. Aguarde até que o site esteja ativo e retorne a URL pública.

Neste ponto, você tem um site de trabalho em uma URL pública. As etapas restantes adicionam dados, autenticação e SEO. Ignore as etapas que não se aplicam ao seu site.

Etapa 4: Configurar seu modelo de dados

Execute /setup-datamodel para criar as tabelas do Dataverse de que seu site precisa. Se você já tiver um diagrama de ER ou um esquema específico, forneça-o diretamente em vez de fazer com que o agente analise seu código.

O plug-in gera um agente do Arquiteto de Modelos de Dados que:

  1. Analisa o código do site para determinar quais dados as páginas e os componentes exigem.
  2. Consulta o ambiente do Dataverse em busca de tabelas existentes para evitar duplicatas.
  3. Propõe um modelo de dados com tabelas, colunas, tipos de dados e relações, visualizados como um diagrama de ER.

Examine e aprove a proposta. O plug-in não cria nada até que você confirme. Após a aprovação, o plug-in cria as tabelas e colunas por meio de chamadas à API e salva um arquivo de manifesto que as Etapas 5 e 6 usam.

Etapa 5: Adicionar dados de exemplo (opcional)

Execute /add-sample-data para preencher suas tabelas com registros de teste. Esta etapa requer o modelo de dados da Etapa 4.

O plug-in executa as seguintes ações:

  1. Lê o manifesto para entender suas tabelas, colunas e relações.
  2. Gera valores contextualmente apropriados para cada tipo de coluna, como emails realistas, datas plausíveis e valores de moeda formatados.
  3. Insere registros na ordem de dependência (tabelas pai antes das tabelas filho) e atualiza os tokens de autenticação automaticamente durante inserções em massa.

Etapa 6: Integrar com a API Web do Dataverse

Execute /integrate-webapi para substituir dados fictícios por consultas dinâmicas do Dataverse. Esta etapa requer o modelo de dados da Etapa 4.

O plug-in executa as seguintes ações:

  1. Verifica sua base de código em busca de componentes que usam dados fictícios, chamadas de busca de espaço reservado ou matrizes codificadas. Ele mapeia esses componentes para suas tabelas do Dataverse.
  2. Gera um agente de Integração de API Web para cada tabela que gera:
    • Um cliente de API compartilhado com gerenciamento de token contra falsificação e lógica de tentativas.
    • Tipos de entidade TypeScript e mapeadores de domínio.
    • Uma camada de serviço CRUD.
    • Padrões específicos de frameworks, como hooks do React, composables do Vue.js ou serviços do Angular.
  3. Gera um agente do Arquiteto de Permissões que propõe permissões de tabela e configurações de site.

Examine e aprove a proposta de permissões. O plug-in não cria nenhum arquivo de configuração até que você confirme.

Adicionar resumos gerados por IA (opcional)

Execute /add-ai-webapi para adicionar resumos gerados por IA à sua integração com a API Web. O recurso conecta duas APIs de resumo para visualização prévia às suas páginas de detalhes de registro e de lista:

  • API de resumo da pesquisa: retorna um resumo condensado por IA dos resultados da pesquisa, com citações.
  • API de resumo de dados: retorna um resumo por registro ou insights de nível de lista para uma tabela do Dataverse.

Esta etapa baseia-se no modelo de dados da Etapa 4 e na integração da API Web da Etapa 6. O plug-in executa as seguintes ações:

  1. Digitaliza seu código em busca de pontos de integração para resumos e confirma as páginas-alvo, as tabelas e quais APIs devem ser usadas.
  2. Delega quaisquer pré-requisitos de API Web ausentes — permissões de tabela, listas de colunas e funções da Web — para /integrate-webapi e /create-webroles, portanto, há uma única fonte de verdade para permissões.
  3. Gera um agente de Integração de API Web de IA que gera um serviço de resumo tipado (aiSummaryService.ts) com manipulação de token contra falsificação, wrappers específicos da estrutura (ganchos react, funções de composição do Vue ou serviços Angular) e locais de chamadas integrados nas páginas de destino.
  4. Gera um agente do Arquiteto de Configurações da API Web de IA que cria as configurações do site de Summarization para prompts e limites de conteúdo.

Examine e aprove as propostas. O plug-in não gera código nem cria configurações até que você confirme.

Note

As APIs de sumarização estão em prévia e dependem da ativação de controles administrativos e no nível do site. Se os resumos não aparecerem após a implantação, confirme se o recurso está habilitado por meio das configurações de site e controles de administrador relevantes. Para obter mais informações, consulte Visão geral da API de sumarização de dados e Pesquisa do Power Pages com IA generativa.

Etapa 7: Criar funções da Web

Execute /create-webroles para definir funções de acesso do usuário. O plug-in:

  1. Consulta seu ambiente em busca de funções Web existentes para evitar duplicatas.
  2. Gera definições de função com identificadores exclusivos.
  3. Impõe que cada site tenha no máximo uma função anônima e uma função autenticada.

Etapa 8: Configurar a autenticação

Execute /setup-auth para adicionar entrada, saída e controle de acesso baseado em função ao seu site. O plug-in dá suporte aos seguintes provedores de identidade e você pode configurar um provedor ou vários ao mesmo tempo.

Provider Melhor para
ID externa do Microsoft Entra (recomendado para sites voltados para o cliente) Sites públicos e portais do cliente com cadastro por autoatendimento.
Microsoft Entra ID Portais de funcionários internos ou sites de parceiros de negócios para empresas (B2B). Power Pages configura automaticamente o locatário pai do site, portanto, você não precisa inserir informações do locatário.
Microsoft, Facebook, Google Login social para públicos consumidores.
Autenticação local Login com nome de usuário e senha. Não recomendado e é configurado somente quando você solicita explicitamente.

Para obter mais informações sobre provedores com suporte, incluindo protocolos e considerações de configuração, consulte Overview da autenticação no Power Pages.

O plug-in:

  1. Analisa seu site (finalidade, páginas, público-alvo) e propõe um padrão sensato. Por exemplo, o plugin propõe o ID externa do Microsoft Entra com cadastro aberto para um site voltado ao cliente, ou o Microsoft Entra ID com cadastro apenas por convite para um portal interno. Você aceita a recomendação ou escolhe seus próprios provedores.
  2. Para cada provedor, orienta você em todas as etapas de pré-requisito no centro de administração do provedor de identidade, como criar locatários, registrar aplicativos, criar fluxos de usuário e obter IDs de cliente e URIs de redirecionamento. O plug-in valida cada valor que você cola de volta na conversa e calcula o URI de redirecionamento exato para seu site para que o valor colado no registro do aplicativo corresponda ao valor gravado nas configurações do site.
  3. Pergunta como os dados de perfil do usuário devem ser transferidos do provedor de identidade para o registro de contato do Dataverse (mapeamento de declarações), se a sincronização deve ocorrer em cada logon ou apenas no primeiro logon, e se logons externos devem ser vinculados automaticamente a contatos existentes com base no email.
  4. Gera o serviço de autenticação, declarações de tipo, utilitários de autorização baseados em papéis (hasRole, RequireAuth, RequireRole), um hook de manutenção da sessão que impede que as sessões de SPA expirem silenciosamente e um componente de interface de log-in/log-out integrado ao layout do seu site. O plug-in usa os padrões do seu framework em toda a sua extensão, como hooks do React, funções de composição do Vue, serviços do Angular ou componentes do Astro.
  5. Quando mais de um provedor é configurado, gera uma página /login renderizada no layout escolhido: em linha horizontal, pilha vertical, destaque principal ou com guias.
  6. Grava, em .powerpages-site/site-settings/, as configurações correspondentes do site para cada provedor, modo de registro, mapeamento de declarações e recurso opcional.

O plug-in também configura os seguintes recursos opcionais quando você os ativa:

  • Termos e condições: uma /terms página SPA que os usuários devem aceitar antes de concluir o logon, além da configuração correspondente do site e dos trechos de conteúdo correspondentes.
  • Página de perfil do usuário: uma página SPA /user-profile em que usuários autenticados editam suas informações de contato por meio da API Web do Power Pages.
  • Encerramento de sessão federado: também encerra a sessão do usuário no provedor de identidade quando ele encerra a sessão no site, para cenários com dispositivos compartilhados ou sujeitos a regulamentação.

Tip

Para adicionar um segundo provedor de identidade a um site existente, execute /setup-auth novamente. O plug-in detecta o que já está configurado e oferece a adição de um novo provedor sem substituir os existentes. Essa abordagem é útil para cenários incrementais, como começar com ID externa do Microsoft Entra e depois adicionar o Google para entrada social.

Note

A autorização do lado do cliente (RequireAuth, RequireRole, hasRole) é apenas para experiência do usuário. Ele controla o que o usuário vê. As permissões de tabela no servidor configuradas por /integrate-webapi garantem a segurança real.

Etapa 9: Adicionar lógica do servidor

Use /add-server-logic para adicionar endpoints seguros do lado do servidor ao seu site. Use a Lógica do Servidor quando seu site precisar de lógica que não possa ser executada no navegador, como chamadas à API externas, validação do lado do servidor, gerenciamento de segredo ou operações de dados entre entidades.

Importante

O suporte à lógica do servidor requer a versão 2.6.3 ou posterior do PAC CLI. Use o script de instalação rápida para atualizar para a versão mais recente.

Descreva o que você precisa em linguagem simples e o plug-in:

  1. Gera um agente do Arquiteto Lógico do Servidor que analisa seu caso de uso e classifica sua complexidade.
  2. Propõe um design de endpoint, uma configuração de segurança e todas as permissões de tabela necessárias para sua revisão.
  3. Depois de aprovar, gera o ponto de extremidade JavaScript do lado do servidor em /_api/serverlogics/<name>.
  4. Cria um serviço de cliente tipado para acionar o ponto de extremidade dos seus componentes.
  5. Atualiza seus componentes para chamar o novo serviço.
  6. Configura atribuições de função da Web e permissões de tabela para o ponto de extremidade.

Examine e aprove a proposta. Nenhum código é gerado até que você confirme.

Casos de uso comuns:

Note

Execute /add-server-logic uma vez por caso de uso. Por exemplo, se o site precisar de um ponto de extremidade de validação de inventário e de um ponto de extremidade de pesquisa global, execute a habilidade duas vezes.

Etapa 10: Integrar fluxos de nuvem

Execute /add-cloud-flow para integrar fluxos de nuvem Power Automate existentes ao seu site. Essa habilidade conecta seu site Power Pages a fluxos que você já criou no Power Automate. Ele não cria novos fluxos de nuvem.

O plug-in:

  1. Registra o fluxo de trabalho em nuvem existente no seu site.
  2. Gera código do lado do cliente para inicializar o fluxo a partir das suas páginas.
  3. Manipula o estado do fluxo de trabalho assíncrono e os padrões de retorno de chamada.
  4. Configura a troca de dados entre a página e o fluxo.

Use /add-cloud-flow para fluxos de trabalho de aprovação, notificações por email, trabalhos agendados e automação por eventos, que são mais bem tratados pelo Power Automate do que pelos endpoints do lado do servidor.

Alternativa: usar /integrar-backend para planejar a camada completa de serviço

Se você não tiver certeza de quais recursos precisam de API Web, Lógica do Servidor ou um fluxo de nuvem, execute /integrate-backend em vez de executar manualmente as etapas 4 a 10. Essa habilidade atua como um orquestrador que:

  1. Analisa seu protótipo para identificar todos os recursos que precisam de uma camada de serviço.
  2. Classifica cada recurso na abordagem certa: API Web para CRUD padrão, Lógica do Servidor para validação do servidor e APIs externas ou fluxo de nuvem para fluxos de trabalho de aprovação e automação.
  3. Propõe um plano de execução sequenciado com todas as habilidades, dependências e configurações.
  4. Depois de você aprovar, o sistema orquestra as habilidades na ordem correta.

O plano é persistente, retomável e editável. Pare após qualquer etapa para examinar o código gerado ou testar o site e retome de onde parou executando /integrate-backend novamente.

Etapa 11: Adicionar SEO

Execute /add-seo para otimizar seu site para mecanismos de pesquisa. O plug-in:

  1. Descobre rotas da configuração do roteador da estrutura.
  2. Gera diretivas do mecanismo de pesquisa e um mapa de site para todas as rotas descobertas.
  3. Adiciona marcas meta: visor, conjunto de caracteres, descrição, Open Graph, Twitter Card e referências de favicon.

Etapa 12: Implantar o site final

Se você executar quaisquer etapas opcionais, execute /deploy-site novamente para efetuar push das alterações ao vivo. O plug-in executa um build de produção e carrega o site junto com todos os artefatos de implantação (permissões de tabela, configurações de site, funções web, arquivos lógicos do servidor) para o ambiente Power Pages.

Etapa 13: Executar uma revisão de segurança

Execute /security-review para executar uma revisão de segurança de ponta a ponta do seu site antes de ir para a produção. A habilidade orquestra as habilidades de segurança especializadas e consolida todas as descobertas em um único relatório HTML em docs/security-review-<timestamp>.html.

O plug-in faz uma pergunta em linguagem simples sobre sua meta e escolhe o conjunto correspondente de habilidades focadas:

Objetivo O que ele verifica
Código e configuração Código-fonte, dependências, permissões de tabela e configuração de autenticação. Funciona somente em arquivos locais – nenhuma implantação é necessária.
Preparação para lançamento (recomendado) Revisão completa antes da publicação. Executa todas as habilidades focadas: código e dependências, verificação de site implantado, cabeçalhos de segurança do navegador, firewall do aplicativo Web, permissões de tabela e autenticação.
Site implantado Somente verificação de site implantado ao vivo. Útil para o monitoramento contínuo de um site publicado.

Depois de confirmar, o plug-in executa as habilidades focadas correspondentes em paralelo e grava suas descobertas em um único relatório:

  • /scan-code: Executa a análise estática (opengrep) e a verificação de dependências (trivy) em arquivos de origem locais. Exibe padrões de código, pacotes vulneráveis, segredos codificados e problemas de licença. Se alguma das duas ferramentas não estiver instalada, o recurso oferece uma revisão manual do código como alternativa.
  • /scan-site: inicia uma verificação de segurança no servidor no site em produção e obtém o relatório mais recente. A duração da verificação depende do tamanho do site – sites pequenos terminam em minutos, sites grandes podem levar horas. Os achados são agrupados por gravidade. Requer um site implantado.
  • /manage-headers: inspeciona os cabeçalhos de segurança HTTP configurados em .powerpages-site/site-settings/: Política de Segurança de Conteúdo, X-Frame-Options, CORS, cookie SameSite e configurações relacionadas. Identifica valores ausentes ou fracos e propõe os padrões recomendados.
  • /manage-firewall: Inspeciona o WAF (firewall de aplicação web) do site de produção, incluindo o estado das regras gerenciadas e as regras personalizadas (bloqueios por IP, bloqueios por país, bloqueios por caminho, limites de taxa de requisições). Disponível somente em sites em produção nas regiões com suporte; o recurso detecta e relata problemas de elegibilidade.
  • /audit-permissions: Audita as permissões existentes da tabela em relação ao código do site e aos metadados do Dataverse. Identifica permissões ausentes, papéis excessivamente permissivos, permissões não utilizadas e problemas no esquema YAML.

O relatório consolidado agrupa as descobertas por seção, é aberto no navegador padrão e inclui diretrizes de correção em linguagem simples. A partir do chat, o plug-in passa a oferecer orientações para correções: escolha uma descoberta, e o plugin invoca interativamente a habilidade específica correspondente para aplicar a alteração.

Note

A revisão de segurança nunca aplica alterações automaticamente. Cada habilidade em foco é executada no modo de revisão somente para leitura durante a execução consolidada. Para aplicar uma correção, o plug-in invoca a habilidade correspondente interativamente depois que você escolhe a ação.

Tip

Você também pode executar qualquer skill específica isoladamente:

  • Execute /scan-code durante o desenvolvimento para detectar problemas de nível de código antecipadamente.
  • Execute /manage-headers para corrigir um erro específico da Política de Segurança de Conteúdo ou configurar o CORS.
  • Execute /manage-firewall para adicionar um limite de taxa na página de entrada ou bloquear o tráfego por país.
  • Execute /audit-permissions depois de alterar as permissões da tabela para verificar se elas ainda correspondem ao código do site.
  • Execute novamente /security-review com o objetivo Site implantado para monitorar um site de produção ao longo do tempo.

Verificar seu site

Depois de concluir as habilidades, verifique se o site do Power Pages funciona corretamente.

  1. Vá para Power Pages.
  2. Localize seu site na lista de sites ativos .
  3. Visualizar seu site na área de trabalho usando a opção Visualizar .
  4. Teste a funcionalidade.

Promover seu site entre ambientes

Depois que seu site funcionar em seu ambiente de desenvolvimento, use as habilidades de ALM (gerenciamento de ciclo de vida do aplicativo) para promovê-lo para ambientes de teste e produção. O plug-in empacota seu site como uma solução do Power Platform, identifica valores que variam entre ambientes e implanta a solução por meio de Pipelines do Power Platform ou por meio de exportação e importação manuais.

Para usar as habilidades de ALM, você também precisa de pelo menos um ambiente do Power Platform de destino (teste, produção ou ambos). Para usar o fluxo de Azure Key Vault opcional para segredos, você também precisa de permissão para criar um cofre de chaves em sua assinatura Azure.

Planejar a implantação

Execute /plan-alm para iniciar. /plan-alm é o ponto de entrada para ALM e orquestra as outras habilidades de ALM, portanto, você normalmente não as executa diretamente. O plug-in:

  1. Detecta o estado atual de seu projeto, solução e ambientes de destino.
  2. Pergunta sobre sua estratégia de promoção (Pipelines do Power Platform ou exportação e importação manual), os estágios de destino e quaisquer restrições a serem aplicadas.
  3. Gera um plano visual em docs/alm-plan.html que mostra todas as ações que pretende executar.
  4. Aguarda sua aprovação antes de executar qualquer habilidade downstream.

O plano persiste no disco, de modo que cada habilidade downstream lê e grava no mesmo plano persistente. Se uma fase falhar, execute /plan-alm novamente e ela será retomada de onde parou.

Criar a solução

Execute /setup-solution para empacotar seu site como uma solução do Power Platform. O plug-in:

  1. Cria um publicador e uma solução e, em seguida, adiciona seus componentes do Power Pages: o site, as funções da Web, os pontos de extremidade da lógica do servidor, os registros de fluxos da nuvem e as configurações do provedor OAuth.
  2. Classifica cada configuração do site por sensibilidade e propõe variáveis de ambiente para valores que variam entre ambientes.
  3. Oferece provisionar um Azure Key Vault e armazenar valores de tipo de credencial, como cadeias de conexão e chaves de API, nele.
  4. É executado no modo de sincronização quando já existe uma solução para seu site, para reconciliar componentes sem criar uma nova solução.

Examine e aprove a proposta. O plug-in não cria nenhuma configuração até que você confirme.

Tip

Se sua solução for muito grande ou emaranhada para ser implantada de forma confiável, o plug-in recomendará uma divisão e proporá onde dividi-la. Confirme a separação antes de aplicar as alterações.

Implante com os Pipelines do Power Platform

Se você escolheu o Power Platform Pipelines como sua estratégia de promoção, o plug-in executará estas habilidades:

  1. /ensure-pipelines-host provisiona ou detecta um ambiente host para o Power Platform Pipelines. O recurso escolhe a opção de menor custo disponível para seu locatário: um host gratuito da plataforma, o aplicativo Pipelines em um ambiente existente ou um host personalizado.
  2. /setup-pipeline registra uma definição de pipeline no Dataverse, configura os estágios escolhidos e associa cada estágio a um ambiente de destino.
  3. /deploy-pipeline aciona uma implantação para um estágio, aplica substituições de variáveis de ambiente por estágio por meio de deploymentSettings.json e acompanha o estado em um registro de implantação.

Se uma implantação falhar porque o ambiente de destino já está vinculado a um host diferente do Power Platform Pipelines, o plug-in pode executar /force-link-environment para reatribuí-lo. A ação requer seu consentimento explícito e é reversível.

Implantar com exportação e importação manual

Se você escolher o caminho manual, o plug-in será executado:

  1. /export-solution para exportar a solução como um ZIP gerenciado ou não gerenciado, com uma verificação de integridade antes da exportação.
  2. /import-solution para importar o ZIP para o ambiente de destino, em etapas para verificar primeiro as dependências, ou diretamente.

Ativar e validar o site implantado

Após uma implantação bem-sucedida no ambiente de destino, o plug-in:

  1. Executa /activate-site para provisionar a URL pública no ambiente de destino.
  2. É executado /test-site para verificar a implantação. O plug-in usa um navegador para rastrear páginas representativas, executar verificações de acesso baseadas em papéis, verificar chamadas /_api/ e capturar estruturas de resposta de pontos de extremidade /_api/serverlogics/. O recurso relata o resultado como PASS, WARNINGS ou FAIL, com detalhes de cada verificação vinculados no plano.

Se uma etapa falhar, o plug-in executa /diagnose-deployment. A funcionalidade compara a falha com um catálogo de erros de implantação conhecidos, como um manifesto desatualizado, dependências ausentes, conflitos de host, JavaScript bloqueado ou autenticação expirada, e propõe uma solução concreta. O plug-in nunca aplica uma correção sem o seu consentimento.

Note

Cada habilidade de ALM lê e grava artefatos em disco: o manifesto da solução, os dados do plano, o registro do pipeline, o registro de implantação e os resultados de teste. A orquestração é retomável e auditável. Para ver o que aconteceu em qualquer etapa, inspecione os artefatos.

Dicas e práticas recomendadas

As dicas a seguir ajudam você a aproveitar ao máximo o plug-in e o agente de codificação de IA ao criar sites do Power Pages.

Verifique a saída do terminal para verificar se há ferramentas ausentes na primeira execução

O plug-in fornece as habilidades e fluxos de trabalho, mas o agente de codificação de IA - GitHub Copilot CLI ou Claude Code - executa os comandos reais em seu computador. Ao usar essas ferramentas pela primeira vez, observe a saída do terminal de perto. O agente de codificação de IA executa comandos e scripts nos bastidores, e alguns desses comandos dependem de ferramentas que podem não ser instaladas em seu computador. Se uma etapa falhar, a saída do terminal geralmente mostrará qual ferramenta ou comando não foi possível encontrar.

Se você vir um erro como command not found ou is not recognized, instale a ferramenta ausente e dispare novamente o fluxo de trabalho. O agente de codificação de IA continua de onde parou assim que a ferramenta esteja disponível.

Examinar as propostas do agente antes de aprovar

O agente de codificação de IA apresenta propostas, como as do Arquiteto de Modelos de Dados e do Arquiteto de Permissões, antes de fazer alterações. O código e a configuração gerados pelo agente de codificação de IA podem ser imprecisos, portanto, examine, teste e valide cada proposta e todo o código gerado antes de aprová-lo ou implantá-lo.

  • Propostas de modelo de dados: verifique se os nomes de tabela, os tipos de coluna e as relações correspondem aos seus requisitos de negócios. É mais fácil ajustar uma proposta do que renomear colunas depois que os dados já estiverem inseridos.
  • Propostas de permissões: verifique se cada função tem o nível de acesso correto (criar, ler, atualizar, excluir) para cada tabela. Permissões de tabela excessivamente permissivas são um risco de segurança comum.
  • Código gerado: leia o código gerado e teste o site localmente antes de implantar. O código gerado por IA pode conter erros ou problemas de segurança.

Cole erros diretamente no contexto

Quando algo falhar, seja um erro de build, uma falha de implantação ou uma exceção de runtime no navegador, copie a saída de erro completa. Cole-o junto com uma breve descrição do que você estava fazendo. Quanto mais contexto você fornecer, mais rápido será a correção.

Exemplo: erro de build

I ran npm run build and got this error. Fix it.

error TS2339: Property 'jobTitle' does not exist on type 'JobPosting'.

  src/components/JobCard.tsx:24:31
    24   <Text>{posting.jobTitle}</Text>
                                 

Tip

Inclua o nome do arquivo, o comando que você executou e o que você esperava que acontecesse. O plug-in usa esse contexto para localizar o problema e aplicar uma correção direcionada em vez de adivinhar.

Compartilhar erros de API Web com a URL de solicitação completa

Um problema comum após a implantação é um 403 erro da API Web do Power Pages quando uma coluna não está habilitada para acesso à API. Quando encontrar esse erro, cole a URL de API completa e a resposta completa de erro JSON. A mensagem de erro informa exatamente qual tabela e coluna precisam ser corrigidas, e o plug-in pode atualizar a permissão de tabela YAML e as configurações do site para você.

Exemplo: Coluna não habilitada para API Web (403)

I'm getting a 403 error when the documents page loads. Here's the API call and the response. Fix the issue so this API works.

URL:
https://my-site.powerappsportals.com/_api/crd50_documents?$select=crd50_documentid,crd50_name,crd50_documentcategory,crd50_filetype,crd50_filesize,crd50_updateddate,crd50_description,_crd50_propertyid_value

Response:
{
  "error": {
    "code": "90040101",
    "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
    "innererror": {
      "code": "90040101",
      "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
      "type": "AttributePermissionIsMissing"
    }
  }
}

Esse erro (AttributePermissionIsMissing) significa que a coluna _crd50_propertyid_value de pesquisa existe na tabela Dataverse, mas não está listada na configuração de permissão de tabela para a API Web. O plug-in resolve esse erro adicionando a coluna ausente ao arquivo YAML de permissão da tabela em .powerpages-site/table-permissions/ e reimplantando.

Note

A API Web do Power Pages requer que todas as colunas retornadas por uma chamada à API sejam explicitamente listadas na permissão de tabela. As propriedades de pesquisa (prefixadas com _ e sufixadas com _value) são fáceis de ignorar porque o nome da API difere do nome lógico da coluna no Dataverse. Quando você vir AttributePermissionIsMissing, adicione sempre aquela coluna às permissões de tabela. Não altere a consulta de API.

Seja específico sobre o que você deseja

Solicitações vagas produzem resultados vagos. Informe ao plug-in exatamente o que você precisa, incluindo preferências de layout, campos de dados e comportamento.

Em vez de Experimentar
Criar uma página para empregos "Criar uma página de listagens de vagas com uma barra de pesquisa na parte superior, chips de filtro para local e departamento, e uma grade de cartões mostrando título, empresa, faixa salarial e data de publicação para cada vaga"
"Corrigir o estilo" "Os cartões de trabalho são empilhados verticalmente na área de trabalho. Faça com que eles sejam exibidos em uma grade de três colunas com margem de 16px em telas superiores a 768px
"Adicionar alguns dados" "Adicione 20 postagens de exemplo de trabalho em quatro departamentos (Engenharia, Marketing, Vendas, RH) com títulos realistas, faixas salariais entre US$ 60 mil e US$ 180 mil e datas postadas nos últimos 30 dias"
"Configurar a API" "Conecte o componente JobListings à tabela cr_jobposting Dataverse. Substitua a matriz codificada por uma chamada de API real que busca título, departamento, salário e data postada"
"Adicionar logon" Configure o login do ID externa do Microsoft Entra com registro aberto e o Google como segundo provedor. Mostre-os como uma linha horizontal na página de entrada."

Usar capturas de tela para problemas visuais

Quando o site não estiver bem no navegador, tire uma captura de tela e cole-a diretamente na conversa ou forneça um caminho de arquivo. O contexto visual ajuda a identificar problemas de layout, espaçamento e estilo difíceis de descrever no texto.

The header overlaps the hero section on mobile. Here's a screenshot:

[paste screenshot or provide path to screenshot file]

Fix the header so it doesn't overlap. It should be a fixed header with the content starting below it.

Iterar em etapas pequenas

Em vez de descrever um site inteiro em um prompt, compile incrementalmente. Comece com a estrutura e o layout e adicione recursos um de cada vez. Essa abordagem oferece a chance de revisar e corrigir o curso em cada etapa.

Step 1: /create-site → Get the basic scaffold and layout right
Step 2: "Add a hero section to the home page with a search bar"
Step 3: "Add a job listings page with filter and sort"
Step 4: "Add a job detail page that shows full description"
Step 5: /setup-datamodel → Create tables now that you know the data shape
Step 6: /integrate-webapi → Wire up real data

Tip

Após cada etapa, verifique a pré-visualização do navegador. Se algo não estiver certo, corrija-o antes de seguir em frente. É mais fácil corrigir problemas em um componente do que desembaraçar problemas em um site inteiro.

Pedir uma explicação antes de aprovar

Quando você não tiver certeza sobre uma alteração proposta, especialmente para permissões, modificações de modelo de dados ou configuração de autenticação, peça ao plugin que explique o que ele pretende fazer e por que antes de aprovar.

Before you create the table permissions, explain what access each role will have and why. I want to understand the security implications.

Executar habilidades de forma independente para se recuperar de problemas

Se uma habilidade falhar no meio do caminho, você não precisa recomeçar. Cada habilidade é executada de forma independente e pode continuar de onde parou. Por exemplo, se /integrate-webapi falhar na terceira tabela, você poderá executar novamente e ela detectará o trabalho já concluído.

/integrate-webapi failed while processing the cr_applications table. Here's the error: [paste error]. Resume the integration from where it stopped.