Mainline

Fornece ao seu agente de IA o mapa da história e os critérios de aceitação dado/quando/então. Somente leitura.

Documentação

Programação com IA

Como funciona

Seu assistente de programação com IA se conecta ao Mainline e lê o seu mapa de histórias de usuário. Ele vê as atividades, tarefas, histórias e critérios de aceitação. Em seguida, trabalha em uma história por vez.

Quando o código é implantado, o LLM pode relatar a implantação automaticamente se você configurar o webhook de implantação (nas configurações da sua equipe) e fornecer ao LLM o token de implantação. Você decide quando lançar.

O que o LLM pode fazer

  • Ler a estrutura do mapa: atividades, tarefas, histórias, fatias de release, personas
  • Ler os detalhes de uma história: descrição, cenários (dado/quando/então, cada um com seu estado verificado/concluído), histórico de implantação
  • Relatar uma implantação via API do webhook (se você fornecer o token de implantação)

O que só você faz

  • Projetar a jornada do usuário
  • Escrever as histórias e critérios de aceitação
  • Lançar histórias para os usuários
  • Decidir em que trabalhar a seguir

Esteja você programando com assistência de LLM ou não, recomendamos o desenvolvimento orientado a testes. Comece com um cenário no estilo BDD que descreva o comportamento e, em seguida, escolha o tipo certo de teste para o que está sendo verificado, por exemplo, unitário, de aceitação ou de contrato.

  • A estratégia de teste em 4 camadas (casos de teste, DSL, drivers, SUT) descrita em Humble, J. e Farley, D. (2010) Continuous Delivery. Boston: Addison-Wesley. A camada DSL funciona particularmente bem com LLMs. Ela mantém o contexto do teste em linguagem de domínio em vez de implementação de baixo nível, para que o LLM escreva testes significativos sem acoplamento a detalhes internos.
  • Desenvolvimento Orientado a Comportamento, descrito em Smart, J.F. (2014) BDD in Action. Shelter Island: Manning. Cenários escritos como dado/quando/então mapeiam diretamente para o que o Mainline armazena em cada história. O LLM lê os cenários e sabe exatamente o que testar.

Isso funciona quando você tem critérios de aceitação em suas histórias e uma suíte de testes que o LLM possa executar. Sem ambos, o LLM está adivinhando e você não tem como verificar o trabalho dele. Se você ainda não tem isso, comece com as práticas acima antes de conectar um assistente de IA.

Configuração (Claude Code)

  1. Vá para as configurações da sua equipe e gere um token MCP.
  2. Execute isto no diretório do seu projeto:
    claude mcp add --transport http mainline \
      https://mainline.dev/mcp/YOUR_TEAM_ID \
      --header "Authorization: Bearer YOUR_MCP_TOKEN"
    
  3. Opcionalmente, forneça ao LLM o token do webhook de implantação para que ele possa relatar implantações. O servidor MCP inclui a URL do webhook nas respostas das histórias.

Configuração (outros clientes MCP)

Para editores e ferramentas que usam um arquivo de configuração JSON, adicione isto à sua configuração MCP:

{
  "mcpServers": {
    "mainline": {
      "url": "https://mainline.dev/mcp/YOUR_TEAM_ID",
      "transport": "streamable-http",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_TOKEN"
      }
    }
  }
}

Ferramentas disponíveis

list_maps

Lista todos os mapas da sua equipe. Comece aqui para obter o ID do mapa.

get_map

Retorna a hierarquia completa do mapa: atividades, tarefas e histórias com seu status e posição. Também inclui personas e fatias de release. Isso dá ao LLM a visão geral do seu produto.

get_story

Retorna o detalhe completo de uma única história: descrição, cenários (critérios de aceitação dado/quando/então), contagem de implantações e a URL do webhook de implantação. É isso que o LLM lê antes de começar a trabalhar em uma história.

O fluxo de trabalho

  1. O LLM chama list_maps e depois get_map para ver o trabalho.
  2. Você diz a ele em qual história trabalhar (ou ele escolhe a próxima ativa).
  3. Ele chama get_story para ler os critérios de aceitação.
  4. Ele escreve os testes e o código, guiado pelos cenários.
  5. O código é implantado. Se ele tiver o token do webhook, ele relata a implantação.
  6. Você verifica o trabalho e lança a história quando estiver pronto.

Implantação e lançamento são eventos separados - use feature flags, lançamento escuro ou branch por abstração para desacoplá-los.

Privacidade

O token MCP fornece acesso somente leitura. Nenhuma informação pessoal é exposta. As atribuições de histórias mostram uma contagem, não nomes. O LLM não pode modificar seu mapa, criar histórias ou marcar qualquer coisa como lançada no Mainline.

Segurança

O token MCP e o token do webhook de implantação são separados. Você pode dar ao LLM acesso de leitura sem acesso de implantação, ou ambos. Os tokens são mostrados apenas uma vez quando gerados.