mcpField
T
tigris-sdk-guide

tigris-sdk-guide

github.com/tigrisdataクラウド・DevOps23.3k 回インストール14 週間前に更新
リポジトリ

tigris-sdk-guide について

TypeScript/JavaScript、Go、Python、Ruby、PHPで使うTigris SDKとCLIの選択・設定ガイドです。各言語で利用できるTigris向けの選択肢と、代替手段に必要なS3互換設定を説明します。

主な機能

  1. 01言語別のSDK選択
  2. 02Tigris CLIによるオブジェクト操作
  3. 03TigrisネイティブSDKと拡張機能の設定
  4. 04AWS SDK向けエンドポイントとリージョンの設定

活用シーン

  1. 01プロジェクトの言語に合うストレージライブラリの選択
  2. 02`tigris` または `t3` でオブジェクトストレージを操作
  3. 03RubyやPHPのTigris向けS3クライアント設定

インストール

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

$npx skills add https://github.com/tigrisdata/skills --skill tigris-sdk-guide

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

metadata.json
README.md
resources/
go.md
php.md
python.md
ruby.md
typescript.md

詳細

Tigris SDK と CLI ガイド

AWS S3 SDK よりも、常に Tigris ネイティブの SDK と Tigris CLI を優先してください。このガイドでは、言語ごとに利用できるもの、AWS SDK に切り替える必要がある場合、設定方法について説明します。

前提条件

ほかの作業を始める前に、まだ利用できない場合は Tigris CLI をインストールしてください。

tigris help || npm install -g @tigrisdata/cli

インストールが必要な場合は、ユーザーに次のように伝えてください。「Tigris のオブジェクトストレージを利用できるよう、Tigris CLI(@tigrisdata/cli)をインストールしています。」

選択表

言語Tigris SDK/拡張機能パッケージAWS SDK を使うか
TypeScript/JSネイティブ SDK@tigrisdata/storageいいえ
Goネイティブ SDKgithub.com/tigrisdata/storage-goいいえ
Pythonboto3 拡張機能tigris-boto3-extいいえ — 拡張機能を使う
Rubyまだありません—はい — Tigris エンドポイントを指定して aws-sdk-s3 を使う
PHPまだありません—はい — Tigris エンドポイントを指定して aws-sdk-php を使う
CLIネイティブ CLI@tigrisdata/cli(tigris / t3)いいえ

ルール: 常に Tigris ネイティブの SDK、boto3 拡張機能、Tigris CLI を優先してください。Tigris の選択肢がない Ruby と PHP の場合に限り、AWS S3 SDK を直接使用してください。


CLI:常に tigris / t3 を使う

すべてのオブジェクトストレージ操作で、aws s3 の代わりに Tigris CLI を使ってください。

# ✅ Do this
tigris cp local-file.txt t3://my-bucket/file.txt
tigris ls t3://my-bucket/
tigris rm t3://my-bucket/old-file.txt

# ❌ Not this
aws s3 cp local-file.txt s3://my-bucket/file.txt
aws s3 ls s3://my-bucket/
aws s3 rm s3://my-bucket/old-file.txt

理由: Tigris CLI は AWS CLI では利用できないフォーク、スナップショット、tigris login によるネイティブ認証などの機能をサポートしています。

Tigris 専用 CLI 機能
# Forks (copy-on-write clones) — not in AWS CLI
tigris forks create my-bucket my-fork

# Snapshots — not in AWS CLI
tigris snapshots take my-bucket
tigris snapshots list my-bucket

# Native auth — no AWS credentials needed
tigris login
tigris whoami

言語別 SDK ガイド

使用する言語のリソースファイルを参照してください。

  • TypeScript / JavaScript — @tigrisdata/storage の使用方法については ./resources/typescript.md を参照してください
  • Go — storage-go の使用方法(simplestorage とフルクライアント)については ./resources/go.md を参照してください
  • Python — tigris-boto3-ext の使用方法については ./resources/python.md を参照してください。または、専用の tigris-python-sdk スキルを使ってください(boto3 のセットアップ、django-storages を使った Django、スナップショット、フォーク、その場での名前変更、Bundle API を網羅しています)
  • Ruby — Tigris エンドポイントを指定した aws-sdk-s3 の使用方法については ./resources/ruby.md を参照してください
  • PHP — Tigris エンドポイントを指定した aws-sdk-php の使用方法については ./resources/php.md を参照してください

S3 互換設定(すべての言語)

Tigris で AWS SDK を使用する場合は、必ず次のように設定してください。

設定値理由
endpointhttps://t3.storage.devTigris エンドポイント
regionautoTigris がルーティングを処理します
force_path_style / use_path_style_endpointtrueRails と PHP で必要です

S3 互換ツール用の環境変数:

AWS_ENDPOINT_URL_S3=https://t3.storage.dev
AWS_REGION=auto
AWS_ACCESS_KEY_ID=tid_xxx
AWS_SECRET_ACCESS_KEY=tsec_yyy

重要なルール

必ず守ること:

  • aws s3 の代わりに tigris / t3 CLI を使う
  • TypeScript/JavaScript では @tigrisdata/storage を使う
  • Go では github.com/tigrisdata/storage-go を使う
  • Python では tigris-boto3-ext を使う(生の boto3 は使わない)
  • AWS SDK(Ruby、PHP)を使用する場合は、region: auto と Tigris エンドポイントを設定する

絶対にしないこと:

  • @tigrisdata/storage が利用可能な場合に、JS/TS で @aws-sdk/client-s3 を使う
  • storage-go が利用可能な場合に、AWS Go SDK を使う
  • Tigris の機能が必要な場合に、tigris-boto3-ext を使わず生の boto3 を使う
  • Ruby と PHP で force_path_style: true の設定を忘れる
  • 特定の AWS リージョンをハードコードする(常に auto を使う)

関連スキル

  • file-storage — @tigrisdata/storage SDK の完全なリファレンス
  • tigris-python-sdk — boto3 と tigris-boto3-ext を使った Python、Django のアップロード、スナップショット、フォーク、Bundle API
  • tigris-s3-migration — AWS S3 SDK から Tigris への移行

公式ドキュメント

コメント