Skip to content

Releases: JSLEEKR/Muji

v0.5.0 — Security Fixes & Pipeline Integration

28 Mar 12:02

Choose a tag to compare

What's New

Security Fixes

  • Sanitized TTS voice parameter to prevent shell injection (espeak, system, coqui engines)
  • PID-based mpv kill in reset.js (no longer kills all system mpv processes)

Improvements

  • Replaced CPU busy-wait with Atomics.wait in BGM lock acquisition
  • Removed no-op on-file-write hook (reduces unnecessary process spawns)
  • Synced README Event Map with actual config messages
  • Added MIT LICENSE file
  • Added ROUND_LOG for pipeline integration

Tests

  • 65 tests, all passing
  • 4 cycles of adversarial evaluation (14 bugs found and fixed)

Full Changelog

See CHANGELOG.md for details.

v0.4.0 — ElevenLabs Voices, Wellness Alerts & BGM Singleton

24 Mar 13:44

Choose a tag to compare

What's New

ElevenLabs Pre-recorded Voices

  • 39 voice files (en/ko/ja) generated with ElevenLabs — works offline, no TTS needed
  • Pre-recorded files play first, falls back to edge-tts if not found
  • Custom voice generation tool: scripts/tools/generate-voices.js

Dynamic Project Messages

  • Session start/end messages include project name (e.g., "git-Muji 프로젝트, 시작할게.")
  • Uses edge-tts (free) for real-time synthesis
  • Toggle via notifications.dynamic_project_name config

Wellness Alerts

  • Hourly chime: random reminder every hour ("벌써 한 시간 지났어. 잘 되고 있어?")
  • Idle detection: care messages after 30min of no activity ("잠깐 산책하고 와.")
  • Integrated into pomodoro daemon, also runs standalone: node scripts/core/pomodoro.js wellness

BGM Singleton Fix

  • PID file-based global lock prevents duplicate music playback across multiple Claude Code windows

Custom Voice Generation

ELEVENLABS_API_KEY=sk_xxx node scripts/tools/generate-voices.js
ELEVENLABS_API_KEY=sk_xxx node scripts/tools/generate-voices.js --config config/my-voices.yaml
ELEVENLABS_API_KEY=sk_xxx node scripts/tools/generate-voices.js --only idle_01,idle_02 --lang ko --force

See config/custom-voices.example.yaml for template.