Skip to content

feat(defaults): add gsutil read-only#1

Merged
grams merged 2 commits intomainfrom
feat/gsutil
Mar 20, 2026
Merged

feat(defaults): add gsutil read-only#1
grams merged 2 commits intomainfrom
feat/gsutil

Conversation

@grams
Copy link
Copy Markdown
Contributor

@grams grams commented Mar 12, 2026

Summary

  • Add gsutil to default TOML configs (Cloud & CI/CD category, alongside gcloud/pulumi)
  • Read-only commands allowed: ls, cat, stat, du, hash, version, help
  • Read-only subcommands: acl get, cors get, defacl get, iam get, label get, lifecycle get, logging get, notification list, pap get, requesterpays get, retention get, versioning get, web get
  • All write operations blocked by deny-by-default: cp, mv, rm, mb, rb, rsync, setmeta, compose, rewrite, config, signurl

Test plan

  • make test passes
  • agent-callable --audit gsutil ls gs://bucket → allowed
  • agent-callable --audit gsutil cat gs://bucket/file → allowed
  • agent-callable --audit gsutil acl get gs://bucket → allowed
  • agent-callable --audit gsutil cp file gs://bucket/ → blocked
  • agent-callable --audit gsutil acl set public gs://bucket → blocked
  • agent-callable --audit gsutil rm gs://bucket/file → blocked

🤖 Generated with Claude Code

grams and others added 2 commits March 12, 2026 18:26
… get, etc.)

- Add gsutil to default TOML configs in Cloud & CI/CD category
- Allow read-only commands: ls, cat, stat, du, hash, version, help
- Allow read-only subcommands: acl/cors/defacl/iam/label/lifecycle/
  logging/pap/requesterpays/retention/versioning/web get,
  notification list
- Block all write operations: cp, mv, rm, mb, rb, rsync, setmeta,
  compose, rewrite, config, signurl, and write subcommands (set/ch/rm)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@grams grams merged commit afb1c31 into main Mar 20, 2026
2 checks passed
@grams grams deleted the feat/gsutil branch March 20, 2026 21:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant