AI Pair Programmer (Ruby)
Ferramentas com inteligência artificial para revisão de código, brainstorming, análise de desempenho e revisão de segurança em Ruby.
Documentação
AI Pair Programmer MCP Server (Ruby)
Uma implementação em Ruby de um servidor MCP (Model Context Protocol) do AI Pair Programmer que fornece ferramentas com IA para revisão de código, brainstorming, análise de desempenho e revisão de segurança.
Recursos
Este servidor fornece 5 ferramentas com IA:
- pair - Colaboração geral e resolução de problemas
- review - Revisão abrangente de código com feedback acionável
- brainstorm - Ideação criativa e exploração de soluções
- review_performance - Análise de desempenho e sugestões de otimização
- review_security - Revisão de código focada em segurança e detecção de vulnerabilidades
Instalação e Configuração
Pré-requisitos
- Ruby 3.0+
- Uma chave de API do OpenRouter
Instalação Automática
O servidor usa bundler inline para instalação automática de gems. Gems necessárias:
fast-mcp- Framework de servidor MCP em Rubyruby_llm- Interface unificada de modelos de IA
Configuração
- Defina sua chave de API do OpenRouter:
export OPENROUTER_API_KEY="your_api_key_here"
Executando o Servidor
ruby ./server.rb
O servidor irá:
- Instalar automaticamente gems ausentes na primeira execução
- Iniciar com transporte STDIO para clientes MCP
- Registrar em STDERR, que deve ser salvo pelo seu Host MCP.
Se o MCP falhar ao iniciar ao lançar o Claude Code, provavelmente é devido a timeout. O bundler está instalando dependências. Para corrigir isso, defina uma variável de ambiente MCP_TIMEOUT=10000 (10s) ou inicie o servidor MCP no terminal primeiro.
Configuração
Modelos
O servidor suporta estes modelos de IA via OpenRouter:
- Gemini (padrão) -
google/gemini-2.5-pro-preview - O3 -
openai/o3 - Grok -
x-ai/grok-3-beta - DeepSeek -
deepseek/deepseek-r1-0528 - Opus -
anthropic/claude-opus-4
Configuração do Cliente MCP
Claude Desktop
Adicione ao seu claude_desktop_config.json:
{
"mcpServers": {
"AiPairProgrammer": {
"command": "ruby",
"args": ["/path/to/server.rb"]
}
}
}
Exemplos de Uso
Depois de conectado a um cliente MCP:
Revisão de Código
Please review this Ruby code for best practices and potential issues:
def process_data(items)
items.map { |item| item.upcase }
end
Análise de Desempenho
Can you analyze this code for performance bottlenecks?
def find_duplicates(array)
duplicates = []
array.each do |item|
if array.count(item) > 1 && !duplicates.include?(item)
duplicates << item
end
end
duplicates
end
Revisão de Segurança
Please check this authentication code for security vulnerabilities:
def authenticate(username, password)
user = User.find_by(username: username)
if user && user.password == password
session[:user_id] = user.id
true
else
false
end
end
Brainstorming
I need ideas for improving user onboarding in my Ruby on Rails app. The current flow has a 60% drop-off rate.
Colaboração Geral
I'm struggling with this algorithm problem. Can you help me think through it step by step?
Arquitetura
O servidor é construído com:
- FastMcp - Framework de servidor MCP em Ruby com transporte STDIO
- RubyLLM - Interface unificada para modelos de IA via OpenRouter
- Inline Bundler - Instalação automática de gems para implantação fácil
Licença
MIT License
Trabalho anterior:
AI Assistant MCP Server por Eduard https://github.com/eduardm/ai_pairs_with_ai
Contribuindo
- Faça um fork do repositório
- Crie um branch de feature
- Faça suas alterações
- Teste com
ruby test_server.rb - Envie um pull request