29 Commits

Author SHA1 Message Date
7cb1ec8589 Add mention-only mode toggle (#12)
Adds ability to restrict Gurt responses to direct mentions

Reviewed-on: #12
Co-authored-by: Slipstream <me@slipstreamm.dev>
Co-committed-by: Slipstream <me@slipstreamm.dev>
2025-06-12 11:15:10 -06:00
d1ec42fa51
big ass formatting 2025-06-05 21:31:06 -06:00
db64d0e790
feat: Add Google Cloud TTS provider
Introduces a new TTS provider using Google Cloud Text-to-Speech (Chirp HD model). This allows for higher quality and more natural-sounding voice synthesis.

The `TTSProviderCog` now includes:
- A `google_cloud_tts` option in the `_synthesize_speech` method.
- Checks for the `google-cloud-texttospeech` library and provides installation instructions if missing.
- Error handling for common Google Cloud TTS issues like quota limits or credential problems.
- A new choice in the `/ttsprovider` slash command for "Google Cloud TTS (Chirp HD)".
- A check for the availability of the `google.cloud.texttospeech` module on startup.
2025-05-30 21:25:01 -06:00
850e933b51
fix: Improve AI filtering message for emoji and sticker descriptions 2025-05-29 11:53:01 -06:00
f07d569548
fix: Update emoji and sticker description fallback to indicate potential AI filtering 2025-05-29 11:48:38 -06:00
0858185456
feat: Support GIF format in sticker description generation 2025-05-29 11:46:40 -06:00
8856ff17e5
feat: Extend sticker description generation to support GIF format 2025-05-29 11:43:53 -06:00
a210776635
fix: Remove rate limiting for emoji and sticker processing to enhance parallel execution speed 2025-05-29 11:24:41 -06:00
d7341b3ec2
feat: Enhance emoji and sticker update listeners to process changes more efficiently 2025-05-29 11:23:20 -06:00
19d03a204d
feat: Implement image description generation for emojis and stickers, add listeners for guild asset updates 2025-05-29 11:08:16 -06:00
f7a1a2134e
feat: Add command to reset Gurt's personality and interests to baseline for owner 2025-05-29 10:40:32 -06:00
6868b2e95e
Feat: Integrate Tenor GIF search and custom emoji/sticker support
This commit introduces two main enhancements to Gurt's capabilities:

1.  **Tenor GIF Integration:**
    *   The AI can now request Tenor GIFs via a `request_tenor_gif_query` field in its response schema.
    *   `api.py` handles these requests by searching Tenor (using the new `TENOR_API_KEY` from config) and appending the GIF URL to the AI's message content.
    *   System prompts have been updated to instruct the AI on how to request GIFs.

2.  **Custom Emoji & Sticker Learning and Usage:**
    *   Introduces an `EmojiManager` (in the new `gurt/emojis.py`) to store and manage mappings of custom emoji/sticker names to their URLs. This data is persisted to `EMOJI_STORAGE_FILE`.
    *   Gurt now automatically learns custom emojis and stickers (and their URLs) from user messages via the `on_message` listener in `listeners.py`.
    *   The AI can be prompted to use these learned emojis/stickers by referencing their `:name:`.
    *   `api.py` processes AI responses to identify known custom emojis/stickers. For stickers, their URL is appended to the content if mentioned.
    *   A `learnemoji` command has been added for manually teaching Gurt emojis/stickers, although automatic learning is the primary mechanism.
    *   System prompts are updated to guide the AI on using custom emojis/stickers.
2025-05-28 14:30:26 -06:00
3ff850a9b3
feat: Add channel ignore functionality
Implement `/gurtignore` commands to manage channels Gurt should ignore.
- Add `gurtignore add` to add a channel to the ignore list.
- Add `gurtignore remove` to remove a channel from the ignore list.
- Add `gurtignore list` to display currently ignored channels.
- Update `GurtCog` and `config.py` to support ignored channel IDs and file management.
- Ensure ignore commands are owner-only.
- Modify `listeners.py` to prevent Gurt from processing messages in ignored channels.
2025-05-27 22:19:36 -06:00
2ec585ff81
aa 2025-05-04 21:20:13 -06:00
7a6c3fd127
aasda 2025-04-30 11:17:02 -06:00
6f0a9ae68a
aaa 2025-04-28 19:22:19 -06:00
935df1d4dd
aa 2025-04-28 16:48:37 -06:00
918f3c39b7
aa 2025-04-28 00:31:44 -06:00
dd8bc2f6a4
aaa 2025-04-27 17:01:20 -06:00
9abcbf84af
aaa 2025-04-27 01:03:48 -06:00
d856e4ccef
aa 2025-04-27 01:01:35 -06:00
33e15df5be
aaa 2025-04-27 00:58:21 -06:00
9c60dd70fa
efef 2025-04-27 00:39:41 -06:00
e39fbe918d
a 2025-04-27 00:07:37 -06:00
b7d4b6bfbb
aaf
f
2025-04-27 00:03:14 -06:00
6100f3516b
a 2025-04-26 22:59:09 -06:00
763b3c8c77
aaa 2025-04-26 22:42:04 -06:00
05795ef99d
a 2025-04-26 22:38:40 -06:00
82f21f71ac
REFACTORRR!!! 2025-04-26 22:34:28 -06:00