Communitygithub.com

JetBrains/thinkrail

가벼운 실제 IDE에서 파이와 함께 바이브 코딩 - 당신에게 필요한 바이브

thinkrail란 무엇인가요?

이 스킬은 JetBrains IDE(예: IntelliJ, PyCharm 등)에서 AI 에이전트(예: Claude Code, Codex, Cursor 등)가 채팅 기반의 작업 계획을 관리할 수 있도록 지원합니다. 사용자의 요청을 여러 단계로 나누어 진행하고, 각 단계의 상태(pending, in_progress, done)를 추적하며, IDE의 Todo 패널을 통해 사용자에게 실시간으로 진행 상황을 보여줍니다. 주요 기능으로는 계획 제안(todo_write), 단계별 진행(todo_update, todo_add), 완료된 작업 유지, 사용자 편집 존중 등이 있습니다. 이를 통해 개발자는 복잡한 작업을 체계적으로 관리하고, AI 에이전트와의 협업을 효율적으로 진행할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add JetBrains/thinkrail

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

채팅 TODO 계획

개요

  • 이 채팅에 한정된 계획입니다. — 대화 중의 작업을 관리하며, 사용자에게 Todo 패널에 표시되고 세션과 함께 저장됩니다(저장소에 커밋되지 않음).
  • 그룹 = 작업, 항목 = 단계. 사용자의 한 요청 = 하나의 그룹이며, 그룹 제목은 결과를 나타냅니다(예: "로그인 리다이렉트 수정"), 과정이 아닙니다. 내부의 단계가 항목이며, 각 항목에는 제목, 상태(pending → in_progress → done), 선택적 노트(완료 기준을 여기에 기록하세요. 예: "로그인 e2e 통과")가 있습니다. 작업 자체의 상태는 저장되지 않으며, 단계로부터 파생됩니다.
  • 느슨한 항목은 사용자의 영역이며, 계획의 끝에 위치합니다. 사용자가 UI에서 추가하는 내용을 담습니다. 에이전트는 이를 작업하지만, 그룹화, 재작성, 삭제하지 않습니다. todo_list는 이를 마지막에 렌더링합니다(모든 그룹 뒤). 의도는 다음과 같습니다: 사용자가 작업 중간에 추가한 요청은 현재 작업 이후에 대기합니다. 따라서 현재 진행 중인 작업을 **완료(또는 재개)**한 후에 느슨한 항목을 처리하세요. — 새로 추가된 사용자 항목으로 바로 건너뛰어 진행 중인 단계를 포기하지 마십시오. 사용자는 느슨한 항목을 직접 작성하지 않습니다(도구는 group 또는 after 앵커가 필요함). 작은 요청은 작은 그룹(1-2단계면 충분)이거나, 목록이 아예 없어도 됩니다.
  • 공유되고 실시간입니다: 에이전트가 유지 관리하며, 사용자가 작업 중에 편집합니다. — 작업을 추가하거나, 포기한 작업을 제거할 수 있습니다. 저장된 목록이 진실의 원천이며, 에이전트가 기억하는 것은 단지 스냅샷일 뿐입니다. 동기화를 유지하려면 todo_list를 다시 읽어 최신 상태를 확인하세요. 기억에 의존하지 마십시오.
  • 사용자의 상태 창입니다. — 사용자가 채팅을 읽지 않고도 한눈에 진행 상황을 파악할 수 있습니다. 짧고 구체적인 단계 제목을 사용하고, 상태는 항상 최신 상태로 유지하세요.

세분화

요청 크기계획의 형태
간단함(답변, 한 번의 수정)목록 없음
1~7단계하나의 그룹(작은 요청 = 1~2단계 그룹, 충분함)
약 10단계 이상단계가 아니라 작업입니다. — 여러 그룹으로 분할

단계는 검증 가능하고 커밋 크기와 비슷해야 합니다: "진행하면서 쉽게 체크할 수 있는" 정도, "1단계" 같은 큰 덩어리가 아니어야 합니다.

