메인 콘텐츠로 건너뛰기
Prometheus의 Tools는 AI 에이전트가 개발자의 지시를 받아 프로젝트 내부의 파일 시스템, 터미널, 웹 브라우저 등과 직접 상호작용하는 핵심 기능입니다. 단순한 코드 제안을 넘어 실질적인 ‘수행’을 담당하며, 사용자는 각 도구의 실행 권한을 세밀하게 제어할 수 있습니다.
Prometheus에서는 보안과 편의성을 위해 각 도구별로 실행 방식을 세 가지 모드 중 하나로 설정할 수 있습니다.
- Automatic (자동 실행): AI가 도구 사용이 필요하다고 판단하면 사용자에게 묻지 않고 즉시 실행합니다.
read_file이나 ls 같이 시스템에 변화를 주지 않는 조회용 도구에 설정하면 끊김 없는 개발이 가능합니다.
- Ask First (실행 전 확인): AI가 도구를 사용하기 전 사용자에게 승인을 요청합니다.
edit_existing_file이나 run_terminal_command 처럼 코드를 변경하거나 시스템 명령을 내리는 민감한 작업에 권장됩니다.
- Excluded (제외): 해당 도구의 사용을 완전히 차단합니다. 특정 환경에서 보안상 터미널 접근이나 외부 웹 접속을 막아야 할 때 사용합니다.
1. 파일 관리 및 편집 (File Operations)
AI가 소스 코드를 직접 읽고 수정하며 프로젝트의 상태를 변경하는 도구들입니다.
- read_file: 기존 파일의 전체 내용을 읽어옵니다. 파일 편집 전 최신 상태를 확인하는 용도로 반드시 선행되어야 합니다.
- read_currently_open_file: 현재 IDE 탭에 활성화된 파일의 내용을 즉시 확인하여 작업 문맥을 동기화합니다.
- create_new_file: 새로운 파일을 생성합니다. 폴더 경로가 없을 경우 자동으로 경로를 생성하며 초기 코드를 작성합니다.
- edit_existing_file: 대규모 파일 수정 시 효율적인 편집을 위해 전체를 다시 쓰지 않고 변경 부분만 지능적으로 교체합니다.
- single_find_and_replace: 정확한 문자열 매칭을 통해 텍스트를 교체합니다. 변수명 일괄 변경 시 유용하며 들여쓰기를 완벽히 보존합니다.
2. 검색 및 탐색 (Search & Navigation)
복잡한 프로젝트 구조 내에서 필요한 정보의 위치를 신속하게 찾아내는 도구들입니다.
- ls: 디렉토리 구조를 나열합니다.
recursive 옵션으로 전체 프로젝트의 트리 구조를 파악할 수 있습니다.
- file_glob_search: glob 패턴(예:
**/*.java)을 활용하여 조건에 맞는 파일들을 검색합니다.
- grep_search: 정규 표현식을 사용하여 파일 내부의 텍스트 패턴을 고속으로 찾아냅니다.
- view_diff: 작업 전후의 코드 변경 사항을 시각적으로 비교합니다.
3. 시스템 및 외부 연동 (System & External)
IDE를 넘어 외부 시스템과 연결하여 작업을 완수합니다.
- run_terminal_command: 터미널 명령어를 직접 실행합니다. 빌드, 테스트, 의존성 설치 등을 수행하며 Windows의 PowerShell 환경에 최적화되어 있습니다.
- fetch_url_content: 외부 웹사이트의 내용을 조회합니다. 라이브러리 문서나 API 명세를 실시간으로 참조하여 코드를 작성할 때 사용합니다.
💡 도구 활용 팁 (Best Practices)
- 보안 설정: 터미널 명령(
run_terminal_command)은 예상치 못한 시스템 변경을 방지하기 위해 가급적 Ask First 모드로 설정하는 것이 안전합니다.
- 효율성 최적화: 파일 조회(
read_file)나 검색 도구들은 Automatic으로 설정하여 AI가 질문 없이 빠르게 정보를 수집하게 하면 답변 속도가 향상됩니다.
- 수정 전 확인: 파일을 편집하는 모든 도구는 실행 전 자동으로
view_diff를 통해 변경 내용을 검토하는 습관을 들이는 것이 좋습니다.