Files SDK - あらゆる blob ストレージのための単一API
(files-sdk.dev)- "Write Once, Store Anywhere"
- S3、R2、GCS、Azure など29種類のオブジェクト/blob ストレージを1つの統合SDKで扱える
- 40種類以上のアダプターを単一インターフェースの背後に置き、アダプターだけを差し替えればすべての呼び出し箇所をそのまま維持可能
- upload、download、head、exists、copy、move、list、delete をすべてのアダプターで同一の呼び出しとして処理
- ネイティブクライアントが必要なときに抜け出すためのescape hatchを提供
- 配列を渡すと制限付き並行性のもとでバッチ処理し、listing は async iterable として巡回処理する
- AIエージェント向けファイルツール: Vercel AI SDK、OpenAI Agents、Claude、および MCP に機能を提供
- すべてのメソッドをコマンドとして使えるCLIも提供
- 大きな body や無制限ストリームを複数の part に分割アップロードする並列 multipartをサポート
- コールバック1つでバイト単位のリアルタイムアップロード進捗を表示可能
- ranged read がHTTP 206にマッピングされ、video seek、ダウンロード再開、ファイルヘッダー読み取りが可能
- onAction・onRetry・onErrorライフサイクルフックをコンストラクターで一度だけ接続しておけば、すべてのアダプターのすべての操作で発生
sync()であるバックエンドを別のバックエンドへミラーリング可能。変更されたものだけをアップロードし、同一のものはスキップし、消えたものは整理する。dry-run対応- 各アダプターのネイティブ SDK はオプションの peer dependencyとして、実際に使うものだけがインストールされる
- Repo -
haydenbleasel/files-sdk - MITライセンス
3件のコメント
似たようなプロジェクトとして Apache OpenDAL があります。
有益な情報をありがとうございます。
いいですね。