MacOSX Native tmux AI Agent Integration
Mac 本機同時開 4 個 Terminal,要不要導入 tmux? 目前的工作畫面是同時開四個 Terminal: 1 個開 Codex 寫專案A 第 2 個開 Claude code 整理需求與測試紀錄, 隨時用來查詢; 第 3 個開 Codex 修改專案B 最後一個是偶爾要跑 git、安裝、sass、log、測試指令。 這種用法已經不是傳統「一個 termina...
Mac 本機同時開 4 個 Terminal,要不要導入 tmux? 目前的工作畫面是同時開四個 Terminal: 1 個開 Codex 寫專案A 第 2 個開 Claude code 整理需求與測試紀錄, 隨時用來查詢; 第 3 個開 Codex 修改專案B 最後一個是偶爾要跑 git、安裝、sass、log、測試指令。 這種用法已經不是傳統「一個 termina...
mvn --mvn-version 3.8.8 --download-only
DI 是好方向, 但在舊式 Java Web 專案裡,如果沒有 Spring、CDI、EJB 這類容器,其實沒有自然的 DI 機制。硬改成 constructor injection,會變成: ProjFormService service = new ProjFormService( new ValidateService(), new ContractD...
IntelliJ IDEA 對 MockitoAnnotations.openMocks(this) 的警告: ‘AutoCloseable’ used without ‘try’-with-resources statement 原本寫法的問題 @BeforeEach public void setUp() { MockitoAnnotations.openMocks...
tell application "Safari" set urlList to {} repeat with w in windows repeat with t in tabs of w set end of urlList to URL of t end repeat end repeat end tell set AppleScript's text item ...
這次整理 TEST_CONFIG 查詢時,真正要處理的不是「哪個專案要不要自己查測試站設定」,而是 runtime 邊界。 以前公司把測試站判斷集中在 PmbBase,Web/JNDI 專案都走同一套邏輯。這有一個很實際的好處:測試站的 WAR 可以由管理者原封不動搬到正式機,不需要重新打包,也能確定測試與正式是同一包程式。 但專案開始升 JDK 17、也開始出現 Spring CLI、...
這次整理 TsLib.mail.MailSender,一開始以為只是 Strategy Pattern:正式環境寄給原本收件人,測試環境改寄測試收件人並加上測試主旨前綴。 但做到 TsNoticeReminder 之後,問題變得更精確:這不是單純 Strategy,而是 Strategy + Adapter。 Strategy:MailDeliveryPolicy 決定實際收件人與...
最近在整理幾個 Spring Boot 專案的 package 命名時,又遇到 dao、repo、repository 要怎麼放的問題。 如果只看「是不是 Web 專案」,很容易下錯結論。比較關鍵的差異其實是資料存取方式: 單 DB + JdbcTemplate + 手寫 SQL 單 DB + Spring Data JPA repository 多 DB + 每個 DB ...
Spring Boot の実行入口と ApplicationRunner のテストメモ Spring Boot の CLI batch では、main() は Spring を起動する入口で、 実際の batch 処理は ApplicationRunner に置くことが多い。 public static void main(String[] args) { SpringAppli...
1. squash merge GitHub 的 Squash and merge 會把 PR branch 裡的 commits 合成一顆新的 commit,放到 base branch。 例如原本 PR 裡有兩顆 commits: fix commit comment commit 合進 master 後,GitHub 產生一顆新的 commit: bace99e Fix m...