界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
数据与研究 · SKILL.md

byted-tos-file-process

byted-tos-file-process

【数据与研究】Compresses and uncompresses file objects stored in Volcengine TOS through TOS data-process async jobs. Use this skill when the user needs to zip files, unzip archives, create tar or zstd archives, extract compressed files, pack multiple TOS objects into a single archive, bundle files together, or distribute files as a package — even if they don't exp…

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: byted-tos-file-process description: "Compresses and uncompresses file objects stored in Volcengine TOS through TOS data-process async jobs. Use this skill when the user needs to zip files, unzip archives, create tar or zstd archives, extract compressed files, pack multiple TOS objects into a single archive, bundle files together, or distribute files as a package — even if they don't explicitly mention 'compression', 'archive', '打包', or '压缩'." metadata: version: "1.0.0" openclaw: identity: - type: apikey provider: tos_provider env: - TOS_ACCESS_KEY - TOS_SECRET_KEY - TOS_ENDPOINT - TOS_REGION - TOS_BUCKET required: true optional: env: - TOS_OBJECT_KEY - TOS_SECURITY_TOKEN user-invocable: true license: Apache-2.0

Volcengine TOS File Process

Compress and uncompress file objects stored in Volcengine TOS through the TOS gateway's file_jobs API.

Setup (once per environment)

Install dependencies on first use:

cd {baseDir}
pip install -r {baseDir}/requirements.txt

Then run scripts with Python 3.7+:

python3 {baseDir}/scripts/<script>.py <args>

Environment Variables

This skill relies on the TOS identity declared in the metadata block. Common runtime variables are:

Environment VariableRequiredDescription
TOS_ACCESS_KEYYesTOS access key ID
TOS_SECRET_KEYYesTOS secret access key
TOS_ENDPOINTYesTOS endpoint URL
TOS_REGIONYesTOS region
TOS_BUCKETYesSource bucket that stores the file objects
TOS_OBJECT_KEYNoSource object key. Can be overridden with --key or --keys
TOS_SECURITY_TOKENNoSTS session token when using temporary credentials

Quick start

# Compress multiple TOS objects into a zip archive and wait for completion
python3 {baseDir}/scripts/file_compress.py \
  --keys file1.jpg,file2.txt \
  --format zip \
  --output-key output/archive.zip \
  --wait

# Uncompress a zip archive and wait for completion
python3 {baseDir}/scripts/file_uncompress.py \
  --key output/archive.zip \
  --prefix output/unzipped/ \
  --wait

Available scripts

ScriptPurpose
scripts/file_compress.pySubmit an async FileCompress job via the TOS gateway's file_jobs API that compresses TOS objects into an archive (zip/tar/zst). Supports --wait to poll until completion.
scripts/file_uncompress.pySubmit an async FileUncompress job via the TOS gateway's file_jobs API that extracts an archive in TOS. Supports --wait to poll until completion.
scripts/tos_jobs_client.pyShared client for TOS gateway file_jobs APIs using pre-signed URL auth.

Rules

  • TOS gateway API: This skill uses the TOS gateway's file_jobs API with job_type=FileCompress or job_type=FileUncompress. Authentication is handled via pre_signed_url from the TOS Python SDK and the TOS identity declared in the metadata block above.
  • Supported archive formats: Compress supports zip, tar, and zst. The output object key suffix must match the chosen format (.zip, .tar, .zst).
  • Async job model: The scripts create async jobs and optionally wait for completion with the --wait flag.
  • Language: Reply in the user's preferred language.

Further reading

我的收藏