Amazon Q Developer CLI 도구

update : 2025.05.07


1. 사용 가능한 도구

Amazon Q Developer CLI는 시스템 및 AWS 리소스와 상호작용할 수 있도록 여러 내장 도구를 제공합니다. 이를 통해 Amazon Q는 파일을 읽거나, 명령을 실행하거나, AWS API 호출을 수행할 수 있습니다.

다음 도구들이 기본적으로 제공됩니다:

도구

일반 설명

Kubernetes Workflow에서의 역할

fs_read

시스템의 파일과 디렉터리를 읽음

Kubernetes YAML 파일과 구성 분석

fs_write

시스템의 파일 생성 및 수정

매니페스트, Helm 차트, 스크립트 생성 및 업데이트

execute_bash

시스템에서 Bash 명령 실행

kubectl 및 기타 셸 명령 실행

use_aws

AWS CLI를 사용하여 AWS 서비스와 상호작용

EKS 및 기타 AWS 서비스 제어

report_issue

AWS에 문제를 보고하는 브라우저 창 열기

운영 중 발생한 문제 보고


2. 도구 권한 관리

채팅 세션에서 /tools 명령어를 통해 Amazon Q가 어떤 도구를 사용할 수 있을지 설정할 수 있습니다.

2.1 권한 상태

도구 권한은 두 가지 상태 중 하나를 가질 수 있습니다:

  • 신뢰됨(Trusted): Amazon Q가 도구를 사용할 때 매번 확인하지 않고 바로 실행 가능

  • 요청 시 승인(Per-request): 매번 사용자 승인을 받아야 도구 사용 가능

기본적으로 fs_read만 신뢰됨으로 설정되어 있으며, 나머지는 사용 시마다 확인을 요청합니다.

2.2 현재 권한 보기

아래 명령을 채팅에 입력하여 현재 도구 권한 상태를 확인할 수 있습니다:


3. 개별 도구 권한 설정

특정 도구를 신뢰할 때:

도구의 신뢰를 해제하고 승인 요청 방식으로 되돌릴 때:


4. 모든 도구 권한 일괄 설정

모든 도구를 한 번에 신뢰하여 원활한 환경 구성:

초기 설정으로 되돌릴 때:

⚠️ 경고: /tools trustall 명령어는 모든 도구를 확인 없이 사용할 수 있게 하므로 보안상 위험할 수 있습니다.


5. 도구 권한 명령 요약

명령어

설명

help

도구 관련 도움말 표시

trust

특정 도구를 세션 동안 신뢰함

untrust

도구를 승인 요청 방식으로 변경

trustall

모든 도구를 신뢰함 (/acceptall의 대체)

reset

도구 권한을 기본값으로 초기화


6. 도구 사용 예시

6.1 파일 시스템 작업

워크스페이스 내 파일을 분석하거나 생성할 수 있습니다.

예시 프롬프트:

예시에 대한 결과:

예시. 파이썬 스크립트를 생성 프롬프트:

예시에 대한 결과:

fs_read, fs_write 도구가 사용되며, 신뢰되지 않은 경우 사전 승인을 요청합니다.

생성된 python code를 실행해 봅니다.

circle-info

boto3 가 설치되어 있지 않기 때문에, Shell 에서 에러가 발생하면, Q CLI를 활용해서 설치해 봅니다.

boto3가 설치가 되면 python code를 실행해 봅니다.


7.명령 실행

7.1 EKS 관리

kubectl을 활용해 클러스터와 상호작용하는 명령도 실행할 수 있습니다.

  • 예시 프롬프트:

execute_bash 도구가 사용되며, 신뢰되지 않았다면 사전 확인을 요청합니다.

  • 결과 예시:

7.2 AWS CLI 통합

AWS 리소스와 상호작용할 수 있습니다.

  • 예시 프롬프트:

이 경우 aws cli 도구가 사용되며, 신뢰되지 않은 경우 확인을 요청합니다.


8. 도구 권한 관리 모범 사례

  • Trust selectively: 자주 사용하는 도구만 신뢰 상태로 설정하세요.

  • Review actions: Amazon Q가 수행하려는 작업을 항상 검토한 후 승인하세요.

  • Context matters: 운영 환경의 민감도를 고려하여 도구 신뢰 여부를 결정하세요.

  • Use per-request for sensitive operations: AWS CLI 호출이나 셸 명령 실행처럼 민감한 작업은 요청 승인 상태로 유지하는 것이 좋습니다.

Last updated