Commit Graph

119 Commits

Author SHA1 Message Date
melod1n 2026c673f5 checking models capabilities 2026-02-12 14:22:43 +03:00
melod1n 77d0ca2f38 add info command 2026-02-12 13:14:10 +03:00
melod1n b9fa2538db add support for youtube music videos 2026-02-12 11:55:14 +03:00
melod1n 21ab362776 fix 2026-02-06 21:22:20 +03:00
melod1n ae431f6258 use apple emoji by default in quote command 2026-02-06 12:33:36 +03:00
melod1n fbbbebaf2e fix emoji naming 2026-02-06 12:20:00 +03:00
melod1n b1dfe93e22 fix regex 2026-02-06 12:05:20 +03:00
melod1n ae428d8415 fix usage of wrong entities if a quote is present 2026-02-06 12:05:11 +03:00
melod1n 9ba3d81a21 feat(ai): add configurable default provider + refactor telegram handlers
- add AiProvider enum and DEFAULT_AI_PROVIDER env var (fallback: OLLAMA)
- route chat execution based on selected provider (Ollama/Gemini/Mistral/OpenAI)
- move inline query / callback / edited message / my_chat_member handlers into utils
- minor cleanup (command requirements placement, whitespace)
2026-02-04 12:55:04 +03:00
melod1n 3c7d56b213 support for custom baseURL for OpenAI
fix messages' type in context chain
2026-02-04 12:16:31 +03:00
melod1n fc5478b5ec update bun.lock 2026-02-04 11:30:09 +03:00
dependabot[bot] 285067e640 Bump drizzle-kit from 1.0.0-beta.9-e89174b to 1.0.0-beta.13-5204f18 (#20)
Bumps [drizzle-kit](https://github.com/drizzle-team/drizzle-orm) from 1.0.0-beta.9-e89174b to 1.0.0-beta.13-5204f18.
- [Release notes](https://github.com/drizzle-team/drizzle-orm/releases)
- [Commits](https://github.com/drizzle-team/drizzle-orm/commits)

---
updated-dependencies:
- dependency-name: drizzle-kit
  dependency-version: 1.0.0-beta.13-5204f18
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-04 11:26:23 +03:00
dependabot[bot] f15e189019 Bump drizzle-orm from 1.0.0-beta.9-e89174b to 1.0.0-beta.13-5204f18 (#21)
Bumps [drizzle-orm](https://github.com/drizzle-team/drizzle-orm) from 1.0.0-beta.9-e89174b to 1.0.0-beta.13-5204f18.
- [Release notes](https://github.com/drizzle-team/drizzle-orm/releases)
- [Commits](https://github.com/drizzle-team/drizzle-orm/commits)

---
updated-dependencies:
- dependency-name: drizzle-orm
  dependency-version: 1.0.0-beta.13-5204f18
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-04 11:24:54 +03:00
melod1n 639c8ed9d0 update default OpenAI model 2026-02-03 13:55:50 +03:00
melod1n a28ac7f3a6 change ChatGPT -> OpenAI in OpenAIChat chat command 2026-02-03 13:44:28 +03:00
melod1n cf91f26ac9 add title and description to OpenAIChat chat command 2026-02-03 13:43:39 +03:00
melod1n a736f786c2 feat(openai): add chat streaming and model commands
- add /openai (/chatgpt) chat command using OpenAI Responses API (streaming + incremental edits)
- add /openAIListModels, /openAIGetModel, /openAISetModel
- introduce base Command class and migrate non-chat commands to it
- wire OpenAI client + env vars (OPENAI_API_KEY, OPENAI_MODEL)
- bump deps (@google/genai, systeminformation, @types/node) and add openai
2026-02-03 13:39:01 +03:00
melod1n 810151263d feat: separate Ollama text/image/think models + add YouTube downloader
Support OLLAMA_IMAGE_MODEL and new OLLAMA_THINK_MODEL (both default to OLLAMA_MODEL)

Add /ollamathink command; validate thinking capability; disable image-analysis flow in think mode

Make /ollama-get-model show Text/Image/Think blocks only when models differ

Add /ytdl (/youtube) command + auto-detect YouTube URLs in messages

Cache downloaded videos to data/video and schedule daily cleanup

Move photo storage from data/temp to data/photo; improve env boolean parsing via ifTrue

Update deps (youtubei.js, puppeteer*) and TS config (allowJs, allowSyntheticDefaultImports)
2026-01-31 19:37:25 +03:00
melod1n 23052fae0f separate ollama text & image models 2026-01-31 18:07:22 +03:00
melod1n 9e30086af2 fix(images): cache Telegram photos by unique_id and pass base64 to LLM commands
Stop reading image files inside gemini/mistral commands; use pre-encoded image data from message parts

Rework loadImagesIfExists / loadImagesFromFileIds to return cached file_unique_ids and download only missing sizes

Encode cached images to base64 when assembling the reply chain

Make getPhotoMaxSize synchronous (returns PhotoSize), and map to URL only when needed

Await MessageStore.put / UserStore.put and prefetch single-image downloads on message receipt
2026-01-29 20:58:08 +03:00
melod1n 4945db86c0 bump dependencies 2026-01-29 20:05:46 +03:00
melod1n b74e0a0f3e refactor(bot): centralize runtime state; support albums + safer vision handling
- make MessageStore.put() return StoredMessage and allow collectReplyChainText() to work with StoredMessage
- move muted users + answers loading into Environment (add Answers model + GEMINI_IMAGE_MODEL)
- extract message handling into processNewMessage() and add media-group (album) caching/downloading by unique_file_id
- for Ollama: check model capabilities before sending images; use replyToMessage helper consistently
- add /geminiGenImage command stub for Gemini image generation
2026-01-29 20:01:30 +03:00
melod1n 5f4405c9ee fix checking of same user requirement 2026-01-29 18:14:07 +03:00
melod1n 73905780b9 some updates 2026-01-28 19:47:50 +03:00
melod1n 8cf1773926 update default gemini model 2026-01-28 18:35:24 +03:00
melod1n 486a7a4f11 update gemini chat to interactions api 2026-01-28 18:19:53 +03:00
melod1n 371e53ab14 update mistral-chat command 2026-01-28 18:02:57 +03:00
melod1n 12d9591109 some improvements for prompt making 2026-01-28 17:59:53 +03:00
melod1n d1e1245ece update Dockerfile 2026-01-28 17:13:38 +03:00
melod1n cbb1fc3d63 bump libs and update Dockerfile 2026-01-28 17:04:46 +03:00
melod1n 2f8f253eb1 Revert "update system-info text"
This reverts commit 44919f478e.
2026-01-28 16:54:11 +03:00
melod1n 44919f478e update system-info text 2026-01-28 16:45:10 +03:00
melod1n 63c64dfa8e update error logging
cutting all kind of prefixes for prompt making
2026-01-28 16:40:29 +03:00
melod1n 9a76d36568 fix transliteration command 2026-01-28 16:39:09 +03:00
melod1n 82ef6dff2a Merge pull request #11 from difome/master
add .env.example for bot configuration and update README with setup
2026-01-28 12:32:14 +03:00
melod1n 458e56dcb4 update streaming for Gemini and Mistral and update list gemini models and list mistral models commands 2026-01-28 12:29:52 +03:00
difome 42417d71ac update README.md 2026-01-28 05:22:32 +02:00
difome f2b8e55900 update README 2026-01-28 04:55:15 +02:00
difome c93da69281 update .env.example and README with additional bot configuration options 2026-01-28 04:48:22 +02:00
difome ab670a553d add .env.example for bot configuration and update README with setup instructions 2026-01-27 20:54:23 +03:00
melod1n 854981cf6e update GitHub workflows 2026-01-27 19:44:50 +03:00
melod1n e67eaa1966 update Dockerfile and github workflows 2026-01-27 19:44:13 +03:00
melod1n f87fae8ef1 rename systemspecs to systeminfo 2026-01-27 19:40:05 +03:00
melod1n 44551af0fa update ping command 2026-01-27 19:34:58 +03:00
melod1n 70e81b4965 update ping command 2026-01-27 17:42:07 +03:00
melod1n c29587bd11 quote command now uses photo for background in original message if it is present 2026-01-27 12:28:32 +03:00
melod1n 0aa2e19237 update randomstring command 2026-01-22 20:26:33 +03:00
melod1n 027f5e0adf update qr command 2026-01-22 20:22:54 +03:00
melod1n 436ab88e9c fix shutdown command 2026-01-22 20:09:55 +03:00
melod1n 637537161d update randomInt & randomString commands' titles and argsMode 2026-01-22 20:06:28 +03:00