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
Use when work depends on the user's live browser session or visible rendered state rather than static fetches, especially for browser debugging contexts or DevTools-selected elements or requests, logged-in dashboards or CMS flows, localhost apps, forms, uploads, downloads, media inspection, DOM or iframe inspection, Shadow DOM, or browser failures that look like soft 404s, auth walls, anti-bot checks, or rate limits.
browser-automationweb-scrapingtesting
readme-i18n
xixu-me
Use when the user wants to translate a repository README, make a repo multilingual, localize docs, add a language switcher, internationalize the README, or update localized README variants in a GitHub-style repository.
documentdevelopmentapi
openclaw-secure-linux-cloud
xixu-me
클라우드 서버에서 OpenClaw를 자체 호스팅하거나, 원격 OpenClaw 게이트웨이를 강화하거나, SSH 터널링, Tailscale, 리버스 프록시 노출 중에서 선택하거나, Podman, 페어링, 샌드박싱, 토큰 인증, 도구 권한 기본값을 검토하여 안전한 개인 배포를 구성할 때 사용합니다.
devopssecurity
develop-userscripts
xixu-me
Use when building, debugging, packaging, or publishing browser userscripts for Tampermonkey or ScriptCat, including GM APIs, metadata blocks, permission issues, @match/@grant/@connect setup, ScriptCat background or scheduled scripts, UserConfig blocks, or subscription workflows.
developmentbrowser-automationweb-scraping
secure-linux-web-hosting
xixu-me
셀프 호스팅을 위한 클라우드 서버 설정, 강화 또는 검토 시 사용하며, DNS, SSH, 방화벽, Nginx, 정적 사이트 호스팅, 앱 리버스 프록시, Let's Encrypt 또는 ACME 클라이언트를 통한 HTTPS, 안전한 HTTP-to-HTTPS 리디렉션, 또는 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