
Security News
Re-Enabled GitHub Actions Expose Thousands of Repositories to Mini Shai-Hulud
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.
Local-first CLI that turns meeting recordings into transcripts, summaries, action items, and decisions
Turn meeting recordings into transcripts, summaries, action items, and decisions — entirely on your machine. No cloud, no subscriptions, no data leaving your network.

| RAM | Recommended model |
|---|---|
| 8 GB | qwen2.5:3b |
| 16 GB | qwen2.5:7b |
| 32 GB+ | qwen2.5:14b (default) |
Apple Silicon (M1/M2/M3/M4) and recent x86 CPUs with AVX2 are recommended. Whisper transcription is CPU/Metal-accelerated; LLM inference uses Ollama's defaults.
Install the required tools:
Start Ollama and pull a model:
ollama serve
ollama pull qwen2.5:14b
npm install -g samuraizer
samuraizer init
samuraizer process meeting.m4a
On a 30-minute recording this typically takes 3–5 minutes on Apple Silicon and 8–15 minutes on x86 CPUs, depending on the model.
samuraizer process meeting.m4a # full pipeline
samuraizer process meeting.m4a --verbose # show detailed metadata
samuraizer process meeting.m4a --force # recompute all steps
samuraizer process meeting.m4a --verbose --force
samuraizer normalize input.m4a output.wav # normalize audio for Whisper
samuraizer summarize transcript.txt # generate summary from transcript
samuraizer actions transcript.txt # extract action items
samuraizer decisions transcript.txt # extract decisions
samuraizer init # create default config file
samuraizer config path # show config file location
samuraizer config get # print resolved config as JSON
samuraizer --help
samuraizer --version
Samuraizer uses a global JSON config file.
~/Library/Application Support/samuraizer/config.json~/.config/samuraizer/config.json%AppData%/samuraizer/config.json{
"model": "qwen2.5:14b",
"ollamaBaseUrl": "http://127.0.0.1:11434",
"whisperCommand": "whisper-cli",
"ffmpegCommand": "ffmpeg",
"ffprobeCommand": "ffprobe"
}
After processing, you'll find structured files in output/<recording-name>/:
output/meeting/
transcript.txt
summary.txt
action-items.json
decisions.json
report.txt
summary.txt
Team standup focused on Q2 roadmap and infrastructure migration.
The frontend team will start the Next.js upgrade next week...
action-items.json
[
{
"owner": "Alice",
"task": "Set up staging environment for migration testing",
"deadline": "by end of week"
},
{
"owner": "Bob",
"task": "Review the auth refactor PR",
"deadline": null
}
]
decisions.json
[
{
"decision": "Adopt Next.js 15 for the new dashboard",
"rationale": "Better SSR and built-in App Router support"
}
]
Samuraizer skips steps whose output files already exist. If processing crashes or you stop it mid-pipeline, just re-run the same command — completed steps are reused.
Use --force to recompute everything from scratch.
ollama serve
Update ollamaBaseUrl in your config:
{
"ollamaBaseUrl": "http://127.0.0.1:11500"
}
Switch to a smaller model:
ollama pull qwen2.5:7b
Then update model in your config to qwen2.5:7b (or qwen2.5:3b on machines with 8 GB RAM).
Make sure the model in your config is actually pulled:
ollama list
ollama pull <model-name>
whisper-cli not in PATHBuild whisper.cpp and ensure the binary is on your PATH, or set the absolute path in whisperCommand in your config.
ffmpeg not foundmacOS:
brew install ffmpeg
Linux:
# Debian / Ubuntu
sudo apt install ffmpeg
# Arch / CachyOS
sudo pacman -S ffmpeg
# Fedora
sudo dnf install ffmpeg
Windows:
winget install Gyan.FFmpeg
See CHANGELOG.md for release history.
MIT — see LICENSE.
Available on GitHub: github.com/UladzKha/samuraizer-cli
FAQs
Local-first CLI that turns meeting recordings into transcripts, summaries, action items, and decisions
The npm package samuraizer receives a total of 0 weekly downloads. As such, samuraizer popularity was classified as not popular.
We found that samuraizer demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.

Research
/Security News
The compromise affects MemTensor's MemOS, an open source memory framework for large language models (LLMs) and AI agents. Both npm package @memtensor/memos-cloud-openclaw-plugin and the PyPI package MemoryOS are compromised. They drop cross-platform Go binaries that exfiltrate developer secrets.