聯絡 EN 中文

慈濟週報 AI 管線

把編輯好的 Google Docs 變成上線週報,含 AI 改寫、語音與推播

內部使用中 獨力完成

沒有公開連結,本頁說明問題、決策與成果。

一眼看懂

問題
慈濟基金會每週出刊一份週報。
我做了什麼
一套內部系統,一次把整期週報匯入到底。
成果
每期週報都經由它出刊:編好的 Google 文件,直接變成附語音與推播的上線週報。
我的角色
獨力完成
期間
2026-01 → 2026-09

展現的能力

每一項都連到能力頁上對應的能力與等級。

問題

慈濟基金會每週出刊一份週報。編輯在 Google Docs 寫稿,要變成數位版,得手動複製每篇文章、把低解析度圖片換成原圖、寫摘要,再做電子書、通知讀者。每一期都在重複同樣的人工流程。

我做了什麼

一套內部系統,一次把整期週報匯入到底。Fastify worker 負責跑管線;Lit 做的後台讓編輯即時看進度、審稿、發布;資料、檔案與即時頻道放在自架的 Supabase,前面只開一個 Kong 閘道。Claude 透過 Claude Agent SDK 解析整期內容、把每篇改寫成數位版,並產生 SEO 描述。系統也為每篇文章生成語音、用自建的翻頁閱讀器(PDF.js 加上 fork 的 StPageFlip)呈現 PDF 電子書,並推播到讀者端 App。

運作方式

  1. Worker 把 Google Docs 匯出成 Markdown,逐張比對文件內圖片編號與 Drive 裡的高解析度檔案。
  2. 圖片壓縮後存檔,再用同一個固定鍵值換成 Drive 原圖。
  3. Claude 把整期內容解析成結構化文章,分類只能從固定的 8 類裡選。
  4. 每篇改寫成適合數位閱讀的版本並附上描述;接著用純程式把日期、數量裡的中文數字轉成阿拉伯數字。
  5. 原稿與數位版並存入庫,再逐篇生成語音。
  6. 每個步驟、Claude 吐出的每個 token 都經 Supabase Realtime 廣播,編輯可以即時看著匯入進行。

關鍵決策

  • 圖片對應改用檔名,不用 Vision。 一開始用 Claude Vision 比對,後來改成前綴對應加 Vision 備援,兩者都還是會配錯照片。最後定案是把「分類-文章-圖序」編碼寫進檔名,文件與 Drive 對不上就中止匯入,並指出是哪一張。
  • 提示詞拆成具名 skill。 解析、改寫、摘要各自是一份 SKILL.md,載入為 system prompt,單一步驟可以獨立除錯、調整。
  • 兩段逾時預算、不給工具。 原本單一 2 分鐘閒置逾時,會把慢但正常的 Opus 解析誤殺。改成首個 token 前 10 分鐘、之後閒置 2 分鐘,並串流 thinking、關掉所有工具,解析不再撞到回合上限。
  • 數字轉換交給程式,不交給模型。 用保守的白名單加測試,結果可預期。

成果

目前用於每週週報出刊。2026 年 1 月到 9 月由我一人完成,並寫了一份對照 ISO 27001 與 OWASP 的資安稽核報告。開發方式是用 Claude Code 走「規格 → 計畫 → 實作 → 審查」循環,repo 裡留有 22 份規格與計畫。