v2.1.150 版本內容說明
Claude Code v2.1.150 的官方內建功能範圍,以及 ultrawork 與 /workflows 的實際來源。
Claude Code v2.1.150 是 2026 年 5 月 23 日釋出的版本,本身只是內部基礎建設改善,沒有任何使用者可見的新功能。真正帶來新東西的是它的前一版 v2.1.149(5 月 22 日):新增了 /usage 的細項統計,能拆解 skill、subagent、plugin、MCP server 各自吃掉多少額度;同時修掉了 PowerShell 權限繞過、macOS 上 find 指令會耗盡檔案表的 bug。
為何這套用法值得了解
**Claude Code 是設計成低層、不強迫工作流的工具。**Anthropic 在官方 best practices 中明確說明:「Claude Code is intentionally low-level and unopinionated」。plugin、slash command、subagent、hook 等擴充點均由社群與使用者自行組合。ultrawork 與 /workflows 雖非官方功能,是目前社群使用量較高、文件較完整的組合方式。
v2.1.150 提供基底執行環境,社群的 ultrawork 是利用 plugin hook 改寫 Claude 執行行為的具體做法。兩者屬不同層次:官方版本定義能力邊界,社群套件定義工作流約定。
ultrawork 的運作機制
ultrawork 是一組行為改寫規則,注入後 Claude 將持續執行直到所有 to-do 完成且通過驗證。
ultrawork 是一組行為改寫規則,而非獨立工具。當你在 prompt 裡加入這個關鍵字,plugin 的 hook 會攔截你的訊息、注入一段隱形的系統提示,告訴 Claude:接下來的任務必須並行執行、強制使用 TodoWrite 追蹤、所有檔案讀取交給 subagent、不准只做一半、不准詢問權限、直到 todo 全部完成且驗證通過才能停下來。
普通模式是問答式交互。ultrawork 模式是下達任務後由 Claude 自行組建代理人團隊完成整個專案。
行為對照表(這才是重點)
| 行為 | 普通模式 | ultrawork 模式 |
|---|---|---|
| 任務執行 | 循序,一次一件 | 並行,一個訊息內同時派出多個 subagent |
| 檔案閱讀 | 直接讀進主對話 context | 委派給 librarian subagent,主對話只拿摘要 |
| 進度追蹤 | 可有可無 | 強制 TodoWrite,且即時更新狀態 |
| 停止條件 | 每一步問你要不要繼續 | 所有 todo 完成且驗證通過才允許停止 |
| 半成品態度 | 願意接受「先這樣,之後再補」 | 零容忍,要求完整實作方可交付 |
| 詢問權限 | 常常停下來問 | 從不詢問,自己做合理判斷並寫下理由 |
**ultrawork 調整的是 Claude 的確認行為,而非推理能力。**Anthropic 預設訓練 Claude 頻繁停下確認,適合新手,但對需要長時間自動化任務的使用者會造成中斷。ultrawork 透過 plugin hook 注入系統提示,停用確認請求、強制並行執行,直到所有 todo 完成。
/workflows 指令集說明
ultrawork 是行為模式,/workflows 是具體腳本,即預先定義的多代理人協作流程。
/workflows:xxx 這種寫法來自 wshobson/commands 的目錄結構:它在 ~/.claude/commands/ 底下分成 workflows/(多代理人協作)和 tools/(單一用途工具)兩個資料夾,所以呼叫時就會帶上前綴。你也可以選擇複製到根目錄、不要前綴,但慣例上保留前綴比較好辨識。
workflow 與 tool 的差別:workflow 是大寫的、跨領域的、需要多個專家代理人協作的任務,譬如「實作一個完整的 OAuth2 登入系統」;tool 則是聚焦單一動作,譬如「掃描 OWASP Top 10 漏洞」。Workflows 跑起來通常 30–90 秒,tools 約 5–30 秒。
三個你最常會用到的 /workflows
| 指令 | 用途 | 協作的代理人 |
|---|---|---|
| /workflows:feature-development | 從 0 到 1 完整實作一個新功能 | 後端、前端、測試、部署 |
| /workflows:smart-fix | 不確定問題出在哪、讓 AI 自己診斷 | 依 bug 類型動態挑選 |
| /workflows:tdd-cycle | 強制執行 red → green → refactor | 測試撰寫者、實作者、重構者 |
| /workflows:security-hardening | 安全強化,從威脅模型到修補 | 威脅建模、漏洞評估、修補 |
| /workflows:legacy-modernize | 把老舊架構搬到現代化框架 | 架構遷移、依賴升級、樣式重構 |
| /workflows:performance-optimization | 找出系統瓶頸並全方位優化 | 剖析、快取、查詢優化、壓測 |
| /workflows:incident-response | 線上事故處理 SOP | 診斷、根本原因、熱修部署 |
與 ultrawork 怎麼搭?
建議組合方式:以 /workflows 指定任務腳本,以 ultrawork 設定執行強度。例如 /workflows:feature-development implement OAuth2, ultrawork,前段指定多代理人協作腳本,後段關鍵字停用確認提示並強制跑至完成。依社群討論,兩者併用是 context 消耗相對較低、完成率較高的組合。
給完全新手的安裝步驟
如果你連 Claude Code 都還沒裝,這一章請從頭跟著做。已經有 Claude Code 的可以跳到步驟 4。
1 確認你有 Claude Pro 或 Max 訂閱
Claude Code 必須綁訂閱才能跑。Free 帳號用不了。Pro $20/月、Max $100~200/月。訂閱層級直接決定 ultrawork session 可用時間,額度用完 session 即停止。
2 安裝 Claude Code 本體
三個方法,挑一個(推薦原生安裝,會自動更新):
# macOS / Linux 原生(推薦)
curl -fsSL https://claude.ai/install.sh | bash
# Homebrew(macOS/Linux)
brew install --cask claude-code
# Windows(PowerShell)
irm https://claude.ai/install.ps1 | iex3 初次啟動並登入
到任一專案目錄下執行 claude,會自動開瀏覽器做 OAuth 登入。登入完就連上你的訂閱了。確認版本是不是 v2.1.150 或更新:
claude --version
# 應該看到 2.1.150 或更高4 安裝 uv(oh-my-claude 的依賴)
oh-my-claude plugin 用 Python,內建 uv 會自己管 Python,不用另外裝。
curl -LsSf https://astral.sh/uv/install.sh | sh5 裝 ultrawork 主力 plugin(oh-my-claude)
在 Claude Code 終端內(不是系統 shell)執行這兩行:
/plugin marketplace add TechDufus/oh-my-claude
/plugin install oh-my-claude@oh-my-claude6 (可選)裝 /workflows 指令集
如果你也要 wshobson 的 15 個 multi-agent workflows:
cd ~/.claude
git clone https://github.com/wshobson/commands.git7 重啟 Claude Code
hook 必須在重啟後才會生效。完全退出 Claude Code 再重新開啟。之後在任何 prompt 中加上 ultrawork 即可觸發。
oh-my-claude 三個觸發關鍵字
安裝 oh-my-claude 後可用的三個關鍵字。每個關鍵字可放在 prompt 的任意位置觸發。
EXECUTION
ultrawork
縮寫:ulw
最大並行執行、強制 TodoWrite、做完才能停。適合「我已經知道要做什麼,幫我幹完」的場景,例如把所有 type error 修掉、實作完整的功能模組。
RESEARCH
ultraresearch
縮寫:ulr
系統性平行搜尋、交叉比對來源、每一個結論都附引用。適合「我需要 30 分鐘也讀不完的調研」,例如比較三個框架、整理某個 API 最新規格變動。
DEBUG
ultradebug
縮寫:uld
7 步系統性除錯流程:多假設、3 振出局機制、實證導向診斷。適合「奇怪的 bug、不知道從哪查」的場景。會自動跳出單純試錯,逼自己提出 hypothesis 再驗證。
怎麼用?舉幾個真實 prompt
› fix all the type errors in src/, ultrawork
› add unit tests for the payment module ulw
› ultraresearch best practices for tRPC + Drizzle in 2026
› our cron job randomly fails on Mondays, ultradebug
› /workflows:feature-development implement Stripe webhooks, ultrawork
說明:oh-my-claude 另有第二個觸發路徑。按 Shift+Tab 進入 plan mode 時,plugin 會自動執行一個 7 步驟計畫強化流程(偵察 → 訪談 → 研究 → 缺口分析 → 風險評估 → 寫計畫 → critic 審查)。不下任何關鍵字、單純使用 plan mode,同樣會啟動此流程。
ultrawork 的代理人團隊結構
ultrawork 在背景啟動一組 6 個專屬 subagent,各自持有獨立 context,分工執行不同任務。
**為什麼要有 subagent?**因為 Claude 主對話的 context 視窗是有限的。如果你叫主 Claude 直接讀 2000 行的檔案,那 2000 行會永遠卡在它的工作記憶裡,後面所有推理都會受影響。Subagent 在獨立沙箱中讀取檔案,只回傳摘要給主 Claude,細節保留在沙箱中。這是 ultrawork 執行長任務時 context 不超限的主要原因。
advisor
Pre-Plan
在計畫成形前,找出隱藏需求與範圍風險
risk
Risk Pass
評估計畫與差異對應用、依賴、基礎設施的衝擊
critic
Plan Review
在執行前挑出計畫的瑕疵與遺漏的邊界情況
librarian
Smart Read
摘要大型檔案、git diff、changelog,控制主 context 用量
worker
Execute
專心執行一個明確任務,完整實作
validator
QA Gate
跑測試、lint、type check,回報 pass / fail
explore
Built-in
Claude Code 內建:找檔案、搜尋程式碼、定位定義
你也可以手動點名某個 subagent
› Task(subagent_type="oh-my-claude:librarian",
prompt="Summarize src/auth/service.ts")
› Task(subagent_type="oh-my-claude:critic",
prompt="Review this implementation plan for flaws")
› Task(subagent_type="oh-my-claude:validator",
prompt="Run all tests and report results")
[librarian] reading 847 lines... done
[librarian] summary: auth service uses JWT with 7-day expiry,
refresh token rotation enabled, but no rate limiting on /refresh endpoint.
[critic] ⚠ found 3 edge cases not addressed in plan...
✓ validator: 142/142 tests passing, 0 lint errors, 0 type errors
Prompt 設計完整範例
以下示範從 prompt 輸入到 ultrawork 執行完成的完整流程。場景:為 Next.js 專案新增 Stripe webhook 處理。
YOU // 使用者輸入
/workflows:feature-development
We need to handle Stripe webhooks for payment_intent.succeeded,
payment_intent.payment_failed, and customer.subscription.updated.
Database is Drizzle + Postgres. The handler should be idempotent
(use Stripe event ID as dedupe key), log every event to webhook_events table,
update the orders table accordingly, and send a Slack notification on failures.
Test coverage must be ≥85%.
ultraworkCLAUDE // 內部展開(hook 攔截後注入)
# Injected context (hidden from you):
MODE: ultrawork
RULES:
- parallel subagents in single message
- TodoWrite immediately, update real-time
- no permission requests
- zero tolerance for partial implementation
- stop only when all todos done + validation passedCLAUDE // 第 1 個訊息:建立 todo + 並行展開
TodoWrite created (7 items):
① Read existing API route structure ② Design webhook handler architecture ③ Add Drizzle schema for webhook_events ④ Implement Stripe signature verification ⑤ Implement three event handlers ⑥ Add Slack notifier ⑦ Write tests to ≥85% coverage
Spawning parallel subagents:
↳ librarian: 摘要 src/app/api/ 現有結構
↳ librarian: 摘要 drizzle/schema.ts 與 orders 表
↳ advisor: 找出 Stripe webhook 容易踩到的隱藏需求
CLAUDE // advisor 回報的隱藏需求
★ Insight ───────────────────────────────────────────
Stripe webhook hidden requirements you didn't mention:
1. Webhook signature verification needs raw body,
not parsed JSON — needs route segment config
2. Retry tolerance: Stripe retries failed webhooks
for up to 3 days, idempotency key MUST be persistent
3. Customer subscription events fire before
payment_intent — handle ordering or use eventual consistency
4. Test webhooks with Stripe CLI stripe listen,
not curl (signature won't match)
─────────────────────────────────────────────────────CLAUDE // critic 審查計畫後產出檔案
// src/app/api/webhooks/stripe/route.ts
export const config = { api: { bodyParser: false } };
export async function POST(req: NextRequest) {
const body = await req.text();
const sig = req.headers.get('stripe-signature')!;
let event: Stripe.Event;
try {
event = stripe.webhooks.constructEvent(body, sig, env.STRIPE_WEBHOOK_SECRET);
} catch (err) {
return NextResponse.json({ error: 'invalid signature' }, { status: 400 });
}
// idempotency check using Stripe event.id
const existing = await db.query.webhookEvents.findFirst({
where: eq(webhookEvents.stripeEventId, event.id),
});
if (existing) return NextResponse.json({ received: true });
await db.insert(webhookEvents).values({
stripeEventId: event.id, type: event.type, payload: event, status: 'processing',
});
switch (event.type) {
case 'payment_intent.succeeded': await handlePaymentSuccess(event); break;
case 'payment_intent.payment_failed': await handlePaymentFailure(event); break;
case 'customer.subscription.updated': await handleSubscriptionChange(event); break;
}
return NextResponse.json({ received: true });
}CLAUDE // validator 收尾
✓ validator finished:
— Type check: 0 errors
— Lint: 0 warnings
— Unit tests: 23/23 passing
— Integration tests: 7/7 passing
— Coverage: 89.2% (target was 85%) ✅
— All 7 todos marked complete. Session terminating.
**此範例的三個關鍵點:**① 使用者只下一段 prompt,整個流程由 plugin 自動展開;② advisor 主動補充了三個原始 prompt 未提及的需求(signature 須使用 raw body、retry 期限為 3 天、event 順序問題);③ validator 完整執行後回報具體 coverage 數字(89.2%),確認達標後才結束 session。
社群整理的實用建議
以下內容摘自 r/ClaudeAI、X、Medium、Substack 的討論,整理為可執行的操作建議。
r/ClaudeAI / Boris C. · ▲ 312
並行開 5–10 個 session
Claude Code 創作者 Boris Cherny 的工作流:終端跑 5 個 Claude、web 跑 5–10 個 session,用編號標籤與系統通知追蹤哪個 session 需要輸入。早上啟動 session,白天返回時 Claude 已連續執行數小時。
Hacker News thread · ▲ 287
先用 Plan mode(Shift+Tab 兩次)再下 ultrawork
在執行任何 ultrawork prompt 之前,先進入 Plan mode 與 Claude 確認計畫細節。Plan mode 不寫程式碼,只迭代計畫。依 Hacker News 討論,這個步驟節省的反覆修改時間通常多於 ultrawork 並行加速帶來的收益。
Medium / Joe Njenga · ▲ 199
在專案根目錄維護 CLAUDE.md
在專案根目錄放置 CLAUDE.md,記錄專案規則與限制。每次出現錯誤時更新此檔,PR 時用 @claude 標記補充學到的約定。作者稱此做法為「Compounding Engineering」,使 Claude 在同一專案中累積上下文。
X / Anthropic Devs · ▲ 168
選用 Opus 4.5(thinking 模式)
Boris 與 Anthropic 內部團隊偏好搭配 thinking 模式的 Opus 4.5,而非 Sonnet。理由是 Opus 4.5 需要較少的人為糾正與來回確認,總計執行時間反而更短。
r/LocalLLaMA · ▲ 142
搭配 git worktree 隔離執行環境
ultrawork 執行長任務時可能會大幅修改檔案。社群建議搭配 git worktree 建立隔離工作區,Claude 出錯時影響範圍限於該 worktree,不會污染主分支。oh-my-claude 內建 /worktree skill 可自動化此流程。
r/ClaudeAI / 警告貼 · ⚠ 警告
禁止使用 --dangerously-skip-permissions
r/ClaudeAI 有用戶回報:「Claude CLI deleted my entire home directory」。ultrawork 雖然會自動同意安全指令,但絕對不要加 --dangerously-skip-permissions。請改用官方 /sandbox 指令將檔案系統與網路存取限制在當前目錄。
r/ClaudeAI / Burnout 警告 · ⚠ 警告
ultrawork 的 token 消耗量
長時間自動執行等比例消耗 token。依社群回報,Pro($20)每天約執行兩三次大型 ultrawork 即達上限;Max($100)是可日常使用的最低門檻。先用 Plan mode 規劃,再開 ultrawork 執行,可節省約 40–60% 額度(社群估算)。
Substack / homeeconomics · ▲ 124
使用 /commit-push-pr 指令
Boris 推薦的 slash command:將 commit、push、開 PR 打包為單一指令。設為 ultrawork 結束後自動執行,Claude 完成功能後會順帶建立 PR 並填寫說明。
X / TechDufus · ▲ 98
README 的 TL;DR 區段已足夠入門
oh-my-claude 作者在 README 中寫道:「Skip This README」。初次使用只需記得在 prompt 加 ultrawork 或 ulw。遇到具體問題時再查閱 README,不需要從頭讀完。
The bottleneck for agentic coding tools isn't usually the model's capability — it's the usage limits.
/workflows 的串接用法
wshobson/commands 的主要用法是串接多個 workflow 與 tool,組成完整的執行流水線。
劇本一:完整新功能上線
› /workflows:feature-development real-time notifications with WebSockets, ultrawork
› /tools:security-scan WebSocket implementation for OWASP Top 10
› /workflows:performance-optimization WebSocket connection handling
› /tools:deploy-checklist notification service requirements
› /tools:k8s-manifest WebSocket service with session affinity
✓ 5 個步驟、5 個檔案產出,總耗時約 12 分鐘
劇本二:把老 monolith 拆成微服務
› /workflows:legacy-modernize migrate Express monolith to microservices
› /tools:deps-audit check dependency vulnerabilities
› /tools:deps-upgrade update to latest stable versions
› /tools:refactor-clean remove deprecated patterns
› /tools:test-harness generate comprehensive test coverage
› /tools:docker-optimize create optimized container images
› /tools:k8s-manifest deploy with rolling update strategy
你應該用 workflow 還是 tool?
| 判斷面向 | 用 /workflows | 用 /tools |
|---|---|---|
| 問題複雜度 | 跨領域、橫切多個系統 | 單一領域、明確範圍 |
| 解法清晰度 | 探索性、做法未定 | 實作路徑已知 |
| 需要的代理人 | 多位專家協作 | 單一專長就夠 |
| 實作規模 | 從頭到尾整個功能 | 特定元件 |
| 典型耗時 | 30–90 秒 | 5–30 秒 |
六個常見問題與排查方法
安裝後常見的六個問題,附各自的排查與解決步驟。
坑 1:版本不同步,plugin 不更新
hardworker-marketplace 的 GitHub 文件特別點出:plugins/{plugin}/.claude-plugin/plugin.json 與 .claude-plugin/marketplace.json 的版本號必須一致,否則 plugin 更新後不會生效。解法:重新 install。/plugin uninstall 再 /plugin install。
坑 2:Worker 沒收到任務
teamwork 模式下,spawned 出來的 worker 如果都在 idle 不執行,代表 orchestrator 沒透過 TaskCreate 與 TaskUpdate(owner) 派工。解法:/teamwork-status 檢查、確認 hooks.json 有註冊 TaskCompleted 與 TeammateIdle。
坑 3:Evidence collection 失敗
ultrawork verifier 報「missing evidence」但任務看起來完成了?用 /ultrawork-evidence 檢查。evidence 必須包含 command、output、exit code。Validator 會拒絕包含「should work」、「TODO」、「FIXME」等詞的交付物,不接受不完整實作。
坑 4:Skills 被靜默忽略
Claude Code 對 skill 描述總長度有限制(context 視窗的 ~1%–2%)。如果你裝太多 plugin、skill 描述合計超過配額,會被無聲砍掉,但你不會收到錯誤訊息。解法:SLASH_COMMAND_TOOL_CHAR_BUDGET 環境變數調高、或卸載重複功能的 plugin。dev-skills 和 dev-workflows 系列不要同時裝多個。
坑 5:Auto mode 把你「不要 push」當耳邊風
v2.1.130 之前有個 bug:auto mode 會忽略你下的明確邊界(譬如「先不要 push」)。v2.1.130 已修。所以請確認你的 Claude Code 至少在 v2.1.150 才是安全的。claude --version 檢查一下。
坑 6:hook 沒觸發
如果 evidence 沒被收集、insight 沒被擷取、quality gate 沒擋下,多半是 Bun 沒裝(bun --version 檢查),或 hooks/hooks.json 沒註冊。手動測試:echo '{"session_id": "test"}' | bun hook-script.js 看回應。跨平台時 hooks.json 裡明確寫 bun 前綴可避免 shell 差異。
關於本期
Field Notes 是 Tenten 整理給中文開發者的實戰型技術手冊。本期聚焦於 Claude Code v2.1.150 之後,社群圍繞 ultrawork 與 /workflows 累積出的非官方但管用的玩法。
本期引用
TechDufus / oh-my-claude
mnthe / hardworker-marketplace
wshobson / commands
Anthropic / Claude Code Docs
Joe Njenga / Medium 2026.05
Boris Cherny / X thread
r/ClaudeAI 社群討論
Tenten Field Notes Vol.07 — Issue 2026.05 — 本文於 2026.05.28 截稿 — All rights to original repositories belong to their respective authors