Skip to main content
auth 서브커맨드는 로컬 자격증명과, 이후 명령이 동작할 워크스페이스를 관리합니다. 로그인은 OAuth 기반이고, CLI가 OS 설정 디렉터리 아래에 사용자별 토큰을 저장합니다.

명령

auth login

OAuth를 위해 브라우저 창이 열립니다. 성공하면:
  • 워크스페이스 목록을 가져옵니다
  • 아직 없으면 첫 것을 활성으로 고정합니다
  • OS 설정 위치에 자격증명을 씁니다:
    • macOS: ~/Library/Application Support/nora/credentials.json
    • Linux: ~/.config/nora/credentials.json
    • Windows: %APPDATA%\nora\credentials.json
자격증명 파일은 chmod 0600(여러분만 읽기)입니다. 절대 커밋하거나 공유하지 않습니다. 터미널에 브라우저가 없으면(SSH, 컨테이너) CLI가 로컬 브라우저에 붙여 넣을 URL을 표시합니다. 돌아온 코드를 터미널에 붙입니다.

auth logout

로컬 자격증명 파일을 삭제합니다. 서버 쪽 토큰은 거두지 않습니다. 거두려면 앱을 씁니다. Settings → Personal Access Tokens → Revoke. 공유 머신에서 로그인한 뒤에 좋습니다.

auth status

이렇게 표시합니다:
  • 활성 워크스페이스 이름과 ID
  • 저장된 모든 워크스페이스(이름 + ID + 역할)
  • 토큰(가려져서 prefix만)
  • 가리키는 서버 URL
뭔가 이상하다 싶을 때 처음 쓰기 좋은 명령입니다. 어느 워크스페이스가 활성이고 CLI가 어느 서버와 통신하는지 확인합니다.

auth workspaces list

서버에서 워크스페이스 목록을 새로 가져옵니다(오프라인이면 캐시로 폴백). 항목마다 역할(owner / manager / member)을 표시해, 파괴적 명령을 돌리기 전에 권한을 알 수 있습니다.

auth workspaces switch <id>

활성 워크스페이스를 설정합니다. 다시 전환할 때까지 이후 명령이 여기에 동작합니다. 전환 없이 명령마다 덮어쓸 수도 있습니다:

auth workspaces current

활성 워크스페이스 ID만 표시합니다. 셸 스크립트에 좋습니다:

한 머신에 여러 계정

CLI는 활성 자격증명 한 벌을 저장합니다. 다른 계정을 쓰려면:
또는 NORA_CONFIG_DIR를 가리켜 자격증명 파일을 여러 벌 유지합니다:
빠른 전환용 alias:

개인 토큰과 워크스페이스 토큰

두 토큰 다 됩니다: CI에는 워크스페이스 토큰이 맞습니다. 엉뚱한 워크스페이스에 실수로 동작하지 않고, 하나를 거둬도 사용자가 앱에서 로그아웃되지 않습니다. CI는 NORA_TOKEN을 시크릿으로 설정합니다:
auth login이 필요 없습니다. CLI가 NORA_TOKEN을 알아서 집어옵니다.

토큰 수명

  • 개인 접근 토큰: 거둘 때까지 유효. 쓰면 자동으로 새로 고침
  • 워크스페이스 토큰: 거두거나 워크스페이스를 지울 때까지 유효
CLI의 status 출력이 토큰 발급 시각을 표시해, 오래된 토큰을 돌릴 수 있습니다.

문제 해결

“Not authenticated” auth login을 실행하거나 NORA_TOKEN을 설정하세요. “Wrong workspace” auth status로 활성 워크스페이스를 보고, auth workspaces switch로 고치세요. “유효한 토큰인데 서버가 401” UI에서 토큰이 거둬진 상태입니다. auth login을 다시 실행하세요. 기업 프록시가 OAuth를 막음 auth login 전에 HTTPS_PROXY=http://your-proxy:port를 설정하세요.