Repository navigation
Pluto: fix voice notes and on-time reminders, add borrow plan and Sarvam script - #4
Merged
Merged
Conversation
Voice notes:
- stt.py now tries Groq Whisper (whisper-large-v3), then Gemini audio,
then Sarvam, using whichever keys exist. Before, only Sarvam was used,
so voice failed without a Sarvam key. The Sarvam default is now the
transcription model saarika:v2.5 (saaras translates).
- The bot says which key to add when no voice provider is set, and
bot.py --check shows the voice order.
Reminders:
- The due check runs every minute instead of every 30 minutes.
- A reminder's first alert always goes out at the time the user set,
even in quiet hours and past the daily cap. Repeat nudges ("Still
pending") and stale-idea nudges keep waiting for morning and the cap.
- The prompt resolves relative times ("in 10 minutes", "2 ghante mein").
99 tests.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018sC4RJhTrBjKg5omzDNBz9
Reads SARVAM_API_KEY from the environment and calls sarvam-105b-conversations once, printing the reply. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018sC4RJhTrBjKg5omzDNBz9
Study of QwenPaw's three-layer memory and Heartbeat, and nanobot's Dream consolidation and cron-to-Telegram delivery, with file and function references and how each maps onto db.py, llm.py and bot.py. Includes designs for a daily digest and a SQLite-only memory upgrade (FTS5 search, rolling summaries, profile facts), and what to skip. No code copied; ideas re-implemented (nanobot MIT, QwenPaw Apache 2.0). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018sC4RJhTrBjKg5omzDNBz9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three commits.
Fix voice notes and on-time reminders (
939b355)stt.pynow tries Groq Whisper (whisper-large-v3), then Gemini audio, then Sarvam, using whichever keys are set. Before, it only used Sarvam, so voice failed without a Sarvam key. The Sarvam default is now the transcription modelsaarika:v2.5, sincesaarastranslates.bot.py --checkshows the voice provider order.Borrow plan (
4561da2)pluto/docs/borrow-plan.mdstudies QwenPaw's three-layer memory and Heartbeat, and nanobot's Dream memory consolidation and how its scheduled jobs reach Telegram. It cites file paths and functions, and maps each idea ontodb.py,llm.pyandbot.py.Sarvam script (
a4702f1)sarvam_hello.pyat the repo root makes one chat completion call tosarvam-105b-conversationswith thesarvamaiSDK. It readsSARVAM_API_KEYfrom the environment and never prints it..envstays ignored by git.Testing
sarvam_hello.pyitself, which hasn't been run because this session has no key.Generated by Claude Code