iOfficeAI / iOfficeAI/AionCore

Telegram: messages display raw HTML tags — parse_mode not set in sendMessage/editMessageText

Open
#469 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
105
Forks
169
Avg merge
5h 58m
Merged PRs (30d)
84

Description

### Description

When using the Telegram channel with the Claude Code agent, all responses containing formatted text (bold, italic, code blocks, links) are displayed as raw HTML tags in Telegram instead of rendered formatting.

Example — instead of seeing **bold text**, the user sees `bold text`.

### Root cause

The aioncore Telegram plugin converts Markdown output from the agent to HTML before sending (confirmed via `strings` on the binary: regex patterns `\*\*(.+?)\*\*` → `$1`, `` `([^`]+)` `` → `$1`, etc. are present). However, the resulting HTML is sent to Telegram's `sendMessage`/`editMessageText` API **without** setting `parse_mode: "HTML"`. The `parse_mode` field exists in the `TgMessage` struct but is never populated.

Telegram's API treats messages with no `parse_mode` as plain text, causing HTML tags to appear literally.

### Steps to reproduce

1. Configure a Telegram channel with any agent that produces formatted output (e.g. Claude Code)
2. Send any message that produces a response with formatting (e.g. "explain what markdown is")
3. Observe raw HTML tags in Telegram instead of rendered text

### Expected behavior

Telegram messages are sent with `parse_mode: "HTML"` so that formatting renders correctly.

### Environment

- aioncore version: v0.1.29
- AionUI version: 2.1.18
- Platform: Linux x64 (headless/web mode)
- Channel: Telegram (long-polling)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.