## 1
1. First, Let Me Show You the Dumb Things I've Done
As an indie SaaS developer, you've probably had nights like this: the code is just merged, the new version is live, and a user asks in the group chat "what's new in this update?" So you paste the commit log straight into the announcement box—
fix: 修复若干bug
feat: 新增字段
chore: 更新依赖After you hit send, the group goes quiet for three seconds, and then someone asks: "So what new features do I actually get?"
This is one of the most common failure modes: dumping logs written for machines directly in front of users. The value of a commit log lies in precision; the value of a user announcement lies in "what does this have to do with me?" Forcing these two contexts together satisfies no one.
The second failure mode is more insidious: the "saving up for a big move" style of writing. Some developers feel that announcements represent the product's image, so every update deserves a carefully crafted post. They open a doc, brainstorm titles, openings, and images, writing and deleting in cycles. Forty minutes later, the draft is still stuck at "This update brings you..." In the end, they either rush to finish or simply don't publish at all—the users will figure it out on their own, right? No, they won't.
The third type: split personality. When in a good mood, the announcement is warm and enthusiastic; after working overtime, it's three cold bullet points. Old users scrolling through past announcements feel like they're watching two personalities take turns on shift. Add on top of that different formats for Chinese and English versions, email and in-app versions, and the maintenance cost snowballs.
The common thread across all three: treating what should be a streamlined, repeatable process as a task that requires "creative work" every single time.
2. What AI Can Actually Do for You
Understand one thing: the essence of a release announcement is translation—translating developer language into user-value language. And translation happens to be one of the things AI is best at.
Breaking it down, AI can take on four jobs in this pipeline:
1. Reading your raw materials. Commit logs, PR descriptions, issue discussions, even a few lines of notes you jotted down—just throw them all at the AI. It doesn't need you to organize them into a neat structure first. On the contrary, the messier the raw material, the more it can shine.
2. Completing the "feature → value" transformation. "Added webhook retry mechanism" is a technical improvement in a developer's eyes, but in a user's eyes it should become "failed callbacks no longer lose data, making third-party integrations more worry-free." This transformation requires rephrasing from the user's perspective, and AI does it better than most developers who are already exhausted after finishing the code.
3. Unifying tone and format. Give the AI a brief style guide for your announcements (a few sentences is enough), and from then on every announcement will follow the same structure: a one-line summary, a few highlights, and a note on scope of impact. Your announcement page will suddenly look like it's maintained by a professional team—even if the team is just you.
4. One-click generation of multiple versions. From the same set of update content, automatically generate a long in-app announcement, a medium-length email push, a short social post, and an English version. What used to be four tasks is now one.
3. My Workflow: Five Minutes per Update
My process is now fixed into three steps:
Step 1: Gather raw materials. Before a release, export the commit log for this cycle, add PR titles and descriptions of a few key issues, and dump everything into a text file. No organizing needed—you don't even have to fix typos.
Step 2: Run the template. Make one call to an LLM API, sending the raw materials along with my fixed prompt template. A few seconds later, you get a fully structured announcement draft.
Step 3: Do a human review. Focus on two things: whether the AI has hallucinated any feature descriptions (it happens occasionally), and whether sensitive information like billing or permission changes is described accurately. Make edits, publish, done.
Going from "putting it off as long as possible" to "publishing without a second thought"—the core of the change isn't that AI writes much better than I do, but that the cost of this task dropped to a level where I'm actually willing to do it.
Here's my prompt template—feel free to copy and use it:
你是一位资深SaaS产品运营,负责为我的产品撰写版本更新公告。
【产品背景】
产品名称:{产品名}
一句话介绍:{产品是做什么的,服务什么用户}
目标用户:{如:中小电商卖家 / 独立开发者}
【写作要求】
1. 将下面的commit log和变更记录翻译成用户视角的价值描述
2. 结构固定为:一句话版本摘要 / 2-4条核心亮点(每条含加粗小标题+两句话说明)/ 其他改进与修复 / 升级提示(如无需操作则省略)
3. 语气:专业但友好,不夸张、不堆 emoji,最多用 1 个
4. 涉及用户操作变更(如需要重新授权、数据迁移)的内容放在显眼位置
5. 不确定的技术细节不要臆造,用一句话概括即可
6. 篇幅控制在 300 字以内
7. 输出末尾额外附上:一条 50 字以内的社群短文案
【本次变更记录】
{粘贴 commit log / PR 描述 / issue 摘要}Replace the curly-braced parts as needed. In practice, the most critical constraint is #5—explicitly telling the AI "don't make things up if you're not sure" significantly reduces hallucinated content and makes human review much easier.
4. Before and After: Numbers Don't Lie
Using one of my own iteration cycles as an example (data is from my personal records, just to give a sense of scale):
| Task | Before | Now |
|---|---|---|
| Organizing changes | 15 min | 2 min (just paste) |
| Writing announcement draft | 30–60 min, often procrastinated | ~1 min (API response) |
| Multi-version derivatives (email/social/English) | Rarely done | 3 min |
| Publishing frequency | About half of versions got no announcement | Every version gets one |
Total time dropped from over an hour to under five minutes, while announcement completeness actually increased severalfold—because the cost is low enough that even those small updates "not worth an announcement" now get published. From the users' perspective, the product feels like it's "constantly and actively improving"—that's a retention value that never shows up in the code, but it's real.
As for cost, generating an announcement with a single LLM API call is negligible—check the official pricing page of whichever model you use. Frankly, this use case doesn't even require a flagship model; a cost-effective model is more than capable of handling this kind of structured writing task.
5. Three Tips for Beginners
- Nail down the template first, then automate. Once your prompt template is dialed in, hook it into CI/CD to trigger automatically on release. Don't do it in reverse.
- Human review as the safety net for sensitive content. Anything involving pricing, permissions, or data changes should always get a final personal confirmation.
- Feed your past announcements to the AI. Accumulate a few human-polished versions you're happy with as reference examples, and the AI's stylistic fit will noticeably improve.
If you don't yet have a convenient model API to run this pipeline, check out this platform—you can register and start integrating with all kinds of models: https://api.thistoken.ai/register
Release announcements—a small task that deserves to go from "only when I remember" to "just do it on the fly."
---
Tired of juggling provider integrations? Register at https://api.thistoken.ai/register and call every model through one base_url.
Ready to try Token.AI?
Create a project-level API Key, enable channels in the console, and configure routing, budgets, and audit logs.
注册 ThisToken.AI 并获取 API Key