ImgSeeder 4.3.1

dotnet tool install --global ImgSeeder --version 4.3.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local ImgSeeder --version 4.3.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=ImgSeeder&version=4.3.1
                    
nuke :add-package ImgSeeder --version 4.3.1
                    

ImgSeeder

Terminal font

Font note: The iorg help screen uses glyph icons from Nerd Fonts. Most Nerd Font-patched fonts render correctly in most terminal environments. Blink on iPadOS showed clipping and character-width problems with some choices; the tested solution was Blink's Jet Brains Mono Nerd Font stylesheet. See the RAIkeep terminal font guide for Blink, macOS, and Ubuntu setup.

ImgSeeder change requests and release notes are centralized in the RAIkeep doc/ directory under ImgSeeder_... filenames; they are not stored separately in this child repository.

The NuGet tool package includes the Burkhardt HardCastle.png package icon, matching the other RAIkeep packages.

ImgSeeder uses the shared RAIkeep configured cloud-root contract: Dropbox, OneDrive, GoogleDrive, and ICloudDrive.

ImgSeeder is the RAIkeep image organizer package. It installs the iorg CLI, which copies source images, normalizes filenames with RaiImage naming rules, and places the final files into an ImageTreeFile directory layout such as ItemIdTree8x2.

Complete command and safety guidance: IORG-OPERATIONS.md. Iorg has no JsonPit-style audit/event-log feature; use iorg list and the default dry-run form of iorg clean <ItemId> for read-only inspection.

4.3.1

  • Participates unchanged in coordinated RAIkeep v4.3.1.
  • Aligns fallback package dependencies to 4.3.1 and reports iorg v4.3.1.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.3.1.md

4.3.0

  • Participates unchanged in coordinated RAIkeep v4.3.0.
  • Aligns fallback package dependencies to 4.3.0 and reports iorg v4.3.0.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.3.0.md

4.2.11 (superseded before publication)

  • This prepared line was not published; its coordinated changes are carried by v4.3.0.
  • Aligns fallback package dependencies to 4.2.11 and reports iorg v4.2.11.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.11.md

4.2.10

  • Adds -a, --app for application-root addressing; iorg appends the conventional Image segment.
  • Adds preferred -t, --tenant; --subscriber remains a compatibility alias.
  • Keeps -r, --root as the exact ImageTree-root alternative. --root and --app are mutually exclusive, and app-root addressing requires a tenant.
  • Corrects root and contextual help alignment, documents the legacy unnamed subscriber only when it was actually used, and consistently shows (-p|--pathconv).
  • Aligns fallback package dependencies to 4.2.10 and reports iorg v4.2.10.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.10.md

4.2.9

  • Implements accepted incident corrective action CR022 by removing the TempDir subscriber staging tree.
  • iorg organization writes each image directly to its final ItemTree pathname through RaiFile; it never moves a staged temporary file into a CloudDrive.
  • The optional tempRoot API parameter remains source/binary compatible but is intentionally behaviorally inert.
  • Aligns all fallback package dependencies to 4.2.9 and reports iorg v4.2.9.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.9.md
  • Mandatory storage contract: Cloud-Storage-In-Place-Invariant.md

4.2.8

  • Aligns ImgSeeder with the coordinated seven-package RAIkeep 4.2.8 release implementing accepted CR021.
  • Existing iorg behavior remains unchanged from 4.2.7.
  • Aligns all fallback package dependencies to 4.2.8 and reports iorg v4.2.8.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.8.md

4.2.7

  • Implements accepted CR020 with read-only recursive iorg list <FileNamePattern> discovery across image, .puml, and .raid artifacts.
  • Adds exact-ItemId iorg move <SourceItemId> [TargetItemId] for relocation, rename, and path-convention migration without disturbing bucket siblings.
  • Adds iorg clean --cache for explicit derivative cleanup and makes iorg clean <ItemId> --force remove the complete item file family.
  • Removes the misleading Legacy row from root help; -r remains the supported short spelling of --root.
  • Aligns all fallback package dependencies to 4.2.7 and reports iorg v4.2.7.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.7.md

4.2.6

  • Aligns ImgSeeder with the coordinated seven-package RAIkeep 4.2.6 release implementing accepted CR019.
  • Aligns fallback dependencies on JsonPit 4.2.6, OsLibCore 4.2.6, RaiUtils 4.2.6, and RaiImage 4.2.6; iorg behavior is unchanged.
  • Reports iorg v4.2.6 through the CLI version boundary.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.6.md

