SKILL.md
readonlyread-only
name
xdrop
description
當使用者想要從終端機透過 Xdrop 伺服器傳送或接收檔案、要求自動化加密的 Xdrop 分享連結工作流程、提供 Xdrop 的 `/t/:transferId#k=...` 連結來下載並在本機解密,或需要 Xdrop CLI 參數如 `--quiet`、`--json`、`--expires-in`、`--output` 或 `--api-url` 時,使用此技能,即使使用者沒有明確提及技能名稱。
使用此技能目錄內附的腳本。
可用腳本
scripts/upload.mjs— 將本機檔案或目錄上傳至 Xdrop 伺服器,並輸出分享連結scripts/download.mjs— 下載 Xdrop 分享連結,在本機解密,並儲存檔案
環境需求:
- Bun
- 本機檔案系統存取權
- 目標 Xdrop 伺服器的網路連線
上傳
bun scripts/upload.mjs --server <xdrop-site-url> <file-or-directory> [...]
相關參數建議使用:
--quiet:隱藏進度輸出,保持 stdout 乾淨--json:回傳transferId、shareUrl和expiresAt--expires-in <seconds>:選擇支援的到期時間--api-url <url>:覆蓋預設的<server>/api/v1--name <value>:設定傳輸顯示名稱--concurrency <n>:限制每個檔案的平行上傳數
實用範例:
bun scripts/upload.mjs --server http://localhost:8080 ./dist/report.pdf
bun scripts/upload.mjs --server http://localhost:8080 --quiet ./archive.zip
bun scripts/upload.mjs --server http://localhost:8080 --expires-in 600 --json ./notes.txt
如果使用者需要驗證,可上傳一個小型暫存檔案,然後確認公開傳輸 API 或瀏覽器能開啟回傳的連結。
下載
需要完整的分享連結,包含 #k=...。缺少片段金鑰則無法解密傳輸。
bun scripts/download.mjs "<share-url>"
相關參數建議使用:
--output <dir>:選擇目標目錄--quiet:隱藏進度輸出,保持 stdout 乾淨--json:回傳transferId、outputRoot和已儲存的檔案路徑--api-url <url>:覆蓋預設的<share-origin>/api/v1
實用範例:
bun scripts/download.mjs "http://localhost:8080/t/abc123#k=..."
bun scripts/download.mjs --output ./downloads "http://localhost:8080/t/abc123#k=..."
bun scripts/download.mjs --quiet --json --output ./downloads "http://localhost:8080/t/abc123#k=..."
預設下載器會寫入 ./xdrop-<transferId> 並保留 manifest 的相對路徑。
注意事項
- 缺少
#k=...片段的下載連結無法解密。請索取完整的原始分享 URL。 - 當其他指令或呼叫者需要擷取 stdout 時,請使用
--quiet。進度記錄會輸出到 stderr,但最終結果仍然重要。
使用限制
- 當其他指令或腳本需要擷取 stdout 時,建議使用
--quiet。 - 下載時請保持完整的分享連結片段。
- 除非使用者明確要求,否則不要繞過腳本內建的路徑清理或傳輸清理行為,使用手動臨時指令。






