Skip to main content

BMad-Method: 讓AI像教練一樣引導專案開發

· One min read

最近嘗試在專案內使用 BMad-Method 來協助專案從無到有的過程。BMad-Method 厲害的地方不在於你向他提出需求,他能直接輸出結果,而是在於他能像教練一樣和你持 續互動討論引導你思考從未想過的問題,共同規劃出最好的解決方案!

以往,直接使用 coding agent 時,常面臨缺乏結構化規範引導開發的問題,導致開發品質難以掌控。BMad-Method 的敏捷開發流程涵蓋從 brainstorming、product brief、RPD 文件、epic 文件到每個 story 的任務分解。在每個階段,都有專門的 agent 協助完成該階段的任務,產出對應的文件,幫助 developer agent 明確開發目標與驗收標準,確保最終開發品質符合期望。

以下是 BMad-Method 作者的完整教學影片(1小時15分鐘),詳細展示 BMad-Method 的使用方法:

BMad-Method 如何處理對話歷史紀錄過長的問題?

· One min read

在 LLM 的互動過程中,對話歷史過長會導致後續的表現下降。常見的做法是主動壓縮對話歷史紀錄(compaction)。但這可能導致遺失一些重要資訊。

在 BMad-Method 中,我們不需要做對話紀錄壓縮,可以直接開啟新的agent繼續處理後續需求。因為每個 BMad agent 的初始化階段都會要求重新讀取 .bmad-core 目錄內的規範,並自動讀取 docs 目錄下對應的文件。例如,當 Analyst agent 完成 brainstorming 階段後,我們可以重新啟動agent並要求進行 product brief,這時的 agent 會自動讀取 docs/brainstorming.md 文件,並且基於這份文件和我們進行互動討論。

這樣,我們不需要擔心對話歷史過長的問題,因為每個 agent 都會重新讀取最新的規範文件,確保擁有最新資訊來完成工作。

Auto-generating Conventional Commits with Claude Code

· One min read

Claude Code can handle git operations automatically, but I usually check the generated code first before committing. This keeps everything under my control. However, there's still one problem: as a non-native English speaker, writing good commit messages in English is difficult.

Running Claude Code with a Private LLM

· 5 min read

This guide explains how to set up Claude Code with a local Large Language Model (LLM) using llama.cpp and LiteLLM proxy. This setup ensures privacy, reduces costs, and works offline. It is ideal for developers with intermediate technical skills.

Classification vs. Prediction: Statistical Thinking

· 8 min read

此內容基於 Frank Harrell 的原文 由 Google NotebookLM 生成

這篇文章區分了預測與分類這兩種資料分析方法,強調預測模型,尤其是基於機率的預測,在大多數情況下優於分類方法。文章指出,分類往往是一種過早的決策,它將預測與決策結合,限制了決策者根據不同的成本或效用函數進行判斷的靈活性。機率模型 則能夠量化傾向,並提供誤差估計,使其在處理不確定或隨機結果時更為合適。作者認為,分類技術最適合應用於高信噪比且結果具有確定性的情況,例如模式識別(pattern recognition),而在醫學診斷、天氣預報或風險評估等領域,應優先使用機率預測。

想嘗試透過 Google NotebookLM 來整理舊筆記,檢視自己過去的理解盲點。當重新檢視 NotebookLM 內容時,發現自己對統計思維與機器學習方法論的理解又有了新的層次。

Git Worktree - The Game Changer for Multi-Branch Development

· 3 min read

https://docs.anthropic.com/en/docs/claude-code/common-workflows#run-parallel-claude-code-sessions-with-git-worktree

I discovered this incredibly useful Git worktree feature from Claude's development docs!

Git worktrees allow you to check out multiple branches from the same repository into separate directories. Each worktree has its own working directory with isolated files, while sharing the same Git history. Learn more in the official Git worktree documentation.

The Common Developer Dilemma

Picture this familiar scenario: You're working on branch A, editing a.txt, when suddenly you get an urgent request to create a new branch B from main to fix b.txt. Now you're stuck - what do you do with your unfinished changes on branch A?

Your usual instincts might be:

  1. commit - But your work isn't ready for a commit yet!
  2. stash - Too many commands to remember, and it's easy to get confused

First Time with Amazon Kiro

· 2 min read

I tried out Amazon Kiro, an agent that champions the Spec-Driven Development workflow. My goal was to build a data app using Python Streamlit and see how Kiro handles the entire project lifecycle.

langgraph-react-agent

· 2 min read

LangGraph Logo

The ReAct agent was first introduced in the 2023 paper ReACT: Synergizing Reasoning and Acting in Language Models. It's an AI agent framework that combines reasoning with acting, enabling LLMs to integrate chain-of-thought (CoT) reasoning with external tool usage. The ReAct framework enhances LLM capabilities in complex tasks and decision-making processes.

LangGraph implements ReAct agents through the create_react_agent function, which builds a state graph (StateGraph) that automatically loops between LLM responses and tool calls based on the model's output.

This post explores LangGraph's source code to understand how ReAct agents are implemented under the hood.