4.2.5

  • Aligns ImgSeeder with the coordinated seven-package RAIkeep 4.2.5 release implementing accepted CR017.
  • Aligns fallback dependencies on JsonPit 4.2.5, OsLibCore 4.2.5, RaiUtils 4.2.5, and RaiImage 4.2.5; iorg behavior is unchanged.
  • Reports iorg v4.2.5 through the CLI version boundary.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.5.md

4.2.4

  • Adopts RaiImage 4.2.4 so iorg destinations use accepted CR016 NFC normalization and Unicode text-element bucketing.
  • Aligns fallback dependencies on JsonPit 4.2.4, OsLibCore 4.2.4, RaiUtils 4.2.4, and RaiImage 4.2.4.
  • CLI behavior and the established Nerd Font help contract remain unchanged.
  • 4.2.4 release notes: ImgSeeder_RELEASE_NOTES_4.2.4.md

4.2.3

  • Aligns fallback dependencies on JsonPit 4.2.3, OsLibCore 4.2.3, RaiUtils 4.2.3, and RaiImage 4.2.3 for the coordinated CR015 release.
  • Retains the 4.2.1 Nerd Font glyphs, corrected option alignment, Blink guidance, and terminal clipping tolerance unchanged.
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.3.md

4.2.1

  • Uses glyphs embedded in JetBrainsMonoNLNerdFontPropo-Regular for cloud-provider and numbered help options, avoiding fallback-font width differences.
  • Aligns contextual option descriptions consistently and reserves two terminal cells at the end of help lines for renderers such as Blink.
  • Continues to depend on JsonPit 4.2.0, OsLibCore 4.2.0, RaiUtils 4.2.0, and RaiImage 4.2.0; no library package version changes are part of this CLI-only patch.
  • Terminal setup guidance: TERMINAL_FONTS.md
  • Current release notes: ImgSeeder_RELEASE_NOTES_4.2.1.md

4.2.0

  • Retains the command-first organize and clean syntax introduced for CR006.
  • Keeps established flat iorg invocations working throughout 4.x; the legacy parser is scheduled for removal in 5.x.x.
  • Fallback package defaults are aligned on JsonPit 4.2.0, OsLibCore 4.2.0, RaiUtils 4.2.0, and RaiImage 4.2.0.
  • No ImgSeeder CLI behavior changes from 4.1.0.
  • Help is contextual per command and startup banners use decorative glyph rules instead of repeated equals signs.
  • Release notes: ImgSeeder_RELEASE_NOTES_4.2.0.md

This tool is part of the RAIkeep package family:

  • OsLibCore
  • RaiUtils
  • RaiImage
  • JsonPit
  • ImgSeeder (iorg command)
  • PitSeeder

Install

Install the NuGet tool with:

dotnet tool install --global ImgSeeder

On macOS or Linux, a practical option is to install directly into a directory on your PATH:

sudo dotnet tool install ImgSeeder --tool-path /usr/local/bin

Update an existing installation with:

dotnet tool update --global ImgSeeder

To update an installation in /usr/local/bin:

sudo dotnet tool update ImgSeeder --tool-path /usr/local/bin

Usage

Typical cloud-rooted usage:

iorg organize -c OneDrive --app AIA --tenant nomsa \
  --source /Users/Shared/ServerData/GDriveData/TestAfricaStage/Images/NOMSA.net/ \
  --pathconv 3 --nameconv 3

The command resolves -c through Os.Config.Cloud. --app AIA --tenant nomsa resolves <configured cloud>/AIA/Image/nomsa. Use -r, --root instead when the argument is already the exact ImageTree root; an explicit -t, --tenant is appended, or, when omitted, the final root segment remains the inferred tenant. --subscriber remains a compatibility alias for --tenant.

When -c/--cloud is omitted, iorg selects the first provider in the configured Os.Config.DefaultCloudOrder that also has a non-empty Cloud path. The configured order is preserved in help, and providers outside that filtered list are rejected. An explicit absolute root (or .) remains local when no cloud option was explicitly supplied.

To inspect the resolved values without copying files, add -h:

iorg organize --help

The help screen shows the resolved source, destination ImageRoot, subscriber, supported image extensions, detected source image count, and option selections. With -d, it also prints debug diagnostics such as CanRun, RunBlocker, source/target existence checks, and resolved full paths. Remove -h to execute the copies.

