핵심 개념

도구

Bob Shell이 명령줄에서 파일 읽기, 코드 편집, 명령 실행, 개발 환경 상호작용에 특화된 도구를 사용하는 방법을 알아보세요.

도구 워크플로

자연어로 원하는 작업을 설명하면 Bob Shell이 다음을 수행합니다:

  1. 요청에 따라 적절한 도구를 선택합니다.
  2. 검토를 위해 도구와 매개변수를 제시합니다.
  3. 승인된 도구를 실행하고 결과를 보여줍니다.
  4. 작업이 완료될 때까지 이 과정을 반복합니다.

도구 카테고리

Bob Shell의 도구는 주요 기능에 따라 카테고리로 정리되어 있습니다. 이 카테고리를 이해하면 Bob Shell이 무엇을 할 수 있고 어떻게 작업을 수행하는지 파악하는 데 도움이 됩니다.

읽기 도구

변경 없이 파일 콘텐츠에 접근하고 코드 구조를 파악합니다.

도구목적사용 예시
read_file하나 이상의 파일 내용 읽기구성 파일 보기, 소스 코드 검토
search_filesregex를 사용하여 여러 파일에서 패턴 검색모든 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셸 명령 실행 도구
mcpMCP 서버 도구
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"
이 주제는 어떤가요?