Skip to content

tanaikech/ggsrun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

113 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ggsrun

Go Version MCP Ready Build Status MIT License


πŸš€ Overview

ggsrun is an enterprise-grade CLI application and Model Context Protocol (MCP) Server designed to relentlessly orchestrate Google Drive I/O operations and statefully execute Google Apps Script (GAS) natively from your local terminal or via autonomous Large Language Model (LLM) agents.

Built on Go 1.26.4+, ggsrun transitions legacy single-threaded processing into a state-of-the-art, channel-based concurrent streaming architecture. It delivers maximum network throughput, native Shared Drives (Omni-Drive) support, advanced MIME resolution, resilient self-healing retries, and a native Security Sandbox to restrict Google Workspace APIs during autonomous executions.


πŸ—ΊοΈ Documentation Directory Index

To make onboarding, development, and advanced operations as seamless as possible, our documentation is fully modularized. Navigate directly to your area of interest:

Guide / Manual Description Link
πŸš€ Setup & Onboarding Guide Step-by-step instructions to configure GCP, generate OAuth2 client secrets, link Google Apps Script, and deploy gateway endpoints. Setup Guide
πŸ“– Command Reference Manual In-depth breakdown of all 15+ subcommands (e.g. exe1, exe2, download, upload), recipes, and Mermaid architectural diagrams. Command Reference
πŸ›‘οΈ Security Sandbox Guide Explains the memory-based wrapper injection, whitelist configuration schemas (sandbox_config.json), and security validation scenarios. Sandbox Guide
πŸ”„ Stateful Execution Lifecycle Deep-dive explanation of the backup, sandboxing, upload, execution, and resilient rollback phases of the exe1 command. Execution Lifecycle
πŸ€– MCP Server Guide Configuration to run ggsrun as an autonomous tool provider in AI environments (like Claude Desktop or Antigravity), schemas, and scenarios. MCP Server Guide
πŸ’» Interactive TUI Filer Guide All keyboard shortcuts, search highlighter rules, clipboard integration, and history for the split-screen Japanese PC-98 Filer Mode (ggsrun fd). TUI Filer Guide
πŸ§ͺ Local Development & Testing Detailed guide for configuring environment variables (.env), understanding CLI/TUI mock tests, and running automated test suites. Development Guide
πŸ”¬ Manual Integration Tests Suite Guided verification commands to manually test authorization, sandbox policies, tool schemas, and local file operations. Manual Tests Suite
πŸ“š Detailed User Manual Comprehensive manual detailing all commands, advanced options, custom editor integrations (Sublime Text), and legacy parameters. Detailed Manual
πŸ“œ Version Update History Chronological record of all updates, bug fixes, features, and refactoring milestones from v1.0.0 to the latest release. Update History

✨ Features of ggsrun

  1. Terminal GAS Development: Develop Google Apps Script using your favorite local text editors and terminals seamlessly.
  2. Dynamic Script Execution: Execute GAS directly by injecting values, arguments, and payloads into your scripts dynamically.
  3. Massively Parallel Downloads: Pull files and folders concurrently from Google Drive with stunning progress visualizations.
  4. Massively Parallel Uploads: Push folders recursively with native Resumable upload wrappers and automated chunks handling.
  5. Flexible Project Formats: Download standalone scripts or container-bound projects flawlessly.
  6. Recursive Folder Structuring: Map local directories to Google Drive folders recursively, retaining absolute directory trees.
  7. Multi-Format Container Synced Uploads: Upload script files and instantly provision standalone scripts OR container-bound scripts.
  8. Permissions Orchestration: Inspect, list, and manage file and folder sharing permissions across your entire Drive.
  9. Advanced Metadata Search: Query your Google Drive utilizing Google Drive API v3 query syntax and local filename Regular Expressions (Regex).
  10. Flexible Authentication: Natively supports both robust browser loopback OAuth2 and secure Service Accounts.
  11. Security Sandboxing: Officially integrates with the Antigravity CLI via an embedded in-memory security sandbox wrapper (--sandbox) to guard Workspace resources.
  12. Self-Healing Project Recovery: Restore the remote GAS project to a clean initial state at any time with a single command (ggsrun recover).

πŸ›οΈ The 5 Pillars of the v5 Architecture

