一次游戏更新做完了,写作的活儿还剩三份:给回归玩家解释改了什么,向社区介绍新内容,再把一个有用的点塞进一条短帖。同一个补丁,三种读者,三种形状。
![]()
开发者拿自己那款温馨向浏览器游戏 Idle Fantasy Shop 的真实 0.12 补丁做了实验。工坊加了制作计划,采集场加了压力系统,存档说明的措辞也得小心处理。这些改动里确实有故事,只是需要按不同读者的口味重新切。
于是他做了 PatchPitch:一个本地写作小工作台。勾选这次实际上线的事实,选格式和语气,用本地 Gemma 生成,再人工审阅、导出 Markdown。
三种格式分工明确:开发日志留出空间放选中的主题和重要细节;社区帖用连贯的段落讲几处有用的改动;短帖有 280 字符的预算,包含行动号召和建议标签。每次请求只写一个版本。Warm、Clear、Lively 三个预设控制语气,可选附一段写作样本,让文字带上自己的节奏。自动标签只是产品和选中事实给出的建议,可以删。
每种格式在当前标签页里保留最新草稿和修改,来回切换不丢内容,删掉标签也能把文字带走。
谁会为这个付钱?他心里的买家是那种稳定发版、自己处理发布沟通的独立开发者或小工作室。下一次更新需要一个连贯的发布包、一次仔细的审阅,以及能跨渠道复用的文案。
第一个想试的付费方案是按次交付审阅过的发布包:一篇开发日志、一篇社区帖、一条短公告。可以先从基于这个 MIT 工具的小服务做起。订阅制则需要证据证明人们会为下一次更新回来。目前他只在自己的游戏上用过,没有独立客户,也没有支付结果,应用里没有结账功能。
演示视频 63 秒,展示了事实勾选、三种格式生成、风格控制、自动标签、草稿切换、来源检查和 Markdown 导出。生成等待被缩短并做了标注。视频由两段浏览器原生录制合成,这些会话里一共发生了五次真实模型调用,展示了三次成功输出。一次被拒的社区帖尝试和一条没用上的短帖留在证据里。没有把保存的响应回放进任何一个界面,模型的文字也没有被改写。
有个细节值得说清楚。技术输入区分了采集材料和可制作物品:新增内容算 3 种采集原材料加 7 种可制作物品,共 10 件新物品,其中只有那七件是可制作的。完整的生成开发日志写的是:共新增 10 件物品,包括 3 种采集原材料和 7 种可制作物品。
短格式的任务不一样。这是它未经改动的正文:Idle Fantasy Shop 的工坊现在支持批量制作,需要 10 级才能使用;更换设备或清除浏览器数据前,请从设置里导出备份。加上他提供的行动号召和 Gemma 建议的标签,这条帖子是 252 字符。视频里去掉标签、导出剩余文字,复制和下载内容完全一致。它保留了设置和两种备份情形,省略了完整的制作限制。界面会把未被引用的笔记和缺失的数字细节标出来供审阅。
代码在 drevendev/PatchPitch,MIT 协议。已验证的实现是 38619a8,其 GitHub Actions 运行通过了 121 个测试。自动化测试使用模拟推理或离线传输,录制的模型调用是另外的证据。
README 里有安装命令:Python 3.11+、Ollama、选定的 Gemma 模型和固定版本的 Python 依赖。应用跑在 127.0.0.1:8000,Ollama 留在回环地址上。默认的 12B 模型需要足够的本地内存,换别的模型得自己再做一次写作质量检查。
视频录制于 78e44f8。之后的改动加了示例加载修复、可选的 Sentry 追踪和一个弯引号校验修复,提示词和生成的文字没有变。托管版录制只是查看产品的一种方式,真正的生成在本地跑。
技术栈是 FastAPI、Pydantic 和原生 HTML/CSS/JavaScript。没勾选的笔记不会进入模型载荷。Gemma 收到的是选中的事实单元、单独的语音简报和一份 JSON 响应结构。来源 ID 把结果连回人可以检查的笔记。
示例笔记来自 Idle Fantasy Shop 真实的 0.11.1 到 0.12 代码补丁,带提交和文件引用。PatchPitch 接收这些笔记,自动导入 Git 还在待办里。语气简报来自游戏内的物品描述。原来的开发日志只作对比材料,它的文字没有出现在模型输入里。
录制用的模型是 gemma4:12b,通过 Ollama 0.40.6,三种格式都用直接生成。选定的请求在这台机器上耗时:开发日志 74.7 秒,社区帖 12.7 秒,短帖 4.5 秒。这些是观察值,不是速度承诺。
真实尝试暴露了有用的失败:一份草稿把十件物品全说成可制作,另一份漏掉了备份情形,还有一次措辞检查把队列容量当成承诺同时开工而拒掉。他澄清了来源笔记,改进了结构、提示词和针对性检查。完整开发日志里,每个分配的来源 ID 会在对应段落前输出,让主题各归其位。失败和被拒的尝试都保留着。
这些检查能确立结构、预算和具体措辞约束,但确立不了语义真值。完整草稿覆盖了全部八个选中主题,但部分内容比原开发日志那种更温暖的编辑笔调更功能化。结果仍然标着 Draft,发布前请审阅。来源检查和作者的最后修改属于工作流的一部分。
可选的 Sentry 埋点记录生成、实际的 Ollama 调用和校验。在公开的虚构示例 Pocket Orchard 上单独跑了一次真实运行,得到这条追踪:模型调用耗时 15.064 秒,校验耗时 4.015 毫秒。Ollama 报告 gemma4:12b,输入 1590 个 token,输出 302 个 token。几乎全部记录时间都花在模型请求上。没有使用按量计费的推理 API,本地硬件和电费仍然有成本。Sentry 的对比徽章反映的是这些诊断样本,不是受控基准。
另有一个 CONTROLLED_FAILURE,把一份含 TODO 占位符的保存草稿送进校验,产生了 invalid_draft 和一个关联的错误事件,没有伪造推理跨度。
没有显式 DSN 时 SDK 是关闭的。自动集成被禁用,事件和最终传输信封使用一份小的元数据白名单。他检查了来源笔记、输出文字和私有上下文的实际 HTTP 请求体。接收事件审查还发现了 Sentry 基于 IP 推导的地理信息补充:他启用了 IP 擦除和显式地理移除,然后验证了一个新的仅校验事件没有 User/Geography 上下文。追踪和检查是在视频之后单独采集的。
开放权重模型承担实际写作。权重和应用装好之后,写作流程可以在本地跑,不需要托管的文案 API。未发布的改动和未公开的语气样本可以留在开发者机器上。字体也是本地的,Sentry 是单独的、需要主动开启的元数据导出。
提示词、结构和适配器都可检查。他可以改生成设置、调查失败的响应,同时让写作这一步留在本地。模型可以替换,不过同等输出质量需要测试。Gemma 的权重单独下载,不被 PatchPitch 的 MIT 协议重新授权。
BeautifulRepo 的发布说明指南影响了这种读者优先的思路和对局限性的关注,署名保留。Codex 协助了开发和写作。视频使用本地 Kokoro 旁白和原创程序化音乐。
参赛类别方面:最佳 Gemma 使用,三种格式都由真实本地推理写出;最佳 GitHub Copilot 使用(通过 GitHub Actions),该类别明确包含 Actions 自动化,链接的 CI 运行验证了实现,Codex 是编码助手;最佳 Sentry Agent 追踪,有真实的模型和校验跨度、观测到的延迟和 token、一个标注过的受控错误,以及一个被检查过的隐私发现。
你的产品值得一个好故事。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.