SkillAgentSearch skills...

Kuron

Fast and easy file deduplication, powered by fclones.

Install / Use

/learn @lyallcooper/Kuron
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

kurōn

Fast, easy to use file deduplication. Available as desktop or server app. Powered by fclones.

<p align="center"> <img src="/img/screenshot-1.png" width="400" alt="App dashboard"> <img src="/img/screenshot-2.png" width="400" alt="Scan results page"> </p>

Features

  • Find duplicates: Scan directories to find duplicate files
  • Dedupe: Hardlink, reflink or remove duplicates to reclaim disk space
  • Schedule Jobs: Run scans, dedupe automatically on a cron schedule
  • View History: View past scans, results, and actions taken

Quick Start

Desktop

Download the latest release for your platform:

| Platform | File | |----------|------| | macOS | Kuron-macos-arm64.dmg<sup>ⓘ Note</sup> | | Linux | Kuron-linux-amd64.tar.gz | | Windows | Kuron-windows-amd64.zip |

[!Note] To open on macOS: attempt to open normally, then open System Settings > Privacy & Security, scroll down and click Open Anyway.

Server

Docker (Recommended)

compose.yaml:

services:
  kuron:
    image: ghcr.io/lyallcooper/kuron:latest
    container_name: kuron
    user: 1000:1000 # Must have permission for mounted volumes
    ports:
      - 8080:8080
    volumes:
      - ./kuron-data:/data
      - /path/to/media:/mnt/media          # A directory containing files to dedupe
      - /path/to/downloads:/mnt/downloads  # Another directory to dedupe
    environment:
      - KURON_ALLOWED_PATHS=/mnt/media,/mnt/downloads # Optional directory allowlist
    restart: unless-stopped

Access at http://localhost:8080.

Pre-built Binaries

Download the latest binary for your platform from GitHub Releases.

Available platforms:

  • Linux (amd64, arm64)
  • macOS (arm64)

Requires fclones 0.35.0 or newer.

From Source

Requires Go 1.24+ and fclones 0.35.0 or newer.

# Install fclones (>= 0.35.0)
# macOS: brew install fclones
# Linux: See https://github.com/pkolaczk/fclones#installation

# Build and run
go build -o kuron ./cmd/server
./kuron

Environment Variable Configuration

| Variable | Type | Default | Description | |----------|------|---------|-------------| | KURON_PORT | int | 8080 | HTTP server port | | KURON_DB_PATH | path | ./data/kuron.db or<br>/data/kuron.db on docker | SQLite database path | | KURON_RETENTION_DAYS | int | 30 | Days to keep scan history (1-9999) | | KURON_SCAN_TIMEOUT | duration | 30m | Maximum duration for a scan | | KURON_ALLOWED_PATHS | paths | (unrestricted) | Comma-separated paths to restrict scanning | | KURON_FCLONES_CACHE | bool | true | Enable fclones caching for faster repeat scans |

Usage

  1. Quick Scan: Run an ad-hoc scan from the dashboard by specifying paths and filters
  2. Create Jobs: Set up scheduled scans with cron expressions for automated scanning
  3. Review Results: View duplicate groups, expand to see file paths
  4. Take Action: Select groups and choose an action (all actions preview first)
  5. View History: Track all past scans and actions from the History page

Actions

  • Hardlink (fclones link): Multiple filenames point to the same data on disk. Editing one file changes all. Works on any filesystem.
  • Reflink (fclones dedupe): Copy-on-write clone. Files share data until modified, then diverge. Requires filesystem support (APFS, Btrfs, XFS, ZFS, etc.).
    • NB: Files previously deduplicated via reflink will show up again on subsequent scans due to how fclones detects duplicates.
  • Remove (fclones remove): Delete duplicate files, keeping one per group based on priority (newest, oldest, most/least nested, etc.).
  • Delete (rm): Manually delete individual files found in scans

Related Skills

View on GitHub
GitHub Stars5
CategoryDevelopment
Updated1mo ago
Forks0

Languages

Go

Security Score

85/100

Audited on Mar 4, 2026

No findings