Thinking Orbs
Yogesh (yogesharc) · 코딩
Thinking Orbs는 AI 에이전트가 하는 일을 애니메이션 오브로 보여 주는 오픈소스 React 컴포넌트 모음이다.

Thinking Orbs 소개
About
Thinking Orbs란
Thinking Orbs는 AI 에이전트 화면에 움직이는 오브를 그리는 React 컴포넌트 모음이다. 오브는 점으로 이루어진 구체이고, 상태가 바뀌면 점이 움직이는 방식도 바뀐다. 에이전트가 생각하는 동안에는 빛 입자가 표면을 떠돌고, 웹을 검색할 때는 렌즈가 지점 사이를 튄다. 오류 뒤에 다시 시도하면 오브가 돌다가 뒤로 감긴다.
이 라이브러리가 나온 이유는 분명하다. 에이전트 화면은 애매한 작업 중 상태에 오래 머문다. 스피너는 모델이 무엇을 하는지 알려 주지 않고, 사용자는 느린 응답과 멈춘 요청을 구분하지 못한다. 이 애니메이션 오브는 그 빈 시간을 읽을 수 있는 신호로 바꾼다. 크기는 한 줄 텍스트 옆에 들어갈 정도로 작다.
만든 사람 Yogesh는 MIT 라이선스로 공개했다. React 버전은 React만 있으면 되고, 순수 JavaScript 버전은 의존성이 전혀 없다. SwiftUI 패키지는 iOS 17과 macOS 14를 지원한다. 기본이 아닌 모양과 렌더는 별도 모듈이라 가져온 만큼만 번들에 들어간다.
도입 전에 경계도 알아 두자. 컴포넌트는 애니메이션만 담당하고 에이전트를 추적하지 않는다. 어떤 상태를 언제 보여 줄지는 자신의 요청 흐름에서 정한다. 모양과 렌더는 현재 웹 전용이고, SwiftUI 버전이 받는 옵션은 더 적다.
시작하기
- npm, pnpm, yarn, bun 중 하나로 설치한다. npm i @yogesharc/thinking-orbs.
- Orb를 가져와 reasoning이나 searching 같은 상태를 넘긴다.
- size, speed, density, tilt를 조정해 본문 글자 크기에 맞추고, label에 스크린리더용 이름을 넣는다.
- 다른 모양이나 붓질이 필요하면 선택 모듈에서 모양이나 렌더를 가져온다.
- 또는 shadcn 명령으로 components/에 소스를 복사해 자기 파일처럼 고친다.
제품 정보
Thinking Orbs의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.
추천 대상
이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.
사용자
- AI 채팅이나 에이전트 제품을 만드는 React 개발자
- 디자이너가 없는 작은 프런트엔드 팀
- 개인 프로젝트를 굴리는 1인 개발자
작업
- 스트리밍 채팅에서 생각과 웹 검색을 구분하기
- 색인 생성이나 개발 서버 같은 긴 백그라운드 작업 보여 주기
- 재시도나 사용 한도 안내
- 도구 호출 응답을 기다리는 동안 빈 패널 채우기
활용 상황
- 토큰을 스트리밍으로 받는 채팅 앱에서 답변 머리말 옆에 상태가 필요할 때.
- 도구 호출이 연달아 일어나는 코딩 에이전트나 편집기 플러그인에서 호출마다 신호가 필요할 때.
- iPhone이나 Mac의 SwiftUI 앱에서 웹 버전과 같은 시각 언어를 쓰고 싶을 때.
주요 기능
에이전트 동작마다 준비된 상태 표시
아홉 가지 상태가 에이전트 UI의 루프를 덮는다. 실행 중인 작업, 생각, 검색이 앞에 오고 이어서 백그라운드 작업, 브라우저 조작, 재시도, 컨텍스트 압축, 사용 한도 대기, 유휴가 붙는다. 대부분 이름 붙은 변형이 있어 gyro는 작업 중인 오브를 흔들고 lighthouse는 검색 빛을 훑는다.
CSS 없이 모양을 맞추는 프롭
size, speed, density, dotSize, tilt는 모두 숫자 프롭이다. 14px 캡션에도 48px 블록에도 스타일을 쓰지 않고 맞출 수 있다. paused는 현재 프레임에서 움직임을 멈추고, className을 쓰면 기존 유틸리티 클래스의 글자색을 그대로 물려받는다. currentColor로 그리기 때문에 다크 모드에 별도 설정이 필요 없다.
선택으로 더하는 모양과 렌더
코어에는 모양 하나와 렌더 하나만 들어 있다. 나머지 네 가지 모양(cube, octahedron, tetrahedron, torus)과 일곱 가지 렌더(dashes, squares, crosses, mesh, halftone, lines, verticalLines)는 별도 진입점에 있다. tree shaking이 쓰지 않는 부분을 덜어 내고, 직접 만든 모양은 단위 구 안의 좌표를 돌려주는 함수로 쓴다.
네 가지 도입 경로
npm에서 설치하거나, shadcn URL로 소스를 복사하거나, mountOrb로 순수 JavaScript에 붙이거나, Xcode에서 Swift 패키지를 추가한다. vanilla 버전은 pause, play, destroy를 돌려주므로 생명주기를 직접 관리하는 페이지에 어울린다. SwiftUI 버전은 전경 스타일로 그려서 foregroundStyle(.blue)를 붙이면 색이 바뀐다.
가벼운 구성과 기본 접근성
React 빌드는 React 말고 의존성이 없고, vanilla 빌드는 아예 없다. 기본 20px은 모양을 그릴 때 기준으로 삼은 크기라 빽빽한 화면에서도 점이 읽힌다. label 프롭이 스크린리더용 이름을 붙이고, 운영체제가 동작 줄이기를 알리면 애니메이션이 멈춘다.
MIT 라이선스 오픈소스
소스 전체가 GitHub에 있고 MIT 라이선스가 상업적 사용, 수정, 재배포를 허용한다. 후원은 Patreon으로 받는 선택 사항이며 기능을 여는 조건이 아니다. 컴포넌트를 포크해 직접 관리하려는 팀도 비용을 예측할 수 있다.
장단점
장점
- 아홉 가지 상태와 변형이 에이전트 화면이 알려야 할 동작을 거의 다 덮는다.
- 의존성 사슬이 없어 React 프로젝트에 넣어도 무게가 거의 늘지 않는다.
- 기본 20px 크기면 도구 모음, 메시지 머리말, 사이드 패널에서도 또렷하게 읽힌다.
- 동작 줄이기 대응과 스크린리더 라벨이 컴포넌트에 들어 있다.
단점
- 그리기만 하므로 에이전트 이벤트를 어느 상태에 연결할지는 직접 작성해야 한다.
- 모양과 렌더가 웹 전용이라 SwiftUI 버전은 선택지가 좁다.
- 문서가 한 페이지라 상태 전환 간격은 직접 시험하며 정하게 된다.
자주 묻는 질문
무료다. MIT 라이선스 오픈소스이고 모든 상태와 모양, 렌더가 추가 비용 없이 포함된다. 유료 등급도, 계정도 없다.
관련 콘텐츠
Thinking Orbs와 관련된 도구, 스킬, 아티클을 살펴보세요.
Thinking Orbs 대안
Base Code
Base44 (Wix) · 코딩 · 생산성Base Code는 Base44가 만든 공유 클라우드 개발 환경이다. 팀은 기존 GitHub 저장소에 대한 변경을 채팅으로 설명하고, 미리보기로 확인한 뒤 풀 리퀘스트로 돌려보낸다.
Google EmbeddingGemma 2
Google DeepMind · 글쓰기 · 이미지 · 코딩Google EmbeddingGemma 2는 7억 4000만 파라미터의 오픈 모델로, 텍스트와 코드, 이미지, 오디오, 영상 프레임을 하나의 768차원 공간에 벡터로 바꿔 스마트폰과 노트북에서 실행한다.
GitGlow
GitGlow · 코딩 · 생산성GitGlow는 내 코드와 AI 에이전트의 변경을 한 리뷰에 모으는 데스크톱 Git 클라이언트다. 배포 전에 내 기계에서 무엇이 나가는지 확인할 수 있다.
