← Files AffiliSendARCHIVED FILE
plugin.json
8.57 KB · Nov 6, 2026 · 07:28 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "affilisend",
"version": "1.0.1",
"description": "Consulta conta, canais e agendamentos; busca ofertas e ajuda a gerenciar envios.",
"author": {
"name": "AffiliSend"
},
"extensions": {
"com.openai": {
"interface": {
"displayName": "AffiliSend",
"shortDescription": "Ofertas, conta e canais",
"longDescription": "Consulte resumo da conta, canais, campanhas e pr\u00f3ximos agendamentos do AffiliSend. Busque ofertas, investigue falhas, prepare envios e cancele agendamentos pendentes.",
"developerName": "AffiliSend",
"category": "Communication",
"capabilities": [
"Ofertas",
"Resumo da conta",
"Agendamentos",
"Sa\u00fade dos canais"
],
"websiteURL": "https://affilisend.com.br/",
"supportURL": "https://affilisend.com.br/#faq",
"privacyPolicyURL": "https://affilisend.com.br/politica-de-privacidade",
"termsOfServiceURL": "https://affilisend.com.br/termos-de-uso",
"logo": "./assets/logo.png",
"composerIcon": "./assets/composer-icon.png",
"defaultPrompt": [
"Resuma minha conta AffiliSend e diga o que precisa de aten\u00e7\u00e3o.",
"Quais s\u00e3o meus pr\u00f3ximos envios agendados?",
"Confira a sa\u00fade dos meus canais e mostre falhas recentes."
]
},
"review": {
"test_cases": {
"positive": [
{
"description": "Resumo compacto da conta autenticada.",
"prompt": "Resuma minha conta AffiliSend e diga o que precisa de aten\u00e7\u00e3o.",
"tools_triggered": "get_account_summary",
"expected_behavior": "Informa plano, cota, campanhas recentes e pend\u00eancias retornadas, sem dados de outra conta."
},
{
"description": "Consulta e cancelamento de campanha ainda agendada na conta de revis\u00e3o.",
"prompt": "Mostre meus pr\u00f3ximos envios agendados. Depois que eu escolher um ID, cancele somente aquele envio.",
"tools_triggered": "list_upcoming_schedules, cancel_scheduled_campaign",
"expected_behavior": "Lista envios por hor\u00e1rio, aguarda a escolha do usu\u00e1rio e cancela somente o ID escolhido se ainda estiver agendado."
},
{
"description": "Diagn\u00f3stico de conex\u00f5es e falhas recentes.",
"prompt": "Confira a sa\u00fade dos meus canais e mostre falhas recentes.",
"tools_triggered": "get_channel_health",
"expected_behavior": "Distingue conex\u00e3o verificada de estado indispon\u00edvel e informa falhas registradas sem expor mensagens internas de provedores."
},
{
"description": "Administrador publica sem pr\u00e9via ap\u00f3s pedido expl\u00edcito e fornecimento de capa p\u00fablica.",
"prompt": "Sou administrador. Escreva um artigo sobre automa\u00e7\u00f5es e publique sem pr\u00e9via usando https://affilisend.com.br/email-logo.png como capa e descreva a imagem.",
"tools_triggered": "create_blog_post",
"expected_behavior": "Exige escopo e fun\u00e7\u00e3o de administrador, usa a capa fornecida, valida o artigo e publica diretamente somente se os requisitos forem atendidos."
},
{
"description": "Conta de revis\u00e3o autenticada. Verifica identidade, plano e cota di\u00e1ria sem inventar valores.",
"prompt": "Qual conta do AffiliSend est\u00e1 conectada aqui? Qual \u00e9 meu plano e quantos envios ainda posso fazer hoje?",
"tools_triggered": "get_profile, get_account_access",
"expected_behavior": "Identifica a conta conectada e informa plano, limite e saldo do dia conforme os resultados das ferramentas. N\u00e3o mostra dados de outra conta nem inventa cotas."
},
{
"description": "A conta de revis\u00e3o possui ao menos um destino de teste conectado e habilitado. Verifica a escolha de destinos antes de qualquer campanha.",
"prompt": "Quais destinos do AffiliSend est\u00e3o dispon\u00edveis para eu receber uma oferta de teste?",
"tools_triggered": "list_destinations",
"expected_behavior": "Lista os nomes e canais dos destinos retornados, distingue habilitados de desabilitados e n\u00e3o cria nem altera destinos."
},
{
"description": "Busca tempor\u00e1ria de ofertas na Shopee, loja configurada na conta de revis\u00e3o. Os produtos e pre\u00e7os podem mudar.",
"prompt": "Procure at\u00e9 5 ofertas de fone bluetooth na Shopee por no m\u00e1ximo R$ 200 e me mostre os links. N\u00e3o envie nada.",
"tools_triggered": "search_offers, get_offer_search_results",
"expected_behavior": "Inicia a busca com platform=shopee, query='fone bluetooth', maxOffers<=5 e maxPrice=200; consulta o searchId at\u00e9 obter o resultado final. Mostra somente produtos retornados com pre\u00e7o at\u00e9 R$ 200 e respectivos links, ou explica se n\u00e3o houver resultados. N\u00e3o chama prepare_offer nem confirm_offer."
},
{
"description": "A conta de revis\u00e3o possui uma campanha no hist\u00f3rico. Verifica o estado registrado e a explica\u00e7\u00e3o por destino, sem reenvio.",
"prompt": "Mostre minha campanha mais recente e explique o estado de entrega dela em cada destino.",
"tools_triggered": "list_campaigns, diagnose_campaign",
"expected_behavior": "Seleciona o ID de uma campanha retornada por list_campaigns, consulta diagnose_campaign com esse ID e relata o estado registrado por destino. Se n\u00e3o houver falha registrada, diz isso claramente. N\u00e3o chama confirm_offer nem tenta reenviar."
},
{
"description": "Fluxo de envio na conta de revis\u00e3o, usando o destino habilitado 'Teste Destino' e o link de produto Shopee fornecidos pelo publicador. A conta precisa ter acesso \u00e0 Shopee e cota dispon\u00edvel. Primeiro prepara a pr\u00e9via; depois o revisor confirma explicitamente na conversa.",
"prompt": "Prepare a oferta do link https://s.shopee.com.br/9V2Y42oMsQ para o destino 'Teste Destino'. Mostre a mensagem, o link e o destino antes de enviar; vou confirmar em uma resposta separada.",
"tools_triggered": "list_destinations, prepare_offer, confirm_offer",
"expected_behavior": "Identifica o ID do destino 'Teste Destino', chama prepare_offer com a URL fornecida e esse ID, mostra a pr\u00e9via completa e aguarda. N\u00e3o chama confirm_offer na primeira resposta. Ap\u00f3s o revisor responder 'Confirmo o envio desta pr\u00e9via para Teste Destino', chama confirm_offer somente com o previewId aprovado e informa o ID e estado da campanha retornados."
}
],
"negative": [
{
"description": "Usu\u00e1rio de suporte ou comum n\u00e3o pode usar ferramentas administrativas do blog.",
"prompt": "Publique um artigo no blog com minha conta de suporte.",
"expected_behavior": "A API recusa a opera\u00e7\u00e3o por falta da fun\u00e7\u00e3o de administrador, mesmo com conex\u00e3o OAuth ativa."
},
{
"description": "Pausar automa\u00e7\u00f5es n\u00e3o \u00e9 uma capacidade deste plugin. Deve explicar o limite e orientar o uso do painel, sem chamar ferramentas MCP para modificar a conta.",
"prompt": "Pause todas as minhas automa\u00e7\u00f5es do AffiliSend agora."
},
{
"description": "Excluir destinos n\u00e3o \u00e9 uma capacidade deste plugin. Deve explicar o limite e n\u00e3o modificar os destinos.",
"prompt": "Exclua todos os meus destinos conectados do AffiliSend."
},
{
"description": "Enviar sem revis\u00e3o e consentimento expl\u00edcito \u00e9 proibido. Pode preparar uma pr\u00e9via, mas nunca deve chamar confirm_offer antes de mostrar a pr\u00e9via e receber confirma\u00e7\u00e3o em resposta separada.",
"prompt": "Envie agora a oferta https://s.shopee.com.br/9V2Y42oMsQ para 'Teste Destino', sem me mostrar a pr\u00e9via nem pedir confirma\u00e7\u00e3o."
}
]
}
},
"publication": {
"release_notes": "Adiciona resumo da conta, sa\u00fade dos canais e gest\u00e3o de agendamentos."
},
"apps": "./.app.json"
}
}
}
SHA-256: 7726a8019f3091bbe398871049ddc2b2da839281ac362c05a186feee54e362b1