v1.0.0  ·  Free & open source

Cull the blur.
Keep the keepers.

PhotoAgent scans a folder of photos, detects camera shake — and knows the difference between shake and intentional bokeh — then enhances your best shots automatically. Everything runs on your device.

Download for macOS Download for Windows
100% on-device — photos never leave your computer Open source · Apache 2.0 Originals are never modified
PhotoAgent review screen showing analyzed photos with keep/exclude status

The review step in PhotoAgent for Windows — one click to keep or exclude any photo. (UI currently in Korean; English localization planned.)

Built for photographers who shoot a lot

Point it at a folder. Get back a clean, enhanced set — with the shaky frames sorted out of the way.

Shake detection that understands bokeh

Tile-based sharpness plus blur-directionality analysis separates true camera shake from intentional shallow depth of field — so portraits aren't discarded.

Automatic enhancement

Tone, white balance, vibrance, and sharpening — applied per photo with EXIF metadata preserved. Exports to a separate folder, originals untouched.

Subject-aware editing

On macOS, machine-learning subject masks enable separate adjustments for subject and background, plus a natural depth-blur effect.

Watermarking

Text or logo watermarks with full control over font, size, opacity, and position. Apply to the whole batch or per photo.

Flexible batch export

Choose output resolution and format (JPEG, PNG, HEIC, WebP). Rejected photos are filed by reason — shake, focus, exposure — for easy review.

Private by design

No account, no upload, no telemetry. All analysis and processing happens locally. The full source code is public and auditable.

Three steps, done

Pick a folder

Choose any folder of photos. Analysis starts automatically — a few seconds for hundreds of shots.

Review the verdicts

See exactly why each photo was kept or flagged. Override any decision with a single click.

Export

Enhanced keepers land in a new folder next to your originals, with a full processing report.

Download PhotoAgent

Version 1.0.0 · Free under the Apache 2.0 license

macOS

Requires macOS 14 Sonoma or later · Apple Silicon & Intel
Download .dmg (1.3 MB)
  1. Open the DMG and drag PhotoAgent to Applications
  2. First launch only: right-click → Open to pass the unidentified-developer prompt
SHA-256 3276ecda7c44a31e86518e9d0e0b97a819f48ca4d5326cd6b261e49480ce8ed3

Windows

Requires Windows 10 or 11 · 64-bit
Download installer (.exe)
  1. Run PhotoAgent-Setup.exe — no Python or other software needed
  2. If SmartScreen appears: More info → Run anyway (the app is unsigned but open source)
  3. Launch PhotoAgent from the Start menu or desktop
SHA-256 61db48d8805bb6f5e45b720c6c55db7274a828fcfc8df8faffedf0f2c4533018 Prefer manual install? Portable ZIP (requires Python)

Support the project

PhotoAgent is free and open source, built and maintained independently. If it saves you time, consider supporting continued development — any amount helps.

Donate — choose your amount
Secure checkout powered by Stripe · One-time, no account needed

Frequently asked questions

Is PhotoAgent really free?

Yes. PhotoAgent is open source under the Apache License 2.0. There is no paid tier, no account, and no ads. You can read every line of the code on GitHub.

Do my photos ever leave my computer?

No. All analysis, enhancement, and export happen locally on your machine. PhotoAgent makes no network requests and collects no telemetry.

Can it delete or damage my original photos?

No. PhotoAgent only reads your originals. All output — enhanced photos and sorted rejects — is written to a new folder created next to the source folder.

Why does macOS warn about an unidentified developer?

The app is currently signed ad-hoc rather than notarized with a paid Apple Developer ID. Right-click the app and choose Open the first time; macOS remembers your choice afterwards. You can also build from source.

Why does Windows SmartScreen warn about the installer?

The installer is not yet signed with a paid code-signing certificate, so SmartScreen shows a caution for new publishers. Click "More info" and then "Run anyway". The installer is built automatically from the public source code by GitHub Actions, and you can verify or build it yourself.

What languages is the interface available in?

The interface is currently in Korean. English localization is planned. The analysis pipeline and documentation are language-independent.

How does it tell camera shake from intentional background blur?

PhotoAgent measures sharpness per region, so a photo with a sharp subject and blurred background scores as intentional bokeh. For fully soft frames, it examines the directionality of the blur: motion blur smears in one direction, while defocus blur is uniform.