Exemplos - Amazon Q Developer

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos

Esta seção fornece exemplos práticos de configurações personalizadas de agentes para fluxos de trabalho de desenvolvimento e casos de uso comuns.

Agente personalizado especializado em AWS

Esse agente personalizado é otimizado para tarefas de desenvolvimento e gerenciamento de infraestrutura da AWS. Ele fornece acesso pré-aprovado às ferramentas da AWS, incluindo documentação relevante.

exemplo Configuração de agente personalizada especializada em AWS
{ "description": "Specialized custom agent for AWS infrastructure and development tasks", "tools": [ "fs_read", "fs_write", "execute_bash", "use_aws" ], "allowedTools": [ "fs_read", "use_aws" ], "toolsSettings": { "use_aws": { "allowedServices": [ "s3", "lambda", "cloudformation", "ec2", "iam", "logs" ] }, "fs_write": { "allowedPaths": [ "infrastructure/**", "scripts/**", "*.yaml", "*.yml", "*.json" ] } }, "resources": [ "file://README.md", "file://infrastructure/**/*.yaml", "file://infrastructure/**/*.yml", "file://docs/aws-setup.md", "file://scripts/deploy.sh" ], "hooks": { "agentSpawn": [ { "command": "aws sts get-caller-identity", "timeout_ms": 10000, "cache_ttl_seconds": 300 } ] } }

Casos de uso desse agente personalizado:

  • Implantação CloudFormation de pilhas

  • Gerenciando buckets do S3 e funções Lambda

  • Solução de problemas de serviços da AWS

  • Revisando e atualizando a infraestrutura como código

Agente personalizado de fluxo de trabalho de desenvolvimento

Esse agente personalizado foi projetado para tarefas gerais de desenvolvimento de software, incluindo análise de código, testes e operações do Git.

exemplo Configuração personalizada do agente do fluxo de trabalho de desenvolvimento
{ "description": "General development workflow custom agent with Git integration", "mcpServers": { "git": { "command": "git-mcp-server", "args": [], "timeout": 30000 } }, "tools": [ "fs_read", "fs_write", "execute_bash", "@git" ], "allowedTools": [ "fs_read", "@git/git_status", "@git/git_log", "@git/git_diff" ], "toolAliases": { "@git/git_status": "status", "@git/git_log": "log", "@git/git_diff": "diff" }, "toolsSettings": { "fs_write": { "allowedPaths": [ "src/**", "tests/**", "docs/**", "*.md", "*.json", "package.json", "requirements.txt" ] } }, "resources": [ "file://README.md", "file://CONTRIBUTING.md", "file://docs/**/*.md", "file://package.json", "file://requirements.txt" ], "hooks": { "agentSpawn": [ { "command": "git status --porcelain", "timeout_ms": 5000 }, { "command": "git branch --show-current", "timeout_ms": 3000 } ] } }

Casos de uso desse agente personalizado:

  • Revisão e análise de código

  • Escrevendo e atualizando testes

  • Gerenciamento do fluxo de trabalho do Git

  • Atualizações feitas na documentação

  • Gerenciar dependências

Agente personalizado de revisão de código

Esse agente personalizado se concentra especificamente nas tarefas de revisão de código, com ferramentas e contexto otimizados para analisar a qualidade, a segurança e as melhores práticas do código.

exemplo Configuração personalizada do agente de revisão de código
{ "description": "Specialized custom agent for code review and quality analysis", "tools": [ "fs_read", "execute_bash" ], "allowedTools": [ "fs_read", "execute_bash" ], "toolsSettings": { "execute_bash": { "allowedCommands": [ "grep", "find", "wc", "head", "tail", "cat", "diff", "git diff", "git log", "eslint", "pylint", "rubocop" ] } }, "resources": [ "file://CONTRIBUTING.md", "file://docs/coding-standards.md", "file://docs/security-guidelines.md", "file://.eslintrc.json", "file://.pylintrc", "file://pyproject.toml" ], "hooks": { "agentSpawn": [ { "command": "git diff --name-only HEAD~1", "timeout_ms": 5000, "max_output_size": 2048 } ], "userPromptSubmit": [ { "command": "find . -name '*.py' -o -name '*.js' -o -name '*.ts' | wc -l", "timeout_ms": 3000, "cache_ttl_seconds": 60 } ] } }

Casos de uso desse agente personalizado:

  • Analisando pull requests para verificar a qualidade do código

  • Identificação de vulnerabilidades de segurança

  • Verificando a aderência aos padrões de codificação

  • Analisando a complexidade e a capacidade de manutenção do código

  • Sugerindo melhorias e oportunidades de refatoração

Agente personalizado específico do projeto

Este exemplo mostra como criar um agente personalizado sob medida para um projeto específico, incluindo ferramentas, documentação e processos de criação específicos do projeto.

exemplo Configuração de agente personalizada específica do projeto
{ "description": "Custom agent for the mobile app backend project", "mcpServers": { "docker": { "command": "docker-mcp-server", "args": ["--socket", "/var/run/docker.sock"] }, "database": { "command": "postgres-mcp-server", "args": ["--connection", "postgresql://localhost:5432/myapp"], "env": { "PGPASSWORD": "$DATABASE_PASSWORD" } } }, "tools": [ "fs_read", "fs_write", "execute_bash", "@docker", "@database" ], "allowedTools": [ "fs_read", "@docker/docker_ps", "@docker/docker_logs", "@database/query_read_only" ], "toolAliases": { "@docker/docker_ps": "containers", "@docker/docker_logs": "logs", "@database/query_read_only": "query" }, "toolsSettings": { "fs_write": { "allowedPaths": [ "src/**", "tests/**", "migrations/**", "docker-compose.yml", "Dockerfile", "requirements.txt" ] }, "execute_bash": { "allowedCommands": [ "npm test", "npm run build", "python manage.py test", "docker-compose up", "docker-compose down" ] } }, "resources": [ "file://README.md", "file://docs/api-documentation.md", "file://docs/database-schema.md", "file://docker-compose.yml", "file://requirements.txt", "file://src/config/settings.py" ], "hooks": { "agentSpawn": [ { "command": "docker-compose ps", "timeout_ms": 10000, "cache_ttl_seconds": 30 }, { "command": "git status --porcelain", "timeout_ms": 5000 } ] } }

Casos de uso desse agente personalizado:

  • Gerenciando contêineres e serviços do Docker

  • Executando consultas e migrações de banco de dados

  • Construindo e testando o aplicativo

  • Depurando problemas de produção

  • Atualizando a documentação da API

Dicas para criar agentes personalizados eficazes

  • Comece de forma simples - comece com as configurações básicas da ferramenta e adicione complexidade conforme necessário

  • Use nomes descritivos - escolha nomes de agentes personalizados que indiquem claramente sua finalidade

  • Inclua contexto relevante - adicione documentação do projeto e arquivos de configuração aos recursos

  • Pré-aprove ferramentas seguras - Inclua ferramentas usadas com frequência e de baixo risco no AllowedTools

  • Use ganchos para contexto dinâmico - Inclua o estado atual do sistema por meio de ganchos de comando

  • Limitar o escopo da ferramenta - Use Ferramentas/Configurações para restringir o acesso da ferramenta a caminhos e serviços relevantes

  • Teste minuciosamente - verifique se a configuração personalizada do agente funciona conforme o esperado

  • Documente seus agentes personalizados - Use descrições claras para ajudar os membros da equipe a entender os propósitos dos agentes personalizados