shareAI-lab/learn-claude-code
Bash is all you need - A nano claude code–like 「agent harness」, built from 0 to 1
Learn Claude Code – 建構 LLM 代理框架的實作課程
是什麼 – 一個逐步指導你撰寫「框架」(周圍程式碼)的教學,讓大型語言模型(如 Anthropic 的 Claude)能作為自主的程式碼助理運作。此倉儲不訓練模型;它教你如何為預先訓練的 LLM 提供工具、權限、上下文管理與編排能力,使其在真實開發環境中安全且高效地運作。
為何重要 – 現代的「AI 代理」本質上是訓練好的模型加上一個連接模型與世界的執行時(檔案系統、shell、瀏覽器、API 等)。大多數公開專案聚焦於模型本身,將框架視為事後補充。本倉儲則反轉此觀點,將框架視為核心工程問題,明確展示每個元件的實作方式。
如何運作 – 核心迴圈是一個簡單的 REPL:
while True:
response = client.messages.create(model=MODEL, system=SYSTEM,
messages=messages, tools=TOOLS)
messages.append({"role": "assistant", "content": response.content})
tool_calls = [b for b in response.content if b.type == "tool_use"]
if not tool_calls:
break # 模型決定已完成
results = []
for call in tool_calls:
out = TOOL_HANDLERS[call.name](**call.input)
results.append({"type": "tool_result",
"tool_use_id": call.id,
"content": out})
messages.append({"role": "user", "content": results})
模型決定何時呼叫工具;框架執行工具並將結果回饋回去。該倉儲將此迴圈擴展為 17 個逐步進階的課程,每個課程添加一個具體的框架功能:
| 課程 | 新增功能 | 學習內容 |
|---|---|---|
| s01 | 基礎代理迴圈 + Bash 工具 | 最小可用代理 |
| s02 | 工具註冊與分發 | 新增任意工具 |
| s03 | 權限系統 | 安全執行,審核 |
| s04 | 鈎子系統 | 可擴充的工具前後邏輯 |
| s05 | Todo-Write(規劃) | 模型驅動的任務規劃 |
| s06 | 子代理隔離 | 子任務的獨立訊息上下文 |
| s07 | 技能載入 | 按需注入知識 |
| s08 | 上下文壓縮 | 保持令牌視窗在限制內 |
| s09 | 記憶子系統 | 跨會話的持久化知識 |
| s10 | 磁碟支援的任務圖 | 結構化、可恢復的工作清單 |
| s11 | 後台任務 | 非阻塞的長時間執行命令 |
| s12 | 定時排程器 | 基於時間的自動化 |
| s13 | 代理團隊 | 多代理協調,任務認領 |
| s14 | MCP 插件 | 將外部能力作為工具插件 |
| s15 | 結合框架 | 之前所有機制整合到一個迴圈中 |
| s16 | 工作流執行時 | 儲存、可恢復的編排腳本 |
| s17 | 目標迴圈 | 獨立評估器決定代理何時停止 |
每個課程皆提供可執行的小型 code.py 檔案,以及說明設計、展示實作並可視化流程的 README(英文、中文、日文)。
適合誰使用 –
- 框架工程師:已有 LLM API 存取權限,希望獲得建構代理的生產級模式者。
- 開發者:希望將 Claude(或任何相容 LLM)轉變為能讀寫檔案、執行 shell 命令、瀏覽網頁或呼叫自訂 API 的程式碼助理者。
- 研究人員:尋找「模型+環境」範式清晰參考實作的人。
你能從倉儲中獲得什麼
- 一個完整、模組化的程式碼庫,可直接複製到自己的專案中。
- 清晰的責任分離:工具、權限、鈎子、記憶、任務排程與多代理協定皆為獨立模組。
- 代理能力來自模型本身,而非巧妙的提示鏈,有助於避免脆弱的「魯布·戈德堡」式代理陷阱。
總結 – Learn Claude Code 並非新 LLM,而是一套實用課程,教你建構任何 LLM 代理的載具,以 Claude 為參考模型。完成 17 個課程後,你應能組裝出一個功能完整的自主程式碼助理,或將這些模式應用於資料分析、網頁自動化、機器人等領域。
快速入門檢查清單
- 取得 Anthropic Claude API 金鑰(或適配客戶端以支援其他支援工具呼叫的 LLM)。
git clone https://github.com/shareAI-lab/learn-claude-code.git- 安裝最小依賴(通常只需
anthropic和標準程式庫)。 - 執行
python s01_agent_loop/code.py,查看最簡單的迴圈如何運作。 - 依序進入
s02_…到s17_…資料夾,每次添加下一個機制。
以上所有細節均直接來自倉儲的 README;未推斷任何額外功能。
相關
- 專案
- 專案
- 專案
- Dispatch
- Dispatch