系列精選
查看全部工程師日誌
寫 Code 之外的生活觀察 — 理財、旅遊、健康、居住、時事評論
Elasticsearch 完整指南
從零開始學 Elasticsearch — 環境建置到生產環境優化
Claude Code 完整教學
從入門到進階 — Hooks、Sub-agents、MCP、Skills 開發全攻略
AZ-305 Azure 架構師認證
Azure 解決方案架構設計師五日課程筆記
Java / Spring 學習筆記
Java 核心語法、Stream API、併發控制、Spring Boot 實戰
AI Agent 架構全解析
從 harness 骨架拆解現代 AI Agent — 以 Claude Code 為例的 7 層架...
7 月房市創 19 個月新高,待售新案也堆到歷史新高:青安 3.0 上路後該換掉的三個判準
判斷現在該不該買房,過去兩年多數人用的方法是看月成交量。量起來了就是回溫,量縮就是還要再等。 這個判準這個月剛好失效。 8 月 3 日公布的數字:六都 7 月建物買賣移轉合計 20,506 棟,月增 12%、年增 8.8%,是 2025 年 1 月以來第一次單月突破 2 萬棟,19 個月新高。高雄年增 26.2%,是六都唯一破 2 成的。 同一份市場裡,另一組數字長這樣:全台待售新案從 2024 年 9 月的約 126,665 戶,到 2026 年 5 月已經累到 194,947 戶。不到兩年多出六萬八千戶,歷史新高。 兩個都是真的。它們沒有互相矛盾,因為它們量的根本不是同一件事。 舊判準一:看成交量。新判準:先問這個量是誰的量移轉棟數統計的是這個月完成過戶的案子。裡面很大一塊是前幾年賣掉、今年才完工交屋的新案,跟這個月有多少人決定買房是兩件事。 待售新案庫存統計的是還沒賣掉的。這個數字往上走,代表推出去的案子消化不掉。 用工程師比較熟的講法:一個是這個月出貨的量,一個是倉庫裡堆著的量。出貨創新高的同時倉庫也創新高,只代表前面幾年進的貨實在太多。這兩個指標同時看才有意義,只看其中...
改完 CLAUDE.md,你憑什麼說它變好了(AI Agent 架構全解析 · 加映 2)
你上週在 CLAUDE.md 加了三條規則。這週用起來,agent 好像順了一點。 那個「好像」,是怎麼算出來的? 這問題我自己答不太出來。改規則、換 model、加一個 hook,判斷有沒有變好靠的是手感:這幾次它沒再亂改檔、回報看起來比較實在。手感是一種資料,但它的樣本數是三、四次,而且每次的任務都不一樣。 awesome-agent-architecture 這個 repo 在 8 月 5 日長出了第 23 章,講的正好是這件事。這系列八篇正篇加一篇加映已經寫完,原書又更新,那就接著寫。 第 20 章記錄發生過什麼,這一章問的是好不好先講這章的來歷,因為它不是憑空多出來的。 8 月 6 日那批 commit 裡有一條 docs: rescope section 20 to observability,把原本叫「Observability & evaluation」的第 20 章縮成只講 observability,評估那整塊搬出來獨立成第 23 章。編號跳到 23,但層級還留在 Layer 6,排在第 20 章後面。 作者對兩章分工的說法是這樣: 第 20 章看的...
AI 與科技新聞摘要 - 2026/08/08
你手上跑得很順的那幾樣東西,有幾樣是靠「還沒到期的優惠」在撐? 有三個期限剛好排在一起:一個緩衝期用完了、一個優惠價快到了、一個協定的舊版本被貼上退場標籤。期限這種東西的麻煩在於,它到期之前完全不影響你,到期那天也不會有人打電話通知你。 一、歐盟的一年緩衝期用完,8/2 起執委會可以直接上門要文件歐盟 AI Act 對通用 AI 模型的義務其實 2025 年 8 月 2 日就生效了,只是給了一年調整期。那一年在 2026 年 8 月 2 日走完,執委會與歐洲 AI 辦公室從這天起拿到監督與執法權:可以要求提供文件、要求交出模型做評估、下令改正、開罰。 最重的一條是違反第 5 條的禁止性做法:3,500 萬歐元或全球年營業額 7%,兩者取高。透明度義務那條輕一些,3%,管的是像「聊天機器人要在對話一開始就講明自己是 AI」這種事。中小企業與新創取低者。 後面的日期也排好了。今年 12 月 2 日,8 月 2 日之前就上市的生成式 AI 系統要完成機器可讀標記。招聘、信用評分、教育這類高風險系統本來也排在今年 8 月,被 Digital Omnibus 延到 2027 年 ...
同一個 repo 兩個 agent:Codex 讀 AGENTS.md,Claude Code 不讀
先問你一個問題:你在 repo 根目錄放了一份 AGENTS.md,寫了專案的建置指令、程式碼風格、測試規範。你手上兩個 agent 都會讀到它嗎? 如果你的答案是「應該會吧,那是開放標準」,這篇後面幾段對你有用。 第一個判準:檔名。而這一題沒有模糊空間Anthropic 官方文件寫得很白: Claude Code reads CLAUDE.md, not AGENTS.md. 不是「優先讀 CLAUDE.md」,是不讀。 我一開始不太相信,所以去查了 agents.md 官方頁面的支援工具清單。那份清單有 23 個工具:Codex、Jules、Factory、Aider、goose、opencode、Zed、Warp、VS Code、Devin、Junie、Amp、Cursor、RooCode、Gemini CLI、Kilo Code、Semgrep、GitHub Copilot 的 coding agent、Windsurf、Augment Code 等等。 Claude Code 不在裡面。 派去查證的 agent 不放心 WebFetch 的摘要可能漏抄,直接把原始 ...
跑批跑到線上客服開始噴 429:Claude Message Batches API 完整教學
手上有 8,000 張歷史客訴工單,要一次做「分類加三句話摘要」,結果寫回資料庫給營運看。 這種任務的第一版寫法幾乎是反射動作:撈出來、跑 for 迴圈、每筆打一次 Messages API、寫回去。用 Haiku 4.5,照手上那個 tier 的 rate limit 粗算,個位數分鐘就該跑完,午餐前交差。 跑不到兩分鐘,429。 第一次修:加 sleep最直覺的修法是塞個 time.sleep()。跑是跑得動了,但你會發現 RPM 根本不是瓶頸,先爆的是 input tokens per minute。每張工單一千五百個 token,八千張就是一千兩百萬,那個額度撐不住。 於是 sleep 從 0.5 秒調到 2 秒,八千筆變成四個半小時。而且中間只要斷一次,你不知道跑到第幾筆。 第二次修:寫一個像樣的跑批器第二版就會開始長出正經的東西:併發控制、429 指數退避、失敗重試、斷點續傳、進度記錄。寫到後來你會發現一件有點好笑的事,這段「怎麼把工作餵進去」的程式碼,比真正呼叫 AI 的那幾行長得多。 然後客服部門打電話來。 線上那個客服機器人開始間歇性回不了話,log 裡滿滿的 ...
AI 與科技新聞摘要 - 2026/08/07
把一件可以反悔的事,換成一件不能反悔的事,這種交易通常要價很高。今天這幾條新聞裡,至少有四筆這樣的交易正在成交,而且成交的人多半覺得自己買到了便宜。 一、英國政府自己的測試場,agent 跑出去做了 19 件沒人授權的事英國 AI Security Institute(AISI)在 8 月 4 日發了一份事件報告,把數字攤開來寫。 時間線是這樣:2026 年 7 月 28 日,AISI 的資安團隊偵測到研究系統有異常的資料傳出(原文:「detected unusual data transfers」),宣告資安事件,並且在發現後大約一小時內完成圍堵(原文:「within roughly one hour of discovery, had contained it」)。 這場資安挑戰總共跑了 122 次(原文:「122 runs in total」),測了七個不同的模型。其中 10 次出現 AI agent 在真實網際網路上自主採取未經許可的行動,AISI 一共編目了 19 個這類動作(原文:「In total, we catalogued 19 such actions」)。 ...
六天 vibe code 出來的東西,現在有 26,000 顆星:Beads 把 agent 的待辦清單換成資料庫
2025 年 10 月 12 日,Steve Yegge 開了一個新 repo。他後來自己寫下來的說法是:設計、實作、驗證測試、發布、到把社群經營起來,全部六天做完,程式碼「only about 15k lines」。 那個 repo 叫 beads,CLI 指令是 bd。今天(2026-08-07)我去查 GitHub API,它有 26,108 顆星、1,750 個 fork,最近一筆 commit 是當天 13:40(UTC)merge 的,PR 編號已經跑到 #5382。 一個管待辦事項的東西,長成這樣。這中間發生了什麼,值得從頭講一次。 起點:那時候大家管 agent 的待辦,用的是 markdown2025 年底那個時間點,你叫一個 coding agent 做稍微大一點的事,很常見的第一步是它先寫一份計畫檔。 這個病程長什麼樣,用過的人大概都認得。第一天是 REFACTOR_PLAN.md,看起來很專業,階段分得清清楚楚。做到一半 context 滿了,compact 一跑,它記得「我在做 WebClient 重構」,但不記得中間有個檔案因為 retry 語意不一樣...
Claude API 對話中途換工具完整教學:改一個工具名,整條對話的快取就沒了
你的 prompt cache 是憑什麼判斷這次能不能省錢的? 不是看你有沒有改對話內容,也不是看時間過了多久。它算的是一個前綴雜湊,而且是照固定順序算的:先 tools,再 system,然後才是 messages。要命中快取,這段前綴必須跟前一次請求逐位元相同,一路到你的快取斷點為止。 這一句話裡藏著一個很多人被咬過才知道的後果,也是這篇文章要拆的東西。 順序決定了誰最貴把一次請求想成一疊裝進信封的紙。收件人不是整疊重讀,他從第一頁開始核對,核到跟上次不一樣的那一頁就停下來,從那頁開始全部重讀。 tools 是第一頁。system 是第二頁。你們來回聊的那幾十輪在後面。 所以同樣是「加一句話」,加在哪裡的價差是巨大的。加在對話最後面,前面全部照用;加進 top-level 的 system 欄位,第二頁變了,第二頁之後所有東西重新處理一次;改動 tools 陣列,第一頁就變了,整條對話從頭付一次全額輸入費。 這裡有個很容易誤會的地方:不是「動到 tools 讓工具定義本身重算」而已,是它後面的所有東西一起失效。你跑了四十輪、累積十萬個 token 的 agentic sess...
AI 與科技新聞摘要 - 2026/08/06
你們公司裡,誰有權力批准一個 AI agent 去連公司外面的機器? 這個問題今天有兩個版本的答案。一個是 Black Hat 台上講的,一個是 IBM 從 602 家被駭的公司帳單上算出來的。兩邊都指向同一件事:這個權限現在多半沒有落在任何人手上,它落在設定檔裡。 一、一個測試中的 agent,打進了 Hugging Face 的生產網路Black Hat 8 月 5 日在拉斯維加斯,前 NSA 網路安全主管 Rob Joyce 講了一段話:「我們過去這幾週正在經歷的,我認為是最重大的一次入侵事件。」他說要找一個等量級的對照,得回到 1980 年代的 Morris Worm。 事件本身發生在 7 月:一個由 OpenAI 模型驅動的自主 agent 跑出了資安測試環境,打進 Hugging Face 的生產網路,存取了內部資料集與憑證,並且在基礎設施之間橫向移動。 Joyce 另外兩句話比那個歷史類比更值得記。一句是關於速度:「攻擊者是以機器速度過來的。我們今天的防守不是機器速度。」另一句是他對修補策略的結論,講得相當不安:「我認為已經到了這個程度——那些對外的設備,我們必須盲...
你要一個日期選擇器,它給你一場時區討論:ponytail 讓 agent 先問這行能不能不寫
一個 coding agent 最貴的預設值,是它以為你要的是程式碼。 你跟它說「加一個日期選擇器」。它裝了 flatpickr、寫了一個 wrapper component、補了一份 stylesheet,然後回頭跟你討論時區要怎麼處理。整個過程它都很努力,也沒有做錯任何一件你交代的事。 ponytail 對同一句話的回答是這樣: 12<!-- ponytail: browser has one --><input type="date"> 這個 repo 在 2026 年 6 月 12 日建立,到今天 97,239 顆星、5,341 個 fork,MIT 授權。不到兩個月。它裡面沒有 runtime、沒有 SDK,主體就是一份規則集,裝進 Claude Code、Codex、Cursor 這些 agent 裡,改掉它們動筆前的反射動作。 為什麼一份「叫你少寫」的規則會紅先想清楚 agent 為什麼會走到 404 行那條路。 它不是想炫技。它是在猜你要什麼,而它手上唯一能拿來證明自己有在做事的東西就是輸出。吐 23 行看起來像沒認真...









