Skip to main content

Save clipboard content (text and images) to files with smart format detection

Project description

ClipDrop - Your Clipboard, Instantly Saved ✨

PyPI version Downloads Python License: MIT

Stop the copy-paste-save dance. One command turns your clipboard into any file.

pip install clipdrop

🚀 Get Started in 30 Seconds

1. Copy anything - text, code, images, audio 2. Save it - clipdrop myfile 3. That's it! ClipDrop detects the format and saves it perfectly.

# Just copied some code? Save it:
clipdrop script.py

# Screenshot in clipboard? Save it:
clipdrop design.png

# Building a journal? Append to it:
clipdrop journal.md -a

💡 Why ClipDrop?

The Problem: Saving clipboard content on macOS is tedious: Copy → Open app → Paste → Navigate → Name → Choose format → Save 😫

The Solution: Just clipdrop filename and you're done! 🎉

Perfect for:

  • 👨‍💻 Developers - Save code snippets and API responses instantly
  • 📊 PMs - Capture screenshots and meeting notes in one command
  • ✍️ Writers - Build documents by appending content throughout the day
  • 🎓 Students - Organize research without switching apps

🎯 Killer Features

1. 🧠 Smart Format Detection

ClipDrop knows what you copied and saves it correctly:

clipdrop data        # JSON detected → data.json
clipdrop readme      # Markdown → readme.md
clipdrop screenshot  # Image → screenshot.png

2. 📝 Append Mode - Build Documents Over Time

Never lose a thought. Keep adding to files:

clipdrop journal.md -a   # Morning thoughts
clipdrop journal.md -a   # Afternoon notes
clipdrop journal.md -a   # Evening reflection

3. 🎵 Audio Transcription (macOS 26.0+)

Turn recordings into text using Apple Intelligence:

# Copy an audio file, then:
clipdrop              # → transcript_20240323_143022.srt
clipdrop meeting.txt  # → meeting notes as plain text

4. 🤖 On-Device Summaries (macOS 26.0+)

Get an executive-ready recap before the raw transcript:

# Save article + structured summary at the top
clipdrop research-notes.md --summarize

# Works for YouTube transcripts and audio, too
clipdrop -yt briefing.md --summarize
clipdrop --audio meeting.txt --summarize

Summaries include:

  • Overall headline sentence
  • Sections for Key Takeaways, Action Items, and Questions
  • Handles transcripts of any length - automatically uses hierarchical processing for long content
  • Local fallback when Apple Intelligence is busy, so you always get something useful

5. 🎥 YouTube Transcripts

Research videos efficiently:

# Copy YouTube URL, then:
clipdrop -yt                    # Download transcript
clipdrop -yt lecture.md --lang es  # Spanish transcript
clipdrop -yt notes.md --summarize  # Transcript + structured summary

6. 🔒 Secret Scanner

Never accidentally save credentials:

clipdrop config.env -s           # Scan before saving
clipdrop api-keys.txt --scan-mode redact  # Auto-redact secrets

7. 🏷️ Auto-Name (macOS 26.0+)

Stop inventing filenames. Let the on-device model read the content and propose one:

clipdrop --auto-name             # → quarterly-revenue-growth.md
clipdrop --auto-name notes.txt   # Honors the extension you give it
clipdrop --ocr --auto-name       # Name a screenshot from its recognized text
  • A short Title-Case suggestion is slugified into a tidy, filesystem-safe name
  • The positional filename is optional; a provided extension is kept, otherwise format detection picks it
  • Falls back to a content-based slug when Apple Intelligence isn't available

8. ✍️ Transform (macOS 26.0+) - Writing Tools for the Terminal

Reshape copied text on the way to a file, entirely on-device:

clipdrop email.txt --rewrite formal                    # restyle (concise/friendly/…)
clipdrop notes.md  --prompt "extract the action items" # any freeform instruction
clipdrop data.md   --to-table                          # messy text → Markdown table
clipdrop data.csv  --to-table                          # …or CSV when the name ends in .csv
  • Stacks with everything else, e.g. clipdrop --ocr --to-table table.csv or clipdrop draft.md --rewrite concise --auto-name
  • Transforms run after content/OCR is resolved and before naming/summarizing

📖 Common Workflows

Daily Journaling
# Start your day
echo "Morning thoughts..." | pbcopy
clipdrop journal.md -a

# Add throughout the day
clipdrop journal.md -a

# Review before saving
clipdrop journal.md -a -p
Code Snippet Collection
# Save useful code snippets
clipdrop snippets.py -a

# Preview before adding
clipdrop snippets.py -a -p

