Skip to content

플랜 모드 및 작업 추적

Triggerfish는 구조화된 작업을 위한 두 가지 보완적 도구를 제공합니다: 복잡한 구현 계획을 위한 플랜 모드와 세션 간 작업 관리를 위한 할 일 추적.

플랜 모드

플랜 모드는 변경을 수행하기 전에 에이전트를 읽기 전용 탐색과 구조화된 계획으로 제한합니다. 이는 에이전트가 문제를 이해하기 전에 구현에 뛰어드는 것을 방지합니다.

도구

plan_enter

플랜 모드에 진입합니다. 계획이 승인될 때까지 쓰기 작업(write_file, cron_create, cron_delete)을 차단합니다.

매개변수유형필수설명
goalstring에이전트가 빌드/변경하려는 것
scopestring아니오특정 디렉터리나 모듈로 탐색을 제한

plan_exit

플랜 모드를 종료하고 사용자 승인을 위해 구현 계획을 제시합니다. 자동으로 실행을 시작하지 않습니다.

매개변수유형필수설명
planobject구현 계획 (요약, 접근 방식, 단계, 위험, 파일, 테스트)

계획 객체에는 다음이 포함됩니다:

  • summary -- 계획이 달성하는 것
  • approach -- 어떻게 수행될 것인지
  • alternatives_considered -- 평가된 다른 접근 방식
  • steps -- 각각 파일, 종속성, 검증을 가진 순서화된 구현 단계 목록
  • risks -- 알려진 위험 및 완화 방안
  • files_to_create, files_to_modify, tests_to_write
  • estimated_complexity

plan_status

현재 플랜 모드 상태를 반환합니다: 활성 모드, 목표, 계획 진행 상황.

plan_approve

대기 중인 계획을 승인하고 실행을 시작합니다. 사용자가 승인할 때 호출됩니다.

plan_reject

대기 중인 계획을 거부하고 일반 모드로 돌아갑니다.

plan_step_complete

실행 중 계획 단계를 완료로 표시합니다.

매개변수유형필수설명
step_idnumber완료로 표시할 단계 ID
verification_resultstring검증 명령의 출력

plan_complete

전체 계획을 완료로 표시합니다.

매개변수유형필수설명
summarystring달성된 내용
deviationsarray아니오원래 계획에서의 변경 사항

plan_modify

승인된 계획 단계의 수정을 요청합니다. 사용자 승인이 필요합니다.

매개변수유형필수설명
step_idnumber변경이 필요한 단계
reasonstring변경이 필요한 이유
new_descriptionstring업데이트된 단계 설명
new_filesarray아니오업데이트된 파일 목록
new_verificationstring아니오업데이트된 검증 명령

워크플로우

1. 사용자가 복잡한 것을 요청합니다
2. 에이전트가 plan_enter({ goal: "..." })를 호출합니다
3. 에이전트가 코드베이스를 탐색합니다 (읽기 전용 도구만)
4. 에이전트가 plan_exit({ plan: { ... } })를 호출합니다
5. 사용자가 계획을 검토합니다
6. 사용자가 승인 → 에이전트가 plan_approve를 호출
   (또는 거부 → 에이전트가 plan_reject를 호출)
7. 에이전트가 단계별로 실행하며 각 후 plan_step_complete를 호출
8. 에이전트가 완료되면 plan_complete를 호출

플랜 모드 사용 시기

에이전트는 복잡한 작업에 대해 플랜 모드에 진입합니다: 기능 빌드, 시스템 리팩토링, 다중 파일 변경 구현. 간단한 작업(오타 수정, 변수 이름 변경)의 경우 플랜 모드를 건너뛰고 직접 행동합니다.

할 일 추적

에이전트는 세션 간 다단계 작업을 추적하기 위한 영구 할 일 목록을 가집니다.

도구

todo_read

현재 할 일 목록을 읽습니다. 모든 항목의 ID, 내용, 상태, 우선순위, 타임스탬프를 반환합니다.

todo_write

전체 할 일 목록을 교체합니다. 부분 업데이트가 아닌 완전한 교체입니다.

매개변수유형필수설명
todosarray할 일 항목의 전체 목록

각 할 일 항목에는 다음이 있습니다:

필드유형
idstring고유 식별자
contentstring작업 설명
statusstringpending, in_progress, completed
prioritystringhigh, medium, low
created_atstringISO 타임스탬프
updated_atstringISO 타임스탬프

동작

  • 할 일은 에이전트별(세션별이 아님)로 범위가 지정됩니다 -- 세션, 트리거 기상, 재시작을 넘어 유지됩니다
  • 에이전트는 진정으로 복잡한 작업(3개 이상의 구별되는 단계)에만 할 일을 사용합니다
  • 한 번에 하나의 작업이 in_progress입니다; 완료된 항목은 즉시 표시됩니다
  • 에이전트가 이전에 저장된 항목을 생략하는 새 목록을 쓰면 해당 항목은 자동으로 completed로 보존됩니다
  • 모든 항목이 completed이면 이전 항목은 보존되지 않습니다 (깨끗한 상태)

표시

할 일은 CLI와 Tidepool 모두에서 렌더링됩니다:

  • CLI -- 상태 아이콘이 있는 스타일된 ANSI 박스: (완료, 취소선), (진행 중, 굵게), (대기)
  • Tidepool -- 각 상태에 대한 CSS 클래스가 있는 HTML 목록