O que uma Habilidade de Agente de SME móvel contém e quando invocá-la - dez exemplos para equipes que usam assistentes de IA no Expo SDK 57 (expo ~57.0.4), React Native 0.86.0 e React 19.2.3. Estas páginas documentam habilidades, não código de aplicativo. Uma habilidade é um playbook SKILL.md que seu agente lê antes de agir.
Uma Habilidade de Agente é um arquivo de instrução estruturado - tipicamente SKILL.md - que diz a um assistente de IA o que fazer, o que pedir e o que não fazer em uma tarefa móvel.
Artefato da habilidade
Propósito
SKILL.md
Frases de gatilho, entradas, saídas, salvaguardas
references/
Links profundos opcionais para ADRs internos ou runbooks
examples/
Prompts de invocação que passaram por revisão
Habilidades não são tutoriais de recursos - são contratos operacionais para desenvolvimento assistido
Habilidades devem ser fixadas por SDK - agentes alucinam APIs mais antigas do expo-router sem contexto de versão explícito
Uma habilidade = um domínio de decisão (lançamento, roteamento, revisão de módulo nativo, triagem de incidentes)
Cada habilidade móvel deve começar com o mesmo esqueleto:
# Habilidade de Lançamento EAS## O que esta habilidade fazGuia build → submit → OTA com salvaguardas para SDK 57.## Quando invocar- Antes do primeiro `eas build` de produção- Ao adicionar um novo perfil `eas.json`- Ao planejar um hotfix apenas de JS vs binário da loja## Entradas (obrigatórias)- `eas.json`, `app.config.ts`, canal/branch de destino- Último `updateId` conhecido como bom para contexto de rollback## Saídas- Lista de verificação de etapas com comandos- Chamadas de risco (credenciais, runtimeVersion)- Comandos de verificação (`eas channel:view`, `npx expo-doctor`)## Salvaguardas- Nunca OTA mudanças que afetam o nativo sem `eas build`- Nunca envie para a trilha de produção sem um binário de QA interno## Pilha fixadaReact 19.2.3 · RN 0.86.0 · Expo SDK 57## Prompts de exemploVeja §10 abaixo.
Entradas impedem que o agente adivinhe IDs de bundle ou perca runtimeVersion
Saídas devem ser verificáveis - comandos, não prosa
Salvaguardas são a seção de maior valor - agentes automatizam excessivamente ações da loja sem elas
Antes de executar, uma habilidade bem escrita força o agente a coletar:
## Lista de verificação de entradas- [ ] Versões do expo/react/react-native do `package.json`- [ ] `app.config.ts` - esquema, bundleId, política de runtimeVersion- [ ] Perfis `eas.json` em escopo- [ ] Plataforma(s) de destino: ios | android | all- [ ] Modo CNG: diretórios nativos gerados vs ios/android verificados no commit- [ ] Contexto do incidente (se triagem): buildNumber, canal, delta de crash-free
Bundle ID / applicationId ausente quebra as habilidades Maestro e de envio
## Salvaguardas (SDK 57)1. Use `npx expo install` - nunca fixe manualmente versões de módulos Expo.2. OTA (`eas update`) apenas quando `runtimeVersion` corresponder aos binários da loja ao vivo.3. Mudanças de módulo nativo ou de permissão exigem `eas build`, não apenas OTA.4. Nunca cometa segredos - apenas ambientes EAS e segredos de CI.5. Execute `npx expo-doctor` antes de mesclar mudanças de dependência geradas pela habilidade.6. Não edite `ios/` / `android/` gerados sob CNG - use plugins de configuração.7. Pause o lançamento gradual/faseado da loja antes do binário de hotfix quando uma tempestade de crashes estiver ativa.
Salvaguardas convertem o entusiasmo do agente em disciplina de engenharia de lançamento
Agentes usam versões de dados de treinamento por padrão. Fixe explicitamente:
## Pilha fixada (obrigatório)| Pacote | Versão || --- | --- || react | 19.2.3 || react-native | 0.86.0 || expo | ~57.0.4 |## Específicos do SDK 57- Nova Arquitetura padrão no RN 0.86 - verifique habilidades de TurboModule contra builds com NA ativado.- `experiments.typedRoutes` gera `.expo/types/router.d.ts` - regen após mudanças em `app/`.- Fluxos EAS suportam trabalhos `type: maestro` - prefira sobre scripts shell ad-hoc.
Re-fixe habilidades a cada atualização de SDK - habilidades desatualizadas são piores do que nenhuma habilidade
Verifique a saída do agente com npx expo-doctor e npx expo install --check
# Alinhamento de dependência / nativonpx expo-doctor# Segurança de tipo (router, TS strict)npx tsc --noEmit# Portão de unidade/componentenpm run test:ci# Opcional E2E smoke (Maestro)maestro test .maestro/smoke.yml
Verificação
Detecta
expo-doctor
Descompasso de SDK, plugins mal configurados, configuração de app inválida
tsc
Rotas tipadas quebradas, Href inválido
Jest
Regressões na lógica de negócios que o agente refatorou
Maestro
Navegação e chrome nativo que o agente não mockou
Trate a saída da habilidade como um PR de engenheiro júnior - revise antes de mesclar
Use a habilidade EAS Release. Pilha: Expo SDK 57, RN 0.86.Entradas: eas.json anexado, canal de produção, último updateId bom abc123.Objetivo: Hotfix JS para cópia de checkout - confirme se OTA é seguro, então forneça os comandos.Salvaguardas: sem envio para a loja a menos que o doctor falhe em mudança nativa.
Expo Router:
Use a habilidade Expo Router. Adicione /settings/notifications com parâmetros tipados.Habilite experiments.typedRoutes. Forneça construtor de href + esquema de link profundo myapp://.Execute os passos de verificação do tsc.
Testes Móveis:
Use a habilidade Mobile Testing.Critérios de aceitação:- Convidado pode adicionar item ao carrinho- Badge do carrinho mostra contagemEntregue: 3 testes Jest + 1 fluxo Maestro. SDK 57, appId com.example.shop.
Upgrade de SDK:
Use a habilidade SDK Upgrade. Atualize expo 56 → 57.Produza lista de verificação ordenada com portões expo-doctor e escaneamento de quebra de compatibilidade.Não pule a regeneração do lockfile ou a recomendação de prebuild --clean.
Triagem de Incidentes:
Use a habilidade Incident Triage.Crash-free caiu de 99,2% para 94% após OTA de produção 30 min atrás.buildNumber 240012, iOS faseado em 50%. Árvore de decisão: rollback OTA vs pausa vs hotfix binário.
As Habilidades de Agente são o mesmo que plugins de configuração do Expo?
Não. Plugins de configuração modificam projetos nativos no prebuild. Habilidades de Agente instruem assistentes de IA sobre como executar fluxos de trabalho da equipe com segurança. Você pode invocar a Habilidade de Módulo Nativo para revisar um plugin de configuração - camadas diferentes.
As habilidades devem residir no repositório do aplicativo ou em um registro central?
Repositório do aplicativo para convenções específicas do projeto eas.json e de roteamento. Registro central para playbooks de lançamento e incidentes em toda a organização. Sempre fixe a versão do SDK em ambos.
Uma SKILL.md pode cobrir toda a pilha móvel?
Evite isso. Divida por domínio de decisão para que as salvaguardas permaneçam afiadas. Uma habilidade monolítica dilui as fronteiras OTA vs nativas e produz automação insegura.
Com que frequência devemos atualizar as habilidades?
A cada atualização de SDK, a cada mudança na política de runtimeVersion, e após qualquer postmortem que revele uma salvaguarda perdida. Execute npx expo-doctor na seção de verificação da habilidade.