Skip to content

Releases: The-Yak-Collective/openrecapper

v1.2.0

Choose a tag to compare

@anuraj-rp anuraj-rp released this 19 Jul 16:12

Highlights

  • Hard-gated /record meeting names. The /record command now validates the meeting name server-side against the configured RECORD_MEETING_NAMES allow-list — Discord's choice dropdown enforced this only client-side before, so a stale choice or hand-crafted interaction could previously smuggle in an arbitrary name.
  • Multi-recorder support. Run up to N concurrent recordings per server via a pool of recorder bots, with lease handling hardened against stale /stop paths releasing the wrong lease.
  • /openrecapper-issue command. File GitHub issues straight from Discord, with cc mentions and corrected reply visibility.
  • /set-summary-channel + resilient delivery. Route summaries to a chosen channel; delivery now degrades gracefully when the audio file is too large to attach.
  • relay-exedev reference relay. Added the reference relay implementation plus a soft summary-length target.

Recording & transcription

  • Group R2 recordings by meeting name.
  • Defer the live transcription stream until the first PCM chunk per user.
  • Recover the Opus decoder after a corrupt packet instead of dropping the user.
  • Skip cleanup for sessions marked with DO_NOT_DELETE.md.
  • Improved recording access, voice capture, and summary attribution; removed speaker attribution from summaries.

Fixes

  • Fixed slash-command duplication, dropped-speaker capture, and granted-user /stop access.
  • Hardened schedule text-channel validation.

Docs

  • Fixed the Discord setup guide (required intents, permission integer 3263488) and refreshed the README.

v1.1.0 — /schedule UI, silence timeout, recording cleanup

Choose a tag to compare

@djinna djinna released this 22 Jun 00:20

Added

  • Standing-call schedule UI/schedule list | add | edit | remove | pause | resume to manage multiple auto-record schedules at runtime (no restart). Schedules persist to data/schedules.json, referenced by short id with autocomplete. Admin-gated (Manage Server); grantable to a role via Discord's native command permissions.
  • Silence timeout — the bot auto-leaves a voice channel after a configurable period with no voice activity (SILENCE_TIMEOUT_MINUTES, default 20), so a cancelled call doesn't leave it recording indefinitely. Cleans up the empty session and skips transcription/summary.
  • Automatic recording cleanup — old, already-transcribed audio files are pruned on a retention schedule (RECORDING_RETENTION_DAYS, default 7) to keep disk usage bounded; transcripts/summaries are preserved.

Changed

  • Scheduler refactored from a single env-var-driven cron job to managing N jobs from the schedule store. Legacy SCHEDULED_* env vars now seed the store once on first run, then are ignored (the JSON store is canonical).

Full changelog: https://github.com/The-Yak-Collective/openrecapper/blob/main/CHANGELOG.md

v1.0.0 — Initial public release

Choose a tag to compare

@djinna djinna released this 21 Jun 20:14

Initial public release of OpenRecapper — an open-source Discord bot that records voice channels, produces speaker-labeled transcripts, and writes a structured AI call summary, then optionally emails it to your group.

Highlights

  • Recording/record, /stop, /status; auto-stops when everyone leaves; DAVE E2EE voice supported.
  • Transcription — live transcript streamed as people talk, plus high-quality batch transcription (Deepgram Nova-3) with speaker diarization.
  • AI summary (optional) — structured Markdown recap (overview, key points, open questions, references, action items) via a companion relay.
  • Email delivery (optional) — summary + transcript links sent to a configured address.
  • Cloud archival (optional) — uploads recordings/transcripts to any S3-compatible bucket (e.g. Cloudflare R2) with download links.
  • Scheduled recording (optional) — auto-join a standing call on a cron schedule.
  • Startup health check — validates the Deepgram key on boot.

Self-hosted by design: run your own Discord app, Deepgram account, and (optional) storage/summarization services. See the README for setup.