Guia de Contribuição de Squads
Como contribuir squads para o ecossistema AIOS.
Visão Geral
Existem duas formas de compartilhar seu squad com a comunidade:
- Repositório aios-squads - Squads gratuitos e open-source no GitHub
- Synkra Marketplace - Squads premium via API Synkra
Padrões de Qualidade
Todos os squads contribuídos devem atender a estes padrões:
Obrigatório
| Requisito | Descrição |
|---|---|
| Manifesto válido | squad.yaml passa validação JSON Schema |
| Documentação | README.md com instruções de uso |
| Licença | Licença open source (MIT, Apache 2.0, etc.) |
| Compatibilidade AIOS | aios.minVersion: "2.1.0" ou superior |
| Arquitetura task-first | Tasks como pontos de entrada principais |
Recomendado
| Recomendação | Descrição |
|---|---|
| Exemplos | Exemplos de uso no README |
| Testes | Testes unitários para funcionalidade crítica |
| Changelog | Documentação de histórico de versão |
| Solução de problemas | Problemas comuns e soluções |
Convenções de Nomenclatura
Nomes de Squad
- Use
kebab-case:my-awesome-squad - Seja descritivo:
etl-data-pipelinenãodata1 - Evite nomes genéricos:
helper-squadé muito vago - Sem números de versão no nome:
my-squadnãomy-squad-v2
Prefixo (slashPrefix)
O slashPrefix no squad.yaml determina prefixos de comando:
slashPrefix: etl # Comandos tornam-se *etl-extract, *etl-transformEscolha um prefixo único e curto (2-5 caracteres).
Requisitos do Manifesto
Campos Obrigatórios
# Estes campos são OBRIGATÓRIOS
name: my-squad
version: 1.0.0 # Versionamento semântico
description: Descrição clara do que este squad faz
aios:
minVersion: "2.1.0"
type: squad
components:
agents: [] # Pelo menos um agent OU task
tasks: []Campos Recomendados
# Estes campos são RECOMENDADOS
author: Seu Nome <email@example.com>
license: MIT
slashPrefix: my
tags:
- relevant
- keywords
dependencies:
node: []
python: []
squads: []Requisitos de Documentação
Estrutura do README.md
# Nome do Squad
Breve descrição (1-2 frases).
## Instalação
Como instalar/adicionar este squad.
## Uso
Exemplos básicos de uso.
## Comandos
| Comando | Descrição |
|---------|-----------|
| *cmd1 | O que faz |
| *cmd2 | O que faz |
## Configuração
Quaisquer opções de configuração.
## Exemplos
Exemplos detalhados de uso.
## Solução de Problemas
Problemas comuns e soluções.
## Licença
Informações da licença.Publicando no aios-squads
Pré-requisitos
- Conta GitHub
- Squad validado:
*validate-squad --strict - Nome de squad único (verifique squads existentes)
Passos
# 1. Validar seu squad
@squad-creator
*validate-squad my-squad --strict
# 2. Publicar (cria PR)
*publish-squad ./squads/my-squadIsso irá:
- Fazer fork de
SynkraAI/aios-squads(se necessário) - Criar branch com seu squad
- Abrir PR para revisão
Processo de Revisão
- Verificações automatizadas - Validação de schema, verificação de estrutura
- Revisão do mantenedor - Revisão de código, verificação de qualidade
- Merge - Squad adicionado ao registro
Prazo: Geralmente 2-5 dias úteis.
Publicando no Synkra Marketplace
Pré-requisitos
- Conta Synkra
- Token API configurado
- Squad validado
Passos
# 1. Configurar token
export SYNKRA_API_TOKEN="your-token"
# 2. Sincronizar com marketplace
@squad-creator
*sync-squad-synkra ./squads/my-squad --publicOpções de Visibilidade
| Flag | Efeito |
|---|---|
--private | Visível apenas para seu workspace |
--public | Visível para todos |
Atualizando Squads Publicados
Incremento de Versão
Siga versionamento semântico:
- MAJOR (1.0.0 → 2.0.0): Mudanças que quebram compatibilidade
- MINOR (1.0.0 → 1.1.0): Novos recursos, compatível com versões anteriores
- PATCH (1.0.0 → 1.0.1): Correções de bugs
Processo de Atualização
# 1. Atualizar versão no squad.yaml
# 2. Atualizar CHANGELOG.md
# 3. Validar
*validate-squad my-squad --strict
# 4. Re-publicar
*publish-squad ./squads/my-squad
# ou
*sync-squad-synkra ./squads/my-squadCódigo de Conduta
Faça
- Forneça documentação clara e precisa
- Teste seu squad antes de publicar
- Responda a issues e feedback
- Mantenha dependências mínimas
- Siga convenções do AIOS
Não Faça
- Incluir código malicioso
- Armazenar credenciais no código
- Copiar trabalho de outros sem atribuição
- Usar nomes ou conteúdo ofensivo
- Fazer spam no registro com squads de teste
Obtendo Ajuda
- Perguntas: GitHub Discussions
- Issues: Issue Tracker
- Diretrizes: Este documento
Recursos Relacionados
Versão: 1.0.0 | Atualizado: 2025-12-26 | Story: SQS-8