Esempi - Amazon Q Developer

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempi

Questa sezione fornisce esempi pratici di configurazioni di agenti personalizzati per flussi di lavoro e casi d'uso di sviluppo comuni.

Agente personalizzato specializzato in AWS

Questo agente personalizzato è ottimizzato per le attività di gestione e sviluppo dell'infrastruttura AWS. Fornisce l'accesso preapprovato agli strumenti AWS e include la documentazione pertinente.

Esempio Configurazione di agenti personalizzati specializzati in 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 } ] } }

Casi d'uso per questo agente personalizzato:

  • Distribuzione degli stack CloudFormation

  • Gestione dei bucket S3 e delle funzioni Lambda

  • Risoluzione dei problemi relativi ai servizi AWS

  • Revisione e aggiornamento dell'infrastruttura come codice

Agente personalizzato per il workflow di sviluppo

Questo agente personalizzato è progettato per attività generali di sviluppo software, tra cui revisione del codice, test e operazioni Git.

Esempio Flusso di lavoro di sviluppo, configurazione personalizzata dell'agente
{ "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 } ] } }

Casi d'uso per questo agente personalizzato:

  • Revisione e analisi del codice

  • Scrittura e aggiornamento dei test

  • Gestione del flusso di lavoro Git

  • Aggiornamenti della documentazione

  • Gestione delle dipendenze

Agente personalizzato per la revisione del codice

Questo agente personalizzato si concentra specificamente sulle attività di revisione del codice, con strumenti e contesto ottimizzati per l'analisi della qualità, della sicurezza e delle migliori pratiche del codice.

Esempio Configurazione personalizzata dell'agente per la revisione del codice
{ "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 } ] } }

Casi d'uso per questo agente personalizzato:

  • Analisi delle pull request per la qualità del codice

  • Identificazione delle vulnerabilità di sicurezza

  • Verifica del rispetto degli standard di codifica

  • Analisi della complessità e della manutenibilità del codice

  • Suggerire miglioramenti e opportunità di rifattorizzazione

Agente personalizzato specifico per il progetto

Questo esempio mostra come creare un agente personalizzato su misura per un progetto specifico, inclusi strumenti, documentazione e processi di compilazione specifici del progetto.

Esempio Configurazione dell'agente personalizzato specifica del progetto
{ "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 } ] } }

Casi d'uso per questo agente personalizzato:

  • Gestione di contenitori e servizi Docker

  • Esecuzione di interrogazioni e migrazioni di database

  • Creazione e test dell'applicazione

  • Eseguire il debug dei problemi di produzione

  • Aggiornamento della documentazione dell'API

Suggerimenti per creare agenti personalizzati efficaci

  • Inizia in modo semplice: inizia con le configurazioni di base degli strumenti e aggiungi complessità in base alle esigenze

  • Usa nomi descrittivi: scegli nomi di agenti personalizzati che ne indichino chiaramente lo scopo

  • Includi il contesto pertinente: aggiungi la documentazione del progetto e i file di configurazione alle risorse

  • Approvazione preventiva degli strumenti sicuri: includi strumenti a basso rischio utilizzati di frequente in AllowedTools

  • Usa gli hook per un contesto dinamico: includi lo stato corrente del sistema tramite gli hook di comando

  • Limita l'ambito dello strumento: utilizza ToolsSettings per limitare l'accesso dello strumento ai percorsi e ai servizi pertinenti

  • Esegui un test accurato: verifica che la configurazione dell'agente personalizzato funzioni come previsto

  • Documenta i tuoi agenti personalizzati: utilizza descrizioni chiare per aiutare i membri del team a comprendere gli scopi degli agenti personalizzati