sparta-scheduler-cli
팀스파르타 강사 일정 관리 포털 을 CLI 로 조작하는 도구입니다. 매달 반복되는 가능/불가 일정 · 배정 교육 · 내 정보 · 내 계약 관리를 커맨드 한 줄 혹은 자연어로 끝냅니다.
$ ts-scheduler avail bulk 2026-05-01 2026-05-31 unavailable --no-weekends
✓ 적용 21건, 건너뜀 0건, 실패 0건
$ ts-scheduler status --month 2026-05
2026-05 요약
┌────────┬────┐
│ 배정됨 │ 4 │
│ 가능 │ 0 │
│ 불가 │ 21 │
│ 미정 │ 6 │
└────────┴────┘
동봉된 스킬을 등록하면:
"5월 첫째 주랑 셋째 주 빼고 전부 불가로 잡아줘"
같은 자연어로 바로 처리됩니다.
지원 AI CLI (한 번 설치로 셋 다 동시 지원): Claude Code · OpenCode · OpenAI Codex CLI (v0.124+)
대상 사용자: @teamsparta.co Google 계정 또는 등록된 강사 이메일 소지자.
설치
macOS / Linux — 한 줄 설치
curl -fsSL https://raw.githubusercontent.com/seolcoding/sparta-scheduler-cli/main/install.sh | bash
이 스크립트가 자동으로 다 해줍니다 (idempotent · 재실행 안전):
uv 없으면 자동 설치, git 존재 확인
- repo 를
~/.sparta-scheduler-cli 에 clone (재실행 시 git pull 로 업데이트)
uv tool install 로 ts-scheduler 커맨드를 전역 설치
~/.claude/skills/sparta-scheduler 에 심볼릭 링크로 스킬 등록
- 다음 단계 안내 출력
설치 후 새 터미널을 열거나 source ~/.zshrc (Linux bash 는 ~/.bashrc) 실행해서 PATH 반영.
Windows (PowerShell)
WSL2 사용을 강력 권장. WSL 안에서 macOS/Linux 설치 명령을 그대로 실행하세요.
네이티브 Windows 로 진행하고 싶으면:
# 1) uv 설치 (없으면)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# 2) repo clone + 설치
git clone https://github.com/seolcoding/sparta-scheduler-cli "$HOME\.sparta-scheduler-cli"
cd "$HOME\.sparta-scheduler-cli"
uv tool install --reinstall .
# 3) Claude Code 스킬 심볼릭 링크 (관리자 PowerShell)
New-Item -ItemType SymbolicLink `
-Path "$HOME\.claude\skills\sparta-scheduler" `
-Target "$HOME\.sparta-scheduler-cli\skills\sparta-scheduler"
사전 준비 체크리스트
| 도구 | 자동 처리 | 수동 설치 |
|---|
| uv | ✅ install.sh 가 자동 설치 | curl -LsSf https://astral.sh/uv/install.sh | sh |
| git | ❌ 필수 | macOS: xcode-select --install · Ubuntu: sudo apt install git · Windows: git-scm.com |
| Chrome 또는 Edge | ❌ Google OAuth 로그인용 (대부분 이미 있음) | — |
수동 설치 (repo 를 직접 받았을 때)
git clone https://github.com/seolcoding/sparta-scheduler-cli
cd sparta-scheduler-cli
./install.sh
최초 로그인 (1회만)
ts-scheduler auth login
- 브라우저 창이 자동으로 뜸 → Google 로그인 (
@teamsparta.co 또는 등록된 강사 이메일)
/instructor/* 페이지에 도달하면 CLI 가 자동 종료
- 토큰은
~/.config/tutor-scheduler/token.json 에 chmod 600 으로 저장
- 이후 만료되면
refresh_token 으로 자동 갱신 — 다시 로그인할 필요 없음
Google 이 자동화 브라우저를 막는 경우
에러 메시지에 Google 이 자동화된 브라우저를 차단했습니다 가 뜨면:
ts-scheduler auth login --paste
CLI 가 출력하는 가이드 그대로:
- 평소 쓰시는 브라우저로 https://tutor-scheduler-wheat.vercel.app/instructor/schedule 방문 (이미 로그인 돼 있을 것)
- DevTools (macOS: ⌥⌘I · Windows/Linux: F12) → Console 에서:
copy(localStorage.getItem('sb-dsvtjheuxtzazfnjujri-auth-token'))
- 터미널에 붙여넣기 → Enter → 빈 줄에서 Enter 한 번 더
진단
ts-scheduler auth diagnose
6단계 체크리스트가 출력됩니다 — 어느 단계에서 막혔는지 바로 알 수 있습니다:
✓ [1/6] token file exists /Users/you/.config/tutor-scheduler/token.json
✓ [2/6] json parseable 8 keys
✓ [3/6] required fields all present
✓ [4/6] access_token valid 3565s 남음 (anon_key=있음)
✓ [5/6] refresh (skipped) not expired, skipping
✓ [6/6] /api/auth/me reachable 홍길동 · instructor_id=xxxxxxxx
사용법
한 눈에
ts-scheduler status # 이번 달 요약
ts-scheduler status --month 2026-05 # 5월 요약
ts-scheduler avail calendar --month 2026-05 # 5월 종합 뷰
ts-scheduler courses list # 내 배정 교육
ts-scheduler profile show # 내 정보
ts-scheduler contracts list # 내 계약 (지난달·이번달·다음달)
가능/불가 일정
# 하루 단위
ts-scheduler avail set 2026-05-31 available
ts-scheduler avail set 2026-05-31 unavailable
ts-scheduler avail set 2026-05-31 clear # 해당 날짜 설정 해제
# 범위 일괄
ts-scheduler avail bulk 2026-05-01 2026-05-31 unavailable
ts-scheduler avail bulk 2026-05-01 2026-05-31 available --no-weekends
ts-scheduler avail bulk 2026-05-01 2026-05-31 available --step 3 # 3일 간격
ts-scheduler avail bulk 2026-05-01 2026-05-31 unavailable --keep-opposite
# 월 전체 초기화
ts-scheduler avail clear-month 2026-05
서버가 "배정이 있는 날짜에는 불가 등록할 수 없습니다" 로 거부하는 날은 bulk 가 자동으로 건너뜁니다.
모든 커맨드에 --json 사용 가능
ts-scheduler contracts list --json | jq '.["2026-05"].summary'
ts-scheduler courses list --json | jq '.items[].title'
AI CLI 스킬로 사용
install.sh 는 스킬을 두 경로에 심볼릭 링크합니다 — 이 둘로 Claude Code · OpenCode · OpenAI Codex CLI 세 도구 전부 커버됩니다.
| 도구 | 감지 경로 | 설치 후 조치 |
|---|
| Claude Code | ~/.claude/skills/sparta-scheduler | 세션 재시작 |
| OpenCode (sst/opencode) | ~/.claude/skills/ 또는 ~/.agents/skills/ | 자동 감지 |
| OpenAI Codex CLI (v0.124+) | ~/.agents/skills/sparta-scheduler | 자동 감지 · /skills 로 노출 확인 |