
tigris-bucket-management
Use when creating, listing, inspecting, or deleting Tigris Storage buckets
- Installs
- 125
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/tigrisdata/skills --skill tigris-bucket-management- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads tigris-bucket-management automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Tigris Bucket Management
Prerequisites
Before doing anything else, install the Tigris CLI if it's not already available:
tigris help || npm install -g @tigrisdata/cli
If you need to install it, tell the user: "I'm installing the Tigris CLI (@tigrisdata/cli) so we can work with Tigris object storage."
Overview
Buckets are containers for objects. This skill covers bucket lifecycle: create, list, inspect, and delete.
Quick Reference
| Operation | Function | Key Parameters |
|---|---|---|
| Create | createBucket(name, options) | name, access, region, enableSnapshot |
| List | listBuckets(options) | limit, paginationToken |
| Inspect | getBucketInfo(name) | bucketName |
| Delete | removeBucket(name, options) | bucketName, force |
Create Bucket
import { createBucket } from "@tigrisdata/storage";
// Simple private bucket
const result = await createBucket("my-new-bucket");
if (result.error) {
console.error("Error:", result.error);
} else {
console.log("Created:", result.data);
}
// Public bucket (objects readable by anyone)
const result = await createBucket("public-assets", {
access: "public",
});
// Snapshot-enabled bucket (for version control)
const result = await createBucket("my-snapshot-bucket", {
enableSnapshot: true,
});
// Regional bucket
const result = await createBucket("eu-data", {
region: "eu",
});
// Fork from existing bucket snapshot
const result = await createBucket("my-forked-bucket", {
sourceBucketName: "parent-bucket",
sourceBucketSnapshot: "1751631910169675092",
});
Create Bucket Options
| Option | Values | Default | Purpose |
|---|---|---|---|
| access | public/private | private | Object readability |
| consistency | default/strict | default | Read consistency level |
| defaultTier | STANDARD/STANDARD_IA/GLACIER/GLACIER_IR | STANDARD | Default storage tier |
| enableSnapshot | boolean | false | Enable snapshots/forking |
| region | string | global | Bucket region |
| sourceBucketName | string | - | Fork from this bucket |
| sourceBucketSnapshot | string | - | Fork from this snapshot |
Note: Snapshot-enabled buckets must use STANDARD tier.
List Buckets
import { listBuckets } from "@tigrisdata/storage";
// List all buckets
const result = await listBuckets();
if (result.error) {
console.error("Error:", result.error);
} else {
console.log("Buckets:", result.data?.buckets);
console.log("Owner:", result.data?.owner);
}
// Paginated list
const allBuckets = [];
let currentPage = await listBuckets({ limit: 10 });
allBuckets.push(...currentPage.data?.buckets);
while (currentPage.data?.paginationToken) {
currentPage = await listBuckets({
limit: 10,
paginationToken: currentPage.data?.paginationToken,
});
allBuckets.push(...currentPage.data?.buckets);
}
Get Bucket Info
import { getBucketInfo } from "@tigrisdata/storage";
const result = await getBucketInfo("my-bucket");
if (result.error) {
console.error("Error:", result.error);
} else {
console.log("Info:", result.data);
// {
// isSnapshotEnabled: true,
// hasForks: false,
// sourceBucketName: undefined,
// sourceBucketSnapshot: undefined
// }
}
Delete Bucket
import { removeBucket } from "@tigrisdata/storage";
// Delete empty bucket
const result = await removeBucket("my-bucket");
if (result.error) {
console.error("Error:", result.error);
} else {
console.log("Deleted successfully");
}
// Force delete (even if not empty)
const result = await removeBucket("my-bucket", {
force: true,
});
Warning: Force delete is irreversible. All objects will be lost.
Bucket Access Levels
| Level | Behavior | Use Case |
|---|---|---|
| private | Objects require auth | Default, sensitive data |
| public | Objects publicly readable | Static assets, public content |
Consistency Levels
| Level | Behavior | Trade-off |
|---|---|---|
| default | Low latency, eventual consistency | Most workloads |
| strict | Strong consistency, higher latency | Critical data |
Storage Tiers
| Tier | Use Case | Cost |
|---|---|---|
| STANDARD | General purpose | Standard |
| STANDARD_IA | Infrequently accessed | Lower cost |
| GLACIER | Long-term archive | Lowest cost |
| GLACIER_IR | Rare access, fast retrieval | Archive with occasional access |
Regions
Specify region for data locality or compliance:
await createBucket("data-eu", { region: "eu" });
await createBucket("data-asia", { region: "asia-south-1" });
Leave empty for global bucket (recommended for most use cases).
Common Mistakes
| Mistake | Fix |
|---|---|
| Enable snapshot with non-STANDARD tier | Snapshot requires STANDARD tier |
| Not checking bucket exists before delete | Use getBucketInfo first |
| Trying to delete non-empty bucket without force | Use force: true or empty bucket first |
| Name conflicts | Bucket names must be globally unique |
Forking and Snapshots
For version control (snapshots/forking), see the tigris-snapshots-forking skill.
FAQ
What does the tigris-bucket-management skill do?
Use when creating, listing, inspecting, or deleting Tigris Storage buckets
How do I install tigris-bucket-management?
Run npx skills add https://github.com/tigrisdata/skills --skill tigris-bucket-management in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/tigris-bucket-management/ (personal) or .claude/skills/tigris-bucket-management/ (project).
Which AI agents can use tigris-bucket-management?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is tigris-bucket-management safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains tigris-bucket-management?
It is published by tigrisdata in tigrisdata/skills. It has 125 recorded installs.
More from tigrisdata/skills
tigris-object-operations
tigrisdata/skills
Use when working with objects in Tigris Storage - uploading, downloading, deleting, listing, getting metadata, or generating presigned URLs
tigris-security-access-control
tigrisdata/skills
Use when configuring CORS, rotating access keys, setting bucket policies, or securing Tigris storage — covers key lifecycle, roles, CORS rules, presigned URL security, audit checklist
file-storage
tigrisdata/skills
Use when working with Tigris file storage - uploading, downloading, deleting, listing files, presigned URLs, client uploads, or setting up Tigris CLI and SDK. Covers Next.js, Remix, Express, Rails, and Laravel. For Python/Django, see the tigris-python-sdk skill.
tigris-sdk-guide
tigrisdata/skills
Use when choosing between Tigris-native SDKs and AWS S3-compatible SDKs — covers which SDK to use per language, CLI preference, and when AWS SDKs are the only option
tigris-image-optimization
tigrisdata/skills
Use when resizing images, generating thumbnails, serving responsive images, or optimizing image delivery with Tigris — covers Next.js, Remix, Rails, Django, Laravel, Express
tigris-s3-migration
tigrisdata/skills
Use when migrating from AWS S3, Google Cloud Storage, or Azure Blob to Tigris — shadow buckets via tigris buckets set-migration, active drain via tigris buckets migrate, bulk copy, SDK endpoint swap, zero-downtime migration
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.