<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>AI Helpers — release feed</title>
  <subtitle>Recent releases across the AI Helpers suite (15 Python libraries + 5 Rust rewrites), newest first.</subtitle>
  <link href="https://harchaoui.org/warith/ai-helpers/releases.xml" rel="self" />
  <link href="https://harchaoui.org/warith/ai-helpers/" />
  <id>https://harchaoui.org/warith/ai-helpers/</id>
  <updated>2026-09-03T06:45:12+02:00</updated>
  <author><name>Warith Harchaoui</name></author>

  <entry>
    <title>audio-helper v2.1.5</title>
    <link href="https://github.com/warith-harchaoui/audio-helper/releases/tag/v2.1.5" />
    <id>tag:harchaoui.org,2026:ai-helpers/audio-helper/v2.1.5</id>
    <updated>2026-09-03T06:45:12+02:00</updated>
    <summary>get_audio_duration no longer raises a raw KeyError on headerless/ADTS streams — falls back to the container-level duration.</summary>
  </entry>
  <entry>
    <title>ann-router v0.1.9</title>
    <link href="https://github.com/warith-harchaoui/ann-router/releases/tag/v0.1.9" />
    <id>tag:harchaoui.org,2026:ai-helpers/ann-router/v0.1.9</id>
    <updated>2026-09-03T06:41:57+02:00</updated>
    <summary>do_build's .meta.json sidecar is now written atomically instead of a plain open()+json.dump.</summary>
  </entry>
  <entry>
    <title>elbow-helper v0.1.7</title>
    <link href="https://github.com/warith-harchaoui/elbow-helper/releases/tag/v0.1.7" />
    <id>tag:harchaoui.org,2026:ai-helpers/elbow-helper/v0.1.7</id>
    <updated>2026-09-03T06:35:57+02:00</updated>
    <summary>candidates.generate_candidates now logs failed KneeLocator grid points instead of silently swallowing them.</summary>
  </entry>
  <entry>
    <title>vocal-helper v2.0.5</title>
    <link href="https://github.com/warith-harchaoui/vocal-helper/releases/tag/v2.0.5" />
    <id>tag:harchaoui.org,2026:ai-helpers/vocal-helper/v2.0.5</id>
    <updated>2026-09-03T06:33:30+02:00</updated>
    <summary>Fixed a __version__ drift against pyproject.toml and added the version-consistency guard.</summary>
  </entry>
  <entry>
    <title>video-helper v2.4.1</title>
    <link href="https://github.com/warith-harchaoui/video-helper/releases/tag/v2.4.1" />
    <id>tag:harchaoui.org,2026:ai-helpers/video-helper/v2.4.1</id>
    <updated>2026-09-03T06:27:31+02:00</updated>
    <summary>Manifest sidecar now written atomically; hardware-encode requests now serialize across processes, not just threads.</summary>
  </entry>
  <entry>
    <title>podcast-helper v1.1.6</title>
    <link href="https://github.com/warith-harchaoui/podcast-helper/releases/tag/v1.1.6" />
    <id>tag:harchaoui.org,2026:ai-helpers/podcast-helper/v1.1.6</id>
    <updated>2026-09-03T06:27:05+02:00</updated>
    <summary>Fixed a path-traversal in POST /record's output_format field — now validated against a fixed codec whitelist.</summary>
  </entry>
  <entry>
    <title>os-helper v2.3.4</title>
    <link href="https://github.com/warith-harchaoui/os-helper/releases/tag/v2.3.4" />
    <id>tag:harchaoui.org,2026:ai-helpers/os-helper/v2.3.4</id>
    <updated>2026-09-03T06:24:05+02:00</updated>
    <summary>path_without_home no longer collapses a sibling directory that merely shares $HOME's characters as a prefix.</summary>
  </entry>
  <entry>
    <title>best-engine-ai-helper v1.4.3</title>
    <link href="https://github.com/warith-harchaoui/best-engine-ai-helper/releases/tag/v1.4.3" />
    <id>tag:harchaoui.org,2026:ai-helpers/best-engine-ai-helper/v1.4.3</id>
    <updated>2026-09-03T06:22:01+02:00</updated>
    <summary>_benchmark_score no longer treats a legitimately-recorded 0.0 benchmark the same as a missing one.</summary>
  </entry>
  <entry>
    <title>capture-helper v1.2.5</title>
    <link href="https://github.com/warith-harchaoui/capture-helper/releases/tag/v1.2.5" />
    <id>tag:harchaoui.org,2026:ai-helpers/capture-helper/v1.2.5</id>
    <updated>2026-09-03T06:10:46+02:00</updated>
    <summary>Fixed a path-traversal in POST /scene/save's name field — filenames are now whitelisted to alnum/-/_/space.</summary>
  </entry>
  <entry>
    <title>podcast-helper-rs 0.1.0</title>
    <link href="https://github.com/warith-harchaoui/podcast-helper-rs" />
    <id>tag:harchaoui.org,2026:ai-helpers/podcast-helper-rs/0.1.0</id>
    <updated>2026-09-01T05:20:49+02:00</updated>
    <summary>Rust rewrite: URL in, PCM out — local files, direct audio URLs, RSS/Atom feeds, with yt-dlp sources delegated to youtube-helper-rs.</summary>
  </entry>
  <entry>
    <title>audio-helper-rs 0.1.0</title>
    <link href="https://github.com/warith-harchaoui/audio-helper-rs" />
    <id>tag:harchaoui.org,2026:ai-helpers/audio-helper-rs/0.1.0</id>
    <updated>2026-08-31T18:03:25+02:00</updated>
    <summary>Rust rewrite: file-level audio utilities on ffmpeg/ffprobe — probe, convert, load-to-PCM, chunk, silence, concatenate, room tone, split.</summary>
  </entry>
  <entry>
    <title>capture-helper-rs 0.1.0</title>
    <link href="https://github.com/warith-harchaoui/capture-helper-rs" />
    <id>tag:harchaoui.org,2026:ai-helpers/capture-helper-rs/0.1.0</id>
    <updated>2026-08-31T14:05:51+02:00</updated>
    <summary>Rust rewrite: the microphone half of Capture Helper — device enumeration and a streaming PCM iterator on cpal, no ffmpeg needed.</summary>
  </entry>
  <entry>
    <title>youtube-helper-rs 0.1.0</title>
    <link href="https://github.com/warith-harchaoui/youtube-helper-rs" />
    <id>tag:harchaoui.org,2026:ai-helpers/youtube-helper-rs/0.1.0</id>
    <updated>2026-08-31T14:05:48+02:00</updated>
    <summary>Rust rewrite: a typed wrapper around the yt-dlp binary — fetch_metadata and download_audio.</summary>
  </entry>
  <entry>
    <title>ai-helpers-kitchen v0.8.0</title>
    <link href="https://github.com/warith-harchaoui/ai-helpers-kitchen/releases/tag/v0.8.0" />
    <id>tag:harchaoui.org,2026:ai-helpers/ai-helpers-kitchen/v0.8.0</id>
    <updated>2026-08-25T09:42:54+02:00</updated>
    <summary>Meta-package pin refresh across the whole suite.</summary>
  </entry>
  <entry>
    <title>best-engine-ai-helper v1.4.2</title>
    <link href="https://github.com/warith-harchaoui/best-engine-ai-helper/releases/tag/v1.4.2" />
    <id>tag:harchaoui.org,2026:ai-helpers/best-engine-ai-helper/v1.4.2</id>
    <updated>2026-08-25T08:50:47+02:00</updated>
    <summary>default_backend() no longer wrongly picks vLLM on Windows/macOS (no native runtime there).</summary>
  </entry>
  <entry>
    <title>vocal-helper v2.0.4</title>
    <link href="https://github.com/warith-harchaoui/vocal-helper/releases/tag/v2.0.4" />
    <id>tag:harchaoui.org,2026:ai-helpers/vocal-helper/v2.0.4</id>
    <updated>2026-08-25T06:10:01+02:00</updated>
    <summary>Fixed a VAD lead-pad reseed bug after a closed speech run; whisper.cpp failures are now logged instead of silently swallowed.</summary>
  </entry>
  <entry>
    <title>podcast-helper v1.1.5</title>
    <link href="https://github.com/warith-harchaoui/podcast-helper/releases/tag/v1.1.5" />
    <id>tag:harchaoui.org,2026:ai-helpers/podcast-helper/v1.1.5</id>
    <updated>2026-08-25T06:02:21+02:00</updated>
    <summary>Fixed to_mono=False on a mono source staying 1-D instead of (n, 1).</summary>
  </entry>
  <entry>
    <title>standpoint v0.8.5</title>
    <link href="https://github.com/warith-harchaoui/standpoint/releases/tag/v0.8.5" />
    <id>tag:harchaoui.org,2026:ai-helpers/standpoint/v0.8.5</id>
    <updated>2026-08-25T05:17:52+02:00</updated>
    <summary>Fixed non-atomic writes in render_figures/export_all.</summary>
  </entry>
  <entry>
    <title>md2star v3.1.3</title>
    <link href="https://github.com/warith-harchaoui/md2star/releases/tag/v3.1.3" />
    <id>tag:harchaoui.org,2026:ai-helpers/md2star/v3.1.3</id>
    <updated>2026-08-25T04:27:49+02:00</updated>
    <summary>Fixed a Lua filter byte-vs-codepoint capitalization bug on non-Latin scripts.</summary>
  </entry>
  <entry>
    <title>youtube-helper v2.3.0</title>
    <link href="https://github.com/warith-harchaoui/youtube-helper/releases/tag/v2.3.0" />
    <id>tag:harchaoui.org,2026:ai-helpers/youtube-helper/v2.3.0</id>
    <updated>2026-08-25T00:01:37+02:00</updated>
    <summary>streaming.py now routes through the same yt-dlp resilience retry chain as the rest of the package.</summary>
  </entry>
  <entry>
    <title>elbow-helper v0.1.6</title>
    <link href="https://github.com/warith-harchaoui/elbow-helper/releases/tag/v0.1.6" />
    <id>tag:harchaoui.org,2026:ai-helpers/elbow-helper/v0.1.6</id>
    <updated>2026-08-24T23:21:55+02:00</updated>
    <summary>Docs and CI cleanup folded into a real 0.1.6 release.</summary>
  </entry>
  <entry>
    <title>ann-router v0.1.8</title>
    <link href="https://github.com/warith-harchaoui/ann-router/releases/tag/v0.1.8" />
    <id>tag:harchaoui.org,2026:ai-helpers/ann-router/v0.1.8</id>
    <updated>2026-08-24T22:50:44+02:00</updated>
    <summary>Fixed a turbovec id collision: add() after load() could collide with ids already on disk.</summary>
  </entry>
  <entry>
    <title>capture-helper v1.2.4</title>
    <link href="https://github.com/warith-harchaoui/capture-helper/releases/tag/v1.2.4" />
    <id>tag:harchaoui.org,2026:ai-helpers/capture-helper/v1.2.4</id>
    <updated>2026-08-24T22:36:11+02:00</updated>
    <summary>save_scene now writes its JSON atomically.</summary>
  </entry>
  <entry>
    <title>video-helper v2.4.0</title>
    <link href="https://github.com/warith-harchaoui/video-helper/releases/tag/v2.4.0" />
    <id>tag:harchaoui.org,2026:ai-helpers/video-helper/v2.4.0</id>
    <updated>2026-08-24T22:27:23+02:00</updated>
    <summary>Hardware-encode fallback bug fixed; VideoToolbox support documented.</summary>
  </entry>
  <entry>
    <title>os-helper v2.3.3</title>
    <link href="https://github.com/warith-harchaoui/os-helper/releases/tag/v2.3.3" />
    <id>tag:harchaoui.org,2026:ai-helpers/os-helper/v2.3.3</id>
    <updated>2026-08-24T22:11:38+02:00</updated>
    <summary>hashfolder/folder_description are now deterministic regardless of directory-entry order.</summary>
  </entry>
  <entry>
    <title>wallet-helper v1.1.4</title>
    <link href="https://github.com/warith-harchaoui/wallet-helper/releases/tag/v1.1.4" />
    <id>tag:harchaoui.org,2026:ai-helpers/wallet-helper/v1.1.4</id>
    <updated>2026-08-24T22:01:13+02:00</updated>
    <summary>cli_argparse's clear now asks for confirmation before a full ledger wipe, matching the click twin.</summary>
  </entry>
  <entry>
    <title>audio-helper v2.1.4</title>
    <link href="https://github.com/warith-harchaoui/audio-helper/releases/tag/v2.1.4" />
    <id>tag:harchaoui.org,2026:ai-helpers/audio-helper/v2.1.4</id>
    <updated>2026-08-21T05:47:44+02:00</updated>
    <summary>split_audio_regularly no longer silently drops sub-1-second remainder files.</summary>
  </entry>
  <entry>
    <title>sftp-helper v3.2.3</title>
    <link href="https://github.com/warith-harchaoui/sftp-helper/releases/tag/v3.2.3" />
    <id>tag:harchaoui.org,2026:ai-helpers/sftp-helper/v3.2.3</id>
    <updated>2026-08-21T05:44:30+02:00</updated>
    <summary>Fixed a spooled temp-file leak on failed API upload/download.</summary>
  </entry>
  <entry>
    <title>bucket-helper v1.1.2</title>
    <link href="https://github.com/warith-harchaoui/bucket-helper/releases/tag/v1.1.2" />
    <id>tag:harchaoui.org,2026:ai-helpers/bucket-helper/v1.1.2</id>
    <updated>2026-08-17T09:46:56+02:00</updated>
    <summary>Documentation and packaging release.</summary>
  </entry>
  <entry>
    <title>md2star-rs 0.4.0</title>
    <link href="https://github.com/warith-harchaoui/md2star-rs" />
    <id>tag:harchaoui.org,2026:ai-helpers/md2star-rs/0.4.0</id>
    <updated>2026-07-22T06:38:32+02:00</updated>
    <summary>Rust spin-off: added md2pptx, a Markdown → PowerPoint backend.</summary>
  </entry>

</feed>
