r2-push
Cloudflare R2ストレージにファイルをアップロードします。ユーザーがファイルをアップロードしたい、ディレクトリを同期したい、またはアセットをR2に公開したい場合に使用します。
description の原文を見る
Push files to Cloudflare R2 storage. Use when the user wants to upload files, sync a directory, or publish assets to R2.
SKILL.md 本文
AWS CLIと S3互換エンドポイントを使用して、Cloudflare R2ストレージにファイルをプッシュします。
- ソース:
$ARGUMENTS[0](必須 — ファイルパス、ディレクトリ、またはglob パターン) - 宛先:
$ARGUMENTS[1](オプション —bucket-name/prefix。バケット名のみの場合、ファイルはルートに配置されます。省略した場合、ユーザーに入力を促します。)
前提条件
このスキルは AWS CLI (aws) と R2 の S3互換 API を使用します。以下の環境変数が設定されている必要があります:
| 変数 | 目的 |
|---|---|
R2_ENDPOINT_URL | R2エンドポイント。例: https://<account-id>.r2.cloudflarestorage.com |
R2_ACCESS_KEY_ID | R2 API トークンアクセスキー |
R2_SECRET_ACCESS_KEY | R2 API トークンシークレットキー |
いずれかが不足している場合は、ユーザーに通知して停止します。対話的認証やデフォルト認証情報へのフォールバックは行わないでください。
手順
-
前提条件の確認:
awsCLI がインストールされており、3つのR2_*環境変数が設定されていることを確認します。何か不足している場合は、ユーザーにインストール方法またはエクスポート方法を指示して停止します。 -
ソースの解決: ソースパスが存在することを確認します。glob の場合は展開します。マッチするものがない場合は、ユーザーに通知して停止します。
-
宛先の解析: 宛先をバケット名とオプションのプレフィックスに分割します。宛先が指定されていない場合は、ユーザーにバケット名を入力するよう求めます。
-
アップロード:
- 単一ファイルの場合:
aws s3 cp <file> s3://<bucket>/<prefix>/<filename> \ --endpoint-url "$R2_ENDPOINT_URL" \ --region auto - ディレクトリの場合:
aws s3 sync <directory> s3://<bucket>/<prefix> \ --endpoint-url "$R2_ENDPOINT_URL" \ --region auto
常にコマンドで環境変数を介して認証情報を渡します:
AWS_ACCESS_KEY_ID="$R2_ACCESS_KEY_ID" \ AWS_SECRET_ACCESS_KEY="$R2_SECRET_ACCESS_KEY" \ aws s3 ... - 単一ファイルの場合:
-
確認: アップロードされたファイルとそのS3 URI を表示します。パブリックバケット URL がわかっている場合はそれも表示します。
オプション
ユーザーがこれらをリクエストすることがあります — リクエストがあった場合のみ適用します:
--delete:s3 syncに--deleteを渡して、ローカルに存在しないリモートファイルを削除します。--dry-run:--dryrunを渡して、実際にアップロードせずに何がアップロードされるかをプレビューします。--content-type:--content-type <type>を渡して、MIME タイプをオーバーライドします。--cache-control:--cache-control <value>を渡してキャッシュヘッダーを設定します。
エラーハンドリング
- 認証情報が無効な場合 (403): ユーザーに R2 API トークンの確認を指示します。
- バケットが存在しない場合 (404/NoSuchBucket): ユーザーに通知し、最初にバケットを作成することを提案します。
- その他の理由でアップロードが失敗した場合は、エラー出力を表示して再試行を提案します。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- bwks
- リポジトリ
- bwks/dotfiles
- ライセンス
- MIT
- 最終更新
- 2026/5/2
Source: https://github.com/bwks/dotfiles / ライセンス: MIT
関連スキル
superpowers-streamer-cli
SuperPowers デスクトップストリーマーの npm パッケージをインストール、ログイン、実行、トラブルシューティングできます。ユーザーが npm から `superpowers-ai` をセットアップしたい場合、メールまたは電話でサインインもしくはアカウント作成を行いたい場合、ストリーマーを起動したい場合、表示されたコントロールリンクを開きたい場合、後で停止したい場合、またはソースコードへのアクセスなしに npm やランタイムの一般的な問題から復旧したい場合に使用します。
catc-client-ops
Catalyst Centerのクライアント操作・監視機能 - 有線・無線クライアントのリスト表示・フィルタリング、MACアドレスによる詳細なクライアント検索、クライアント数分析、時間軸での分析、SSIDおよび周波数帯によるフィルタリング、無線トラブルシューティング機能を提供します。MACアドレスやIPアドレスでのクライアント検索、サイト別やSSID別のクライアント数集計、無線周波数帯の分布分析、Wi-Fi信号の問題調査が必要な場合に活用できます。
ci-cd-and-automation
CI/CDパイプラインの設定を自動化します。ビルドおよびデプロイメントパイプラインの構築または変更時に使用できます。品質ゲートの自動化、CI内のテストランナー設定、またはデプロイメント戦略の確立が必要な場合に活用します。
shipping-and-launch
本番環境へのリリース準備を行います。本番環境へのデプロイ準備が必要な場合、リリース前チェックリストが必要な場合、監視機能の設定を行う場合、段階的なロールアウトを計画する場合、またはロールバック戦略が必要な場合に使用します。
linear-release-setup
Linear Releaseに向けたCI/CD設定を生成します。リリース追跡の設定、LinearのCIパイプライン構築、またはLinearリリースとのデプロイメント連携を実施する際に利用できます。GitHub Actions、GitLab CI、CircleCIなど複数のプラットフォームに対応しています。
tracking-application-response-times
API エンドポイント、データベースクエリ、サービスコール全体にわたるアプリケーションのレスポンスタイムを追跡・最適化できます。パフォーマンス監視やボトルネック特定の際に活用してください。「レスポンスタイムを追跡する」「API パフォーマンスを監視する」「遅延を分析する」といった表現で呼び出せます。