← Back to PRs

#9177: feat(media): add parakeet-mlx CLI output support

by mac-110 open 2026-02-04 23:54 View on GitHub →
stale
## Summary Add native support for reading parakeet-mlx output files in `resolveCliOutput`. ## Problem Parakeet-mlx is a fast, local speech-to-text model (based on NVIDIA Parakeet) that runs on Apple Silicon via MLX. It writes transcripts to `--output-dir/filename.txt`, but OpenClaw's `resolveCliOutput` only supported whisper, whisper-cli, gemini, and sherpa-onnx-offline. Without this fix, users need a wrapper script that outputs to stdout instead. ## Solution Add `resolveParakeetOutputPath()` helper function that: - Looks for `--output-dir` argument (note: hyphen, not underscore like whisper) - Constructs the output path as `outputDir/mediaBasename.txt` - Returns null if output-format is not txt ## Config Example ```json { "tools": { "media": { "audio": { "models": [{ "type": "cli", "command": "parakeet-mlx", "args": ["{{MediaPath}}", "--output-format", "txt", "--output-dir", "{{OutputDir}}"] }] } } } } ``` ## Note Previous issue #7552 was incorrectly auto-closed as a duplicate of #7536 (Windows path bug), which is unrelated. This PR addresses the original feature request. <!-- greptile_comment --> <h2>Greptile Overview</h2> <h3>Greptile Summary</h3> This PR extends `resolveCliOutput` in `src/media-understanding/runner.ts` to support `parakeet-mlx` by resolving the transcript file path from CLI arguments (using `--output-dir`/`--output-format`) and reading `{{OutputDir}}/{{mediaBasename}}.txt` when present. The change fits the existing CLI-provider pattern already used for `whisper`/`whisper-cli`, where transcript output may be written to a temp output directory and then ingested back into the media understanding pipeline. <h3>Confidence Score: 5/5</h3> - This PR is safe to merge with minimal risk. - The change is small, localized to CLI output resolution, and follows the existing pattern used for other CLI transcribers (resolve output path then read file if present). No definite functional regressions were identified from the diff. - No files require special attention <!-- greptile_other_comments_section --> <sub>(4/5) You can add custom instructions or style guidelines for the agent [here](https://app.greptile.com/review/github)!</sub> <!-- /greptile_comment -->

Most Similar PRs