핵심 개념

도구

Bob이 파일을 읽고, 코드를 편집하고, 명령을 실행하고, 하위 에이전트를 생성하고, MCP 통합을 사용하고, 모드를 전환하여 코딩 워크플로우를 간소화하기 위해 전문화된 도구를 사용하는 방법을 알아보세요.

도구 워크플로우

Bob과 작업할 때 적절한 작업을 결정합니다. 각 단계에서 Bob은:

  1. 요청에 따라 적절한 도구 선택
  2. 검토를 위해 매개변수와 함께 도구 제시
  3. 승인된 도구를 실행하고 결과 표시
  4. 작업이 완료될 때까지 이 프로세스 계속

도구 카테고리

Bob의 도구는 주요 기능에 따라 그룹화됩니다. 이러한 카테고리를 이해하면 Bob이 다양한 작업을 수행하는 방법을 알 수 있습니다.

읽기 도구

읽기 도구를 사용하면 Bob이 변경하지 않고 파일 내용에 액세스하고 코드 구조를 이해할 수 있습니다.

도구목적사용 예
read_file선택적 줄 범위로 파일 내용 읽기구성 파일 보기, 소스 코드 검사
glob이름 패턴으로 파일 찾기(예: **/*.ts)테스트 파일 찾기, 모든 컴포넌트 찾기
grep정규식 패턴으로 파일 내용 검색함수 정의 찾기, TODO 찾기
list_files파일 및 디렉토리 나열단일 디렉토리 구조 탐색
GetSymbolsOverview파일의 최상위 심볼 가져오기자세히 살펴보기 전에 파일 구조 이해
FindSymbol선택적 깊이로 이름 경로로 심볼 찾기클래스, 메서드 또는 함수로 이동
FindReferencingSymbols심볼에 대한 모든 참조 찾기함수 또는 타입이 사용되는 위치 이해

Bob은 요청에 코드 검토, 패턴 검색 또는 프로젝트 구조 검사가 포함될 때 읽기 도구를 사용합니다.

쓰기 도구

쓰기 도구를 사용하면 Bob이 새 파일을 만들거나 기존 코드를 수정할 수 있습니다.

도구목적사용 예
write_file새 파일 생성 또는 기존 파일 완전히 다시 작성새 컴포넌트 생성, 구성 파일 생성
apply_diff파일의 특정 부분에 정확하고 대상화된 변경 적용함수 로직 업데이트, 버그 수정, 코드 리팩토링
insert_content파일의 특정 위치에 새 줄 삽입import 추가, 새 함수 삽입
search_and_replace파일에서 텍스트 또는 정규식 패턴 찾기 및 바꾸기변수 이름 바꾸기, 반복 패턴 업데이트

Bob은 요청에 파일 생성, 기능 구현, 버그 수정 또는 코드 리팩토링이 포함될 때 쓰기 도구를 사용합니다.

명령 도구

명령 도구를 사용하면 Bob이 명령을 실행하고 시스템 작업을 수행할 수 있습니다.

도구목적사용 예
execute_command작업 공간에서 CLI 명령 실행종속성 설치, 테스트 실행, 프로젝트 빌드

Bob은 요청에 명령 실행, 패키지 설치, 스크립트 실행 또는 시스템 작업 수행이 포함될 때 명령 도구를 사용합니다.

하위 에이전트 도구

하위 에이전트 도구를 사용하면 Bob이 독립적인 에이전트를 생성하여 자체 격리된 컨텍스트에서 집중적이고 자체 포함된 작업을 처리할 수 있습니다.

도구목적사용 예
spawn_subagent자체 컨텍스트 창을 가진 독립적인 에이전트 생성코드베이스 섹션 조사, 주 컨텍스트를 오염시키지 않고 정보 수집

하위 에이전트 작동 방식

하위 에이전트는 주 대화와 독립적으로 실행됩니다. 자체 컨텍스트 창을 가지고 할당된 작업을 실행하며 결과 요약을 Bob에게 반환합니다. 이를 통해 하위 에이전트는 주 대화에 많은 양의 관련 없는 콘텐츠를 추가하는 작업에 유용합니다.

Bob은 하위 에이전트를 신중하게 사용합니다. 기본값은 항상 작업을 직접 수행하는 것입니다. 하위 에이전트는 다음 모든 조건이 참일 때만 고려됩니다:

  • 작업이 명확하게 자체 포함되어 있고 요약만 필요함
  • 주 컨텍스트에 상당한 관련 없는 콘텐츠를 추가함
  • 하나 또는 두 개의 직접 도구 호출로 수행할 수 없음

두 가지 하위 에이전트 유형이 있습니다:

유형설명
explore읽기 전용 코드베이스 탐색, 더 가벼운 모델에서 실행
general전체 도구 액세스, 기본 모델에서 실행

기본적으로 하위 에이전트는 부모 대화 기록을 보지 않습니다. fork_context: true로 설정하면 이전 결정, 제약 조건 또는 사용자 기본 설정을 이해해야 할 때 대화 기록이 하위 에이전트에 전달됩니다.

Bob은 간단한 파일 읽기, 빠른 검색, 단일 도구 작업 또는 이미 관련 컨텍스트가 있는 작업에는 하위 에이전트를 사용하지 않습니다.

하위 작업 도구

하위 작업 도구를 사용하면 Bob이 UI에서 자체 전용 대화로 실행되는 새로운 명명된 작업 인스턴스를 만들 수 있습니다.

도구목적사용 예
start_subtask제목, 지침 및 선택적 할 일 목록이 있는 새 작업 생성큰 요청을 자체 대화 스레드가 있는 추적된 하위 작업으로 분할

하위 작업 작동 방식

하위 작업은 UI에 자체 이동 경로 및 대화 기록과 함께 표시되는 완전히 독립적인 작업입니다. 백그라운드에서 조용히 실행되고 요약만 반환하는 하위 에이전트와 달리 하위 작업은 가시적이고 대화형입니다. 진행 상황을 따라가고 출력을 검토하며 그 안에서 대화를 계속할 수 있습니다.

Bob은 요청이 전용 추적 및 별도의 대화 스레드로부터 이익을 얻을 만큼 충분히 복잡할 때 하위 작업을 사용합니다. 하위 작업에는 다음을 제공할 수 있습니다:

  • UI 이동 경로에 표시되는 제목
  • 자세한 지침이 포함된 메시지
  • 단계를 추적하기 위한 초기 할 일 목록
  • 시작할 선택적 모드(예: 설계 작업을 위한 Plan 모드)

MCP 도구

MCP 도구를 사용하면 Bob이 연결된 Model Context Protocol(MCP) 서버를 통해 기능을 확장할 수 있습니다.

도구목적사용 예
MCP 서버 도구연결된 MCP 서버에서 제공하는 도구에 액세스데이터베이스 쿼리, API와 상호 작용, 외부 서비스 액세스

Bob은 요청에 구성된 MCP 서버에서 제공하는 기능(예: monday.com, 제품 지식 베이스 또는 사용자 지정 통합)이 포함될 때 MCP 도구를 사용합니다.

모드 도구

모드 도구를 사용하면 Bob이 전문화된 작업을 위해 다른 모드 간에 전환할 수 있습니다.

도구목적사용 예
switch_mode다른 모드로 전환(Agent, Plan, Ask 등)아키텍처 설계를 위해 Plan 모드로 전환, 구현을 위해 Agent 모드로 전환

Bob은 요청이 다른 모드와 전문화된 기능에 의해 더 잘 처리될 때 모드 도구를 사용합니다.

스킬 도구

스킬 도구를 사용하면 Bob이 특정 도메인 및 작업에 대한 전문화된 지침 세트를 활성화할 수 있습니다.

도구목적사용 예
use_skill명명된 스킬에 대한 자세한 지침을 현재 컨텍스트에 로드Carbon builder 스킬 활성화, Jira 워크플로우 가이드 로드

스킬은 큐레이션된 도메인별 지침으로 Bob의 내장 지식을 확장합니다. 요청이 스킬(예: Carbon Design System 컴포넌트 작업, DITA 문서 작성 또는 Jira 스프린트 관리)과 일치하면 Bob은 계속하기 전에 대화당 한 번 관련 스킬을 활성화하여 전체 가이드를 로드합니다.

워크플로우 도구

워크플로우 도구를 사용하면 Bob이 특정 반복 작업을 위해 설계된 사전 정의된 다단계 프로세스를 시작할 수 있습니다.

도구목적사용 예
start_workflow자체 구조화된 단계가 있는 명명된 워크플로우 시작Pull Request 생성, 코드 리뷰 실행

워크플로우는 일반적인 작업을 위한 큐레이션된 단계별 프로세스입니다. Bob은 요청이 워크플로우의 목적과 명확하게 일치할 때(예: git diff에서 PR 설명 생성 또는 기본 브랜치에 대한 코드 변경 검토) 이를 사용합니다.

할 일 도구

할 일 도구를 사용하면 Bob이 가시적인 체크리스트를 사용하여 다단계 작업의 진행 상황을 추적할 수 있습니다.

도구목적사용 예
update_todo_list작업 단계의 마크다운 체크리스트 생성 또는 업데이트구현 단계 추적, 완료된 항목 표시, 새로 발견된 작업 추가

Bob은 여러 단계가 있는 복잡한 작업에 할 일 추적을 사용합니다. 목록은 작업이 진행됨에 따라 업데이트됩니다. 항목을 완료로 표시하고 새로 발견된 단계를 추가하며 한 번에 하나의 항목을 진행 중으로 유지합니다. 이를 통해 완료된 작업과 남은 작업을 명확하게 볼 수 있습니다.

질문 도구

질문 도구를 사용하면 Bob이 작업을 완료하는 데 필요한 추가 정보를 수집할 수 있습니다.

도구목적사용 예
ask_followup_question명확화 또는 추가 세부 정보 요청선호하는 구현 접근 방식 묻기, 누락된 정보 요청

Bob은 요청에 Bob이 계속하기 전에 더 많은 정보나 명확화가 필요할 때 질문 도구를 사용합니다.

이 주제는 어떤가요?