mcpField
G
gdcli

gdcli

github.com/badlogic生産性2.6k166 回インストール21 週間前に更新
リポジトリ

gdcli について

gdcliは、Google Driveのファイルやフォルダーを操作するコマンドラインツールです。内容やメタデータでの検索に加え、アップロード、ダウンロード、フォルダー作成、共有に対応します。

主な機能

  1. 01ファイルとフォルダーの一覧・絞り込み
  2. 02ファイル内容の検索
  3. 03ファイルのアップロードとダウンロード
  4. 04フォルダー作成とファイル共有
  5. 05OAuthアカウントの設定

活用シーン

  1. 01内容やメタデータでファイルを検索
  2. 02Driveとのファイル転送
  3. 03フォルダー作成やファイル共有

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/badlogic/pi-skills --skill gdcli

インストール後、Claude Code で/gdcliを入力して読み込まれたか確認します。

詳細

Google Drive CLI

Google Drive の操作を行うコマンドラインインターフェースです。

インストール

npm install -g @mariozechner/gdcli

セットアップ

Google Cloud Console(一度限り)
  1. 新しいプロジェクトを作成します(または既存のプロジェクトを選択します)
  2. Google Drive API を有効にします
  3. OAuth のブランディングでアプリ名を設定します
  4. テストユーザーを追加します(使用するすべての Gmail アドレス)
  5. OAuth クライアントを作成します:
    • 「Create Client」をクリックします
    • アプリケーションの種類:「Desktop app」
    • JSON ファイルをダウンロードします
gdcli の設定

まず、設定済みかどうかを確認します:

gdcli accounts list

アカウントがない場合は、ユーザーをセットアップに案内します:

  1. Drive API が有効な Google Cloud プロジェクトがあるか確認します
  2. ない場合は、上記の Google Cloud Console の手順を案内します
  3. OAuth 認証情報の JSON をダウンロードしてもらいます
  4. 実行します:gdcli accounts credentials ~/path/to/credentials.json
  5. 実行します:gdcli accounts add <email>(ブラウザーを使わない OAuth には --manual を使用します)

使い方

コマンドの完全な一覧は gdcli --help を実行して確認してください。

よく使う操作:

  • gdcli <email> ls [folderId] - ファイル/フォルダーを一覧表示します
  • gdcli <email> ls --query "<query>" - Drive クエリフィルターを使って一覧表示します
  • gdcli <email> search "<text>" - ファイルの内容を全文検索します
  • gdcli <email> download <fileId> [destPath] - ファイルをダウンロードします
  • gdcli <email> upload <localPath> [--folder <folderId>] - ファイルをアップロードします
  • gdcli <email> mkdir <name> - フォルダーを作成します
  • gdcli <email> share <fileId> --anyone - ファイルを一般公開します

検索

異なるコマンドが2つあります:

  • search "<text>" - ファイルの内容(fullText)を検索します
  • ls --query "<query>" - メタデータ(名前、種類、日付など)で絞り込みます

ファイル名を検索するには ls --query を使ってください!

クエリ構文(ls --query 用)

形式:field operator value。and/or で条件を結合し、() でグループ化します。

演算子: =, !=, contains, <, >, <=, >=

例:

# By filename
ls --query "name = 'report.pdf'"           # exact match
ls --query "name contains 'IMG'"           # prefix match

# By type
ls --query "mimeType = 'application/pdf'"
ls --query "mimeType contains 'image/'"
ls --query "mimeType = 'application/vnd.google-apps.folder'"  # folders

# By date
ls --query "modifiedTime > '2024-01-01'"

# By owner/sharing
ls --query "'me' in owners"
ls --query "sharedWithMe"

# Exclude trash
ls --query "trashed = false"

# Combined
ls --query "name contains 'report' and mimeType = 'application/pdf'"

参照:https://developers.google.com/drive/api/guides/ref-search-terms

データの保存場所

  • ~/.gdcli/credentials.json - OAuth クライアントの認証情報
  • ~/.gdcli/accounts.json - アカウントのトークン
  • ~/.gdcli/downloads/ - デフォルトのダウンロード先

コメント