Skip to main content

Framework para automação de fluxo de criação de features TDD usando agentes de IA

Project description

Agent Flow TDD

Framework para automação de fluxo de features TDD usando agentes de IA.

🚀 Funcionalidades

  • Geração de features com critérios de aceite e cenários de teste
  • Análise de complexidade e estimativas
  • Suporte a múltiplos modelos de IA (GPT-3.5, GPT-4)
  • Interface CLI com modo interativo e MCP (Multi-Command Protocol)
  • Saída em formatos JSON e Markdown

📋 Pré-requisitos

  • Python 3.13+
  • Chave de API OpenAI (OPENAI_KEY)
  • Ambiente virtual Python (venv)

🛠️ Instalação

  1. Clone o repositório:
git clone https://github.com/seu-usuario/agent-flow-tdd.git
cd agent-flow-tdd
  1. Crie e ative o ambiente virtual:
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
# ou
.venv\Scripts\activate  # Windows
  1. Instale as dependências:
make install
  1. Configure a variável de ambiente OPENAI_KEY:
export OPENAI_KEY="sua-chave-aqui"

🎮 Comandos Disponíveis

make install

Instala todas as dependências do projeto.

make install

make test

Executa todos os testes do projeto.

make test

make cli

Inicia o CLI para processamento de features.

make cli

# Exemplos de uso:
cli feature "Criar sistema de login com autenticação de dois fatores"
cli feature "Criar sistema de cadastro de usuários" --model gpt-4-turbo
cli feature "Criar API REST" --format markdown
cli status

Opções do comando feature:

  • --model, -m: Modelo a ser usado (default: gpt-3.5-turbo)
  • --elevation-model, -e: Modelo para fallback (default: gpt-4-turbo)
  • --force, -f: Força uso do modelo sem fallback
  • --api-key, -k: Chave da API (opcional)
  • --timeout, -t: Tempo limite em segundos (default: 30)
  • --max-retries, -r: Máximo de tentativas (default: 3)
  • --temperature, -temp: Temperatura do modelo (default: 0.7)
  • --max-tokens, -mt: Limite de tokens (opcional)
  • --format, -fmt: Formato de saída (json/markdown)

Protocolo MCP (Model Context Protocol)

O projeto agora suporta o Model Context Protocol oficial, permitindo:

  • Integração padronizada com diferentes modelos de IA
  • Comunicação bidirecional via protocolo MCP
  • Suporte a streaming e eventos assíncronos

Como Funciona

  1. Inicie o modo MCP:
cli mcp
  1. Envie mensagens no formato MCP:
{
  "content": "Criar sistema de login",
  "metadata": {
    "type": "feature",
    "options": {
      "model": "gpt-4-turbo",
      "temperature": 0.7,
      "format": "json"
    }
  }
}
  1. Receba respostas no formato MCP:
{
  "content": {
    "feature": "Sistema de Login",
    "acceptance_criteria": [...],
    "test_scenarios": [...],
    "complexity": 3
  },
  "metadata": {
    "status": "success",
    "type": "feature"
  }
}

🤖 Integração de Modelos

O projeto usa o Model Context Protocol para integração com diferentes modelos:

1. Via SDK MCP

from mcp_sdk import MCPHandler
from src.app import AgentOrchestrator

handler = MCPHandler()
handler.initialize(api_key="sua-chave")
handler.run()

2. Via CLI

# OpenAI GPT-4
cli feature "Criar API" --model gpt-4-turbo --api-key $OPENAI_KEY

# Anthropic Claude
cli feature "Criar API" --model claude-3 --api-key $ANTHROPIC_KEY

3. Via MCP

Especifique o modelo nas options:

{
  "content": "Criar API REST",
  "metadata": {
    "type": "feature",
    "options": {
      "model": "gpt-4-turbo",
      "api_key": "sua-chave",
      "temperature": 0.7
    }
  }
}

Modelos Suportados

Atualmente:

  • OpenAI GPT-3.5 Turbo
  • OpenAI GPT-4 Turbo
  • Anthropic Claude (via MCP)
  • Outros modelos compatíveis com MCP

🧪 Testes

O projeto usa pytest para testes. Execute:

make test

📝 Logs

Os logs são gerados automaticamente com:

  • Nível INFO para entrada/saída de funções
  • Nível DEBUG para estados intermediários
  • Nível ERROR para exceções (com stacktrace)

🔒 Variáveis de Ambiente

  • OPENAI_KEY: Chave da API OpenAI (obrigatória)
  • ELEVATION_MODEL: Modelo para fallback (opcional)

🤝 Contribuindo

  1. Fork o projeto
  2. Crie sua branch de feature (git checkout -b feature/MinhaFeature)
  3. Commit suas mudanças (git commit -m 'Adiciona MinhaFeature')
  4. Push para a branch (git push origin feature/MinhaFeature)
  5. Abra um Pull Request

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_flow_tdd-2025.4.1.1.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_flow_tdd-2025.4.1.1-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file agent_flow_tdd-2025.4.1.1.tar.gz.

File metadata

  • Download URL: agent_flow_tdd-2025.4.1.1.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for agent_flow_tdd-2025.4.1.1.tar.gz
Algorithm Hash digest
SHA256 62173a9eee9d0059a9decdb68b2655cb341563134b0d71a2e5b7246865dd9257
MD5 e6d7029bfe471489804e80f7212ac28b
BLAKE2b-256 be7fd57dbeb0ff8cad91508b07b3bfa0b3890e86218e0ce80cc73a117c89f4f1

See more details on using hashes here.

File details

Details for the file agent_flow_tdd-2025.4.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_flow_tdd-2025.4.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3459972eb478ce4835c9847ee31afd4cb9f50384a7b11cd03024f3c43a615069
MD5 d77ef87de0b3aa64b79b2603b88e8933
BLAKE2b-256 94faa023d4a282755e572812a68e49aefdd473c667e7efa1b3f9b8cda75f8da3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page