Repository navigation
Releases: drumst0ck/ferrocast
Releases · drumst0ck/ferrocast
Release list
Ferrocast 0.1.2
Added
- Translating effect: while a translation runs, the selected text glows so you can see something is happening. In Safari and Chromium pages the text itself gets an animated multicolour glow and is replaced in place (the page is restored if the translation fails); in other apps that expose the selection a glowing outline surrounds it; otherwise a small “Translating…” pill appears where you dropped. It is static with Reduce Motion and ends on every outcome (a 60 s safety timeout included). Settings → Translate → Translating effect turns it off.
Fixed
- Updates: turning on "Check for updates automatically" after launch now starts checking without a restart; a second install while one is running is refused instead of racing; and the running app's real path is used to tell Homebrew, downloaded and development copies apart, so a /Applications link into Homebrew is updated with
brew upgradeand never replaced. - Translate: a selection that is a single word, a heading or a question (for example "FRENCH" or "What is 2+2?") is now translated instead of answered or refused. The text is sent delimited and with a translator system prompt of its own; the chat prompt is unchanged. Small models can still follow an instruction written inside the selected text.
Ferrocast 0.1.1
Added
- Settings redesign: adaptive rows that fit more settings per screen, one consistent field style, a sidebar with icons, groups, Cmd+1–7 and arrow-key navigation, a breadcrumb header, search across every setting (Cmd+F, opens the setting and highlights it), dimmed dependent rows, status chips, inline validation, a per-tab Reset with Undo, empty states for Snippets and Scripts, higher text contrast (WCAG AA), 28 pt hit targets and a visible keyboard focus ring.
- Releases and in-app updates:
scripts/release.sh X.Y.Ztags a version and a GitHub Actions workflow publishes the DMG, an update ZIP and checksums as a GitHub Release (ad-hoc signed; Developer ID signing and notarization switch on with repository secrets) and opens a PR bumping the Homebrew formula. The app checks GitHub once a day for a new stable release (prereleases are ignored), shows the notes and lets you install, postpone or skip, or installs automatically. Settings → General → Updates turns the check off, picks the install mode and has Check now; About and the tray menu also check. Homebrew installs runbrew upgradeinstead of replacing themselves; development builds only check. - Translate wheel: drag selected text and tap the translate key (Command by default, changeable in Settings → Translate; not Shift, which extends the selection) to open a ring of languages; release over one to translate. By default (Auto) the translation replaces the selection where the app allows it (text fields through Accessibility; Safari and Chromium browsers on ordinary pages through JavaScript, which needs “Allow JavaScript from Apple Events”) and otherwise opens in a Ferrocast window (also copied); Settings → Translate can force Window, Paste Cmd-V or Copy only. It runs through the AI providers of Ask AI (OpenAI-compatible, Anthropic, ChatGPT and Claude Code subscriptions); a dedicated Settings → Translate tab holds every translation option, including which provider and which model translate (Same as chat by default). Languages (up to 12) are set there too. The text is never written to the log.
- File tools: drop files on the launcher, press ⌘T on a file result or run Convert Files to convert images, audio, video, documents, spreadsheets, subtitles and folders. Built-in macOS tools come first (sips, afconvert, avconvert, textutil, ditto); ffmpeg, LibreOffice and cwebp are optional, and a missing one shows its install command. Output goes next to the original and never overwrites it.
- Image tools: compress, resize, crop to an aspect ratio, remove metadata (lossless for JPEG and PNG), combine into one PDF, rotate, flip, square on a white or black background, collage, one-step edits (black & white, brighter, darker, more contrast), redact faces or text on-device with Vision, and annotate (own canvas for one image, Preview for several).
- File actions on file results: Copy File (paste it in Finder), Copy Path, Move to… (never overwrites), Open in iTerm or Terminal, AirDrop, Float on Shelf, and Zip (each selected file or folder gets its own ZIP next to it, never overwriting; also in ⌘K as Compress to ZIP). Zip is an addition, not one of the six actions of the app this project is measured against; the ZIP is named after the item without its extension, so photo.png becomes photo.zip.
- Drop wheel fix: files dragged from Finder arrive as file reference URLs (file:///.file/id=…); they are now resolved to the real path. Before, a dragged PNG looked like a file without an extension, so the wheel offered only ZIP or Open tools and ZIP failed with a path error.
- Drop wheel: while dragging files, tap Shift for a ring of conversions or Control for file actions; release over a segment to run it. Keys and on/off in Settings → General. No Accessibility permission needed.
- Tools wheel (Command) with arrow-key, Enter and Escape control; tapping Shift, Command or Control switches an open wheel.
- Typed image tools:
collage row 1600 gap 16 radius 12 bg 000000(grid, row, column, featured),frame blur 40 pad 80 shadow 30(colour or blurred background, padding, corners, shadow),edit brightness 20 contrast 10 saturation -30 warmth 15 clarity 40 sharpen 30 grain 20 denoise 30 dehaze 50,redact faces,redact text blur 25,redact 10,10 200x100 300,40 80x80 color ff0000. Live-preview and canvas editors exist for photo edits, crop and annotation (see below); the rest is typed only.frame image /path/bg.jpguses another picture as the background. - Typed audio, video and PDF tools:
mute,speed 1.5x,frame 1:23,crop 640x360 at 100,50,redact 10,10 200x100 0:05-0:09 blur,normalize -14,mono,stereo,silence,bleep 0:05-0:07,visualizer square image /path/cover.jpg,pages 3,1,2r, and Join for several clips (silent clips get generated silence). Normalize is single pass and the result toast shows the measured loudness before and after (for example-31.0 → -16.0 LUFS, measured with ffmpeg's ebur128); there is no waveform or compare view, and WMV fails on mute and crop. - New look for the drag wheel (halo ring): one accent per wheel (orange convert, blue tools, green actions), a gradient sector with an edge glow, a centre showing the wheel, the file count and kind, every segment shows its name under the icon (from nine segments the text is smaller and long names are cut with an ellipsis; the hub shows the full name of the hovered one). The actions wheel has the six file actions plus Zip and the convert wheel shows every output, dimming the ones whose tool is not installed. Not animated yet.
- Tools per format: a table of 26 tools decides what the Tools wheel and the Convert view offer for each file type; tools without a window use presets or typed commands.
- Choose order: merging PDFs, audio or videos, and building a PDF from pictures, now has a window to order the files (⌘↑/⌘↓). Rows can also be dragged to reorder.
- Split video and audio: a window with cut markers (M adds one, Backspace removes the last) or equal parts writes every clip into one new folder.
- Compress: images by size, percentage or preset (with an optional resize), audio and video through ffmpeg with computed bitrates, and PDF through optional Ghostscript with presets only. The size estimate is rough. PDF needs Ghostscript; there is no native route.
- Audio windows: Trim Audio shows the waveform with exact start and end boxes and a Trim silence button; Normalize Audio sets the target loudness, range and true peak after measuring the file; Audio Channels switches mono or stereo and sets left and right volume in dB; Bleep Audio lists several ranges over the waveform and replaces each with a 1 kHz tone (up to 32, overlapping ranges are merged); Audio to Video makes an MP4 from one audio file with the waveform or a chosen still image, in landscape, portrait or square. Bleep and Audio to Video are offered for one audio file only. The silence threshold is per sample.
- Website: a /files page with an interactive wheel, a filterable explorer of all 275 conversions and the tool list, generated from the same data the app uses.
- Edit metadata: one window for audio, video, GIF and PDF, grouped by file, track and chapter, with Remove all. Chapters are read-only, a GIF can only be stripped, and Remove all leaves some container tags. Images keep their typed commands.
- Fixes found by the new event tests: Shift+R in the PDF organizer turned the page the wrong way, and the first Escape in a number box cancelled the edit and also closed the window.
- Extract archives: zip, tar, tar.gz/tgz and gz (and rar when unrar is installed) extract into a new folder next to the archive, never into an existing one, after a check that refuses archives with absolute or '..' entry names. Symlink entries are left to the system tools.
- Editors in the Convert view: with one video, image or PDF in Convert Files, an Editors section opens the trim, crop, speed, snapshot and redact video windows, the image editors and the PDF organizer (before, they were only offered on file search results).
- Convert Finder Selection: a command (give it a hotkey in Settings) that reads what is selected in Finder and opens the conversion wheel for it. It does not intercept Return, so Finder's rename keeps working unless you turn on the Enter on Finder selection setting. The Finder read needs Automation permission.
- Enter on Finder selection: opt-in setting (Settings, General; off by default) that opens the Convert wheel when you press Return on selected files in Finder instead of renaming; needs Accessibility. The Convert Finder Selection command also works. #files (docs: /docs/files/drag-wheel/)
- Video redaction window with several areas: Redact Video… on a video lists the areas; each has its own draggable rectangle, start and end seconds, and solid or blur; a Reference frame slider (also in Crop Video) picks which frame is shown; ↵ writes the copy and never overwrites. The preview only marks the areas.
- Video snapshot viewer: ⇧⌘S selects a frame using the timeline or frame/second stepping; ↵ saves a full-resolution PNG through the existing snapshot tool and keeps the viewer open.
- Video speed window: ⇧⌘L on a video result offers a 0.25–4× slider and presets, with the calculated output duration; ↵ runs the existing pitch-preserving speed tool. Requires ffmpeg. This window does not play the video.
- Video crop window: ⇧⌘J on a video result shows a real frame with the draggable crop rectangle, aspect presets and exact width and height; ↵ writes the cropped copy and never overwrites. Needs ffmpeg. The reference frame is fixed at 10% of the duration.
- Video trim viewer: ⇧⌘V on a video result shows the frame at the cursor with a timeline, start and end markers, and steps by frame or second; ↵ writes an exact, frame-accurate cut (re-encoded) and never overwrites. Needs ffmpeg.
- Collage editor: with two or mo...
Ferrocast 0.1.1-rc.1
Added
- Settings redesign: adaptive rows that fit more settings per screen, one consistent field style, a sidebar with icons, groups, Cmd+1–7 and arrow-key navigation, a breadcrumb header, search across every setting (Cmd+F, opens the setting and highlights it), dimmed dependent rows, status chips, inline validation, a per-tab Reset with Undo, empty states for Snippets and Scripts, higher text contrast (WCAG AA), 28 pt hit targets and a visible keyboard focus ring.
- Releases and in-app updates:
scripts/release.sh X.Y.Ztags a version and a GitHub Actions workflow publishes the DMG, an update ZIP and checksums as a GitHub Release (ad-hoc signed; Developer ID signing and notarization switch on with repository secrets) and opens a PR bumping the Homebrew formula. The app checks GitHub once a day for a new stable release (prereleases are ignored), shows the notes and lets you install, postpone or skip, or installs automatically. Settings → General → Updates turns the check off, picks the install mode and has Check now; About and the tray menu also check. Homebrew installs runbrew upgradeinstead of replacing themselves; development builds only check. - Translate wheel: drag selected text and tap the translate key (Command by default, changeable in Settings → Translate; not Shift, which extends the selection) to open a ring of languages; release over one to translate. By default (Auto) the translation replaces the selection where the app allows it (text fields through Accessibility; Safari and Chromium browsers on ordinary pages through JavaScript, which needs “Allow JavaScript from Apple Events”) and otherwise opens in a Ferrocast window (also copied); Settings → Translate can force Window, Paste Cmd-V or Copy only. It runs through the AI providers of Ask AI (OpenAI-compatible, Anthropic, ChatGPT and Claude Code subscriptions); a dedicated Settings → Translate tab holds every translation option, including which provider and which model translate (Same as chat by default). Languages (up to 12) are set there too. The text is never written to the log.
- File tools: drop files on the launcher, press ⌘T on a file result or run Convert Files to convert images, audio, video, documents, spreadsheets, subtitles and folders. Built-in macOS tools come first (sips, afconvert, avconvert, textutil, ditto); ffmpeg, LibreOffice and cwebp are optional, and a missing one shows its install command. Output goes next to the original and never overwrites it.
- Image tools: compress, resize, crop to an aspect ratio, remove metadata (lossless for JPEG and PNG), combine into one PDF, rotate, flip, square on a white or black background, collage, one-step edits (black & white, brighter, darker, more contrast), redact faces or text on-device with Vision, and annotate (own canvas for one image, Preview for several).
- File actions on file results: Copy File (paste it in Finder), Copy Path, Move to… (never overwrites), Open in iTerm or Terminal, AirDrop, Float on Shelf, and Zip (each selected file or folder gets its own ZIP next to it, never overwriting; also in ⌘K as Compress to ZIP). Zip is an addition, not one of the six actions of the app this project is measured against; the ZIP is named after the item without its extension, so photo.png becomes photo.zip.
- Drop wheel fix: files dragged from Finder arrive as file reference URLs (file:///.file/id=…); they are now resolved to the real path. Before, a dragged PNG looked like a file without an extension, so the wheel offered only ZIP or Open tools and ZIP failed with a path error.
- Drop wheel: while dragging files, tap Shift for a ring of conversions or Control for file actions; release over a segment to run it. Keys and on/off in Settings → General. No Accessibility permission needed.
- Tools wheel (Command) with arrow-key, Enter and Escape control; tapping Shift, Command or Control switches an open wheel.
- Typed image tools:
collage row 1600 gap 16 radius 12 bg 000000(grid, row, column, featured),frame blur 40 pad 80 shadow 30(colour or blurred background, padding, corners, shadow),edit brightness 20 contrast 10 saturation -30 warmth 15 clarity 40 sharpen 30 grain 20 denoise 30 dehaze 50,redact faces,redact text blur 25,redact 10,10 200x100 300,40 80x80 color ff0000. Live-preview and canvas editors exist for photo edits, crop and annotation (see below); the rest is typed only.frame image /path/bg.jpguses another picture as the background. - Typed audio, video and PDF tools:
mute,speed 1.5x,frame 1:23,crop 640x360 at 100,50,redact 10,10 200x100 0:05-0:09 blur,normalize -14,mono,stereo,silence,bleep 0:05-0:07,visualizer square image /path/cover.jpg,pages 3,1,2r, and Join for several clips (silent clips get generated silence). Normalize is single pass and the result toast shows the measured loudness before and after (for example-31.0 → -16.0 LUFS, measured with ffmpeg's ebur128); there is no waveform or compare view, and WMV fails on mute and crop. - New look for the drag wheel (halo ring): one accent per wheel (orange convert, blue tools, green actions), a gradient sector with an edge glow, a centre showing the wheel, the file count and kind, every segment shows its name under the icon (from nine segments the text is smaller and long names are cut with an ellipsis; the hub shows the full name of the hovered one). The actions wheel has the six file actions plus Zip and the convert wheel shows every output, dimming the ones whose tool is not installed. Not animated yet.
- Tools per format: a table of 26 tools decides what the Tools wheel and the Convert view offer for each file type; tools without a window use presets or typed commands.
- Choose order: merging PDFs, audio or videos, and building a PDF from pictures, now has a window to order the files (⌘↑/⌘↓). Rows can also be dragged to reorder.
- Split video and audio: a window with cut markers (M adds one, Backspace removes the last) or equal parts writes every clip into one new folder.
- Compress: images by size, percentage or preset (with an optional resize), audio and video through ffmpeg with computed bitrates, and PDF through optional Ghostscript with presets only. The size estimate is rough. PDF needs Ghostscript; there is no native route.
- Audio windows: Trim Audio shows the waveform with exact start and end boxes and a Trim silence button; Normalize Audio sets the target loudness, range and true peak after measuring the file; Audio Channels switches mono or stereo and sets left and right volume in dB; Bleep Audio lists several ranges over the waveform and replaces each with a 1 kHz tone (up to 32, overlapping ranges are merged); Audio to Video makes an MP4 from one audio file with the waveform or a chosen still image, in landscape, portrait or square. Bleep and Audio to Video are offered for one audio file only. The silence threshold is per sample.
- Website: a /files page with an interactive wheel, a filterable explorer of all 275 conversions and the tool list, generated from the same data the app uses.
- Edit metadata: one window for audio, video, GIF and PDF, grouped by file, track and chapter, with Remove all. Chapters are read-only, a GIF can only be stripped, and Remove all leaves some container tags. Images keep their typed commands.
- Fixes found by the new event tests: Shift+R in the PDF organizer turned the page the wrong way, and the first Escape in a number box cancelled the edit and also closed the window.
- Extract archives: zip, tar, tar.gz/tgz and gz (and rar when unrar is installed) extract into a new folder next to the archive, never into an existing one, after a check that refuses archives with absolute or '..' entry names. Symlink entries are left to the system tools.
- Editors in the Convert view: with one video, image or PDF in Convert Files, an Editors section opens the trim, crop, speed, snapshot and redact video windows, the image editors and the PDF organizer (before, they were only offered on file search results).
- Convert Finder Selection: a command (give it a hotkey in Settings) that reads what is selected in Finder and opens the conversion wheel for it. It does not intercept Return, so Finder's rename keeps working unless you turn on the Enter on Finder selection setting. The Finder read needs Automation permission.
- Enter on Finder selection: opt-in setting (Settings, General; off by default) that opens the Convert wheel when you press Return on selected files in Finder instead of renaming; needs Accessibility. The Convert Finder Selection command also works. #files (docs: /docs/files/drag-wheel/)
- Video redaction window with several areas: Redact Video… on a video lists the areas; each has its own draggable rectangle, start and end seconds, and solid or blur; a Reference frame slider (also in Crop Video) picks which frame is shown; ↵ writes the copy and never overwrites. The preview only marks the areas.
- Video snapshot viewer: ⇧⌘S selects a frame using the timeline or frame/second stepping; ↵ saves a full-resolution PNG through the existing snapshot tool and keeps the viewer open.
- Video speed window: ⇧⌘L on a video result offers a 0.25–4× slider and presets, with the calculated output duration; ↵ runs the existing pitch-preserving speed tool. Requires ffmpeg. This window does not play the video.
- Video crop window: ⇧⌘J on a video result shows a real frame with the draggable crop rectangle, aspect presets and exact width and height; ↵ writes the cropped copy and never overwrites. Needs ffmpeg. The reference frame is fixed at 10% of the duration.
- Video trim viewer: ⇧⌘V on a video result shows the frame at the cursor with a timeline, start and end markers, and steps by frame or second; ↵ writes an exact, frame-accurate cut (re-encoded) and never overwrites. Needs ffmpeg.
- Collage editor: with two or mo...