GASのclasp入門|Google Apps Scriptをローカル環境(VS Code)で開発・Git管理する基本ガイド

GASのclasp入門 アイキャッチ画像

Google Apps Script(GAS)でコードを書く際、ブラウザ上のApps Scriptエディタを使って開発するのが標準的です。しかし、規模が大きくなってくると「VS Codeなどの使い慣れたエディタで書きたい」「GitやGitHubでコードの変更履歴を管理したい」と感じる機会が増えてきます。

そんな悩みを解決してくれるのが、Googleが公式で提供しているコマンドラインツール「clasp(Command Line Apps Script Projects)」です。この記事では、claspの基本機能から導入手順、日常的に使う主要コマンドまでをわかりやすく解説します。

本記事のゴール

  • claspの概要と導入メリットを理解できる
  • ローカル環境へclaspをインストールし、Googleアカウントで認証できる
  • clasp create / clasp clone / clasp push / clasp pull などの基本操作ができる
  • VS Code等のローカルエディタでGASを安全に開発できるようになる

clasp(Command Line Apps Script Projects)とは?

claspとは、Google Apps Scriptプロジェクトを自分のパソコン(ローカル環境)で作成・編集・管理するためのCLI(コマンドラインインターフェース)ツールです。

通常のGAS開発とclaspを使った開発の主な違いは以下の通りです。

比較項目 ブラウザ上のApps Scriptエディタ claspを使ったローカル開発
開発エディタ ブラウザ画面 VS Code, Cursor, WebStormなど自由
バージョン管理 標準の履歴機能のみ Git / GitHubで本格管理可能
TypeScript対応 非対応 (JavaScript標準) 標準対応(自動コンパイル機能あり)
補完・拡張機能 限定的 ESLint, Prettier, 各種キーバインドが使用可能

claspを使うための2つの事前準備

claspを利用するには、事前に以下の2つの設定を済ませておく必要があります。

1. Node.jsとnpmのインストール確認

claspはNode.jsのパッケージとして提供されています。ターミナル(Windowsの場合はPowerShellやコマンドプロンプト、Macの場合はターミナル)を開き、以下のコマンドでバージョンが表示されるか確認しましょう。

node -v
npm -v

バージョン番号(例: v18.x.x など)が表示されれば準備OKです。まだインストールされていない場合は、Node.js公式サイトからLTS(推奨版)をインストールしてください。

2. Google Apps Script APIの有効化

claspが自分のGoogleアカウント内のGASプロジェクトを操作できるようにするため、Google公式の設定ページでAPIをONにする必要があります。

  1. ブラウザで Google Apps Script ユーザー設定画面 にアクセスします。
  2. 「Google Apps Script API」の項目を探します。
  3. スイッチを 「オン」 に切り替えます。

注意: この設定が「オフ」のままだと、後述の clasp pushclasp create 実行時に Google Apps Script API has not been used in project ... というエラーが発生します。

claspのインストールとログイン

準備ができたら、claspをPCにインストールしてGoogleアカウントと連携します。

グローバルインストール

以下のコマンドを実行し、claspをPC全体で使えるようにインストールします。

npm install -g @google/clasp

Googleアカウントでのログイン認証

インストールが完了したら、ログインコマンドを実行します。

clasp login

コマンドを実行すると自動的にブラウザが開きます。GASを利用しているGoogleアカウントを選択し、アクセス許可を承認すれば認証完了です。

claspの基本コマンド一覧と使い方

ここからは、開発時に日常的に使う5つの基本コマンドを解説します。

1. 新規プロジェクト作成: clasp create

ローカル上で新しいGASプロジェクトを立ち上げるコマンドです。

# スタンドアロン型のプロジェクトを作成
clasp create --title "マイGASプロジェクト" --type standalone

# スプレッドシートコンテナバインド型を作成したい場合
clasp create --title "シート連携GAS" --type sheet

実行すると、現在のフォルダに .clasp.jsonappsscript.json が生成されます。

2. 既存プロジェクトの取得: clasp clone

既にブラウザ上で作成済みのGASプロジェクトをローカルに取り込みたい場合は clasp clone を使います。

clasp clone "あなたのScriptID"

ScriptID は、Apps ScriptエディタのURL https://script.google.com/home/projects/【ScriptID】/edit の部分、または「プロジェクトの設定(歯車アイコン)」から確認できます。

3. ローカルからクラウドへ送信: clasp push

ローカルで修正したコード(.js.ts)をGoogleクラウド上のApps Scriptエディタへアップロードします。

clasp push

TypeScript(.ts ファイル)で記述している場合、clasp push 時に自動的にJavaScript(.gs)へとコンパイルされて同期されます。

4. クラウドからローカルへ取得: clasp pull

ブラウザ上のApps Scriptエディタで直接変更したコードを、ローカルへダウンロードして同期します。

clasp pull

注意: clasp pull を実行すると、ローカルにあるコードがクラウド側のコードで強制的に上書きされます。ローカルで未保存・未コミットのコードがある場合は注意してください。

5. エディタをブラウザで開く: clasp open

ターミナルから一発でブラウザのApps Scriptエディタを開く便利コマンドです。

clasp open

理解しておきたい3つの設定ファイル

claspプロジェクト内で生成される主要なファイルとその役割です。

  1. .clasp.json: コネクション設定ファイル。連携対象の scriptId やローカルのルートフォルダ (rootDir) を指定します。
  2. appsscript.json: GASのマニフェストファイル。タイムゾーン(Asia/Tokyo)や認証スコープなどを管理します。
  3. .claspignore: clasp push する際にGoogle側へアップロードしたくないファイル(.gitnode_modulesREADME.md など)を指定するファイルです。

まとめ: claspを活用してGAS開発を効率化しよう

claspを導入することで、これまでブラウザ上で行っていたGAS開発を VS Codeなどの強力なローカルエディタ+Git管理 の環境へと昇華させることができます。

最初は clasp loginclasp push / clasp pull のフローに慣れることから始め、徐々にGit連携やTypeScript導入へとステップアップしていきましょう!