2
6 Comments

Show IH: I built a CLI tool to stop losing screenshots to clipboard overwrites

I kept losing screenshots. I'd take one, get distracted by something else, copy a piece of text, and the screenshot was gone forever. This happened daily — especially on Linux, where there's no built-in "screenshot → file" flow like macOS or Windows.

I tried the obvious fixes. Shell aliases wrapping xclip. A cron job that dumped the clipboard every 30 seconds. Neither stuck — they were too hacky, broke across platforms, and I could never remember the syntax.

So I built imgclip.

imgclip demo

What it does

A single Rust binary (~1.5MB) that moves images between your clipboard and files. Four modes:

  • Save clipboard images to PNG/JPEG files
  • Watch mode: auto-save every new clipboard image in the background
  • Interactive mode: single-keypress save/discard for each image
  • Copy mode: send any image file back to clipboard

The one I use most is --watch combined with --install: it auto-starts on login and silently saves every screenshot to ~/Pictures/imgclip/. Every screenshot I take now gets auto-saved. I don't think about it anymore.

Why Rust

I started with a shell script. Handling clipboard APIs across Windows, Linux, and macOS in bash was genuinely painful — different tools, different arguments, different image formats. The arboard crate in Rust handles all of that cleanly.

The Rust build toolchain also gave me easy cross-compilation. One cargo build --release per target, and I had binaries for 6 platforms (x86_64 + aarch64 for Windows/Linux/macOS).

What I learned

  • Scope discipline was key. imgclip does one thing. No GUI, no cloud sync, no image editing. Every time I was tempted to add a feature, I asked "does this help save a clipboard image?" If not, it didn't go in.

  • Cross-platform clipboard is a mess. Every OS handles clipboard differently — especially around image formats and change detection. Abstracting that behind a clean CLI was the real value.

  • Single binary distribution matters. "Download and run" beats "install this runtime, then install the tool." The LTO-stripped Rust binary is ~1.5MB. No dependencies, no setup.

Current status

  • Released v0.3.0, MIT-licensed
  • 6 prebuilt binaries on GitHub Releases
  • Looking into Homebrew/scoop/AUR packaging

If you've ever lost a screenshot to a clipboard overwrite, give it a try. Feedback and contributions welcome.

GitHub | Releases

posted to Icon for group Show IH
Show IH
on May 6, 2026
  1. 2

    You picked the right constraint.

    This is one of those annoying problems that feels too small to matter until it happens 20 times a week.

    The strongest part is that you kept it brutally narrow.
    No GUI, no sync, no “clipboard productivity suite.”
    Just “stop losing the image.”

    That constraint is why it feels useful instead of bloated.

    The product probably stays strongest as a tiny utility, but if you package distribution cleanly (brew / scoop / apt) and keep the install friction near zero, this is exactly the kind of tool that spreads fast through habit.

    Also: imgclip is functional, but it undersells the polish a bit.
    For a utility this sharp, something like Xevoa.com would carry more weight if you ever package it beyond dev-tool utility into a broader desktop product.

    1. 1

      Thank you for your insightful comments! It's really excited to hear your feedback and suggestion!

      1. 1

        Appreciate it.

        The product is sharp because it stays narrow.

        If you keep it as a tiny dev utility, imgclip is probably fine.

        But if you ever package it into something broader for desktop workflows, I’d revisit the name early.

        That’s where Xevoa would make more sense — cleaner, more ownable, and less “small utility” feeling.

  2. 1

    This is one of those small problems that becomes irrationally annoying once it happens enough times.

    The watch mode is probably the killer feature because it removes the need to think about it entirely. Feels more like fixing a workflow leak than adding a tool.

    Keeping it as a single-purpose binary was the right call as well. Easy to imagine this getting bloated fast otherwise.

    Did you find people mostly using it for screenshots specifically . . . .or are there other clipboard image workflows showing up as well?

    1. 1

      Actually there are a few clipboard image tools before imgclip, but I found them still a little hard for me to use. The watch mode and interactive mode are helpful to me, and cross-platform is also an advantage of imgclip over its senior.

      I guess there are still few people using it as it's new and rarely known to others. But I hope it will help more people deal with their small but annoying problems.

      Thank you for your comment!

  3. 1

    I would really appreciate it if someone would be kind enough to give it a try and offer some valuable suggestions! That will motivate me to continue improving this open-source tool!

Trending on Indie Hackers
Agencies charge $5,000 for a 60-second product demo video. I make mine for $0. Here's the exact workflow. User Avatar 122 comments I wasted 6 months building a failed startup. Built TrendyRevenue to validate ideas in 10 seconds. User Avatar 55 comments I've been building for months and made $0. Here's the honest psychological reason — and it's not what I expected. User Avatar 48 comments Your files aren’t messy. They’re just stuck in the wrong system. User Avatar 28 comments Why Direction Matters More Than Motivation in Exam Preparation User Avatar 14 comments I built a health platform for my family because nobody has a clue what is going on User Avatar 13 comments