New:Microsoft Teams Notifications Are Now Available in Socket.Learn more →
Get Started

sodam

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sodam

Sodam agent CLI for authenticating, managing models, and sending queries

latest
npmnpm
Version
0.1.1
Version published
Maintainers
1
Created
Source

Sodam CLI

Sodam는 로컬 터미널에서 인증, 모델 조회, 쿼리 전송을 처리하는 코딩 에이전트 CLI입니다. 배포 후 사용자는 아래와 같이 설치하고 실행합니다.

npm install -g sodam
export COMMAND_URL="https://command.example.com" # 서버 URL
sodam auth:login

개발 환경

  • 의존성 설치 및 빌드
    npm install
    npm run build
    
  • 로컬 실행 (src 변경 후)
    node dist/cli.js --command-url http://localhost:3000 models
    
  • 전역 테스트
    npm link
    sodam --command-url http://localhost:3000 status
    

지원 명령

명령설명
auth:loginGoogle PKCE 로그인(기본) 또는 --device 옵션으로 디바이스 인증. 토큰은 OS 키체인(keytar)에 저장.
auth:logout서버 세션을 종료하고 로컬에 저장된 토큰을 삭제.
models사용 가능한 모델 목록을 조회.
status계정 플랜, 일일 쿼터/사용량, 리셋 시간 등을 출력.
query <text>쿼리를 전송. -m, --model로 모델 ID, --metadata '{"key":"value"}' 로 추가 메타데이터 전달.

모든 명령은 COMMAND_URL 환경 변수를 사용해 Command 서버와 통신합니다. 옵션 --command-url 로 일시적으로 오버라이드할 수 있습니다.

토큰 저장 정책

  • 기본적으로 keytar를 이용해 OS 키체인에 { accessToken, refreshToken, expiresAt, userId } JSON을 저장합니다.
  • keytar를 사용할 수 없는 환경에서는 개발 편의를 위해 ~/.config/sodam/auth.json에 평문 저장하며, 이때 경고를 출력합니다.
  • 매 명령 실행 전 ensureTokenValid()가 호출되어 Access Token 만료 60초 전부터 자동으로 /api/auth/refresh를 수행합니다.

배포 준비

  • npm run build (또는 npm run test:types)로 타입 체크 및 빌드 완료.
  • dist/ 폴더만 패키지에 포함되며, bin.sodam = dist/cli.js 로 등록되어 전역 명령어가 생성됩니다.
  • npm publish 전에 루트에 있는 npm_sodam_token.txt 토큰으로 로그인하고, npm publish --access public 실행.

확인 체크리스트

  • COMMAND_URL이 미설정인 상태에서 명령 실행 시 친절한 오류 메시지가 출력되는지 확인.
  • auth:login 후 keytar 또는 fallback 경로에 토큰이 저장되는지 확인.
  • 토큰 만료 시 /api/auth/refresh 호출 되는지 확인.
  • auth:logout 후 서버와 로컬 토큰이 모두 삭제되는지 확인.
  • models/status/query 명령에서 API 오류가 발생하면 코드/메시지가 함께 출력되는지 확인.

FAQs

Package last updated on 13 Nov 2025

Related posts