@googleworkspace/cli
@googleworkspace/cli는 단일 CLI로 Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin 등 Google Workspace API를 JSON으로 자동화·AI 에이전트에 활용
googleworkspace-cli란?
googleworkspace/cli(배포명 @googleworkspace/cli)는 Google Workspace용 명령줄 도구입니다. Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin 등 여러 Workspace API를 단일 CLI로 사용할 수 있습니다.
명령 인터페이스는 고정된 명령 목록을 배포하는 대신 Google의 Discovery Service에서 런타임에 동적으로 생성됩니다. 프로젝트는 “AI agent skills”를 포함하며, CLI는 자동화를 위한 구조화된 JSON 출력을 강조합니다.
주요 기능
- 여러 Workspace 서비스를 위한 단일 CLI: Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin 및 기타 Workspace API와 상호 작용하는 단일 인터페이스를 제공합니다.
- Discovery Service 기반 동적 명령 생성: 런타임에 Google의 Discovery Service를 읽어 명령과 메서드를 생성하므로, 정적 명령 목록 없이 새로운 엔드포인트/메서드를 자동 수신합니다.
- 구조화된 JSON 출력: 자동화 및 AI 에이전트 사용을 위해 설계되었으며, 응답을 구조화된 JSON으로 반환합니다.
- API 메서드 스키마 검사:
gws schema <...>를 사용해 메서드의 요청/응답 스키마를 확인합니다. - 요청 시뮬레이션 및 페이지네이션 도우미:
--dry-run으로 요청 미리보기,--page-all로 페이지네이션 결과 스트리밍(jq같은 도구로 옵션). - 다양한 인증 워크플로: 로컬, CI, 서버에 적합한 설정/로그인 워크플로 지원. 사용 가능 시
gcloud통합 포함. - 번들된 에이전트 스킬: 저장소 문서에 “40+ agent skills” 포함으로 명시.
googleworkspace-cli 사용 방법
- CLI 설치:
- npm으로:
npm install -g @googleworkspace/cli - GitHub Releases의 사전 빌드 바이너리 사용
- 소스 빌드:
cargo install --git https://github.com/googleworkspace/cli --locked - (macOS/Linux은 Homebrew; Nix flake 사용 가능.)
- npm으로:
- 인증 (프로젝트 초기 설정 후 로그인):
gws auth setup(gcloud설치 및 인증 필요)gws auth login(이후 OAuth 로그인)- 수동 토큰/콘솔 기반 흐름은 환경 변수 및 수동 OAuth 설정 경로로 문서화.
- 리소스에 명령 실행. 문서 예시 워크플로:
- 파일 목록:
gws drive files list --params '{"pageSize": 5}' - 스프레드시트 생성:
gws sheets spreadsheets create --json '{"properties": {"title": "Q1 Budget"}}' - Chat 메시지 전송:
gws chat spaces messages create --params '{"parent": "spaces/xyz"}' --json '{"text": "Deploy complete."}' - 스키마 검사:
gws schema drive.files.list
- 파일 목록:
사용 사례
- 페이지네이션과 JSON으로 Drive 워크플로 자동화: Drive 목록 엔드포인트에서 대량 결과 스트리밍 후 다운스트림 도구(
--page-all출력과jq조합 등)로 처리. - Gmail/Chat/Calendar 요청을 원시 REST 호출 없이 전송: 생성된 리소스 중심 명령으로 객체 생성/업데이트.
- 실행 전 요청 구조 검증:
--dry-run으로 CLI가 보낼 내용을 미리 확인(Sheets, Chat 등 페이로드 생성 시 유용). - Workspace API 중심 AI 에이전트 도구 구축: 구조화된 JSON 응답과 포함된 에이전트 스킬로 LLM 기반 에이전트가 사용자 정의 코드 없이 Workspace 작업 결정.
- CLI에서 API 메서드 호출 방법 탐색: 메서드 존재는 알지만 요청 형태를 모를 때
gws schema <method>로 요청/응답 스키마 검사.
자주 묻는 질문
-
googleworkspace-cli는 Google 공식 제품인가요? 아닙니다. 저장소에 “공식 지원 Google 제품 아님”으로 명시.
-
고정된 명령 목록이 있나요? 없습니다. 문서에 정적 명령 목록을 배포하지 않고, 런타임에 Google Discovery Service를 읽어 명령 인터페이스를 동적으로 생성한다고 명시.
-
설치 및 실행에 필요한 것은? npm 설치 흐름에 Node.js 18+ 필요. 인증은 OAuth 자격 증명을 위한 Google Cloud 프로젝트와 Workspace 액세스 Google 계정 필요.
-
어떤 인증 설정을 사용해야 하나요? 문서에 여러 경로 설명:
gcloud설치 및 인증 시gcloud보조 설정(gws auth setup)- 자동화 불가 시 Google Cloud Console 수동 OAuth 설정
- 환경 변수로 토큰/수동 자격 증명(문서화됨)
-
개발/테스트 중 스코프 관련 제한이 있나요? 있습니다. 문서에 OAuth 앱이 검증되지 않음(테스트 모드) 시 Google이 동의 범위를 ~25 스코프로 제한하며, 권장 스코프 프리셋(85+ 스코프)은 검증되지 않은 앱에서 실패—특히
@gmail.com계정에서—고 경고.
대안
- curl 또는 HTTP 클라이언트로 직접 REST API 호출: Workspace 엔드포인트를 직접 호출할 수 있지만, 요청 형식, 페이지네이션, 인증 세부 사항을 직접 관리해야 합니다.
- 특정 Workspace 서비스용 공식 SDK (예: 언어별 Google APIs 라이브러리): 특정 서비스에 대한 타입화된 클라이언트 메서드를 제공하지만, 일반적으로 API별 별도 코드 경로를 가지며 하나의 동적 생성 CLI 인터페이스가 아닙니다.
- Google APIs용 기타 CLI 도구: 대안 CLI는 특정 서비스에 초점을 맞추거나 정적 명령 세트를 사용할 수 있습니다; 도구에 따라 여기에 설명된 동적 Discovery Service 기반 명령 생성이나 구조화된 JSON + 스키마 내省 워크플로를 제공하지 않을 수 있습니다.
대안
Ably Chat
Ably Chat은 실시간 채팅 API와 SDK로 맞춤형 채팅 앱을 구축합니다. 반응, 존재감, 메시지 편집/삭제를 포함해 대규모 실시간에 최적화
Tavus
Tavus는 실시간 대면 상호작용을 위해 보고 듣고 반응하는 AI를 구축합니다. 맞춤 비디오 에이전트·디지털 트윈·AI 컴패니언을 API로 배포하세요.
HiringPartner.ai
HiringPartner.ai는 AI 에이전트가 24시간 내내 후보자를 소싱하고, 선별하고, 통화 및 인터뷰까지 진행하는 자율형 채용 플랫폼으로, 수 주 걸리던 채용 기간을 최소 48시간까지 단축합니다.
AakarDev AI
AakarDev AI는 원활한 벡터 데이터베이스 통합을 통해 AI 애플리케이션 개발을 간소화하는 강력한 플랫폼으로, 신속한 배포와 확장성을 가능하게 합니다.
AgentMail
AgentMail은 AI 에이전트를 위한 이메일 인박스 API로, REST로 메일 생성·발송·수신·검색해 양방향 대화를 구현합니다.
DeepMotion
DeepMotion은 웹 브라우저에서 비디오(및 텍스트)로부터 3D 애니메이션을 생성하는 AI 모션 캡처·바디 트래킹 플랫폼입니다. Animate 3D API 지원.