safe-gcloud-usage

Using gcloud Safely with safe-gcloud

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "safe-gcloud-usage" with this command: npx skills add dhughes/claude-marketplace/dhughes-claude-marketplace-safe-gcloud-usage

Using gcloud Safely with safe-gcloud

Overview

Direct gcloud commands are blocked in this environment. All Google Cloud CLI operations must go through the safe-gcloud wrapper script, which enforces a project-specific allowlist of permitted commands.

How to Run gcloud Commands

Execute gcloud commands through the safe-gcloud wrapper script:

bash ${CLAUDE_PLUGIN_ROOT}/skills/safe-gcloud-usage/scripts/safe-gcloud.sh <command> [args...]

Examples:

bash ${CLAUDE_PLUGIN_ROOT}/skills/safe-gcloud-usage/scripts/safe-gcloud.sh projects list --format=json bash ${CLAUDE_PLUGIN_ROOT}/skills/safe-gcloud-usage/scripts/safe-gcloud.sh config get-value project bash ${CLAUDE_PLUGIN_ROOT}/skills/safe-gcloud-usage/scripts/safe-gcloud.sh auth list

The wrapper passes all arguments, flags, and piped input directly to gcloud for permitted commands.

Allowlist Configuration

Each project defines permitted commands in .claude/gcloud-allowlist.json . This file contains a JSON array of command patterns.

Pattern Syntax

Pattern Matches Does Not Match

projects list

Exactly gcloud projects list

gcloud projects list --format=json

projects list:*

gcloud projects list with any args/flags gcloud projects describe

projects:*

Any gcloud projects subcommand gcloud compute instances list

Example Allowlist

[ "projects list:", "config get-value:", "auth list", "compute instances list:", "compute instances describe:" ]

Critical Restrictions

NEVER attempt to edit .claude/gcloud-allowlist.json . This file is under user control only. When a command is blocked due to missing permissions:

  • Inform the user which command was blocked

  • Suggest the pattern they could add to permit it

  • Wait for the user to update the allowlist themselves

When Commands Are Blocked

If safe-gcloud blocks a command, it provides:

  • The exact command that was attempted

  • An error explaining the command is not in the allowlist

  • A suggested pattern to add

Example blocked output:

ERROR: Command not permitted by allowlist.

Attempted command: gcloud compute instances list --zone=us-central1-a

The allowlist at .claude/gcloud-allowlist.json does not include a pattern that permits this command.

To allow this command, add an appropriate pattern to the allowlist. For example, to allow this specific command with any flags: "compute instances list:*"

Suggesting Patterns to Users

When the user asks what pattern to add, analyze the command and suggest the appropriate pattern:

  • For a specific command with flags: "<command> <subcommand>:*"

  • For all subcommands of a service: "<service>:*"

  • For exact command only (no flags): "<command> <subcommand>"

Example suggestions:

  • User wants gcloud run deploy : suggest "run deploy:*"

  • User wants all compute commands: suggest "compute:*"

  • User wants only gcloud auth list with no flags: suggest "auth list"

Missing Allowlist File

If .claude/gcloud-allowlist.json does not exist, all gcloud commands are blocked. Inform the user they need to create this file with their desired patterns.

Dependencies

The safe-gcloud wrapper requires:

  • gcloud CLI installed and configured

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

ci-monitor

No summary provided by upstream source.

Repository SourceNeeds Review
General

gcb-monitor

No summary provided by upstream source.

Repository SourceNeeds Review
General

conversation-search

No summary provided by upstream source.

Repository SourceNeeds Review
General

conversation-history-setup

No summary provided by upstream source.

Repository SourceNeeds Review