Install
$ agentstack add skill-tigrisdata-skills-tigris-static-assets ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Tigris Static Asset Hosting
Deploy CSS, JavaScript, fonts, and build artifacts to Tigris for global CDN delivery. Covers asset pipeline integration, cache-busting strategies, and Cache-Control configuration for all major frameworks.
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
Tigris public buckets automatically serve files from the nearest global edge — no separate CDN configuration needed. Combined with content-hashed filenames and immutable cache headers, this gives you fast, cost-effective static asset delivery.
Key pattern:
- Build assets with content hashes (e.g.,
main-abc123.js) - Upload to a public Tigris bucket
- Set
Cache-Control: public, max-age=31536000, immutable - Point your app's asset URL to the Tigris bucket
Cache Headers
# For immutable, hashed assets (CSS, JS bundles)
Cache-Control: public, max-age=31536000, immutable
# For mutable assets (manifest files, index.html)
Cache-Control: public, max-age=0, must-revalidate
# For fonts
Cache-Control: public, max-age=31536000, immutable
Setting Headers via CLI
tigris cp dist/main-abc123.js t3://my-assets/main-abc123.js \
--cache-control "public, max-age=31536000, immutable" \
--content-type "application/javascript"
Setting Headers via SDK
import { put } from "@tigrisdata/storage";
await put("assets/main-abc123.js", fileBuffer, {
access: "public",
contentType: "application/javascript",
});
Upload Script (General)
#!/bin/bash
# scripts/deploy-assets.sh
BUCKET="my-app-assets"
BUILD_DIR="dist"
# Upload hashed assets with long cache
tigris cp "$BUILD_DIR/" "t3://$BUCKET/" -r \
--cache-control "public, max-age=31536000, immutable"
echo "Assets deployed to t3://$BUCKET/"
Framework Guides
Read the resource file for your framework:
- Next.js — Read
./resources/nextjs.mdfor assetPrefix config and deploy script - Remix — Read
./resources/remix.mdfor Vite config and deploy script - Express — Read
./resources/express.mdfor static redirect pattern - Rails — Read
./resources/rails.mdfor Sprockets/Propshaft asset sync - Django — Read
./resources/django.mdfor collectstatic with S3 backend - Laravel — Read
./resources/laravel.mdfor Vite/Mix asset upload
Cache-Busting Strategies
| Strategy | Example | Use When | |----------|---------|----------| | Content hash in filename | main-abc123.js | Build tools generate hashed names (Vite, Webpack) | | Query string | main.js?v=abc123 | Legacy systems without hashed filenames | | Directory versioning | /v2/assets/main.js | Major version changes |
Most modern build tools (Vite, Webpack, esbuild) generate content-hashed filenames by default. Use these with immutable cache headers for the best performance.
Critical Rules
Always: Use a public bucket for static assets | Set Cache-Control: immutable on hashed assets | Use content-hashed filenames | Upload after build, not on every request
Never: Serve static assets through your app server in production (use Tigris CDN) | Set long cache times on mutable filenames | Forget to update asset URL configuration in your framework
Related Skills
- tigris-egress-optimizer — Reduce bandwidth costs
- tigris-lifecycle-management — Clean up old asset versions
Official Documentation
- Tigris: https://www.tigrisdata.com/docs/
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: tigrisdata
- Source: tigrisdata/skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.