A. Massively Parallel I/O & UI

Legacy single-threaded processing has been completely replaced. ggsrun implements a channel-based worker pool built on golang.org/x/sync/errgroup to maximize network throughput on massive folder hierarchies.

B. Full Shared Drive (Omni-Drive) Support

The v5 engine forces supportsAllDrives=true and includeItemsFromAllDrives=true across all Google Drive API permutations, allowing enterprise Shared Drives to be mapped and managed seamlessly.

C. Intelligent GAS & MIME Resolution

The extraction logic dynamically categorizes Google Workspace entities. Downloader rules bypass the standard Drive API for GAS files, automatically routing to the Apps Script API to download scripts natively as structured JSON or packaged ZIP archives.

D. Robust Fault Tolerance & Auto-Retry

The v5 execution and transfer phase is strictly non-blocking. Google API Rate Limits (HTTP 429) and Server Errors (5xx) trigger an exponential backoff sequence per-worker, ensuring resilient self-healing.

E. MCP (Model Context Protocol) Integration

Running ggsrun mcp transforms the application into an autonomous JSON-RPC background server via standard I/O, allowing Large Language Model (LLM) agents to search, transfer, and execute scripts safely.


πŸ“¦ Rapid Installation

Method A: Build from Source (Using Go)

Requires Go 1.26.4 or higher installed. Compile and install the binary natively:

$ go install github.com/tanaikech/ggsrun@latest

Method B: Download Pre-built Binaries

Alternatively, download the pre-compiled binary matching your CPU architecture and operating system from the Official Releases Page:

  • macOS (Darwin): ggsrun_darwin_amd64 (Intel) or ggsrun_darwin_arm64 (Apple Silicon M1/M2/M3)
  • Linux: ggsrun_linux_amd64 (or matching ARM, 32-bit, or MIPS variants)
  • Windows: ggsrun_windows_amd64.exe (or 32-bit, ARM variants)

πŸ§ͺ Post-Installation Verification

Once you have downloaded or compiled ggsrun, verify that the binary is functional inside your terminal:

1. Verify Command Help

Run the help display command to verify the binary executes and lists available options:

$ ggsrun --help

2. Setup & Authentication

Before running any diagnostics or script execution commands, you must configure your Google Cloud credentials and authorize the local application.

Please follow the detailed, step-by-step instructions in the Setup & Onboarding Guide to:

  1. Obtain and load your GCP OAuth client_secret.json credentials.
  2. Link your Google Cloud project to your Google Apps Script project.
  3. Automatically deploy and secure the execution gateway.

3. Run Diagnostics

Once you have completed the onboarding process, verify API connectivity and loopback token health by running:

$ ggsrun status

πŸ€– Antigravity CLI Integration (Plugin Installation)

You can easily integrate ggsrun into the Antigravity CLI (agy) as a plugin. Installing this plugin automatically registers the ggsrun MCP server and installs the dedicated Apps Script development Agent Skill (skills/gas-execution/SKILL.md).

Installation

Run the following command inside your terminal:

$ agy plugin install https://github.com/tanaikech/ggsrun
# or
$ agy plugin install https://github.com/tanaikech/ggsrun.git

To uninstall the plugin at any time:

$ agy plugin uninstall ggsrun-plugin

Plugin Directory Structure

The plugin is structured as follows (excluding legacy Agent Hooks, which are now natively handled by the ggsrun core binary):

ggsrun/
β”œβ”€β”€ plugin.json             # Plugin metadata config for Antigravity CLI
β”œβ”€β”€ mcp_config.json        # MCP server definitions (ggsrun-mcp, workspace-developer)
└── skills/
    └── gas-execution/
        └── SKILL.md        # AI agent guidelines for GAS development and execution

πŸ’¬ Q&A & Troubleshooting

For general Q&A, standard Google API errors, and runtime limits, please refer to the detailed Legacy Q&A Guide.

For setup, Web App redirects, headless authentications, and 404s, please consult the Setup Guide Troubleshooting Section.


πŸ“„ License & Author

About

High-performance Google Drive CLI and Model Context Protocol (MCP) Server for LLM/AI agents. Natively execute Google Apps Script (GAS) under a secure whitelisted runtime sandbox, automate transfers, and manage Drive infrastructure.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors