도구
Bob Shell이 명령줄에서 파일 읽기, 코드 편집, 명령 실행, 개발 환경 상호작용에 특화된 도구를 사용하는 방법을 알아보세요.
도구 워크플로
자연어로 원하는 작업을 설명하면 Bob Shell이 다음을 수행합니다:
- 요청에 따라 적절한 도구를 선택합니다.
- 검토를 위해 도구와 매개변수를 제시합니다.
- 승인된 도구를 실행하고 결과를 보여줍니다.
- 작업이 완료될 때까지 이 과정을 반복합니다.
도구 카테고리
Bob Shell의 도구는 주요 기능에 따라 카테고리로 정리되어 있습니다. 이 카테고리를 이해하면 Bob Shell이 무엇을 할 수 있고 어떻게 작업을 수행하는지 파악하는 데 도움이 됩니다.
읽기 도구
변경 없이 파일 콘텐츠에 접근하고 코드 구조를 파악합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
read_file | 하나 이상의 파일 내용 읽기 | 구성 파일 보기, 소스 코드 검토 |
search_files | regex를 사용하여 여러 파일에서 패턴 검색 | 모든 TODO 주석 찾기, 함수 정의 위치 파악 |
list_files | 지정된 경로의 파일 및 디렉토리 목록 표시 | 프로젝트 구조 탐색, 특정 파일 유형 찾기 |
list_code_definition_names | 소스 파일에서 클래스, 함수, 메서드 이름 추출 | 코드 구성 개요 파악 |
Bob Shell이 읽기 도구를 사용하는 경우: 코드 검토, 특정 패턴 찾기, 또는 프로젝트 구조 파악을 요청할 때.
쓰기 도구
새 파일을 만들거나 기존 코드를 정밀하게 수정합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
write_to_file | 새 파일 생성 또는 기존 파일 완전히 재작성 | 새 컴포넌트 생성, 구성 파일 만들기 |
apply_diff | 파일의 특정 섹션에 대상 변경 수행 | 함수 로직 업데이트, 버그 수정, 코드 리팩토링 |
insert_content | 파일의 특정 위치에 새 줄 추가 | import 추가, 새 함수 삽입 |
Bob Shell이 쓰기 도구를 사용하는 경우: 파일 생성, 기능 구현, 버그 수정, 또는 코드 리팩토링을 요청할 때.
명령 도구
터미널에서 명령을 실행하고 시스템 작업을 수행합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
execute_command | 워크스페이스에서 CLI 명령 실행 | 의존성 설치, 테스트 실행, 프로젝트 빌드 |
Bob Shell이 명령 도구를 사용하는 경우: 명령 실행, 패키지 설치, 스크립트 실행, 또는 시스템 작업 완료를 요청할 때.
MCP 도구
Model Context Protocol 서버를 통해 Bob Shell의 기능을 확장합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
use_mcp_tool | 연결된 MCP 서버가 제공하는 도구에 접근 | 데이터베이스 쿼리, API 상호작용, 외부 서비스 접근 |
모드 도구
특화된 작업을 위해 다양한 Bob Shell 모드 간에 전환합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
switch_mode | 다른 모드로 변경 (Agent, Plan, Ask 등) | 아키텍처 설계를 위해 Plan 모드로, 구현을 위해 Agent 모드로 전환 |
Bob Shell이 모드 도구를 사용하는 경우: 현재 작업이 다른 모드의 특화된 기능을 활용할 때 적합할 때.
질문 도구
작업 완료에 필요한 추가 정보를 수집합니다.
| 도구 | 목적 | 사용 예시 |
|---|---|---|
ask_followup_question | 사용자에게 추가 정보 또는 설명 요청 | 선호하는 구현 방식 문의, 누락된 정보 요청 |
도구 그룹
도구 그룹은 관련 도구들의 명명된 컬렉션으로, 함께 활성화하거나 비활성화할 수 있습니다. 도구 그룹을 사용하여 특정 세션에서 Bob Shell이 할 수 있는 작업을 제한하세요 — 예를 들어 읽기 전용 감사에서 파일 쓰기를 방지하거나 통제된 환경에서 명령 실행을 비활성화할 때 유용합니다.
사용 가능한 도구 그룹
| 그룹 | 포함된 도구 | Agent 기본값 | Plan 기본값 | Ask 기본값 |
|---|---|---|---|---|
read | 파일 읽기, 검색 및 목록 도구 | ✓ | ✓ | ✓ |
edit | 파일 쓰기 및 diff 도구 | ✓ | ✓ | ✓ |
execute | 셸 명령 실행 도구 | ✓ | — | — |
mcp | MCP 서버 도구 | ✓ | ✓ | ✓ |
skill | 스킬 관련 도구 | ✓ | ✓ | ✓ |
todo | 할 일 목록 관리 도구 | ✓ | ✓ | — |
subagent | 서브에이전트 생성 도구 | ✓ | — | — |
mode | 모드 전환 도구 | ✓ | ✓ | ✓ |
도구 그룹 비활성화
bob run 또는 bob chat에 --disable-tool-groups와 쉼표로 구분된 그룹 이름을 전달하세요:
# 명령 실행 및 MCP 도구 비활성화
bob run --disable-tool-groups execute,mcp "Review @src/"
# 읽기 전용 모드로 실행
bob run --disable-tool-groups edit,execute,mcp "Summarize the codebase"전용 플래그를 사용하여 모든 MCP 서버를 한 번에 비활성화할 수도 있습니다:
bob run --disable-mcp "Explain @app.js"