clasp CLI로 로컬 IDE와 Apps Script를 연동하면, AI 에이전트가 개발부터 배포까지 자동으로 처리해준다. 복붙의 굴레에서 벗어나는 핵심이었다.
구글 앱스 스크립트를 언제 써야 할까?
다들 그렇겠지만, 자주 발생하는 상황에 대해서는 이럴 땐 이렇게, 저럴 땐 저렇게 등 나름의 매뉴얼처럼 업무 생각 매뉴얼을 활용해서 고민의 시간을 줄이는 편이다.
구글 스프레드시트가 아니라 엑셀이라는 형태가 더 많겠지만, 구글 워크스페이스를 제공하는 회사는 엑셀보다는 공유하기가 쉽기 대문에, 구글 스프레드 시트에에 온갖 데이터를 관리할 것이다.
운영 업무는 보통 사업/프로덕트 개선 보다 후순위 업무이고 시스템 변경 운영을 쫓아가기도 힘들다보니, 어쩔 수 없이 데이터를 별도로 관리하는 것이다.
어떤 업무에 앱스 스크립트가 적합할까?
이런 업무를 개선하겠다 라고 하면 우선 업무 생각 매뉴얼에 따르면 구글 앱스 스크립트를 활용해서 개선이 가능한 업무인지 체크를 한다.
다양한 사람들이 입력을 해야 하나? (입력 표준화)
트랜잭션 건수가 적은가? 입력 부하가 적은 업무인가? (고성능 업무 불가)
데이터에 대한 집계 후 리포트가 필요한가? (리포트 업무 자동화_
위의 3가지 경우를 모두 만족하면 구글 앱스 스크립트가 가장 좋은 접근 방안이 아닌가 한다.
왜냐하면 사내 시스템에 접근하려면 이것저것 할 것이 상당히 많고, 보안 프로세스를 위반할 위험이 많을 수 있다. 하지만 구글 앱스 스크립트는 데이터에 이미 접근한 상태에서 시작을 하기 때문에 이 단계를 쉽게 뛰어 넘을 수 있다.
그리고 구글 워크스페이스 생태계(Gmail, Google docs 등) 를 바로 연동해서 사용할 수 있는 것도 가장 큰 장점이 아닌가 하고, Gemini 에서는 구글 스프레드 시트에 접속이 가능해서 데이터를 Gemini가 이해하는 상황(맥락)에서 진행하기 때문에 맥락을 전달하는 수고도 덜 수 있다.
생성형 AI를 활용해서 접근 방법도 많이 쉬워졌다고 생각하는데, 가장 큰 어려운 점은 배포 및 테스트였다. ChatGPT 응답을 앱스 스크립트 프로젝트에 파일을 생성하고 복사/붙여넣기를 계속 반복하고 테스트도 진행을 해야한다. 처음에는 우와우와 하면서 하지만 이러한 번거로움이 허들로 작용하기도 한다.
이틀간 구글 앱스 스크립트로 조그만 프로젝트를 하고 있는데, Gemini 가 계속 헛소리(?)를 하길래,
구글 스프레드 시트 데이터 이해를 하느라 Context 를 다 사용해서 앱스 스크립트를 이상하게 주는구나...라고 혼자 생각하면서 데이터 맥락 없이 하고 싶은 것을 Claude, Codex, Antigravity 를 활용해야 겠다 라고 생각하면서, PRD 를 아~~~주 공들여서 작성하고 Plan, Task 를 Codex 와 Claude 가 서로 검토하게 만들어서 완성본을 만든 후 Antigravity를 가지고 개발을 진행했다.
하나 하나 타스크를 수행하고, 체크하는 반복적인 작업을 하고 있었는데, 다음과 같은 확인 메시지가 떴다.
클라스프(clasp) 설정: 로컬 개발 환경과 Apps Script를 연동하기 위해 필요합니다. (혹시 clasp가 설정되어 있지 않다면, 웹 에디터에 코드를 붙여넣는 방식을 사용할 수도 있습니다) 로컬에서 개발 후clasp push로 올리시는 편인가요, 아니면 제가 코드를 드리면 웹 에디터에 붙여넣으실 예정인가요?
push 라는 단어를 보니 git 과 같은건가? 그러면 배포가 편해지는데? 라는 생각 및 기대를 하면서...해줘~ 를 시전했다.
설치하고 시작을 하는데, 인증을 하니, AI Agent 들이 자동으로 push, deployment 를 해준다.
조금 늦게 검색을 통해서 아래 같은 것에 대해서도 찾아볼 수 있었다.
clasp - Apps Script CLI | Google Codelabs
Apps Script CLI(clasp)는 Apps Script 프로젝트를 로컬에서 생성, 수정, 배포할 수 있는 도구입니다. 이 도구를 사용하면 명령줄에서 Sheets, Docs, Forms, Slides와 같은 제품을 위한 웹 앱과 부가기능을 만들고 게시할 수 있습니다. Apps Script는 스크립트.google.com을 사용하거나 컴퓨터에서 로컬로 개발할 수 있는 두 가지 방법이 있습니다.https://codelabs.developers.google.com/codelabs/clasp?hl=ko#0
https://developers.google.com/apps-script/guides/clasp?hl=ko
clasp로 명령줄 인터페이스 사용 | Apps Script | Google for Developers
clasp를 쓰면 뭐가 달라질까?
이렇게 되면 Cursor, Antigravity 를 활용해서 구글 앱스 스크립트를 작성하는 것이 기존 Chatgpt, Gemini 보다는 훨씬 쉬워지고, 컨택스트 관리에도 강점도 가지게 된다고 생각한다.
이틀간 구글 앱스 스크립트로 만든 워크플로우는 다음과 같다.
웹 앱 (입력값 통일) → 구글 스프레드 시트 저장(raw_data) → Summary sheet 자동 생성 → 대시보드 웹
많이 부족하지만...AI를 활용해서 저런 데이터 파이프라인 및 어플리케이션을 이틀만에 만들 수 있게 된 것에 놀라고, 혼자 또 뿌듯함 +1 이 되었다. 이후 앱스 스크립트가 너무 쉬워지는 순간에서 GitHub Actions까지 연동하는 과정을 다뤘고, 기초부터 알고 싶다면 프롬프트만으로 Apps Script 적용하기도 참고하면 좋다.
크하하.
불러오는 중...