TL;DR

  • Waitwise는 Claude Code의 무작위 스피너 문구를 사용자가 선택한 콘텐츠로 교체하는 플러그인임.
  • 설정 과정에서 Claude가 원하는 주제를 묻고, 맞춤 문구 300개를 만들거나 사전 설정을 설치함.
  • 사전 설정에는 확언 2,000개, 스토아 철학 문구 600개, 선 문구 500개, 언어별 플래시카드 500개씩이 포함됨.
  • 설정에는 spinnerVerbs 키만 기록하며, 기존 값은 waitwise-state.json에 저장해 복원할 수 있음.
  • 요구 사항은 Claude Code와 python3를 통해 실행 가능한 Python 3임.

Waitwise 소개

  • Claude Code가 작업 중 표시하는 스피너에는 “Pondering…” 같은 무작위 단어가 나타남. Waitwise는 이 문구를 사용자가 선택한 콘텐츠로 교체하는 Claude Code 플러그인임.
  • 설정을 실행하면 Claude가 보고 싶은 내용을 묻고, 원하는 주제를 제공하면 Claude가 문구 목록을 작성함. 사전 설정에서 시작하는 방식도 있음.
  • 예시 문구는 “✻ Owning beats owing…”(확언), “✻ Rain falls. The build waits…”(선), “✻ madrugar — to get up early…”(스페인어 플래시카드)임.

요구 사항

  • Claude Code
  • python3로 실행 가능한 Python 3

설치

  • Claude Code 세션에서 다음 명령을 실행함.
  • GitHub 마켓플레이스 추가: /plugin marketplace add marciob/waitwise
  • 플러그인 설치: /plugin install waitwise@waitwise
  • 설정 실행: /waitwise:setup
  • 새 문구는 다음 메시지의 스피너에 표시되며, Claude Code를 재시작할 필요가 없음.

명령어

  • /waitwise:setup: Claude가 사용 사례를 묻고 해당 구성을 설치함.
  • /waitwise:setup <preset-id>: 지정한 사전 설정을 즉시 설치함.
  • /waitwise:setup status: 현재 설치된 항목을 표시함.
  • /waitwise:setup restore: Waitwise 설치 전 스피너를 복원함.

사전 설정

사고방식

  • positive-affirmations: 확언 2,000개. 대부분 번영, 돈, 경력에 관한 내용임.
  • stoic-wisdom: 짧은 스토아 철학 문구 600개. 이 가운데 80개는 Seneca, Marcus Aurelius, Epictetus, Musonius Rufus, Zeno의 말을 바꿔 쓴 문구임.
  • zen-monk: 선승의 말투로 쓴 차분하고 짧은 문구 500개임.

언어 학습

  • 각 문구는 단어나 구절과 그 영어 뜻을 표시함.
  • flashcards-spanish: A2~B2 수준의 스페인어 단어와 구절 500개임.
  • flashcards-french: A2~B2 수준의 프랑스어 단어와 구절 500개임.
  • flashcards-german: A2~B2 수준의 관사가 포함된 독일어 단어와 구절 500개임.
  • flashcards-japanese: JLPT N5~N3 수준의 로마자 표기가 포함된 일본어 단어 500개임.

맞춤 주제

  • 설정에서 “Custom theme”을 선택하면 Claude가 주제, 말투, 언어를 묻고 문구 300개를 작성해 설치함.

작동 방식

  • Claude Code는 ~/.claude/settings.json의 spinnerVerbs 키를 읽음. CLAUDE_CONFIG_DIR을 설정한 경우에는 해당 폴더의 파일을 읽음.
  • 스피너가 나타날 때마다 무작위 문구 하나를 선택하며, 스피너가 닫힐 때까지 해당 문구가 유지됨.
  • 작업 목록에 진행 중인 단계가 있으면 목록의 문구 대신 해당 단계가 스피너에 표시됨.
  • plugins/waitwise/scripts/spinner.py 스크립트는 spinnerVerbs 키만 기록하며 다른 설정은 변경하지 않음.
  • 목록을 처음 설치할 때 스크립트는 기존 spinnerVerbs 값을 waitwise-state.json에 저장하며, 복원 명령이 이 파일을 사용함.
  • settings.json이 유효한 JSON이 아니면 스크립트는 중단되며 아무것도 변경하지 않음.

제거

  • /waitwise:setup restore를 실행해 기존 스피너를 복원함.
  • /plugin uninstall waitwise@waitwise를 실행함.
  • 플러그인을 먼저 제거하면 목록은 settings.json에 남음. 목록을 제거하려면 해당 파일에서 spinnerVerbs 키를 삭제함.

사전 설정 추가

  • plugins/waitwise/presets/<id>/ 폴더를 만듦.
  • lines.txt에 동사구를 한 줄씩 입력함. 각 줄은 60자 이하로 유지하고, Claude Code가 “…”를 추가하므로 문장 끝에 문장 부호를 넣지 않음.
  • preset.json에 name, description, language, group 필드를 추가함. 예시 값은 각각 "Display name", "One sentence.", "en", "Mindset"이며, 설정 화면은 group별로 사전 설정을 묶음.
  • 저장소 루트에서 claude plugin validate .를 실행함.

라이선스

  • MIT