網站更新歷程
每天/每週的 micro-update。網站、SEO、自動化、踩坑——全部進這裡。
2026-08-18
把斷更的 82 天補回來:這頁最後一筆停在 5/28
今天才發現這頁最後一筆是 5 月 28 號 中間整整斷了 82 天。同一段時間網站進了 592 個 commit 散在 58 個工作日 — 產出最密的一段反而完全沒紀錄。原因不是懶:後台的行內編輯在 DL-024 退場之後 更新這頁只剩「本機改 log.json 再 commit」這一條路 沒有入口也沒有提醒 就這樣忘了三個月。下面 36 筆是回頭從 git 紀錄補的 日期照 commit 當天 措辭是今天寫的 — 不是那天寫好放著。順手做了一支腳本 以後跑一次就把「上次記錄之後的 commit」整理成草稿 我審過再進日誌。
honesty content milestone
2026-08-18
shiftdeck 教學補 5 張操作截圖 + 深色模式下常見問題區還是亮底
(1) 免費工具庫的 shiftdeck 那篇全是文字 讀者照著做會不確定自己點對地方沒有 補 5 張操作截圖 順手讓工作流程的渲染器支援圖片區塊(本來只吃文字跟程式碼);(2) 深色模式下文章的常見問題區還是白底 一片亮。查下去是那段的顏色直接寫死在行內樣式 主題變數蓋不掉。改成走 .article-faq 這個 class 顏色交給 token 反轉 深淺兩色各自吃自己的值。
content workflows dark-mode bugfix
2026-08-17
補完 11 篇缺圖封面 撞到 Vercel 把 404 快取一年 + 手機 App 感三件組
想把剩下 11 篇沒封面的補完 卡在一個看不見的地方:新圖 push 之後 部署還沒跑完我就先開了網址 Vercel 給 /assets/* 的是一年長快取 連那次的 404 一起收下去 — 圖後來上去了 那個網址還是一年內都回 404 重新部署也沖不掉。當下的解只有改檔名換一個乾淨網址 事後把 covers 與 news 兩個目錄整個退出長快取 讓 404 最多毒一天。還發現週報跟月報是手寫頁 建置報告說「0 篇缺封面」但那些頁面根本沒引用封面 — 統計只看資料 不看頁面真的有沒有印出來。同一天另做手機三件事:換頁轉場(不再白閃)、離線也打得開讀過的文章、文章加閱讀環取代細進度條。
covers cache vercel bugfix pwa
2026-08-16
週報 / 月報改成主題卡 + 補發漏掉的週報 #11
週報跟月報本來塞在 SEO 歷程頁的一個摺疊區裡 要點開才看得到。攤開來對帳才發現 #11 根本沒發 — 藏著所以沒人注意到少一期 包括我。改成跟 Phase 卡同一種主題卡 一眼看得到有幾期 另加一頁總覽把期數列齊。版型改了兩次 第一次改成卡片但跟旁邊那排長得不一樣 二次澄清後才對齊。
seo ia content
2026-08-13
手機 PageSpeed 74 → 96:訂閱表單為了一個 email 欄位拉整套前端應用
手機分數掉到 74 追下去主因是訂閱表單 — 那個嵌入框為了一個 email 輸入欄 把整包前端應用拉下來 而且我把它掛在 123 個頁面上。改成門面模式:平常只畫一個長得一樣的假表單 真的點下去才載入真的那個。延遲載入擋不住這種 因為那不是圖片 進視窗就開始跑。同批還做了首頁封面補 AVIF(少 384KB)、墨戲引擎改按需載入、詢問彈窗延後、手機關掉流光。分數 74 → 96。留一條給自己:新增任何第三方嵌入之前 先問「能不能點了才載」。
performance newsletter substack
2026-08-13
About 頁 hero 改成 3D 翻書 + 定位詞從實踐者換成探索者
About 原本是側置人像加一堆卡片 資訊散在好幾個區塊。改成一本可以翻的書 把「探索者檔案」整份併進內頁 撤掉外面的卡片跟像素頭像。定位詞也換了 原本寫「實踐者」聽起來像已經到站 換成「探索者」比較接近現在的位置。同一天山景背景退役 改成進頁時浮一張底部小卡 問要不要開墨戲跟音樂 — 不遮內容、問過一次不再問、音樂預設不播。
about design positioning
2026-08-12
文章裡寫 HTML 標籤會被瀏覽器吃掉 + AI 新聞後台拆成兩頁
(1) 教學文要示範 HTML 的時候 標籤直接寫進去會被瀏覽器當成真元素吃掉 全站掃出 12 處。逐一補逃脫之後加一道建置期硬閘:再漏就讓 build 直接失敗 不要靜靜上線。這種問題最麻煩的是頁面看起來正常 只是少了一段字;(2) AI 新聞後台原本一頁塞新聞跟 GitHub 精選兩種東西 拆成 /admin/news 與 /admin/repos 共用同一份邏輯檔。順手修掉一個把追蹤中的 repo 判死的規則 — 過期跟被淘汰本來就是兩件事 混在一起會讓長期追蹤的專案自己消失。專案導讀也改成讀 README 不再只憑 GitHub 那一句描述。
bugfix build-system admin news
2026-08-09
行內名詞白話解釋 + /glossary/ 總表 + 後台反白選字就能標記
新手教學裡的名詞本來只在文末列一排 讀到一半看不懂還要捲到底。改成行內標記 點一下當場跳白話解釋 另開一頁 /glossary/ 收全站總表。摘要區刻意不標 那一區要留給語音朗讀。後台做得更遠:反白選字就跳工具列 可以標名詞、加連結、粗體、螢光筆、程式碼 每格即時預覽 名詞庫沒有的可以當場補一條。文章後台整個改成視覺編輯器 預覽走正式的渲染器 不再是存了才知道長怎樣。
glossary content admin editor
2026-08-08
免費諮詢線上預約上線 — Cloudflare 擋掉了所有確認信
陪跑服務本來要私訊約時間 一來一往很久。做了 /booking 直接成立制 選時段送出就算約好 後台是行事曆式的。上線第一版所有確認信都寄不出去 而且是安靜地失敗。先把寄信服務回的錯誤訊息整段丟進後台紅框 才看得到真正的原因:Cloudflare 把沒帶瀏覽器識別字串的請求擋掉了 補上就通。這件事的順序值得記:先讓錯誤說得出原因 再去猜。金鑰也加了去空白 後台顯示金鑰外觀 貼錯一眼看得出來。
booking product bugfix
2026-08-08
英文版下架:5 天 107 次曝光 0 點擊 + 首頁改走漏斗動線
8/3 上了首批 5 篇英文文章 到 8/8 搜尋主控台顯示 107 次曝光 0 點擊。內容是中文翻的 目標讀者其實不存在 維護成本卻是雙倍。決定下架 9 個舊網址永久轉回中文版(目錄型網址不吃萬用字元 要一條一條列)。設定檔改副檔名留著 想復活改回檔名就行。同一天首頁改走漏斗動線 加學員成果區 把 AI 新聞跟 GitHub 精選拆出首頁 首屏只留兩張卡:免費新手教學跟一對一陪跑。
i18n seo home
2026-08-07
文章掛主題實體標記 + 全站補上百條語境內鏈
(1) 文章的結構化資料加上 about 與 mentions 告訴機器這篇在講哪些主題實體。型別一律用 Thing 不掛子型別 — 測過 Rich Results Test 判成 SoftwareApplication 是無效的;(2) 內鏈分三批補 先拿一篇試 5 條 再來 39 篇補 49 條 8 個主題頁之間補 56 條互連。麵包屑補上分類層 卡片縮圖改宣告成裝飾圖。首頁標題從 83 字元縮到 57 主詞從技術詞改成「普通人」描述帶進免費跟收費兩條線。
seo geo schema internal-links
2026-08-06
7 月月報:曝光 10.7 倍、點擊 5.1 倍 + 資歷宣稱全部改成絕對日期
7 月月報出來 搜尋曝光是上個月的 10.7 倍 點擊 5.1 倍 平均排名第一次進到 11 以內。同一天做了兩件跟誠實有關的:(1) 全站「三個月」這種相對說法改成絕對錨點「2026 年 4 月中」— 相對說法會自己過期 三個月後就變成假的;(2) 產品網站的時程改成真的 最小可用版 3 階段 2 到 3 週 真內容另外兩個月 原本寫得太漂亮。工程面補了 10 個沒有入鏈的孤島頁 還寫了一支站內鏈稽核腳本 不用等外部工具爬完才知道哪頁沒人連。深色模式順手改成霧黑消光質感。
seo data honesty
2026-08-05
首頁 M 版式:桌機報紙頭版 / 手機分頁 + SEO 歷程整個降權
首頁桌機改成報紙頭版排法 手機改成分頁式的入口頁 兩邊不再硬套同一個版。導覽列也改制:漢堡移到左上開左側抽屜 右上角放搜尋鈕。文章清單 12 頁改成左圖右文的橫式。另一個決定比較大:SEO 歷程從主選單跟頁尾撤掉 期號對照表搬進後台 — 那個系列是給我自己記錄的 對第一次來的讀者是干擾。後台新增 /admin/reports 週報月報儀表板 掛在既有的 API 上不新增雲端函式 原始資料擋在登入後面。
home design ia admin
2026-08-04
全站 SEO 審計修 60 條 + 寫死的站台數字改成自動生成
四個維度審一輪抓出 60 條 最高優先的當天修完:常見問題結構化資料合規、10 篇旗艦長文補可引用短答、AI 新聞補上發布者欄位。最值得記的是「規模數字」那條 — 文案裡寫死「70 幾篇文章」這種數字 站台一長就變成假的。改成建置時自動數 再加一道測試閘 有人寫死就在測試階段擋下來。同一天下架了 skill-picker 那篇 新手教學跟工具庫的摘要改成不摺疊。
seo audit honesty build-system
2026-08-03
新文通知復活:訂閱表單 + 每週摘要自動產稿 + 發布器連撞三個地方
電子報整條線重接:文章底部放一欄式訂閱表單 每週摘要由雲端排程產稿 本機用反偵測瀏覽器自動發布 首期一次寄 16 篇。發布器連撞三個地方:(1) 送出後跳的插頁沒處理 流程停在那;(2) 驗證發布成功本來查 JSON 介面 有快取會誤判成失敗 改查存檔頁的 HTML;(3) 擬人點擊有穩定性檢查 表單一直動就永遠不點 要繞過。文案有一條硬規則:不承諾頻率 只講「有新文章會通知」— 承諾了做不到就是失信。
newsletter automation content
2026-08-02
後台安全整輪:可撤銷的登入階段、裝置管理、IPv6 讓限流形同不存在
掃描確認的四批問題一次修完 順著往下挖出更根本的三件:(1) 登入階段改成可撤銷 加裝置管理頁 狀態存進 Redis 舊憑證不用等過期;(2) 限流的來源識別本來用完整 IPv6 位址 但手機的臨時位址每次都不一樣 等於限流不存在 改成用 /64 網段;(3) 認證掃描的回應要一律 fail closed 這條複審三輪 第一輪擋空值 第二輪發現畸形回應能繞過 第三輪才確認每個欄位都要在轉成字串之前驗。另加樂觀鎖防兩邊同時改蓋掉彼此 主憑證不再落地 三個後台頁都補未儲存離頁防護。
security admin infra
2026-07-30
78 篇文章搬成一篇一檔 + 後台改 commit 制 全站 HTML 少 706KB
這是拖最久的技術債。文章內容本來散在 build.py 裡 後台改字則另存一份覆蓋層 — 兩份事實 每次都要猜哪個算數。分兩階段拆:先把 78 篇搬成一篇一個 JSON 檔 後台改走 commit 制 改完直接進版本控制;再把 SEO 歷程 28 篇規格化 靜態頁文案 363 條也搬進資料檔。覆蓋層整條移除後 產出的頁不再包編輯用的標記 全站 HTML 少 706KB。同一天還把 Threads 發文從網站的每日上線腳本整段移除(先軟拆再硬拆 完全隔離 任一邊出事不再拖另一邊)以及 AI 新聞的候選歸零制三刀:淘汰要留決策帳、跨週去重加語意去重、修訂模式與配圖對帳。
refactor admin performance automation milestone
2026-07-29
AI 重點新聞系統上線:首頁欄位 + 發布後台 + 站內導讀文章庫
每週三挑幾則 AI 新聞 首頁開一欄 站內留 /ai-news/ 導讀庫 後台負責選稿發布。管線分工分得很清楚:日期網址這類機械欄位由腳本從候選檔校正 agent 只管選稿跟寫中文 — 讓 AI 填這種欄位遲早會編。資訊狀態多一個「不顯示」 純事件報導不掛實測標章。同批做了 /admin/articles 文章編輯後台 跟七項微互動(概念移植、零依賴、全部尊重減少動態的系統設定)。發布時撞到分次發布會蓋稿 把存檔合併搬到伺服器端解掉。
news admin automation product
2026-07-28
GQ 編輯雜誌風全站改版 + 深色模式回歸 + 115 張封面缺圖歸零
全站視覺換成編輯雜誌風 是上線以來最大的一次改版:文章頁加自動目錄、新手教學跟 SEO 歷程改成主題卡索引各章節獨立成頁、About 改人物特輯、工具庫版型對齊。深色模式也回來了 走夜間水墨 跟隨系統可手動覆蓋 — 順手修好切換鈕的太陽圖示 那個圖示沒有描邊 在深色底下等於隱形。封面最花時間:用 ChatGPT 生圖 分四批(14 + 28 + 25 + 22)中間撞到額度中止 隔天補完最後 26 張 全站 115 張缺圖歸零。
design covers dark-mode milestone
2026-07-27
服務頁改造:三個方案各自獨立頁 + 證據區 + 全面白話化
服務頁本來一頁塞完 方案叫「方案 A / B / C」讀者要自己對照。改成卡片索引 三個方案各自獨立成頁 編號換成服務名。文案照著割韭菜課程的健檢清單全面白話化 加一區可驗證的證據。新增自動化交易系統陪跑(試營運價 NT$ 5,000)。還修了一個很基本的:官方 LINE 本來是段落裡的文字連結 完全看不出可以點 改成實心按鈕。
service copy product
2026-07-24
兩起「本機跑得動 線上掛掉」— 檔案根本沒進版本控制
同一晚連續兩次 網站部署後整站掛掉。第一次是名詞庫少一條詞條 規格檔已經引用 但那條沒被加進去 建置直接拋錯;第二次是一支模組 build.py 已經 import 了 檔案卻沒 commit。兩次都是同一個原因:本機有那個檔 所以本機一切正常 版本控制裡沒有。定位方法是拉一份乾淨副本重跑 立刻重現。這件事後來變成新手教學「部署靜默失敗排查」那篇的素材 — 自己踩過的最好寫。
deploy bugfix content
2026-07-22
全站站內搜尋上線(純前端零依賴)+ 接上 GA4 看大家在找什麼
建置時順便生一份搜尋索引(100 條 排程存稿排除在外)導覽列放即時搜尋框 沒有任何外部服務 而且是點進搜尋框才載索引 平常不占載入時間。隔天接上 GA4:記搜尋詞跟命中數(1.2 秒防抖去重)也記點了哪一筆結果 — 站內搜尋是讀者直接告訴你他要什麼 不記下來太可惜。同批在 robots.txt 加了內容訊號明文宣告 搜尋、AI 輸入、AI 訓練全部允許。
search seo data
2026-07-21
新手教學改成 8 個主題大區 — 用讀者要什麼命名 不用我怎麼做命名
新手教學累積到幾十篇之後 原本的分類是照我實作順序長出來的 讀者看不懂。改成 8 個主題大區 名字全部照讀者的問題寫:基礎知識 / AI 怎麼選 / 第一次動手嘗試 / 設定 AI 個性習慣 / 自動化怎麼做 / 出錯看這裡。區內才照實作流程排。還有一個細節:還沒上線的主題區本來整區隱藏 編號會斷 改成保留標題框加一行「N 篇排程中 MM/DD 起上線」1 到 8 不斷號。
ia content copy
2026-07-18
發文儀表板 + 手寫零依賴 MCP server + 每週一雲端自檢
貼文有自動發的也有手動貼的 兩邊對不起來。做了三層:(1) 本機儀表板把自動跟手動合成一條時間軸 會偵測撞期 重新整理就重新對帳 包成桌面捷徑無視窗啟動(單一實體鎖撞到 Windows 的位址重用 同一個埠會疊綁 關掉才有退讓路徑);(2) 手寫一支零依賴的 MCP server 兩個工具 重用儀表板的對帳邏輯 讓 AI 直接查狀態;(3) 雲端每週一 09:10 定時巡管線 開 issue 報告。查班次紀錄時撞到權限不足 改成先由工作流程拍快照 AI 只讀檔。
threads automation tooling
2026-07-17
月報架構上線 + 補發 5 / 6 月兩期 + 71 天權威基準盤點
週報之外補上月報 走同一套帳本驅動 加雲端排程提醒。先補發 5 月跟 6 月。同時做了一次 71 天的權威基準盤點 從搜尋資料回頭看哪幾頁真的在撐流量:CSP 那篇三重確認是點擊王、what-is-ai-workflow 二輪測試修正、最高優先那批已經有進前 10 的早期訊號。這次盤點也讓我把一個改壞的標題在一小時內還原 — 24 天的資料證明那頁本來就健康 不該動。週報同時瘦身 拿掉全部教練引言跟「下週可以做的 3 件事」。
seo data automation
2026-07-15
週報 #8:點擊崩 76% 連 3 期預測全被打臉 之後週報不再預測
這期數字很難看 搜尋點擊掉 76% 平均排名退到 16.5 前幾期一直在觀察的那組查詢從 25 次曝光崩到 0。更該記的是連續三期我都寫了「下週應該會怎樣」 三次都錯。隔天整個週報改寫:語氣轉成陪讀 拿掉預測跟打臉盤點 改成補白話的 SEO 觀念解說。手上只有一個站、幾十天資料 就不該寫得像能預測 — 那不是分析 是猜。
seo data honesty
2026-07-14
額度那篇機制整段重寫 — 我以為的月上限其實是週上限
7/8 那天我被擋額度 當時寫成「撞到月消費上限」。回頭對照官方文件的三層限制才確認 真正撞到的是週使用上限 畫面上那個月度數字是當期的顯示錯誤。同一個事件在好幾篇文章裡都提到 全部正名(7 處)分類卡片也一起改 整篇機制順便重寫 補上 Pro 到 Max 的沿革。另外兩個用詞被本人打回:「揹字」全掃清零、「預算帽」改成「額外預算」— 帽是我自己造的怪詞 讀者看不懂。
content honesty pitfalls
2026-07-12
關鍵字缺口擴張 13 篇 + 資歷宣稱全站錨定 4 月中 + 新手教學改每日一篇
照關鍵字缺口分四批補:最缺的 2 篇(Claude 跟 Claude Code 差在哪、AI Agent 怎麼用)、長尾 9 篇(排錯 6、MCP 生態 3)、一張 AI coding 工具對照總表加一篇逐項查證的 Codex CLI 對照文、兩支工具(選題用的語意地圖、把數據攤開的公開成績單)。同一天做了一件更重要的:全站盤一次「我做多久了」這類說法 統一錨定到第一次用 Claude Code 的 2026 年 4 月中 不再寫相對時間 也不再讓 AI 代筆時自己推年份(當天就抓到 2 處編造的年份)。內容節奏改成每日一篇 標題全部白話化 — 本人指示以看得懂為主 不要寫得像技術文件。
honesty seo content copy
2026-07-08
cloaking 誤稱更正 + 拆掉全站 HowTo 標記 + Vercel 把整站當成 Python 應用
(1) 之前寫的 cloaking 說法不對 更正;HowTo 結構化資料全站拆除 對齊 Google 現況 — 那個型別已經不吃了 留著只是雜訊;(2) 批次修 119 筆超過搜尋結果顯示寬度的標題跟描述;(3) 部署這邊出了比較大的事:Vercel 把根目錄的 server.py 當成整站進入點 空殼的 pyproject.toml 又讓整個專案被分類成 Python 應用 靜態檔全部走錯路。把 server.py 移進 scripts/、刪掉空殼設定、框架預設改成 Other 再補一段路徑修正讓函式的同目錄 import 在新版執行環境下可用 才恢復成「靜態檔走 CDN + 少數 API 走函式」的架構。
seo honesty vercel infra
2026-07-04
首頁改東方水墨 × AI 實驗室 + 墨戲互動層 — 一天來回 21 次
首頁整個換成水墨風 加一層可以互動的墨戲畫布。這天改了 21 次 大部分是被現實打回來的:hero 圖沒去背 底色一換就露出方框;去背之後又被墨戲的畫布蓋掉 要隔離圖層;墨戲用了色彩相乘模式 在某些顯示卡上不合成 整片白蓋住頁面 改成真透明;山景固定背景會裁掉寶塔跟峰頂;頁尾文字疊在山景上看不清 加光暈加粗還是不夠 最後把山景移出主內容區才解決。後面兩天還在調墨流的速度跟馬賽克感。同批加了收合式的迷你背景音樂播放器跟標楷體字型堆疊。
home design ux
2026-06-25
週報從手寫靜態檔轉成建置生成
前幾期週報是一篇一個手寫的 HTML 檔 每次要改版型就得逐檔改 而且很容易漏。把 #4 跟 #5 轉成建置時生成 資料走同一份帳本 版型改一次全部跟上。這也是後面月報、季報能直接接上來的前提。
seo refactor automation
2026-06-18
全系列 SEO 文章移除編造的機制說法 對齊現行 Google 政策
回頭審整個 SEO 連載 抓到最嚴重的一類問題:AI 代筆時會很自信地把 Google 的排名機制講得像有內部文件 — 分數怎麼算、懲罰怎麼觸發 寫得煞有其事 其實沒有來源。全系列逐篇對照官方現行說法 沒有依據的機制描述整段拿掉 或改成有出處的版本。這件事的成本很高 但一篇被抓到編造 整個站的可信度就沒了。
honesty seo content
2026-06-12
閱讀器模式上線 + 全站去像素風 + SEO 連載改自動上線
三件:(1) 全站文章加閱讀器模式 字級、行高、欄寬、明體都可調 另加閱讀進度條;(2) 像素遊戲風退役 改成單一淺色閱讀風 — 這也順手治好一類看不見的問題:固定色配上主題變數 深色模式下會出現隱形文字(導覽列滑過去全黑就是這樣來的);(3) SEO 連載改自動上線 每日排程檢查有沒有到期的 到期就上線並發通知。三天後照 yu-wenhao.com 的排版重新對齊:內文 20.5px、行高 1.8、行寬約 46 字。
reader design automation
2026-06-11
全站名詞解釋系統上線 — 61 篇文末補名詞解釋
開一個中央名詞庫 加渲染掛鉤 先打樣 2 篇確認樣子 再往三個系列鋪:新手教學 25 篇、工具庫 8 篇、SEO 歷程 28 篇。sitemap 也改成逐篇的最後修改時間 不再全站同一個日期。同批把 SEO 歷程 13 處裸縮寫補上中文括號註解 — 快速答案那一段是給機器抓的 塞一堆英文縮寫等於沒說。
glossary content seo
2026-06-03
週報 #3 上線 + 修掉 #2 / #3 對跳出率的誤讀
週報 #3 加了查詢字詞表格。發出去之後回頭看 #2 跟 #3 都把工具庫那頁的跳出率解讀成「付費牆讓人跳出」 但那個付費牆根本沒有真的上線過 — 寫的時候把「計畫過」記成「做過」了。兩期一起更正。這種錯很難自己發現 因為讀起來完全合理。
seo data honesty
2026-06-01
SEO 30 天四週衝刺一次交件 + 5 項 AEO 升級
照週切成四批做完:第一週收斂定位句 回收 Claude Code 與 AI Agent 的關鍵字面;第二週補 3 篇認知層的洞 主軸改成 Claude Code;第三週工具庫 9 篇四件套 加新手教學的重點摘要自動升級;第四週主線長文加 3 篇規格 加 about 的可信度區塊。接著 5 項 AEO 升級:語音朗讀標記、工作流程結構化資料、清單結構化資料、常見問題式重點摘要、表格欄位宣告。首頁的實驗室摘要改成可摺疊 標籤從「先講重點」換成更直白的說法。連載 #18 到 #24 分三批一次補齊。
seo geo content
2026-05-30
PageSpeed 手機 100 分 / LCP 1.5 秒 + 無障礙對比度連修三刀
把初始化的 JS 內聯進 head 省掉一個阻塞渲染的來回 手機 PageSpeed 到 100 最大內容繪製 1.5 秒。無障礙那邊比較久:先補主要地標跟小字對比度 之後又連修兩刀 — 靠 DOM 稽核才抓出真正的 4 個來源(本地兩個主題都驗過 0 失敗)最後 95 到 100。同批加了 llms-full.txt 跟 head 的宣告(給 AI 抓的整包純文字)工具庫 9 篇每篇補一段「整段複製給 AI agent」的即用提示詞 還做了排程上線開關 讓文章可以先寫好排隊。
performance a11y geo
2026-05-28
workflow 圖書館 8 篇據實重寫(原本是 AI 唬爛的)+ build 系統加 code block 支援
填 workflow 圖書館真內容時 發現之前 AI 代寫的 spec 有一半是「合理地編」的 — bot 排程寫每天 8am 真實是 20:00、stack 寫 GitHub Actions 真實是 Claude Code 排程、IG bot 寫 Newsdata.io 真實是 RSS + 兩階 LLM。對照 8 個真實專案(github-trending-bot / ai-news-ig-bot / TRADERREPORT / line bot / market_scanner)逐篇重寫 每篇加一段可複製的真 code。順手把 build_workflow_article 升級:加 code block 區塊型別 + sop_intro 可 per-spec 覆蓋(蓋掉預設的「持續整理中」)。還抓到差點把別人的開源 skill 寫成自己 workflow 的雷 — 來源歸屬守死。完整的 E-E-A-T / 可引用性 / Topical Map 思考打包成 SEO 連載 #15-#17。
workflows eeat build-system content
2026-05-28
手機數據表溢出修掉 + family-line-bot 改分類「生活自動化」+ 全部推上線
三個工程細節:(1) Pillar B 數據表在窄螢幕被 overflow-x:clip 切掉右欄 加 table width:100% + 720px 媒體查詢的 word-break / 縮字 手機 375px 實測零溢出;(2) family-line-bot 本來掛在「內容生產 bot」但它是家庭行程提醒、不產內容 獨立成新分類「生活自動化」(配 nes-purple)workflow hub 自動長出新 cluster;(3) ga4 那篇還殘留的「免費版 / 付費版」字樣清掉 對齊全站全免費。今天累積的 commit 一次推上 Vercel 正式站。
rwd ia deploy
2026-05-28
SEO #14 上線 + about 頁 entity signals 改造:把感性故事補上給機器看的結構
被 AI 引用(#12 第一筆 ChatGPT referral)之後 把 about 丟給另一個 AI 從「知識圖譜」角度評一輪 它說「感性滿分 但給機器看的 entity 訊號幾乎是零」。所以做了 4 件:(1) ProfilePage schema 的 mainEntity 從 stub(只有 name + url 兩欄)改成 inline 完整 Person jobTitle + 13 個 knowsAbout + sameAs 全帶 AI 抓一次就拿到完整身分;(2) about 加「探索者檔案」結構化卡 用「目前專長領域 / 目前實戰工具」這種對齊 Google NLP 的詞 但加「目前」維持迭代感不裝專家;(3) 三個 hub 各加 FAQPage schema(什麼是 workflow / 什麼是 SEO / 什麼是 AI agent)共 12 個 Q&A 餵 AIO;(4) 整段打包寫成 SEO 連載 #14。踩到一個坑 第一版工具列塞了沒用過的 Make / Cursor 看起來專業 但 about 是讀者拿來驗證 Lab 真不真的頁 工具列跟 build log 對不上反而扣 E-E-A-T 信任分 全拿掉只留真用的。
seo geo schema eeat
2026-05-28
修兩個 reader 體驗 bug:每頁要 Ctrl+F5 + workflows 手機版型跑掉
兩個讀者體驗 bug:(1) 有快取的電腦每頁都要 Ctrl+F5 才看到更新 丟給 agent 查 root cause 是 Vercel 給靜態 HTML 一個固定的 Last-Modified(2018 那個日期)讓 must-revalidate 形同虛設。HTML 改成 no-store 完全不 cache 每次重抓 靜態資源(CSS/JS/圖)維持一年長 cache 因為它們有 ?v=hash 改檔自動換版;(2) workflows hub 手機版兩欄擠成 overflow 版型跑掉 原來手機單欄的 CSS 規則 list 漏了 page-workflows 這個 class(SEO / pitfalls 都在裡面就它沒有)補上 三個 hub 手機版終於一致。
cache rwd vercel bugfix
2026-05-27
Workflows 圖書館上線 8 個免費 workflow + 放棄 paywall 改 Ko-fi 隨喜
新開一個 /workflows/ 分類 收 8 個我自己每天 / 每週在跑的 AI workflow(Threads 自動發文 / IG 新聞 bot / Family LINE bot / 交易日誌 PWA / Market Scanner / GA4 referral 倒推 / Brand profile 鎖定 / Voice profile 萃取)。本來規劃一杯星巴克解鎖整個圖書館 但自己當讀者想了一下 我自己就討厭買工具還要付費 也討厭好東西鎖在付費牆後面那種焦慮營銷。所以 paywall 整個拿掉 全部免費 公開閱讀。想斗內的人文章底部放 Ko-fi 隨喜 不付完全沒差。這個決策跟 brand「不做高壓銷售」一致 順便解掉「這種網路一搜就有的 workflow 憑什麼收錢」的尷尬。
workflows pricing product
2026-05-27
拿掉進場動畫(讀檔 popup + 翻頁)+ 三個 hub 統一成書本感
(1) 進站跳出來的「Loading archives...」遊戲讀檔對話框 + 文章進場翻頁動畫 全站拿掉 看起來酷但每次進站都要等一下 對回訪的人是純干擾 順手把對應的 JS / CSS 一起清掉省 ~4KB;(2) 三個 hub 裡 Workflows 那個書本感最舒服(較淺的書桌底色 + 乾淨的右頁目錄)把 SEO 歷程 / 新手教學對齊過來 背景統一成淺米色 拿掉右頁每個分類下面那段囉嗦說明 三個 hub 視覺終於一致。SEO 歷程 hub 左頁順手補了個週報入口。
ux performance refactor
2026-05-27
Windows 安裝文章改造:標題瘦身 + 補滑鼠操作版 + 排到第一篇
新手教學的 Windows 安裝那篇調整:(1) 標題拿掉「非工程師全程截圖」 截圖不需要 標題也太長;(2) 內文「Win + X 選 PowerShell」這種鍵盤快捷鍵 補上滑鼠操作版(左下角開始鍵按右鍵 → 選 Windows PowerShell)真新手不一定知道有快捷鍵這種東西;(3) Node.js / claude.ai 加官方連結直接點;(4) 這篇排到新手教學第一位 環境裝不起來後面全都免談 它才是真正的起點。
content newbie accessibility
2026-05-07
SEO 升級 Phase 1:主題定位 + 文章 slug 改搜尋句 + 相關文章互連
依 SEO 顧問建議的 4 階段第一輪:(1) hero eyebrow 加上「AI 新手成長實驗室」當主題詞,H1 保留轉換語,新增小字「這個網站本身就是我用 AI 做的」當作 EEAT 證據;(2) 首頁 focus 從「兩主軸 + 一核心」改成「三個主題入口」,把新手踩坑卡放在第一張當主流量入口;(3) 文章 slug 改成搜尋句子:claude-code-first-website → claude-code-beginner-make-website、claude-code-local-ok-deploy-not-updated → claude-code-vercel-deploy-not-working,舊 URL 在 vercel.json 設 301 redirect,舊權重不丟;(4) build_pitfall_article 加 related 區塊,兩篇文章互相連結,建立 topic cluster 信號。Phase 2(資料夾改名)下一輪做。
seo structure content
2026-05-07
上 logo / favicon:搜尋結果與分頁終於有圖示
從 1024×1024 的 chibi 化學家 logo 自動產出整套 favicon:favicon.ico(含 16/32/48)放 repo 根目錄、PNG 16/32/48/180/192/512 全套放 /assets/,加上 site.webmanifest 給 Android Chrome 加入主畫面用。同時補上 og:image 1200×630(深色背景置中 logo)讓 LINE/IG/FB 分享連結時有預覽圖。Google SERP 抓得到 favicon 了,行動版搜尋結果旁邊那顆小圖示終於不是空白。
branding seo ux
2026-05-07
資安第三輪 + 文章管線抽 helper:移除 hero CTA、Origin 白名單、新手踩坑改資料驅動
三件事一次:(1) 確認移除 hero「預約免費諮詢」按鈕(使用者明確要求);(2) 新手踩坑文章改成資料驅動 — 抽 build_pitfall_article(spec) helper,兩篇既有文章變成 PITFALL_ARTICLES 列表的兩個 dict,新增第 3 篇只要 append 一個 dict,不再需要每篇 50+ 行的 hardcoded function。所有既有 data-edit key 一字不差保留,使用者已存的 override 仍可套用;(3) 加 origin_ok() 在 _helpers.py 並串到所有需 auth 的 PUT/POST 端點(overrides/log/content/subscribers/performance)。Origin allowlist 包含 coolkidlab.com 與 localhost 常見 port,可用 ALLOWED_ORIGINS env 擴充。沒有 Origin/Referer 的純 server-to-server 請求仍然只靠 token 驗證放行。順便修掉 api 多個 handler 殘留的 send_error,send_json tuple 寫法。
security refactor content-pipeline
2026-05-07
修復:把 hero 預約諮詢按鈕加回來,使用者已存的 LINE 連結重新套用
上次精簡 hero 把「預約免費諮詢」按鈕拿掉,但使用者之前已經把 home.cta1.href 改成自己的 LINE 連結,按鈕消失等於連結沒地方套。從 Supabase 撈出來確認 8 個 override 全部完整存在(包含 H1 黃字、lede 多行、社群連結、LINE 連結),唯一受影響的就是這顆按鈕。把它加回來之後使用者已存的 LINE override 自動繼續生效。順便修 api/overrides.py 重複 import send_error 的小髒亂。
bug-fix ux
2026-05-07
資安第二輪:API 重複收乾、socket 排空、Supabase 單次寫、後台 token TTL 縮短
六項中等修一次處理:(1) server.py 砍掉 _json/_auth_ok 兩個重複實作,全部改用 _helpers 的 send_json/auth_ok(自動拿到 timing-safe 比對);(2) read_body 遇到超過 2MB 的 body 會把 socket 內容讀完丟掉,避免後續 keep-alive 請求被污染;(3) supabase_write_overrides 已用 return=representation 比對過了,write_overrides 多做的二次讀拿掉,省一次 round trip 也避免並發誤判失敗;(4) edit-overlay EDIT_PAGES 改成從 DOM 的 nav 即時讀,build.py NAV 變更不用再同步第二份清單;(5) login.html remember-me 從 30 天降到 7 天,被偷的 token 有硬上限;(6) 5xx 錯誤新增 send_error 包裝,會把 traceback 印到 stderr,server log 看得到失敗原因。
security infra refactor
2026-05-07
資安一輪修:rate limit 種子、timing-safe 認證、HTML escape、href 白名單
三個 agent 並行 review 後,把 5 個 HIGH/CRITICAL 一次處理:(1) ThreadingHTTPServer 下 _RATE_LIMIT_MEMORY 加 threading.Lock,避免並發繞過;(2) page_shell 把 title/desc/canonical 用 html.escape 包起來,防止 Codex 之後寫文案不小心放入 <、>、" 或 & 注入 head;(3) _client_id 改用 X-Forwarded-For 最後一段而非第一段,Vercel 反代後真實 IP 在最後,原本可被偽造繞過 rate limit;(4) auth_ok 改 hmac.compare_digest,token 不再可用 timing 推;(5) edit-overlay isSafeHref 拒絕 ../、./、// 開頭,去掉相對路徑與 protocol-relative 開放重定向風險。preview 驗證:頁面正常、PUT 無 token / 錯 token 都 401、isSafeHref 新規則全部命中。
security infra
2026-05-06
首頁 hero 簡化 + 主題切換中文化
首頁「我是誰」下方拿掉「→ 預約免費諮詢」按鈕,hero 只留「看看陪跑內容」一顆主 CTA,避免雙 CTA 互搶。右上角主題切換的 LIGHT / DARK 改成「☀ 淺色 / ☾ 深色」,整站視覺語言全中文。site.js 加上 cache buster 強制更新。
ux copy i18n
2026-05-06
新手踩坑第二篇:Claude Code 本機正常但上線沒更新
新增第二篇新手踩坑文章,主軸是幫童裝店做手機庫存營收管理頁時遇到 local 正常、正式站沒更新、程式碼狀態混亂的問題。文章把情緒化卡點整理成 local / Git / GitHub / Vercel 四層檢查,SEO 鎖定 Claude Code 本機正常、Vercel 沒更新、部署沒變這類長尾搜尋。
newbie-pitfalls claude-code vercel content
2026-05-06
新手踩坑新增第一篇:第一次使用 Claude Code 做網站
把第一次使用 Claude Code 做投資心理測驗網站的踩坑整理成文章,放進新手踩坑板塊。主軸收斂到中文路徑、PowerShell 權限、AI 只規劃不執行、GitHub 與 Vercel 上線,標題與段落也朝 Claude Code 新手、AI 做網站、GitHub Vercel 這些長尾搜尋調整。
newbie-pitfalls claude-code content
2026-05-06
Nav 微調:陪跑服務的標籤縮回「陪跑服務」
上一輪把 nav 改成「一對一 AI Workflow 陪跑」太長,手機 nav 容易塞爆。縮回「陪跑服務」維持簡潔,服務頁 H1「AI Workflow 新手陪跑」保留具體性。
nav copy
2026-05-06
SEO 歷程精簡:移除 Topical Map,技術 SEO 提到 GSC 月報之前
SEO 歷程 hub 從 3 卡縮成 2 卡:技術 SEO 文章在前、GSC 月報在後。Topical Map 卡片與 /seo-journey/topical-map.html 一併移除,sitemap 同步更新。理由是先把已有實質內容的兩個區塊做穩,pillar + cluster 規劃留到後面有更多文章再啟動。
seo-journey structure
2026-05-06
重構導覽:新增「新手踩坑」、社群併入關於頁
導覽列改成:首頁 / 新手踩坑 / SEO 歷程 / 量化研究 / 網站更新歷程 / 一對一 AI Workflow 陪跑 / 關於。新增 /newbie-pitfalls/ hub,預備收錄非工程師摸 AI / Claude Code / 自動化的真實踩坑筆記,每篇結構固定為「卡點 → 我原本以為 → 怎麼查 → 怎麼解 → 下一步」。聯絡頁的 email 與社群區塊併進關於頁底部,contact.html 仍存活以保留現有 CTA 連結。
nav structure content
2026-05-06
修無痕視窗 FOUC:[data-edit] 套用前先隱藏
重整或無痕進站時會先閃一下舊文字再跳到新文字(FOUC)。原因是 edit-overlay.js 是 defer 載入,等它從 /api/overrides fetch 回 Supabase 套到 textContent 之間有 100-300ms。改成預設 visibility:hidden,套完後 body 加 .overrides-ready 才顯示;含 1 秒 timeout fallback,API 卡死也會顯示預設值。
ux performance
2026-05-06
GSC 新手教學改成 6 區塊文章:卡點、誤判、查法、解法、下一步
把 SEO Journey 的 GSC 教學頁放到技術 SEO 文章頁,並改成固定文章模板:卡點、我原本以為、怎麼查、怎麼解、下一步、Build Log 連結。文章更像公開學習紀錄,而不是百科式教學,也補上 SEO Journey 輕量免責聲明。
gsc seo-journey content
2026-05-06
重寫首頁定位:從「AI Workflow Lab」改成「陪你做出第一個能跑的 AI workflow」
首頁 hero、痛點區、offer 改寫,主軸從抽象的「實驗室」收斂成具體的「陪非工程師做出第一個能跑的 AI workflow」。CTA 主按鈕改成「預約免費諮詢」,新增痛點區與「你會完成」4 條 outcomes。SEO Journey hub 也改成「不是 SEO 大師課,是把網站做給 Google 看懂的紀錄」。
positioning copy service
2026-05-06
修好 inline-edit 儲存失敗:合併 server.py 與 _helpers.py 的 overrides 邏輯
後台 inline 編輯儲存後跳「儲存驗證失敗 storage=supabase missed=...」的根因找到了:正式站跑 server.py,但 server.py 自己有一份較弱的 Supabase 邏輯(anon key 讀 + return=minimal 寫、無驗證),跟 api/_helpers.py 已修好的版本漂移。砍掉 server.py 100+ 行重複程式碼,改 import _helpers,現在寫入用 service-role + return=representation + 嚴格比對,假成功不會再發生。
bug-fix infra supabase
2026-05-06
建立 Codex × Claude Code 協作機制:coordination/ 共用工作區
Codex 寫文案與內容,Claude Code 改程式與部署。雙方透過 repo 內 coordination/ 資料夾的 brief / handoff markdown 交接,禁區規則(金融法規、品牌語氣)固定在 constraints.md 與 voice.md,避免 Codex 文案漂移。今天首次跑通:Codex 出首頁定位 brief → Claude 改 build.py → 重 build → push。
workflow ai-collab
2026-05-03
從後台 admin 新增的測試
驗證 PUT /api/log 通過
admin verify
2026-05-03
網站上線 v0.1:含後台、績效儀表板、內容階梯
今天把後台 (admin) + 即時績效面板 + 三層內容階梯都接起來。POST /api/performance 可以讓自動交易系統直接 push 數字到首頁。Email 取得免費資源的機制也上了——終於開始建立『名單』而不是『流量曇花一現』。
milestone build
2026-05-03
重新定位:把交易降為背景,AI × 個人能力放大為主軸
原本的定位太靠近『交易老師』,內心也不相信。換成『AI × 個人能力放大實驗室』後整個輕鬆很多。交易系統變成『我在做的事之一』而不是『銷售招牌』——更安全、更長久、更能持續輸出。
positioning thinking
