/cli-anything-tigris
Command-line interface for Tigris object storage — wraps the official `tigris` CLI to expose buckets, objects, presigned URLs, snapshots, IAM, and scoped access keys to AI agents. Globally distributed, S3-compatible, no egress fees.
$ npx -y skills add HKUDS/CLI-Anything --skill cli-anything-tigris --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/cli-anything-tigris
Context preview
The summary Claude sees to decide when to auto-load this skill.
Command-line interface for Tigris object storage — wraps the official `tigris` CLI to expose buckets, objects, presigned URLs, snapshots, IAM, and scoped access keys to AI agents. Globally distributed, S3-compatible, no egress fees.
SKILL.md
cli-anything-tigris.SKILL.mdname: "cli-anything-tigris"
description: >-
Command-line interface for Tigris object storage — wraps the official `tigris` CLI to expose buckets, objects, presigned URLs, snapshots, IAM, and scoped access keys to AI agents. Globally distributed, S3-compatible, no egress fees.
cli-anything-tigris
A stateless command-line interface for [Tigris](https://www.tigrisdata.com) object storage. Wraps the official `tigris` CLI so every Tigris primitive (snapshots, IAM, scoped credentials, OAuth) is reachable through a single agent-friendly entry point with `--json` everywhere.
Scope
This harness is for the official Tigris CLI only. It shells out to the `tigris` binary and assumes Tigris auth through `tigris login` or Tigris access keys. It is not a generic S3 endpoint tool, and it does not manage MinIO, Cloudflare R2, AWS S3, or arbitrary S3-compatible endpoints.
Installation
# 1. Install the underlying Tigris CLI
npm install -g @tigrisdata/cli
# or:
brew install tigrisdata/tap/tigris
# 2. Authenticate (browser OAuth)
tigris login
# 3. Install this harness
pip install cli-anything-tigris
**Prerequisites:**
- Python 3.10+
- `tigris` CLI on PATH (the binary's alias is `t3`)
Usage
Basic Commands
# Show help
cli-anything-tigris --help
# Start interactive REPL
cli-anything-tigris
# Whoami (JSON output for agents)
cli-anything-tigris --json auth whoami
# List buckets
cli-anything-tigris --json bucket list
# Upload a local file
cli-anything-tigris --json object put --bucket my-bucket --key path/to/file.txt --file ./local.txt
# Download an object
cli-anything-tigris --json object get --bucket my-bucket --key path/to/file.txt --output ./out.txt
# Server-side copy
cli-anything-tigris --json object cp t3://my-bucket/src.txt t3://my-bucket/dst.txt
# Take a snapshot
cli-anything-tigris --json snapshot take my-bucket --name baseline-v1
# Delete a bucket; --yes is required
cli-anything-tigris --json bucket delete --name old-bucket --yes
# Create a scoped access key for an agent run
cli-anything-tigris --json access-key create my-agent-key
cli-anything-tigris --json access-key assign tid_AaBb --bucket my-bucket --role Editor
# Rotate or delete access keys; --yes is required
cli-anything-tigris --json access-key rotate tid_AaBb --yes
cli-anything-tigris --json access-key delete tid_AaBb --yes
# Presigned download URL (1 hour)
cli-anything-tigris --json presign get --bucket my-bucket --key path/to/file.txt --expires 3600
REPL Mode
When invoked without a subcommand, the CLI enters an interactive REPL with tab-completion and history.
Command Groups
auth
OAuth-based authentication.
| Command | Description | |---------|-------------| | `login` | Browser OAuth login (`tigris login`) | | `logout` | Log out of current session | | `whoami` | Print authenticated user / org |
bucket
Bucket CRUD.
| Command | Description | |---------|-------------| | `list` | List all buckets | | `create --name NAME` | Create a bucket | | `delete --name NAME --yes` | Delete an empty bucket (`--yes` required) | | `info NAME` | Get bucket info |
object
Object operations (wraps `tigris ls/cp/rm/stat`).
| Command | Description | |---------|-------------| | `list --bucket B [--prefix P] [--limit N]` | List objects | | `put --bucket B --key K (--file F \| --text T)` | Upload an object | | `get --bucket B --key K --output F` | Download an object | | `delete --bucket B --key K` | Delete an object | | `info --bucket B --key K` | Object metadata (HEAD / stat) | | `cp SRC DST [-r]` | Copy. Accepts `t3://` or `tigris://` URIs. |
presign
Time-limited URLs.
| Command | Description | |---------|-------------| | `get --bucket B --key K [--expires SEC]` | Presigned download URL | | `put --bucket B --key K [--expires SEC]` | Presigned upload URL |
snapshot
Point-in-time bucket snapshots — a Tigris-specific primitive.
| Command | Description | |---------|-------------| | `list BUCKET` | List snapshots for a bucket | | `take BUCKET [--name N]` | Take a snapshot |
access-key
Scoped programmatic credentials — combine with `snapshot` for per-agent isolation.
| Command | Description | |---------|-------------| | `list` | List all access keys | | `create NAME` | Create a new access key (secret shown ONCE) | | `get KEY_ID` | Show key details | | `delete KEY_ID --yes` | Permanently delete a key (`--yes` required) | | `assign KEY_ID --bucket B --role R` | Scope a key to a bucket + role | | `rotate KEY_ID --yes` | Rotate a key's secret (`--yes` required) |
iam
Policies and organization users.
| Command | Description | |---------|-------------| | `policy list` | List IAM policies | | `policy create NAME --document FILE` | Create a policy from a JSON file | | `user list` | List org users | | `user invite EMAIL [--role R]` | Invite a user |
Output Formats
All commands support dual output modes:
- **Human-readable** (default): tables, colors, formatted text
- **Machine-readable** (`--json`): JSON envelope (or upstream CLI's
`--format json` output, echoed verbatim)
For AI Agents
When using this CLI programmatically:
1. Always pass `--json` for parseable output. 2. Check return codes — 0 for success, non-zero for errors. 3. Read stderr for error messages. 4. `object cp` accepts `t3://bucket/key` or `tigris://bucket/key` URIs; server-side copies (t3 → t3) skip the round trip entirely. 5. `presign` returns a URL on stdout in human mode; in JSON mode it's the `url` field. 6. **For destructive work**: bucket deletion, access-key deletion, and access-key rotation require explicit `--yes`; take a `snapshot` of the target bucket first, then do the work, then either keep the snapshot or discard. 7. **For per-agent isolation**: `access-key create` + `access-key assign --bucket B --role Editor` to mint a key scoped to one bucket; revoke with `access-key delete` when the agent run ends.
Why Tigris
- **Globally distributed.** Da
Read more
name: "cli-anything-tigris" description: >- Command-line interface for Tigris object storage — wraps the official `tigris` CLI to expose buckets, objects, presigned URLs, snapshots, IAM, and scoped access keys to AI agents. Globally distributed, S3-compatible, no egress fees.
cli-anything-tigris
A stateless command-line interface for [Tigris](https://www.tigrisdata.com) object storage. Wraps the official `tigris` CLI so every Tigris primitive (snapshots, IAM, scoped credentials, OAuth) is reachable through a single agent-friendly entry point with `--json` everywhere.
Scope
This harness is for the official Tigris CLI only. It shells out to the `tigris` binary and assumes Tigris auth through `tigris login` or Tigris access keys. It is not a generic S3 endpoint tool, and it does not manage MinIO, Cloudflare R2, AWS S3, or arbitrary S3-compatible endpoints.
Installation
# 1. Install the underlying Tigris CLI npm install -g @tigrisdata/cli # or: brew install tigrisdata/tap/tigris # 2. Authenticate (browser OAuth) tigris login # 3. Install this harness pip install cli-anything-tigris
**Prerequisites:**
- Python 3.10+
- `tigris` CLI on PATH (the binary's alias is `t3`)
Usage
Basic Commands
# Show help cli-anything-tigris --help # Start interactive REPL cli-anything-tigris # Whoami (JSON output for agents) cli-anything-tigris --json auth whoami # List buckets cli-anything-tigris --json bucket list # Upload a local file cli-anything-tigris --json object put --bucket my-bucket --key path/to/file.txt --file ./local.txt # Download an object cli-anything-tigris --json object get --bucket my-bucket --key path/to/file.txt --output ./out.txt # Server-side copy cli-anything-tigris --json object cp t3://my-bucket/src.txt t3://my-bucket/dst.txt # Take a snapshot cli-anything-tigris --json snapshot take my-bucket --name baseline-v1 # Delete a bucket; --yes is required cli-anything-tigris --json bucket delete --name old-bucket --yes # Create a scoped access key for an agent run cli-anything-tigris --json access-key create my-agent-key cli-anything-tigris --json access-key assign tid_AaBb --bucket my-bucket --role Editor # Rotate or delete access keys; --yes is required cli-anything-tigris --json access-key rotate tid_AaBb --yes cli-anything-tigris --json access-key delete tid_AaBb --yes # Presigned download URL (1 hour) cli-anything-tigris --json presign get --bucket my-bucket --key path/to/file.txt --expires 3600
REPL Mode
When invoked without a subcommand, the CLI enters an interactive REPL with tab-completion and history.
Command Groups
auth
OAuth-based authentication.
| Command | Description | |---------|-------------| | `login` | Browser OAuth login (`tigris login`) | | `logout` | Log out of current session | | `whoami` | Print authenticated user / org |
bucket
Bucket CRUD.
| Command | Description | |---------|-------------| | `list` | List all buckets | | `create --name NAME` | Create a bucket | | `delete --name NAME --yes` | Delete an empty bucket (`--yes` required) | | `info NAME` | Get bucket info |
object
Object operations (wraps `tigris ls/cp/rm/stat`).
| Command | Description | |---------|-------------| | `list --bucket B [--prefix P] [--limit N]` | List objects | | `put --bucket B --key K (--file F \| --text T)` | Upload an object | | `get --bucket B --key K --output F` | Download an object | | `delete --bucket B --key K` | Delete an object | | `info --bucket B --key K` | Object metadata (HEAD / stat) | | `cp SRC DST [-r]` | Copy. Accepts `t3://` or `tigris://` URIs. |
presign
Time-limited URLs.
| Command | Description | |---------|-------------| | `get --bucket B --key K [--expires SEC]` | Presigned download URL | | `put --bucket B --key K [--expires SEC]` | Presigned upload URL |
snapshot
Point-in-time bucket snapshots — a Tigris-specific primitive.
| Command | Description | |---------|-------------| | `list BUCKET` | List snapshots for a bucket | | `take BUCKET [--name N]` | Take a snapshot |
access-key
Scoped programmatic credentials — combine with `snapshot` for per-agent isolation.
| Command | Description | |---------|-------------| | `list` | List all access keys | | `create NAME` | Create a new access key (secret shown ONCE) | | `get KEY_ID` | Show key details | | `delete KEY_ID --yes` | Permanently delete a key (`--yes` required) | | `assign KEY_ID --bucket B --role R` | Scope a key to a bucket + role | | `rotate KEY_ID --yes` | Rotate a key's secret (`--yes` required) |
iam
Policies and organization users.
| Command | Description | |---------|-------------| | `policy list` | List IAM policies | | `policy create NAME --document FILE` | Create a policy from a JSON file | | `user list` | List org users | | `user invite EMAIL [--role R]` | Invite a user |
Output Formats
All commands support dual output modes:
- **Human-readable** (default): tables, colors, formatted text
- **Machine-readable** (`--json`): JSON envelope (or upstream CLI's
`--format json` output, echoed verbatim)
For AI Agents
When using this CLI programmatically:
1. Always pass `--json` for parseable output. 2. Check return codes — 0 for success, non-zero for errors. 3. Read stderr for error messages. 4. `object cp` accepts `t3://bucket/key` or `tigris://bucket/key` URIs; server-side copies (t3 → t3) skip the round trip entirely. 5. `presign` returns a URL on stdout in human mode; in JSON mode it's the `url` field. 6. **For destructive work**: bucket deletion, access-key deletion, and access-key rotation require explicit `--yes`; take a `snapshot` of the target bucket first, then do the work, then either keep the snapshot or discard. 7. **For per-agent isolation**: `access-key create` + `access-key assign --bucket B --role Editor` to mint a key scoped to one bucket; revoke with `access-key delete` when the agent run ends.
Why Tigris
- **Globally distributed.** Da
"CLI-Anything: Making ALL Software Agent-Native" -- CLI-Hub: https://clianything.cc/
Repo: HKUDS/CLI-Anything
Other skills on cli-anything.
- /cli-anything-firefly-iii
Firefly III CLI - Personal finance management via CLI-Anything
Open skill - /cli-anything-openrefine
Use OpenRefine through an agent-native CLI for importing messy data, applying JSON operation histories, inspecting rows, exporting cleaned data, and managing session undo/redo.
Open skill - /cli-anything-adguardhome
Command-line interface for AdGuard Home - Network-wide ad blocking and DNS management via AdGuard Home REST API. Designed for AI agents and power users who need to manage filtering, DNS rewrites, clients, DHCP, and query logs without a GUI.
Open skill - /cli-anything-anygen
Command-line interface for Anygen - A stateful command-line interface for AnyGen OpenAPI — generate professional slides, documents, webs...
Open skill - /cli-anything-audacity
Command-line interface for Audacity - A stateful command-line interface for audio editing, following the same patterns as the GIMP and Ble...
Open skill - /cli-anything-blender
Command-line interface for Blender - A stateful command-line interface for 3D scene editing, following the same patterns as the GIMP CLI ...
Open skill

