Telegram source parser module for Axelate Launcher.
The module watches configured public Telegram channels, groups them by topic, prepares posts for an operator review flow, and forwards AI requests to launcher-owned services.
- Telegram bot runtime for parser and publish workflows.
- Public Telegram feed parsing.
- Topic and source normalization.
- Operator publish flow.
- Custom settings UI in
settings-ui/. - Thin calls to launcher-owned AI and image services.
The module does not provide free-form chat with the bot and does not store rewrite prompts or AI style policy. Telegram is only the operator surface for source parsing, post preparation, and publishing.
Launcher integration metadata, install lifecycle, settings persistence, and module runtime paths are defined in:
axelate-module.toml
The full launcher contract is documented in:
MODULE.md
- Web parser only.
- Launcher-owned AI only.
- Launcher-owned settings file.
- Launcher-managed runtime and Python dependencies from
requirements.txt. - Best-effort launcher stage reporting for long-running actions.
- English, Russian, and Chinese module UI texts.
- Module-owned local runtime data.
- Module logs under
AxelateData/User/Modules/axelate-telegram-parser/Data/Logs/.
The module does not select AI providers, control launcher lifecycle, generate prompts on its own, or store global launcher configuration.
Long-running Telegram actions show real current work instead of fake typing animations or wait timers. The same stage is also sent to the launcher when its local API is available.
Current stage groups:
parser.* source loading, Telegram fetch, merge, cache, ready
ai.text.* text handoff to launcher AI, generation, draft update
ai.image.* image handoff to launcher AI, generation, draft update
Stage reports are best-effort telemetry. Older launcher versions can ignore them without breaking the module.
The module supports en, ru, and zh. By default module_language is auto,
so the bot and settings UI follow the launcher language. The settings UI can
also force one language for this module without changing the whole launcher.
src/main.py Process entrypoint used by the launcher manifest.
src/bot/ Telegram bot surface, message helpers, progress UI.
src/config/ Launcher-managed module settings loader.
src/domain/ Parser constants, validation, post content, publishing.
src/handlers/ Telegram message and callback handlers.
src/integrations/launcher/ Current launcher runtime and AI HTTP bridge.
src/keyboards/ Inline keyboard builders.
src/parsing/ Telegram public feed parser.
src/runtime/ Paths, HTTP session, i18n, retry, metrics, local storage.
src/services/ Workflow-level services used by handlers.
src/state/ FSM and post state mutation helpers.
When the launcher runs this module, it installs requirements.txt into the
launcher-managed Python runtime outside this repository. Do not commit .venv,
node_modules, caches, logs, or downloaded runtime files into the module.
Install Python dependencies:
pip install -r requirements.txtBuild the custom settings UI:
npm --prefix settings-ui install
npm --prefix settings-ui run typecheck
npm --prefix settings-ui run buildThe generated settings-ui/app.js is committed because the launcher loads settings-ui/index.html directly.