cli-anything-generator
Build, refine, test, validate, or list CLI-Anything harnesses for GUI applications in Cursor. Prefer slash commands /cli-anything, /cli-anything-refine,…
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.
/cli-anything-tigrisContext 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.
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.
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.
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.
# 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:**
# 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
When invoked without a subcommand, the CLI enters an interactive REPL with tab-completion and history.
OAuth-based authentication.
| Command | Description | |---------|-------------| | `login` | Browser OAuth login (`tigris login`) | | `logout` | Log out of current session | | `whoami` | Print authenticated user / org |
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 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. |
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 |
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 |
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) |
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 |
All commands support dual output modes:
`--format json` output, echoed verbatim)
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.
"CLI-Anything: Making ALL Software Agent-Native" -- CLI-Hub: https://clianything.cc/
Repo: HKUDS/CLI-Anything
Build, refine, test, validate, or list CLI-Anything harnesses for GUI applications in Cursor. Prefer slash commands /cli-anything, /cli-anything-refine,…
Firefly III CLI - Personal finance management via CLI-Anything
Use OpenRefine through an agent-native CLI for importing messy data, applying JSON operation histories, inspecting rows, exporting cleaned data, and managing…
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…
Command-line interface for Anygen - A stateful command-line interface for AnyGen OpenAPI — generate professional slides, documents, webs...
Command-line interface for Audacity - A stateful command-line interface for audio editing, following the same patterns as the GIMP and Ble...