工程開發
ask-user-question avatar

ask-user-question

使用 AskUserQuestion 工具在軟體代理中實現互動式、分步驟的用戶輸入工作流程,用於引導決策與配置。

簡介

此技能為 Claude Code 代理內部的互動式引導工作流程設計提供了一個強大的框架。透過利用 AskUserQuestion 工具,開發者可以將靜態文檔轉換為動態的對話過程,引導用戶做出具體的實作選擇、提供配置輸入或定義專案範圍。此技能專為需要處理多步驟互動、管理模糊需求並確保在整個執行生命週期中有效捕捉用戶偏好的工程師與開發者而設計。

  • 啟用結構化的多階段互動模式,例如漸進式揭露與條件分支,以防止用戶過度負載。

  • 透過允許代理在執行關鍵操作(如資料庫選擇或部署配置)前收集必要數據,促進清晰的狀態管理。

  • 支援基於實時系統狀態的動態選項生成,例如列出可用的 Git 分支、本地文件路徑或檢測到的工具版本。

  • 包含對多選輸入及自動「其他」選項的內建支援,確保在預設選項不足時,用戶能夠提供自定義文本。

  • 推廣代理與用戶溝通的最佳實踐,包括簡潔的標籤、清晰的選項說明,以及為了降低認知負荷而建議的「一次詢問一個問題」原則。

  • 整合此技能時,請嚴格遵守每次呼叫 1-4 個問題的限制,以維持互動質量與響應能力。

  • 務必將標題長度保持在 12 個字元以內,並確保選項標籤簡潔(1-5 個詞),以符合 UI 限制。

  • 將此工具用於收集實際的實作決策(如框架、資料庫、語言),而非關於代理內部狀態或計劃準備情況的元問題。

  • 實作回應處理邏輯,直接解釋用戶答案,將選項映射到內部工作流程變數或條件執行分支。

  • 優先為首選路徑選項加上「推薦」標籤,引導用戶採用最高效或標準的做法。

  • 若用戶需要在多種相互排斥的方案或複雜的專案設定之間進行選擇,請使用提供的結構化配置模式。

倉庫統計

Star 數
25
Fork 數
1
Open Issue 數
0
主要語言
Shell
預設分支
main
同步狀態
閒置
最近同步時間
2026年5月3日 下午08:39
在 GitHub 查看