Without -d, each copied image is printed as a compact file name:

nomsa-concert-11.jpg
SD-State-Sony-149.jpg

With -d, each copied image is printed with full destination and source paths:

/dest/nomsa/NomsaCon/NomsaConce/NomsaConcert_11.jpg  /source/nomsa-concert-11.jpg

The final summary reports how many detected source images were copied and groups any files that were not copied by failure reason.

To inspect every file owned by an exact ItemId without deleting it, use clean:

iorg clean NomsaConcert -c OneDrive --root LiveAfricaStageImage/nomsa

This selects the complete exact-ItemId family, including numbered sources, rendered derivatives, .puml, _config.puml, and .raid files. It does not select a bucket-sharing ItemId with a similar prefix. Item cleanup is a dry run unless --force is supplied:

iorg clean NomsaConcert -c OneDrive --root LiveAfricaStageImage/nomsa --force

To explicitly purge rendered derivatives throughout one subscriber tree while preserving source images and diagram artifacts, use the separate cache form:

iorg clean --cache -c OneDrive --root LiveAfricaStageImage/nomsa

--cache is itself the explicit bounded operation and does not take an ItemId.

Discover files without mutation:

iorg list 'WorkInPro*' -c OneDrive --app AIA --tenant Nomsa
iorg list '*.puml' -c OneDrive --root LiveAfricaStageImage --tenant Nomsa

Move an exact ItemId family, optionally renaming it and selecting its destination path convention:

iorg move AfricanBrisket -c OneDrive --app AIA --tenant Nomsa --pathconv 3
iorg move AfricanBrisket AfricanDinner -c OneDrive --root LiveAfricaStageImage --tenant Nomsa --pathconv 4

Useful options:

  • -h, --help: print help
  • -v, --version: print version
  • -l, --nologo: hide banner
  • -d, --debug: enable debug output
  • -c, --cloud: configured provider from Os.Config.DefaultCloudOrder; defaults to its first available entry
  • -r, --root: exact ImageTree root; alternative to --app
  • -a, --app: application root; iorg appends Image; requires a tenant
  • -t, --tenant: explicit tenant/subscriber below the ImageTree root
  • --subscriber: compatibility alias for --tenant
  • --source: source image directory for organize
  • --cache: explicitly delete rendered derivatives while preserving source and diagram files
  • --force: perform the otherwise dry-run exact-ItemId clean
  • -p, --pathconv: 1 CanonicalByName, 2 ItemIdTree3x3, 3 ItemIdTree8x2 (default), or 4 Flat
  • -n, --nameconv: 1 Legacy, 2 ItemTemplate, or 3 Structured (default)

Run iorg <command> --help for contextual options.

4.x legacy transition

The existing flat -s, -rm, -rmc/--rm-cache, positional subscriber, -p, and -n forms remain supported throughout 4.x and invoke the same handlers as command syntax. New scripts should use subcommands. The 5.x.x line will require the applicable named subcommand. The root option is not deprecated: -r and --root are both supported by the new command parser. The -p and -n convention aliases likewise remain available, scoped to organize.

Standalone Binaries

Tagged releases also publish self-contained iorg workflow artifacts for:

  • linux-x64
  • osx-arm64
  • osx-x64
  • win-x64

These binaries can be deployed without a separate .NET runtime installation.

Validation

  • dotnet test ImgSeeder.slnx --nologo -v minimal
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
4.3.1 0 9/13/2026
4.3.0 0 9/13/2026
4.2.10 75 9/10/2026
4.2.9 80 9/10/2026
4.2.8 84 9/10/2026
4.2.7 86 9/9/2026
4.2.6 105 9/3/2026
4.2.5 97 9/1/2026
4.2.4 105 8/27/2026
4.2.3 114 8/27/2026
4.2.2 108 8/21/2026
4.2.1 133 8/17/2026
4.2.0 118 8/16/2026
4.1.0 126 8/13/2026
4.0.1 118 8/11/2026
4.0.0 141 8/7/2026
3.13.1 135 8/3/2026
3.11.4 148 7/11/2026
3.11.3 140 6/28/2026
3.11.1 138 6/24/2026
Loading failed

4.3.1 coordinated RAIkeep release; ImgSeeder behavior is unchanged.