작업 방법

  1. 계획을 먼저 제안하세요. — 목록의 핵심입니다. 요청이 여러 단계를 필요로 한다는 것을 이해하는 즉시, 첫 번째 행동은 **todo_write**로 제안된 계획을 작성하는 것입니다. — 작업당 하나의 그룹, 그 안에 단계를 넣고 — 명확한 질문을 하거나 작업을 시작하기 전에 말이죠. 그런 다음 더 많은 정보를 알게 되면 그 자리에서 계획을 개선하세요. (한 번에 답변하는 경우는 목록이 필요 없습니다.)
  2. 작업을 순서대로, 한 단계씩 엄격히 수행하세요:
    • 단계를 시작할 때 in_progress로, 완료할 때 done으로 전환합니다. 새 단계를 시작하면 다른 in_progress 단계는 자동으로 pending으로 돌아갑니다. — 따라서 진행하기 전에 완료(done 표시)해야 하며, 그렇지 않으면 이전 단계가 다시 열린 상태로 보입니다.
    • 현재 그룹에 열린 단계가 있는 동안 다음 그룹을 시작하지 마십시오. 유일한 예외는 진정으로 차단된 작업입니다. — 단계의 note에 이유를 기록하고 사용자에게 알린 후 다음 그룹으로 이동하세요.
    • 다음 단계 전에, todo_list를 다시 실행하세요. 사용자가 작업 중에 편집했을 수 있습니다: 새로운 내용(사용자 영역에 끝에 추가됨 — 현재 진행 중인 단계 이후에 처리하세요. 진행 중인 작업을 선점하지 마십시오)을 확인하고, 계획했던 항목이 사라졌다면 사용자가 삭제한 것입니다. — 건너뛰고, 다시 추가하지 마십시오.
    • 도구 결과가 도움이 됩니다: done 후에는 작업의 다음 단계를 알려주고, in_progress인 항목이 없으면 현재 단계를 전환하라는 알림을 줍니다. 해당 알림에 따라 행동하세요.
  3. 세션 중간에 새로운 요청 = 새 그룹이 추가됨 (todo_add와 group: 사용, 단계당 하나씩 — 또는 여러 번의 todo_add 호출로 새 작업의 단계를 배치). 새 요청의 단계를 현재 그룹에 절대 섞지 마십시오. 작업 중간에 발견한 단계는 todo_add after: <현재 단계 id>로 삽입합니다(에이전트의 자신의 단계 중 하나에 앵커 — 사용자의 자체 항목에 앵커를 지정하면 거부됩니다. 에이전트의 항목은 사용자 영역에 절대 없기 때문). 이를 위해 todo_write로 계획을 다시 작성하지 마십시오.
  4. 종료 전에 조정하세요. 턴이 끝날 때 todo_list를 한 번 더 실행하세요. 열린 단계(사용자가 방금 추가한 항목 포함)가 남아 있으면, 이를 수행하거나 무엇이 남았는지와 이유를 명확히 말하세요. — 새 항목을 그대로 두고 조용히 유휴 상태가 되지 마십시오.

불변 규칙

  • 완료된 것은 유지됩니다. 단계 완료 = todo_update → done. 완료된 항목을 절대 삭제하지 마십시오. — 사용자의 기록입니다. todo_remove는 사용자가 명시적으로 항목을 삭제하도록 요청할 때만 사용하세요.
  • 수정은 정밀하게 하세요. 첫 번째 계획 이후에는 todo_update / todo_add를 사용하세요(하나의 항목만 수정함). 기존 목록을 수정하기 위해 절대 todo_write를 사용하지 마십시오. — 모든 것을 대체합니다. todo_write는 새로운 계획을 작성할 때만 사용하세요.
  • 사용자의 편집을 존중하세요. 목록은 공유됩니다. 사용자의 추가는 새로운 요청으로, 삭제는 취소로 간주하세요. 느슨한 항목은 사용자의 것입니다. — 처리하되, 재계획 시 다시 작성하거나 삭제하지 마십시오. (todo_write는 사용자 항목과 완료된 항목을 보존해 주지만, 이에 의존하지 마십시오. — todo_add/todo_update를 사용하여 편집하고, 진정으로 새로운 계획을 위해서만 todo_write를 사용하세요.)

도구

  • todo_list — 현재 계획을 읽습니다(진실의 원천, 사용자의 편집을 확인하려면 다시 읽으세요).
  • todo_add — 하나의 단계를 추가합니다(group 내에, 또는 기존 단계 after에; 나머지는 그대로 둠).
  • todo_update — 하나의 단계를 진행합니다(시작 시 in_progress, 완료 시 done; 완료된 상태는 유지됨).
  • todo_remove — 하나의 항목을 삭제합니다(사용자가 요청할 때만).
  • todo_write — 새로운 계획을 작성합니다(그룹만 — 작업당 하나; 열린 항목을 대체하며, 처음에 한 번 사용하세요).

관련 스킬