# Force overwrite when needed
clipdrop snippets.py -f
Research & Notes
# Save web content as PDF
clipdrop article.pdf

# Download YouTube lectures
clipdrop -yt lecture.md
clipdrop -yt lecture.md --summarize

# Build research document
clipdrop research.md -a

# Append AI summary (macOS 26.0+)
clipdrop research.md --summarize
Screenshot Management
# Quick save
clipdrop screenshot.png

# Preview dimensions first
clipdrop mockup.png -p

# Save only the image (ignore text)
clipdrop design.png --image-only

🛠️ Installation

Quick Install

pip install clipdrop

With YouTube Support

pip install clipdrop[youtube]

Other Methods

# Using uv (fast)
uv add clipdrop

# Using pipx (isolated)
pipx install clipdrop

# From source
git clone https://github.com/prateekjain24/clipdrop.git
cd clipdrop && pip install -e .

⚡ Command Reference

Core Commands

clipdrop <filename>      # Save clipboard to file
clipdrop -a <filename>   # Append to existing file
clipdrop -p <filename>   # Preview before saving
clipdrop -f <filename>   # Force overwrite

Input Sources

clipdrop -yt            # YouTube transcript mode
clipdrop --audio        # Force audio transcription

Filters & Options

clipdrop --text-only    # Ignore images
clipdrop --image-only   # Ignore text
clipdrop --ocr          # Extract text from a clipboard image (macOS, on-device)
clipdrop --auto-name    # Let ClipDrop name the file from its content
clipdrop -s             # Scan for secrets
clipdrop --lang es      # Set language

🏷️ Auto-name asks the on-device model for a short title and turns it into a tidy slug (clipdrop --auto-nameq3-roadmap-plan.md). No filename needed; a provided extension is kept. Falls back to a content-based slug when Apple Intelligence isn't available.

🔎 OCR turns a copied screenshot into text using Apple's on-device Vision framework — no data leaves your Mac. It composes with other flags, e.g. clipdrop slide.md --ocr --summarize.

✨ Transform clipboard text (macOS, on-device)

"Writing Tools for the terminal" — reshape what you copied on the way to a file:

clipdrop email.txt --rewrite formal          # rewrite in a style (concise/friendly/…)
clipdrop notes.md  --prompt "extract the action items"   # any freeform instruction
clipdrop data.md   --to-table                # messy text → Markdown table
clipdrop data.csv  --to-table                # …or CSV when the name ends in .csv

These run entirely on-device via Apple Intelligence and compose with everything else, e.g. clipdrop --ocr --to-table table.csv or clipdrop draft.md --rewrite concise --auto-name.

📚 Full Command Documentation →

🎯 Pro Tips

  1. Shell Aliases - Add to your .zshrc:

    alias cda='clipdrop -a'  # Quick append
    alias cdp='clipdrop -p'  # Preview first
    
  2. Auto-transcribe - Copy audio → clipdrop → instant transcript

  3. Mixed content - Copy text + image → clipdrop doc.pdf → perfect PDF

  4. Safe secrets - Always use -s for sensitive content

🤝 Contributing

We love contributions! Check out CONTRIBUTING.md for guidelines.

📄 License

MIT © Prateek Jain

🔗 Links


Stop copying and pasting. Start ClipDropping.
Made with ❤️ for the clipboard warriors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clipdrop-1.10.0.tar.gz (506.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clipdrop-1.10.0-py3-none-any.whl (410.8 kB view details)

Uploaded Python 3

File details

Details for the file clipdrop-1.10.0.tar.gz.

File metadata

  • Download URL: clipdrop-1.10.0.tar.gz
  • Upload date:
  • Size: 506.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for clipdrop-1.10.0.tar.gz
Algorithm Hash digest
SHA256 dba97a4951a46b144bf3ae752bd1b440b0707b940f9905feeda8d9098aee0a6d
MD5 469c96d05a25a250a968eec0e23faff3
BLAKE2b-256 6cb091e09f07135f19463e865dba0a7e56c9e9da57d83f101c0c48a2b8454266

See more details on using hashes here.

File details

Details for the file clipdrop-1.10.0-py3-none-any.whl.

File metadata

  • Download URL: clipdrop-1.10.0-py3-none-any.whl
  • Upload date:
  • Size: 410.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for clipdrop-1.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4132603a83844865d98a53801270ee4fbc799dcc3a42647ff16ef482c0774988
MD5 1411d00747f8e6f775f9031993ebc469
BLAKE2b-256 29375e31325c45473c8752bff4117bc49ce8c1a9561b2788af77ecb7c1f93f71

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page