學習 Cue · 任務導向教學
使用 Cue 語音與 Claude Code 修復小型錯誤
口述說明能夠完整保留你在使用應用程式時注意到的細節。下一步是將該說明轉化為確實可受檢查的小幅變更。
由 Cue 產品團隊 (English) 提供 · 更新於 。根據產品原始碼審查撰寫。練習與輸出僅供說明,並非錄製的 Cue 執行紀錄。請依循你所安裝版本中顯示的控制項操作。
快速解答
使用 Cue 擷取徵狀、檢查文字,並明確將其移交給正確儲存庫中的 Claude Code。就失敗範例和允許的範圍達成共識,接著檢查修補程式與實際測試輸出。請將發布核准分開處理。
需求:已設定 Dictation 的 Cue、通過驗證的 Claude Code 環境,以及具有可重現錯誤的拋棄式或獲授權專案。結果:具備前後對比佐證的限縮範圍修補程式,而非保證口頭請求會自動交付可運作軟體。
第一次使用 Cue? 設定 Dictation 語音輸入 以輸入您說的話;若要提出任務要求,請 設定 Agent 模式。開始前,請核對安裝版本的權限提示與快捷鍵。
選擇輸入方式
當錯誤說明來自其他應用程式時,可以用 Cue 收集。你可能正在瀏覽器中重現問題、閱讀 Issue,或整理同事的筆記。趁細節還清楚時,把症狀口述到暫存筆記中,再核對文字,整理成一份可重複使用的簡報交給 Claude Code。這種方式適合在程式開發任務開始前,跨應用程式收集脈絡。
如果專案與要求都已準備好,直接在 Claude Code 中繼續即可。在既有對話中做簡短修正時,可以直接鍵入或貼上。Claude Code 也有原生語音輸入:官方語音聽寫指南(英文)說明了 CLI 中的 /voice,需要 Claude.ai 帳號和本機麥克風。請核對其環境與帳號要求。這裡不必使用 Cue;只有在需要收集、編輯或重複使用簡報時,暫存筆記才有幫助。
用 Cue Dictation 向外部應用程式輸入
下文練習採用這種方式。Cue 將文字插入已聚焦的暫存筆記或受支援的提示詞輸入欄位。你負責核對並傳送文字,Claude Code 在自己的環境裡完成程式開發。無須設定 Cue 連接器,筆記也不會自動傳遞其他應用程式的歷史紀錄、檔案或權限。
使用 Cue 內的 Claude 連接器
這是從 Cue 使用外部 Agent 的另一種方式。傳送任務前,檢查連線、登入狀態、所選專案與權限,並確認這條路徑使用的帳號和計費方式。僅看到 Claude 選項,不代表它已經就緒。請依照你安裝版本中實際可用的控制項操作。
為 Cue Agent 選擇託管模型
你可以請 Cue Agent 將提供的症狀整理成簡報草稿,審閱後再交接。為 Cue Agent 選擇 Anthropic 模型不會啟動 Claude Code,也不會授予它程式碼儲存庫的存取權。託管模型的使用資格與計費取決於你的 Cue 帳號,與外部 Agent 的連線是兩回事。
試做零計數練習:先用 Dictation 輸入,再明確交接文字。先說出症狀,在筆記中核對 zero、null 和 undefined,然後把 F-01 至 F-03 的來源材料交給 Claude Code。當你在自己的執行中取得原始失敗斷言、限定範圍內的修補程式,以及同一測試通過的結果時,練習才算完成。
從一項可驗證的變更開始
本指南超越了撰寫錯誤回報簡報的範疇:它說明了當編程 Agent 取得回報後該如何處理。請保持第一項任務足夠小,讓你能夠陳述錯誤結果、預期結果,以及兩者發生的條件。切勿將錯誤修復與重新設計、依賴項升級或發布混在一起。
- 開啟受影響的畫面與暫存筆記。僅使用獲授權分享的資訊。聚焦筆記的輸入欄位,使用 Cue Settings 中顯示的 Dictation 快速鍵,確認錄音,並描述徵狀。使用已設定的控制項停止,等待處理完成,然後檢查文字是否僅出現一次。
- 傳送前請更正名稱、數字和否定語意。Dictation 僅擷取你的話語;它不會授予編輯儲存庫的權限。若你要求 Cue Agent 將回報結構化,請要求草稿,並在缺少應用程式上下文時明確提供相關筆記。
- 在目標專案中開啟 Claude Code。確認工作目錄、分支與現有變更。貼上已審查的簡報,或對著聚焦的提示欄位口述簡短後續追蹤。切勿將 shell 指令直接口述到終端機提示符中。
- 在提議變更之前,先要求 Claude Code 檢查相關實作與測試。若其無法重現失敗,請提供缺少的輸入或環境細節,而非允許其臆測修補程式。
本教學採用明確的文字交接。Cue 的選用外部 Agent 選擇器需要各自的連線、驗證與權限檢查;可見的 Claude 選項並非可用連接器的保證。為 Cue 自身的 Agent 選取 Anthropic 模型亦不等同於執行 Claude Code。在選擇路徑前請先查看Agent 與模型的差異。其他工具中的現有對話不會自動隨附於你的筆記中。
練習:在結果標籤中保留零計數
以下虛構的 JavaScript 練習刻意設計得很小。任務是修復標籤函式,而非修改 Cue 或你工作所使用的應用程式。請僅在新的拋棄式資料夾中建立這些檔案。需要 Node.js 來執行測試。程式碼範例為一般 JavaScript,並非 Cue 指令。
來源 F-01 — 預期行為:本練習的輸入僅限非負整數,以及表示缺失值的 null 或 undefined。零是真實計數,必須顯示 0 results;正整數計數仍使用原來的「數字加 results」格式。缺失值必須顯示 No count。輸入驗證、單複數措辭,以及其他輸入型別或值的行為均不在本練習範圍內;此處不為它們定義驗證規則。
來源 F-02 — 起始實作,result-label.mjs:
export function resultLabel(count) {
return count ? `${count} results` : 'No count';
}
來源 F-03 — 當前觀察結果:呼叫 resultLabel(0) 會傳回 No count。這是由所提供的程式碼得出;並非錄製的 Cue 或 Claude Code 執行紀錄。此練習無法確立專案中不同錯誤的成因。
嘗試對著暫存筆記說:「零筆結果是一個真實數量,不是數量缺失。使用 F-01 至 F-03,只修復這項差異,仍將 null 和 undefined 視為缺失,並給出能捕捉原始缺陷的測試。不要發布任何內容。」檢查轉錄筆記是否仍正確保留 零、null 與 undefined。
在此使用語音的用意,是在問題猶新時擷取意圖。在拼字至關重要時,請從程式碼中複製識別碼。你不需要說出每個標點符號或大聲朗讀整個檔案。
要求提供失敗的回歸測試,接著提供最小修補程式
要求 Claude Code 新增 result-label.test.mjs 並附帶公開行為檢查,例如此處範例。在真實專案中,請使用其現有的測試執行器,而非強制採用此範例的設定。
import assert from 'node:assert/strict';
import test from 'node:test';
import { resultLabel } from './result-label.mjs';
test('zero is a count; only null or undefined is missing', () => {
assert.equal(resultLabel(0), '0 results');
assert.equal(resultLabel(null), 'No count');
assert.equal(resultLabel(undefined), 'No count');
assert.equal(resultLabel(3), '3 results');
});
執行 node --test result-label.test.mjs。對應 F-02,零斷言應該會失敗。缺少 Node 安裝、匯入錯誤或從未執行的測試並非預期的回歸失敗。在變更實作前請先儲存實際輸出。
該函式的候選替換內容為:
export function resultLabel(count) {
return count === null || count === undefined ? 'No count' : `${count} results`;
}
僅在拋棄式練習中套用該候選內容。重新執行測試並檢查已變更的函式。綠燈結果涵蓋了這四個輸入;它並不能證明每個可能的輸入皆有效,亦不代表無關的應用程式可以安全部署。
針對真正的修復,請先要求失敗檢查、授權有限範圍的實作,然後要求同一項檢查連同周圍既有測試皆通過。Anthropic 的官方最佳實踐強調可驗證的工作,並將探索與實作分離。我們的練習將該理念套用於源自語音的任務;該文件並未驗證 Cue 整合。
複製語音轉修復的驗收簡報
傳送前請替換括弧內的欄位。將來源置於任務指令下方,以免引用的內容被誤認為執行指令的權限。
任務:修復此儲存庫中以下描述的單一行為。
工作位置:[已確認的專案與分支]
來源:[已核對的現象、輸入、預期輸出、實際輸出]
範圍:[一項行為及其影響區域]
保留:[既有工作及不得改變的行為]
先檢查目前的差異,並找出真正的呼叫路徑。
透過公開介面撰寫測試,重現這個錯誤。
證明測試因這個錯誤而失敗,而不是環境設定問題。
在我核准範圍後,進行最小且相關的修改。
重新執行該測試及適用的周邊檢查。
佐證:實際執行的指令、結束狀態、相關輸出及範圍內的差異。
若遇到阻礙,說明缺少的事實;不得弱化斷言以通過測試。
不得提交、推送、部署、變更憑證或編輯無關檔案。
回報剩餘風險並提供簡短交接,等待發布核准。
判定修復是否已準備好交接
- 重現:原始零計數檢查因正確原因而失敗。若 Agent 回報「無法重現」,則任務仍屬於調查階段。
- 範圍:修補程式區分了缺少與零,且未新增無關的格式化、驗證或依賴項。請審查每個變更的檔案,包括任務前所做的變更。
- 佐證:要求提供實際執行的指令及其輸出。「測試應該通過」不代表執行過。若環境限制阻礙了檢查,請在交接中保留該限制。
- 產品結果:函式測試無法證明 UI 會使用該函式。在真實應用程式中,於單元或整合檢查通過後,重複使用者的可見情境。
- 發布狀態:請分別記錄本機修改、commit、push 和部署。在有人員授權下一步且儲存庫的發布檢查通過前,保持生產環境不變。
此練習的示範交接為:「提議的變更區分了零與遺失。預期涵蓋範圍:zero、null、undefined 與 three。實際測試狀態:根據本次執行填入。其他輸入與 UI 整合:未涵蓋。」切勿以自信的成功陳述取代最後這項不確定性。
在不隱藏失敗的情況下進行復原
測試在到達斷言前就已失敗
解決環境或匯入問題並重新執行。請保留原始函式,直到你擁有到達零計數斷言且因此原因失敗的測試為止。
Agent 重寫的內容超出我的要求
暫停並將 diff 與約定的範圍進行比較。要求它解釋每項額外變更。保留其他貢獻者的工作成果;切勿全面重設或預設取消操作會復原編輯。
口述請求輸入到了錯誤欄位
停止錄音,檢查預期欄位與實際目標位置,並僅移除意外插入的內容。若你目前的 Cue 介面提供 Copy,請使用明確的複製貼上交接。重試前請檢查是否有重複內容。
若需針對修補程式獲得第二視角,請繼續參閱有邊界的 Codex 程式碼審查。若要處理來自錄音中的背景資訊,請先建構連結來源的上下文封包。
使用 Cue 進行嘗試
使用已設定的快速鍵並在 Cue Settings 中確認作用中的模式。可用的應用程式上下文與操作取決於權限、版本和帳戶。在提供機密資料前請詳閱隱私權政策 (English);本指南不保證所有處理都會保留在你的裝置上。
需要協助或發現錯誤?聯絡 Cue 支援 (English)或發送電子郵件至 eli@sophoninc.com。請附上你的 Cue 版本、平台、模式與經遮蔽的範例。請勿傳送密碼、權杖或私人會議資料。