Audit, analyse, and manage your S3-compatible storage with AI. OE Runtime connects to any S3 bucket, inventories your files, identifies the largest objects, and recommends cleanup and archiving actions — all locally, no third-party tool required.
Create a folder called file-storage/ and add these two files:
Create SKILL.md inside a file-storage/ directory. This is the portable skill — it follows the agentskills.io format and runs unchanged on Claude, Cursor, Windsurf, or OE Runtime:
--- name: file-storage description: Upload, list, download, and manage files in S3-compatible storage license: Apache-2.0 metadata: author: Open Enthrium version: "1.0" --- You are a file management agent with access to S3-compatible storage. List, inspect, and report on stored files. Confirm before any delete operations. Complete all steps fully before writing your report. ## Step 1: List Bucket Contents List all files in the configured S3 bucket. For each file note: key (path), size in KB/MB, last modified date, and storage class. ## Step 2: Analyze Storage From the listed files: - Calculate total storage used - Identify the 5 largest files - Group files by extension type (images, documents, archives, other) - Flag any files older than 90 days that may be candidates for archiving ## Step 3: Report Produce a storage summary: - Total files and total size - Breakdown by file type - Top 5 largest files - Files flagged for archiving - Recommended cleanup or archiving actions
Create agent.yaml in the same directory to wire the skill to your connector:
name: File Storage Agent description: Upload, list, download, and manage files in S3-compatible storage connectors: - connection_name: My S3 Bucket connection_type: s3 skills: - path: ./ trigger_type: auto
Create oe-config.json in the same directory:
{
"llm": {
"provider": "openai",
"model": "gpt-4o",
"apiKey": "YOUR_OPENAI_API_KEY"
},
"server": {
"enabled": false,
"port": 3333,
"apiKey": "your-secret-api-key"
},
"connectors": [
{
"connection_name": "My S3 Bucket",
"connection_type": "s3",
"accessKeyId": "YOUR_AWS_ACCESS_KEY",
"secretAccessKey": "YOUR_AWS_SECRET_KEY",
"region": "us-east-1",
"bucket": "my-bucket"
}
]
}Create an IAM user with AmazonS3ReadOnlyAccess (or scoped bucket permissions) and generate an access key at console.aws.amazon.com/iam. The agent works with any S3-compatible storage including MinIO, Backblaze B2, and Cloudflare R2 — just update the endpoint URL.
From the parent folder containing your skill directory:
| Method | Best for | Download | |
|---|---|---|---|
| 1 | npx recommended | No install needed — always runs the latest version | — |
| 2 | Windows .exe | Download once, run offline on Windows | ⊞ Windows (.exe) |
| 3 | macOS binary | Download once, run offline on Mac | macOS |
| 4 | Linux binary | Server deployments, cron jobs, Docker | 🐧 Linux |
| 5 | API Server integration | Call from any app, webhook, or automation pipeline | 📮 Postman Collection |
npx -y @openenthrium/oe-runtime@latest ./file-storage
oe-runtime-win.exe ./file-storage
chmod +x oe-runtime-macos
./oe-runtime-macos ./file-storage
First run blocked? System Settings → Privacy & Security → Allow Anyway.
chmod +x oe-runtime-linux
./oe-runtime-linux ./file-storage
Add a "server" block to oe-config.json, then start with --serve:
{
"llm": { ... },
"server": { "enabled": true, "port": 3333, "apiKey": "your-secret-key" },
"connectors": [ ... ]
}
npx -y @openenthrium/oe-runtime@latest --serve --config oe-config.json
Run with inline YAML:
curl -X POST http://localhost:3333/run \
-H "Content-Type: application/json" \
-H "X-API-Key: your-secret-key" \
-d '{"yaml": "...", "params": {}}'
Or run from a file on the server:
curl -X POST http://localhost:3333/run-file \
-H "Content-Type: application/json" \
-H "X-API-Key: your-secret-key" \
-d '{"file": "/path/to/agent.yaml", "params": {}}'
Download OE Runtime and run any AI agent locally or as a server — no cloud required.
Get OE Runtime →