Commit Graph

  • 6e1c32f22c fix: add pythonpath to pytest config for CI plugin imports master user 2026-02-24 16:57:00 +01:00
  • f470d6d958 fix: lint errors in test_musicbrainz (unused import, line length) user 2026-02-24 16:40:43 +01:00
  • 28f4c63e99 fix: delegate !similar playback to music bot, not calling bot user 2026-02-24 10:39:38 +01:00
  • dd4c6b95b7 feat: rework !similar to build and play discovery playlists user 2026-02-23 23:56:51 +01:00
  • b658053711 docs: describe 3-level help paste hierarchy user 2026-02-23 23:22:49 +01:00
  • 20c1d738be fix: 3-level hierarchy in help paste output user 2026-02-23 23:21:10 +01:00
  • ecfa7cea39 fix: indent docstring body in help paste output user 2026-02-23 23:12:10 +01:00
  • ef18915807 docs: update help command docs for FlaskPaste detail pages user 2026-02-23 23:04:36 +01:00
  • 69976196cd feat: paste detailed help via FlaskPaste for !help command user 2026-02-23 22:51:55 +01:00
  • c851e82990 fix: let extra bots see peer music state for !similar/!tags user 2026-02-23 22:17:29 +01:00
  • ad12843e75 docs: add music discovery, autoplay, and Mumble admin sections user 2026-02-23 22:04:03 +01:00
  • 62a4191200 docs: update TASKS.md with MusicBrainz fallback sprint user 2026-02-23 22:00:02 +01:00
  • 135a3791e2 feat: add MusicBrainz fallback to !similar and !tags commands user 2026-02-23 21:56:39 +01:00
  • a87f75adf1 feat: add Mumble server admin plugin (!mu) user 2026-02-23 21:44:38 +01:00
  • da9ed51c74 feat: auto-discover similar tracks during autoplay via Last.fm/MusicBrainz user 2026-02-23 21:19:41 +01:00
  • 56f6b9822f fix: revert pymumble protocol version patch that broke audio user 2026-02-23 18:51:53 +01:00
  • 09880624d5 fix: add bot name to stream_audio log lines user 2026-02-22 23:15:46 +01:00
  • 3c475107e3 refactor: simplify audition to single-bot playback user 2026-02-22 23:07:08 +01:00
  • b3006b02e2 feat: auto-register mumble bots on first connect user 2026-02-22 22:32:36 +01:00
  • 8b504364a9 fix: patch pymumble protocol version and harden mumble connections user 2026-02-22 22:28:57 +01:00
  • 40c6bf8c53 feat: playlist import, show, and shuffle-on-load user 2026-02-22 20:31:54 +01:00
  • a76d46b1de fix: graceful SIGTERM shutdown for IRC and Mumble bots user 2026-02-22 20:31:49 +01:00
  • 0ffddb8e41 fix: write cProfile to data/ volume for host access user 2026-02-22 20:02:14 +01:00
  • 62b01c76f7 fix: reduce cProfile dump interval to 10s user 2026-02-22 20:00:06 +01:00
  • e0db0ad567 fix: periodic cProfile dump every 60s (survives hard kills) user 2026-02-22 19:56:21 +01:00
  • c41035ceca test: add test_lastfm.py (50 cases) user 2026-02-22 19:52:16 +01:00
  • cd4124e07a fix: route alert YouTube/SearXNG through pooled urlopen user 2026-02-22 19:39:38 +01:00
  • 717bf59a05 feat: playlist save/load, queue durations, whisper bias, greet fix user 2026-02-22 19:23:03 +01:00
  • 5d0e200fbe docs: update TASKS.md for voice/duck sprint user 2026-02-22 18:55:00 +01:00
  • 8d54322ce1 fix: raise duck floor default from 1% to 2% user 2026-02-22 18:53:42 +01:00
  • e920ec5f10 fix: duck on audio packets only, remove unmute-based ducking user 2026-02-22 18:51:38 +01:00
  • c522d30c36 feat: ack tone, duck-before-TTS, instant ducking on voice/unmute user 2026-02-22 18:46:33 +01:00
  • 068734d931 fix: kept file protection, skip/autoplay, TTS routing, video ID expansion user 2026-02-22 18:00:23 +01:00
  • 36da191b45 fix: download track on !keep when local file is missing user 2026-02-22 17:01:44 +01:00
  • 6083de13f9 feat: playlist shuffle, lazy resolution, TTS ducking, kept repair user 2026-02-22 16:21:47 +01:00
  • 6d6b957557 docs: update roadmap, tasks, and backlog for v2.3.0 user 2026-02-22 12:10:28 +01:00
  • f72f55148b fix: ignore bot audio in sound callback, self-mute support user 2026-02-22 12:09:30 +01:00
  • e9d17e8b00 feat: voice profiles, rubberband FX, per-bot plugin filtering user 2026-02-22 11:41:00 +01:00
  • 3afeace6e7 feat: container management tools in tools/ user 2026-02-22 11:40:53 +01:00
  • b88a459142 feat: music library management, smooth fades, clickable URLs user 2026-02-22 08:11:29 +01:00
  • ad1de1653e fix: gitleaks clone depth and opuslib discovery on musl user 2026-02-22 07:11:50 +01:00
  • 8f1df167b9 feat: fade-out on skip/stop/prev, song metadata on keep user 2026-02-22 06:38:25 +01:00
  • de2d1fdf15 fix: replace actions/checkout with git clone in container jobs user 2026-02-22 06:23:49 +01:00
  • 82f5984631 ci: use 'linux' runner label user 2026-02-22 06:20:48 +01:00
  • 1744e7087f ci: re-trigger pipeline user 2026-02-22 06:18:27 +01:00
  • 0c0adef90d feat: run CI jobs in podman containers, add requirements-dev.txt user 2026-02-22 06:15:42 +01:00
  • 3dada3fc06 fix: allowlist tests/ in gitleaks, add libopus for CI test job user 2026-02-22 06:09:28 +01:00
  • 6e40daa8a9 fix: resolve CI gitleaks download and missing pymumble dep user 2026-02-22 06:06:47 +01:00
  • ba1af461de fix: use gitleaks CLI instead of licensed action, fix lint errors user 2026-02-22 05:58:10 +01:00
  • 004656a64f feat: add Harbor image build+push to CI pipeline user 2026-02-22 05:55:34 +01:00
  • 192ea717a7 feat: split CI into gitleaks, lint, and test jobs user 2026-02-22 05:51:53 +01:00
  • 7a4aa65882 fix: align cmd_stop else branch with _play_loop finally cleanup user 2026-02-22 05:49:53 +01:00
  • 2cd1d5efb1 fix: race condition in skip/seek/stop losing track state user 2026-02-22 05:45:00 +01:00
  • 95981275b5 feat: add OpenRouter LLM chat plugin (!ask, !chat) user 2026-02-22 05:39:11 +01:00
  • 66116d2caf docs: update Piper TTS endpoint and document available voices user 2026-02-22 05:01:57 +01:00
  • eded764f6a fix: update Piper TTS endpoint and request format user 2026-02-22 04:56:24 +01:00
  • 9783365b1e feat: add extra Mumble bot instances and TTS greeting user 2026-02-22 04:34:10 +01:00
  • 165938a801 fix: mumble disconnect loop from stale socket and dead parent thread user 2026-02-22 04:24:23 +01:00
  • 221cb1f06b fix: voice trigger not receiving audio from pymumble user 2026-02-22 03:59:24 +01:00
  • c4908f2a63 docs: document seek command and volume persistence user 2026-02-22 03:31:39 +01:00
  • c493583a71 feat: add !seek command and persist volume across restarts user 2026-02-22 03:31:35 +01:00
  • 7c099d8cf0 docs: document voice trigger configuration user 2026-02-22 03:24:07 +01:00
  • e127f72660 feat: add always-on voice trigger mode with TTS echo user 2026-02-22 03:24:03 +01:00
  • 7b9359c152 docs: document voice plugin commands user 2026-02-22 03:08:10 +01:00
  • 9fbf45f67d feat: add voice plugin with STT and TTS user 2026-02-22 03:08:02 +01:00
  • 039f060b50 feat: add sound listener hook to MumbleBot user 2026-02-22 03:07:55 +01:00
  • df20c154ca feat: download audio before playback, add !keep and !kept commands user 2026-02-22 02:52:51 +01:00
  • ab924444de fix: survive mumble disconnects without restarting audio stream user 2026-02-22 02:41:44 +01:00
  • ec55c2aef1 feat: auto-resume music on reconnect, sorcerer tier, cert auth user 2026-02-22 02:14:43 +01:00
  • f899241d73 feat: support relative volume adjustment (+N/-N) user 2026-02-22 00:18:43 +01:00
  • f189cbd290 feat: add !resume to continue playback from last interruption user 2026-02-22 00:15:39 +01:00
  • 9d58a5d073 fix: slow volume ramp to 1s for smoother transitions user 2026-02-21 23:56:04 +01:00
  • e4e1e219f0 feat: add YouTube search to !play and fix NA URL fallback user 2026-02-21 23:52:01 +01:00
  • 6b7d733650 feat: smooth volume ramping over 200ms in audio streaming user 2026-02-21 23:32:22 +01:00
  • c5c61e63cc feat: expand YouTube playlists into individual queue tracks user 2026-02-21 23:32:16 +01:00
  • 67b2dc827d fix: make !volume apply immediately during playback user 2026-02-21 23:20:17 +01:00
  • eae36aa1f9 docs: update Mumble docs for pymumble transport user 2026-02-21 23:16:56 +01:00
  • d884d2bb55 refactor: switch Mumble voice to pymumble transport user 2026-02-21 23:15:42 +01:00
  • d756e7c020 fix: add opus, ffmpeg, yt-dlp to container image user 2026-02-21 21:47:49 +01:00
  • 7206b27fb0 docs: add music playback documentation user 2026-02-21 21:42:33 +01:00
  • 47b13c3f1f feat: add Mumble music playback with Opus streaming user 2026-02-21 21:42:28 +01:00
  • b074356ec6 fix: always pass server_hostname for Mumble TLS on pre-connected socket user 2026-02-21 21:21:33 +01:00
  • 9d4cb09069 feat: make SOCKS5 proxy configurable per adapter user 2026-02-21 21:19:22 +01:00
  • ca46042c41 docs: update docs for Mumble integration user 2026-02-21 21:02:46 +01:00
  • 37c858f4d7 feat: add Mumble bot adapter with minimal protobuf codec user 2026-02-21 21:02:41 +01:00
  • 0d92e6ed31 docs: update docs for Telegram integration user 2026-02-21 20:06:29 +01:00
  • 3bcba8b0a9 feat: add Telegram bot support via long-polling user 2026-02-21 20:06:25 +01:00
  • 4a304f2498 fix: route Teams send() through SOCKS5 proxy user 2026-02-21 20:06:20 +01:00
  • 4a165e8b28 docs: update docs for Teams integration user 2026-02-21 19:52:39 +01:00
  • 014b609686 feat: add Microsoft Teams support via outgoing webhooks user 2026-02-21 19:52:33 +01:00
  • c8879f6089 feat: add stable plugin API reference and bump to v2.0.0 user 2026-02-21 19:22:47 +01:00
  • 144193e3bb docs: update docs for multi-server support user 2026-02-21 19:04:23 +01:00
  • 073659607e feat: add multi-server support user 2026-02-21 19:04:20 +01:00
  • e9528bd879 docs: update docs for ACL tiers and webhook user 2026-02-21 17:59:22 +01:00
  • c483beb555 feat: add webhook listener for push events to channels user 2026-02-21 17:59:14 +01:00
  • 2514aa777d feat: add granular ACL tiers (trusted/oper/admin) user 2026-02-21 17:59:05 +01:00
  • 5bc59730c4 docs: update docs for cron, shortener, CI user 2026-02-21 17:35:16 +01:00
  • 6ef3fee72c feat: add Gitea Actions CI pipeline user 2026-02-21 17:35:12 +01:00
  • 7b14efb30f feat: add cron plugin for scheduled commands user 2026-02-21 17:35:08 +01:00
  • aebe1589d2 feat: add URL shortening to subscription announcements user 2026-02-21 17:35:03 +01:00