Cross references:
- Extension README (Markdown):
../../README.md - Bot docs bridge page (Markdown):
../../docs/telegram-bot.md - Bot docs page (GitHub Pages): https://apartsinprojects.github.io/Web2Comics/HTML/telegram-bot.html
Scope note:
- This manual documents public user commands and flows only.
- Admin-only bot commands are intentionally excluded.
- Onboarding/info:
/start,/welcome,/help,/about,/version,/user,/config,/explain,/debug <on|off>
- Story generation:
- Send text, web link, PDF, image, or voice/audio
/invent <story>/random
- Replay/history:
/peek,/peek <n>,/peek<n>
- Providers/models:
/vendors [role],/vendor <role> <name>,/vendor <name>/models [text|image|url|image_extract|pdf|voice] [model]/test
- Controls:
/panels <count>,/objective [name],/objectives/language <code>,/mode <default|media_group|single>/consistency <on|off>,/detail <low|medium|high>/crazyness <0..2>,/concurrency <1..5>,/retries <0..3>
- Objective shortcuts:
/summary,/fun,/learn,/news,/timeline,/facts,/compare,/5yold,/eli5,/study,/meeting,/howto,/debate
- Style commands:
/style <preset-or-your-style>/new_style <name> <text>- Built-in style shortcuts:
/classic,/noir,/manga,/superhero,/watercolor,/newspaper,/cinematic,/anime,/cyberpunk,/pixel-art,/retro-pop,/minimalist,/storybook,/ink-wash,/line-art,/clay-3d
- Prompt/options:
/prompts/set_prompt story <text>/set_prompt panel <text>/set_prompt objective <name> <text>/list_options,/options <path>
- Keys/reset:
/keys,/setkey <KEY> <VALUE>,/unsetkey <KEY>,/reset_config,/restart
- Behavior:
- Unknown
/...commands are rejected as unrecognized and not treated as story input.
- Unknown
Send plain text, a web link, a PDF link/file, an image link/file, or a voice/audio message, and the bot generates comic panels and sends them back as ordered Telegram images.
Panel captions are prefixed as X(Y):
X= current panel numberY= total panel count
- Send
/start - Send
/help - Run
/userto get your Telegram id - Add provider key with
/setkey GEMINI_API_KEY <YOUR_KEY> - Send a story, link, PDF, image, or voice note
/helpcommand list/aboutcreator and project links/configcurrent runtime config/usershow your Telegram id/keyskey status
/vendors [role]/vendor <role> <name>/vendor <name>- Legacy aliases:
/text_vendor <name>,/image_vendor <name> /language <code>/consistency <on|off>enable style-consistency flow (supported image models only)/crazyness <0..2>control story-invention temperature (higher = wilder twists)/panels <count>/objectivelist objectives/objective <name>set objective/style <preset>/new_style <name> <text>/detail <low|medium|high>/concurrency <1..5>/retries <0..3>
/promptsshow active prompt templates/set_prompt story <text>/set_prompt panel <text>/set_prompt objective <name> <text>
/list_optionslist all config paths with predefined options/options <path>show numbered options for one path- Apply options via dedicated commands (
/objective,/panels,/mode,/vendor,/models,/language, etc.)
If /options is called without required args, the bot explains usage and lists valid paths/options.
- Normal text: generate directly
- Very short prompt: bot first expands story with AI, shows invented story, then generates comic
- URL input: bot prints the exact parsed URL, renders page content, then uses it as source
- PDF input: bot extracts document text from a PDF link or uploaded PDF file, then uses it as source
- Image input: bot extracts scene/story context from an image link or uploaded image file, then uses it as source
- Voice/audio input: bot transcribes the clip, then uses the transcript as source
For each panel image, the bot sends context that includes:
Background(short story summary context)Image description(panel.image_prompt)Style- strict no-text requirements (English, Hebrew, Russian)
This keeps panel visuals coherent across the full story.
- Default:
on - Command:
/consistency onor/consistency off - When enabled, after storyboard generation the bot first creates one summary style-reference image.
- Then each panel uses prompt text that explicitly asks to follow that reference style and passes the summary image as reference input.
- This is used only when the active image provider/model supports image-as-input; otherwise the bot falls back to normal panel generation.
- Watermark is configurable and defaults to
on - Bot messages/photos are forwardable (content protection is disabled)
- Panel captions are sent in order and prefixed as
X(Y)
/reset_configclear runtime overrides/restartreset user state and re-onboard/unsetkey <KEY>remove runtime key override