
amazon_q_dev
Tutorial completo expondo a instalaçao e uso do Amazon Q Developer
Repository Info
About This Server
Tutorial completo expondo a instalaçao e uso do Amazon Q Developer
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Amazon Q Developer
!Amazon Q Developer
Uma Ferramenta de IA para Desenvolvedores
📋 Índice
- O que é o Amazon Q Developer?
- Instalação
- Pré-requisitos
- Ambientes Suportados
- Métodos de Instalação
- Instalação no Windows com WSL
- Configuração Inicial
- Funcionalidades Principais
- Chat no Terminal
- Perguntas Diretas
- Transformação de Código
- Integração com o Editor
- Recursos Avançados
- Perfis de Contexto
- Hooks de Contexto
- Configurações
- Autocompletar
- Preços
- Dicas Avançadas
- Contribuindo
- Recursos Adicionais
O que é o Amazon Q Developer?
O Amazon Q Developer é um assistente de IA conversacional projetado para aumentar a produtividade dos desenvolvedores. Ele oferece:
- ✨ Recomendações de código em tempo real
- 🔍 Auxílio na compreensão de código
- 🔄 Transformação e refatoração de código
- 🛠️ Integração com ambientes de desenvolvimento
- 💻 Interface de linha de comando (CLI)
!Capacidades de Transformação
Instalação
Pré-requisitos
- Node.js versão 18.0.0 ou superior
- npm ou yarn
Ambientes Suportados
A CLI do Amazon Q Developer funciona em:
- macOS
- Windows
- Linux
- WSL (Windows Subsystem for Linux)
Métodos de Instalação
Via npm:
npm install -g @aws/amazon-q-developer
Via yarn:
yarn global add @aws/amazon-q-developer
Verificando a instalação:
q --version
Instalação no Windows com WSL
Configurando o WSL no Windows
-
Habilite o WSL no Windows:
- Abra o PowerShell como administrador
- Execute o comando:
wsl --install- Reinicie o computador após a instalação
-
Instale uma distribuição Linux:
- Abra a Microsoft Store
- Pesquise por "Ubuntu" e instale (recomendado Ubuntu 20.04 LTS ou mais recente)
- Inicie o Ubuntu e configure seu nome de usuário e senha quando solicitado
Instalando Node.js no WSL
Atualize os repositórios:
sudo apt update && sudo apt upgrade -y
Instale o Node.js e npm:
# Usando curl para adicionar o repositório Node.js
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
# Instale o Node.js (versão 18 ou superior é necessária)
sudo apt install -y nodejs
Verifique a instalação:
node --version # Deve mostrar v18.x.x ou superior
npm --version # Verifique a versão do npm
Instalando o Amazon Q Developer no WSL
Instale a CLI do Amazon Q Developer:
sudo npm install -g @aws/amazon-q-developer
Verifique a instalação:
q --version
Configurando as Credenciais AWS no WSL
Instale o AWS CLI (se ainda não estiver instalado):
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
sudo apt install -y unzip
unzip awscliv2.zip
sudo ./aws/install
Configure suas credenciais AWS:
aws configure
- Insira sua AWS Access Key ID
- Insira sua AWS Secret Access Key
- Região padrão: us-east-1 (ou sua região preferida)
- Formato de saída padrão: json
Faça login no Amazon Q Developer:
q auth login
Solução de Problemas Comuns no WSL
1. Erro de permissão ao instalar pacotes globais:
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
Tente instalar novamente:
sudo npm install -g @aws/amazon-q-developer
2. Problemas de conexão com a internet:
- Verifique a configuração de DNS do WSL:
cat /etc/resolv.conf
- Se necessário, adicione servidores DNS:
echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
3. Path do WSL não encontra o comando 'q'
- Verifique onde o npm instalou o binário:
which q
- Se não encontrar, adicione manualmente ao PATH:
echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bashrc
source ~/.bashrc
Usando o Amazon Q Developer entre Windows e WSL
1. Acesse arquivos do Windows no WSL
- Os arquivos do Windows ficam disponíveis em
/mnt/c/no WSL - Exemplo para analisar um arquivo do Windows:
q transform /mnt/c/Users/SEU_USUARIO/projeto/app.js --prompt "Adicione comentários"
2. Configurando um alias para facilitar o uso
echo 'alias qdev="q"' >> ~/.bashrc
source ~/.bashrc
Configuração Inicial
Autenticação AWS
O Amazon Q Developer requer autenticação com suas credenciais AWS:
-
Configure o AWS CLI:
aws configure -
Inicie o Amazon Q Developer:
q auth login -
Caso precise desconectar:
q auth logout
Funcionalidades Principais
1. Chat no Terminal
q chat
Inicia uma sessão de chat interativa no terminal, onde você pode fazer perguntas sobre desenvolvimento, AWS e muito mais.
Comandos durante o chat:
| Comando | Descrição |
|---|---|
/clear | Limpa o histórico da conversa |
/reset | Reinicia a conversa |
/quit ou /exit | Sai do chat |
/help | Exibe comandos disponíveis |
Exemplo de uso:
$ q chat
> Como posso criar uma função Lambda em Python?
Para criar uma função Lambda em Python, você precisa:
1. Definir uma função handler
2. Configurar as permissões IAM
3. Fazer upload do código...
2. Perguntas Diretas
q ask "Como implementar autenticação em uma API REST?"
Permite fazer perguntas diretamente sem iniciar uma sessão de chat.
3. Transformação de Código (MCP - Modular Code Prompting)
q transform <arquivo> --prompt "Adicione tratamento de erros"
Permite modificar arquivos de código existentes com instruções em linguagem natural.
Exemplo:
q transform app.py --prompt "Adicione documentação ao código"
Resultado:
- Adiciona comentários de documentação ao arquivo app.py
- Preserva a funcionalidade original
- Melhora a legibilidade
4. Integração com o Editor
O Amazon Q Developer pode ser usado diretamente em editores como VS Code ou JetBrains.
!Integração com JetBrains
Comandos do editor:
q editor add-comment <arquivo>
Adiciona comentários a um arquivo de código.
q editor explain <arquivo>
Explica o funcionamento do código em um arquivo.
Recursos Avançados
Perfis de Contexto
Os perfis de contexto permitem personalizar o comportamento do Amazon Q Developer para projetos específicos.
Criando um perfil:
q context profiles create --name meu-projeto
Adicionando arquivos ao perfil:
q context profiles add-files --name meu-projeto --files "src/**/*.js"
Usando um perfil no chat:
q chat --profile meu-projeto
Hooks de Contexto
Os hooks de contexto permitem adicionar informações automaticamente às suas conversas.
Configurando um hook:
q context hooks create --name "documentacao" --text "Considere a documentação oficial da AWS"
Ativando um hook:
q context hooks toggle documentacao
Configurações
Listando configurações:
q settings list
Alterando configurações:
q settings set code.language python
Principais configurações disponíveis:
| Configuração | Descrição |
|---|---|
chat.temperature | Controla a criatividade das respostas (0.0 a 1.0) |
code.language | Define a linguagem de programação preferida |
editor.defaultPrompt | Define o prompt padrão para comandos do editor |
Autocompletar
Para habilitar o autocompletar de comandos no shell:
Bash:
q autocomplete bash > ~/.q-completion.bash
echo 'source ~/.q-completion.bash' >> ~/.bashrc
Zsh:
q autocomplete zsh > ~/.q-completion.zsh
echo 'source ~/.q-completion.zsh' >> ~/.zshrc
PowerShell:
q autocomplete powershell > ~\.q-completion.ps1
echo '. ~\.q-completion.ps1' >> $PROFILE
Preços do Amazon Q Developer
| Nível | Preço | Limite de LOC (Java) | Preço por LOC adicional |
|---|---|---|---|
| Gratuito | Grátis | 1 000 LOC/mês por usuário | — |
| Pro | US$ 19/mês por usuário | 4 000 LOC/mês por usuário (agregado na conta) | US$ 0,003 por LOC |
| Recurso | Gratuito | Pro (US$ 19/mês/usuário) |
|---|---|---|
| Sugestões automáticas de código | ✔️ Incluído | ✔️ Incluído |
| Chat (perguntas e respostas) | 50 interações/mês | ✔️ Ilimitado |
| Chat (codificação de agentes) | Uso gratuito até 1/6/2025* | Uso gratuito até 1/6/2025* |
| Agentes de dev. de software (vuln. & qualidade de código)* | 10 invocações/mês | ✔️ Ilimitado |
| Transformação Java** | 1 000 LOC/mês | 4 000 LOC/mês; LOC extra a US$ 0,003/LOC |
| Personalização de recomendações inline e chat | ❌ Não disponível | ✔️ Incluído |
| Recurso | Gratuito | Pro |
|---|---|---|
| Perguntas e respostas gerais | ✔️ Incluído | ✔️ Incluído |
| Seleção de instâncias do EC2 | ✔️ Incluído | ✔️ Incluído |
| SQL generativo | 1 000 consultas/ conta/mês | ✔️ Ilimitado |
| Diagnóstico de erros comuns | ✔️ Incluído | ✔️ Incluído |
| Análise de acessibilidade de rede | 20 solicitações/dia | ✔️ Ilimitado |
| Integração de dados | ✔️ Incluído | ✔️ Incluído |
| Investigações operacionais (prévia) | ✔️ Incluído | ✔️ Incluído |
| Chat com contexto da conta e recursos AWS | 25 conversas/mês/conta | ✔️ Ilimitado |
| Recurso | Gratuito | Pro |
|---|---|---|
| Sugestões automáticas na CLI pública | ✔️ Incluído | ✔️ Incluído |
| Conversa por chat | 50 conversas/mês | ✔️ Ilimitado |
🚀 Exemplos Reais de Uso em Projetos
1. Refatoração de Aplicações Monolíticas
Cenário: Migração de uma aplicação monolítica para microserviços
Comando Amazon Q:
q transform ./src/monolith --prompt "Refatore este código monolítico para uma arquitetura de microserviços, identificando domínios de negócio e criando serviços separados com APIs RESTful."
Resultados:
- Identificação automática de domínios de negócio
- Criação de estruturas de microserviços
- Geração de APIs de comunicação entre serviços
- Tempo economizado: aproximadamente 3 semanas de trabalho manual
2. Migração de Tecnologia
Cenário: Converter aplicação Spring Boot (Java) para Nest.js (TypeScript)
Comando Amazon Q:
q transform ./java-app --prompt "Converta esta aplicação Spring Boot para Nest.js, mantendo a mesma lógica de negócios e estrutura de API."
Resultados:
- Conversão de classes Java para classes TypeScript
- Mapeamento de anotações Spring para decorators Nest.js
- Migração de repositórios e serviços
- Precisão de conversão: aproximadamente 85% (necessitando apenas ajustes finais)
3. Documentação Automática
Cenário: Adicionar documentação em código legado não documentado
Comando Amazon Q:
q transform ./legacy-code --prompt "Adicione comentários JavaDoc completos a todas as classes e métodos públicos, explicando parâmetros, retornos e exceções."
Resultados:
- Documentação completa de 150+ classes em minutos
- Identificação correta de parâmetros e valores de retorno
- Geração de exemplos de uso para métodos públicos
🔄 Comparação com Outras Ferramentas de IA para Código
| Característica | Amazon Q Developer | GitHub Copilot | Cursor | WindSurf IDE | Tabnine |
|---|---|---|---|---|---|
| Tipo | Assistente de IA para desenvolvimento | Assistente de IA para desenvolvimento | Editor de código com IA | IDE com IA integrada | Assistente de código com IA |
| Desenvolvedor | Amazon Web Services | GitHub / Microsoft | Cursor Inc. | WindSurf | Tabnine |
| Preço | Gratuito (limitado) Individual: US$ 19/mês Pro: US$ 29/mês | Free (limitado) Individual: US$ 10/mês Business: US$ 19/usuário/mês | Free (limitado) Pro: US$ 20/mês | Pro: US$ 15/mês | Free (limitado) Pro: US$ 12/mês Enterprise: Personalizado |
| Integração AWS | Nativa (total) | Limitada | Limitada | Limitada | Limitada |
| Suporte a IDEs | • JetBrains (IntelliJ IDEA, WebStorm, PyCharm, etc.) • VS Code • Visual Studio • Eclipse (preview) • AWS Cloud9 • JupyterLab | • VS Code • Visual Studio • JetBrains IDEs (IntelliJ, Rider, etc.) • Neovim (extension) • GitHub Codespaces | • VS Code (via extensão) • Cursor Editor (standalone) | • WindSurf IDE (próprio) | • VS Code • JetBrains IDEs • Visual Studio • Sublime Text • Atom • Vim/Neovim • Emacs |
| Completação de código | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim |
| Geração de funções | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim |
| Explicação de código | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim | 🔸 Limitada |
| Detecção de bugs | ✔ Sim | 🔸 Limitada | ✔ Sim | ✔ Sim | 🔸 Limitada |
| Transformação de código | ✔ Sim | 🔸 Limitada | ✔ Sim | ✔ Sim | 🔸 Limitada |
| Suporte a linguagens | +15 linguagens | +25 linguagens | +15 linguagens | +10 linguagens | +30 linguagens |
| Conhecimento específico AWS | Extensivo | 🔸 Limitado | 🔸 Limitado | 🔸 Limitado | 🔸 Limitado |
| Contexto de segurança | Alto (integrado com políticas AWS) | Médio | Médio | Médio | Médio |
| Chat contextual | ✔ Sim | ✔ Sim | ✔ Sim | ✔ Sim | 🔸 Limitado |
✔ = Totalmente suportado
🔸 = Suporte parcial ou limitado
Esta comparação ajuda a visualizar rapidamente onde cada ferramenta se destaca.
💼 Casos de Uso Específicos por Indústria
Setor Financeiro
- Análise de conformidade: Verificação automática de código para requisitos GDPR, PCI-DSS e SOX
- Modernização de sistemas legados: Transformação de código COBOL para Java/Python
- Segurança: Identificação e correção de vulnerabilidades em aplicações financeiras
q transform ./financial-app.js --prompt "Verifique conformidade com PCI-DSS, identifique e corrija possíveis vazamentos de dados sensíveis de cartão."
Saúde
- Conformidade HIPAA: Verificação e adaptação de código para requisitos de saúde
- Integração de sistemas: Adaptação de código para interoperabilidade com sistemas de prontuário eletrônico
- Anonimização de dados: Transformação de código para processamento seguro de dados de pacientes
q transform ./patient-data-processor.py --prompt "Adicione mecanismos de anonimização de dados de pacientes seguindo as diretrizes HIPAA."
E-commerce
- Otimização de performance: Análise e refatoração para sistemas de alta escala
- Integração multi-plataforma: Adaptação de código para múltiplos canais de venda
- Análise em tempo real: Implementação de sistemas de recomendação e análise de comportamento
q transform ./recommendation-engine.js --prompt "Otimize este algoritmo de recomendação para processamento em tempo real de grandes volumes de dados."
🔒 Melhores Práticas de Segurança
1. Proteção de Credenciais
- Nunca inclua credenciais no código ao solicitar análise do Amazon Q
- Use AWS Secrets Manager para referências a segredos
- Configure a rotação automática de credenciais em seu código
# EVITE ISSO ao usar o Amazon Q
q transform ./config.js --prompt "Otimize este código" # Arquivo contém credenciais
# FAÇA ISSO
q transform ./config.js --prompt "Converta referências diretas a credenciais para usar AWS Secrets Manager"
2. Revisão Manual de Código Gerado
- Sempre revise o código gerado antes de implementá-lo em produção
- Verifique vulnerabilidades comuns (OWASP Top 10)
- Execute scanners de segurança no código gerado
3. Limitação de Escopo
- Defina perfis de contexto específicos para limitar o acesso do Amazon Q
- Seja específico em prompts para evitar exposição desnecessária de código
- Use a flag
--filespara limitar a análise aos arquivos necessários
# Crie um perfil de contexto seguro
q context profiles create --name secure-profile
q context profiles add-files --name secure-profile --files "src/public/**/*.js"
q chat --profile secure-profile
📈 Métricas de Produtividade
Segundo estudos da AWS e empresas parceiras, o uso do Amazon Q Developer proporciona:
- Aumento de 37% na velocidade de desenvolvimento para tarefas rotineiras
- Redução de 42% no tempo de onboarding de novos desenvolvedores
- Diminuição de 29% em bugs de código através da detecção proativa
- Economia média de 15-20 horas por desenvolvedor por mês em tarefas repetitivas
Cálculo de ROI
Para uma equipe de 10 desenvolvedores com salário médio de $50/hora:
- Economia mensal: 15 horas × 10 devs × $50/hora = $7.500
- Custo mensal do Amazon Q Developer: $19 × 10 = $190
- ROI mensal: 3.847%
🔧 Técnicas Avançadas de Uso
1. Encadeamento de Transformações
Transforme progressivamente seu código através de múltiplos passos:
q transform ./app.js --prompt "Refatore para padrão MVC"
q transform ./app.js --prompt "Adicione tratamento de erros"
q transform ./app.js --prompt "Otimize para performance"
2. Aprendizado com Exemplos Específicos
Forneça exemplos para obter resultados mais precisos:
q transform ./new-code.js --prompt "Formatação de código: alinhe com estas convenções específicas da equipe" --files "./examples/style-guide.js"
3. Geração de Scaffolding
Crie estruturas de projetos completas:
q ask "Crie uma estrutura de diretórios e arquivos para uma API REST em Node.js com Express, Sequelize ORM, autenticação JWT e testes unitários com Jest"
!Amazon Q Community
Dicas Avançadas
-
Use contexto específico: Mais contexto = respostas mais precisas
q ask "Como otimizar este código?" --files "app.js" -
Combine com o AWS CLI: Use junto com outros comandos AWS
aws s3 ls | q ask "Explique estes buckets S3" -
Scripts automáticos: Crie aliases ou scripts para tarefas comuns
alias qreview="q transform --prompt 'Revise este código'"
| Objetivo | Ferramenta CLI | Quando usar | Exemplo de comando |
|---|---|---|---|
| Gerar código novo ou scaffolding | q ask | Você quer criar novos módulos, endpoints, componentes ou um boilerplate completo dentro do projeto. | ````bash q ask "Gere um módulo de autenticação em Express com rotas de login, logout e JWT"``` |
| Fazer ajustes iterativos / dúvidas | q chat | Você precisa trocar ideias com a IA, explorar várias opções de refatoração ou orientar arquitetura. | ````bash q chat --profile meu-projeto > "Como posso melhorar a organização deste serviço REST?"``` |
| Transformar ou refatorar arquivos | q transform | Você tem um ou mais arquivos específicos e quer aplicar alterações pontuais (async/await, lint, security). | ````bash q transform src/controllers/user.js --prompt "Adicione tratamento de erros e validações de entrada"``` |
Contribuindo para o Amazon Q Developer
O Amazon Q Developer tem um programa de código aberto para plugins e extensões.
Como contribuir:
- Visite o repositório GitHub oficial
- Siga as diretrizes de contribuição
- Proponha melhorias ou corrija bugs
- Envie pull requests para revisão
Recursos Adicionais
- 📚 Documentação oficial: docs.aws.amazon.com/amazonq
- 💬 Fórum da comunidade: community.aws
- 🧩 GitHub: Exemplos e plugins da comunidade
- 📝 Blog AWS: Atualizações e casos de uso
Contato e Suporte
Para suporte técnico ou dúvidas sobre o Amazon Q Developer:
- 📧 Email: support@aws.amazon.com
- 🌐 AWS Support: aws.amazon.com/support
Quick Start
Clone the repository
git clone https://github.com/theophiloweb/amazon_q_devInstall dependencies
cd amazon_q_dev
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.