xdrop

作者: xixu-me

Use this skill when the user wants to send or fetch files through an Xdrop server from the terminal, asks to automate encrypted Xdrop share-link workflows, provides an Xdrop `/t/:transferId#k=...` link to download and decrypt locally, or needs Xdrop CLI flags such as `--quiet`, `--json`, `--expires-in`, `--output`, or `--api-url`, even if they do not explicitly mention the skill name.

npx skills add https://github.com/xixu-me/skills --skill xdrop

Use the bundled scripts inside this skill directory.

Available scripts

  • scripts/upload.mjs — Upload local files or directories to an Xdrop server and print the share link
  • scripts/download.mjs — Download an Xdrop share link, decrypt it locally, and save the files

Environment requirements:

  • Bun
  • Local filesystem access
  • Network access to the target Xdrop server

Upload

bun scripts/upload.mjs --server <xdrop-site-url> <file-or-directory> [...]

Prefer these flags when relevant:

  • --quiet: suppress progress output and keep stdout clean
  • --json: return transferId, shareUrl, and expiresAt
  • --expires-in <seconds>: choose a supported expiry
  • --api-url <url>: override the default <server>/api/v1
  • --name <value>: set the transfer display name
  • --concurrency <n>: limit parallel uploads per file

Useful examples:

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

If the user wants verification, upload a small temporary file and then confirm the public transfer API or browser can open the returned link.

Download

Require the full share link, including #k=.... Without the fragment key, the transfer cannot be decrypted.

bun scripts/download.mjs "<share-url>"

Prefer these flags when relevant:

  • --output <dir>: choose the destination directory
  • --quiet: suppress progress output and keep stdout clean
  • --json: return transferId, outputRoot, and saved file paths
  • --api-url <url>: override the default <share-origin>/api/v1

Useful examples:

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=..."

By default the downloader writes to ./xdrop-<transferId> and preserves the manifest's relative paths.

Gotchas

  • A download link without the #k=... fragment is not decryptable. Ask for the full original share URL.
  • Use --quiet whenever another command or caller needs to capture stdout. Progress logs otherwise go to stderr, but the final result still matters.

Guardrails

  • Prefer --quiet when another command or script needs to capture stdout.
  • Keep the full share link fragment intact for downloads.
  • Do not bypass the scripts' built-in path sanitization or transfer cleanup behavior with manual ad hoc commands unless the user explicitly asks.

来自 xixu-me 的更多技能

github-actions-docs
xixu-me
当用户询问如何编写、解释、自定义、迁移、保护或排查GitHub Actions工作流、工作流语法、触发器、矩阵、运行器、可复用工作流、制品、缓存、密钥、OIDC、部署、自定义操作或Actions Runner Controller时使用,尤其是当用户需要官方GitHub文档、精确链接或基于文档的YAML指导时。
developmentdevopsdocument
use-my-browser
xixu-me
当工作依赖于用户的实时浏览器会话或可见渲染状态而非静态抓取时使用,尤其适用于浏览器调试场景、DevTools选中的元素或请求、已登录的仪表盘或CMS流程、本地应用、表单、上传、下载、媒体检查、DOM或iframe检查、Shadow DOM,以及表现为软404、认证墙、反爬虫检测或速率限制的浏览器故障。
browser-automationweb-scrapingtesting
readme-i18n
xixu-me
当用户想要翻译仓库的README、使仓库支持多语言、本地化文档、添加语言切换器、国际化README,或更新GitHub风格仓库中的本地化README变体时使用。
documentdevelopmentapi
openclaw-secure-linux-cloud
xixu-me
在云服务器上自托管OpenClaw时使用,用于加固远程OpenClaw网关、选择SSH隧道、Tailscale或反向代理暴露方式,或审查Podman、配对、沙箱、令牌认证及工具权限默认设置,以实现安全的个人部署。
devopssecurity
develop-userscripts
xixu-me
在构建、调试、打包或发布用于Tampermonkey或ScriptCat的浏览器用户脚本时使用,包括GM API、元数据块、权限问题、@match/@grant/@connect设置、ScriptCat后台或定时脚本、UserConfig块或订阅工作流。
developmentbrowser-automationweb-scraping
secure-linux-web-hosting
xixu-me
Use when setting up, hardening, or reviewing a cloud server for self-hosting, including DNS, SSH, firewalls, Nginx, static-site hosting, reverse-proxying an app, HTTPS with Let's Encrypt or ACME clients, safe HTTP-to-HTTPS redirects, or optional post-launch network tuning such as BBR.
devopssecurityaws
opensource-guide-coach
xixu-me
当用户希望获得关于启动、贡献、发展、治理、资助、保护或维护开源项目的指导,或询问贡献者入职、社区健康、维护者倦怠、行为准则、指标、法律基础或开源项目采用等问题时使用。
developmentresearch
running-claude-code-via-litellm-copilot
xixu-me
Use when routing Claude Code through a local LiteLLM proxy to GitHub Copilot, reducing direct Anthropic spend, configuring ANTHROPIC_BASE_URL or ANTHROPIC_MODEL overrides, or troubleshooting Copilot proxy setup failures such as model-not-found, no localhost traffic, or GitHub 401/403 auth errors.
developmentapidevops