Skip to content

TrainKit v1.3.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 20:16
· 8 commits to master since this release
e6ce7d7

[1.3.0] - 2026-10-07

TrainKit 1.3.0 adds Claude and OpenAI captioning through your own API keys and improves batch safety and desktop reliability.

Added

  • API connections tab with masked key entry, session-only keys by default, optional OS-encrypted persistence, editable vision model IDs, removal, and an explicit connection test that sends no images.
  • Caption provider selection with unavailable providers disabled.
  • Anthropic Messages and OpenAI Responses image captioning with resized, metadata-free JPEGs, bounded responses, cancellable requests, and safe errors without automatic paid retries.

Changed

  • Local and cloud captioning reuse the same collision-safe batch loop, atomic output writes, and optional resumable manifests.
  • Cloud batches stop on provider failures, refusals, or incomplete output; dry runs and fully skipped or completed batches make no provider requests.
  • Updated Electron to 44.6.0, Electron Forge to 8, ESLint to 10, Vitest to 5, and Lucide to 1; refreshed both dependency lockfiles and raised the development Node.js minimum to 22.17.
  • Removed unused comparison-slider and import-lint dependencies. TypeScript stays on 5.9 to match the supported range of the ESLint parser.
  • Removed dry-run controls from the desktop panels and aligned the manifest checkbox with the collision policy selector.

Fixed

  • Failed model switches no longer retain a cleaned-up service in the model cache.
  • Queued cancellation prevents the runner from starting, and missed job events are recovered after reconnecting.
  • Caption model controls stay consistent during loading, unloading, and completed runs; duplicate submissions and cancellation errors are handled centrally.
  • Backend spawn failures no longer hang shutdown, and empty error responses produce useful messages.
  • New output directories and generated manifests resolve existing junctions; dangling folder links are rejected.
  • Unreadable remembered API keys can be removed without entering a replacement key.
  • Cloud captioning applies photo rotation and mirroring before removing metadata.
  • Cloud captioning distinguishes local file-save failures from provider errors.
  • Rename batches reject invalid images, restrict duplicate detection to supported images, and use deterministic tie-breakers for natural ordering.
  • Single-channel NCNN output is converted to RGB and invalid tiled overlap is rejected before processing.
  • Failed atomic text writes remove their temporary files, and damaged provider records do not discard another provider's remembered key.
  • Development setup preserves test tools and excludes backend environments from frontend file watching.
  • Setup and startup windows have small top-right minimize and quit buttons. Minimizing setup keeps the main window minimized when it opens; quitting stops setup.

Warning

This release is currently unsigned. Windows SmartScreen or antivirus software may display a warning or false-positive detection. Download only from this GitHub release and verify the ZIP against SHA256SUMS.txt before running it.

Download the Windows ZIP, extract the entire archive to a writable folder on the drive where you want TrainKit stored, then run TrainKit.exe. The ZIP is the standard Windows distribution; there is no installer.

The ZIP is accompanied by a SHA-256 checksum and GitHub build-provenance attestation.