What goes into the model prompt

The text is written by a language model, and the platform assembles the prompt to it from three parts:

  1. System requirements — general rules and platform requirements: length limit, allowed markup, response format.
  2. Your rules — channel style, topic style, source rules in a rewriter project. This is the main part: it is responsible for what the post is about and how it is written.
  3. Material — the source post text when rewriting or the topic title when working from a content plan.

The model is selected in the project or topic settings. Next to it, you can specify a fallback model: if the primary one returns an error, the platform will repeat the request to the fallback and log this.

Platform requirements

Each platform has its own limits: text length, headline length, supported markup, image sizes and formats. The platform knows them and accounts for them in advance — it asks the model for text shorter than the limit so that the project signature can also fit.

Markup also depends on the platform. For example, for Dzen the text is requested with HTML markup (paragraphs, subheadings, lists) because the material goes into an article, while for platforms without markup — as plain text.

Why a post is rejected before publication

Rejection before publication is a safeguard: a post with an obvious defect does not take up a schedule slot and does not fail with an error later. The reason is always visible in the post card.

Text exceeds the platform limit. The model keeps to the limit approximately and sometimes exceeds it. The text is not truncated: a fragment cut off mid-sentence would ruin the material. Regenerate the post or shorten the project signature — it also counts toward the limit.

Headline exceeds the limit. Applies to platforms where the headline is sent as a separate field.

Markup does not meet platform requirements. The text contains tags that the platform does not process. This happens if the model goes beyond the instruction or if layout from the editor was inserted into the text during manual editing. Remove the extra tags or regenerate the text.

Material is off-topic. If the source rules say not to publish ads, giveaways, or off-topic posts, the model returns a refusal, and the post is rejected — this is its decision, not a malfunction.

Why publication may fail

Separate from rejections, there are refusals from the platform itself. The platform also shows these in the post card with a clear reason:

  • no permissions — the bot is not added to the channel or is not an admin, the access key lacks the required permissions;
  • access expired — the account needs to be reconnected;
  • target not found — the channel, group, or board has been deleted;
  • platform rejected media — format, size, or inaccessible link;
  • platform limit — publication is possible later, the platform will retry automatically.

Issues that are fixed externally (permissions, token, limit, network) do not drop the post from the queue: it will go out in the next slot once you fix everything.

How to get better text

  • Write channel rules specifically: topic, what to avoid, what tone, whether lists and subheadings are needed.
  • In the source rules, separately describe which posts to skip — this reduces "off-topic" rejections.
  • Do not set the length limit close to the platform limit: leave room for the signature.
  • If you consistently dislike the result, try a different model in the project settings — they differ noticeably on long texts.