:用 gsd:plan-review-convergence 自動跑通「規(guī)劃 → 多模型評審 → 修訂」閉環(huán))
get-shit-done 的 Cross-AI 計劃收斂循環(huán)用 gsd:plan-review-convergence 自動跑通「規(guī)劃 → 多模型評審 → 修訂」閉環(huán)【免費下載鏈接】get-shit-doneA light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code by T?CHES.項目地址: https://gitcode.com/GitHub_Trending/getshi/get-shit-done導(dǎo)讀gsd:plan-review-convergence是 get-shit-doneGSD提供的一條高級工作流命令它將原本需要手動交替執(zhí)行的「規(guī)劃 → 跨 AI 評審 → 依據(jù)評審意見重規(guī)劃」鏈條自動化gsd-plan-phase N → gsd-review N --codex → gsd-plan-phase N --reviews → gsd-review N --codex → …直到評審中不再殘留 HIGH 級高嚴(yán)重度問題或達到最大循環(huán)次數(shù)為止。讀完本文你將掌握該命令的完整運行機制參數(shù)解析與功能開關(guān)、CYCLE_SUMMARY 合約如何避免假停滯、停滯檢測與升級門控的實現(xiàn)原理以及如何用 Codex、Gemini、本地 Ollama/LM Studio/llama.cpp 等多種審核者驅(qū)動同一套收斂循環(huán)。一、功能定位外層修訂門取代內(nèi)置 plan-checker從命令源文件 commands/gsd/plan-review-convergence.md 的objective可以看到該命令是一個外層的 revision gate包裹在gsd-review與gsd-planner之外反復(fù)執(zhí)行用外部 AI CLI 評審計劃 → 若發(fā)現(xiàn) HIGH 級問題 → 用--reviews反饋重新規(guī)劃 → 再次評審?fù)V箺l件無 HIGH 級問題殘留收斂或達到最大循環(huán)次數(shù)升級門控它取代了gsd-plan-phase內(nèi)部自帶的內(nèi)聯(lián)gsd-plan-checker改用獨立的外部 AI 審核者Codex、Gemini 等做交叉驗證。整個循環(huán)的每一步都運行在獨立的隔離 Agent中由 Agent 調(diào)用既有的 Skillgsd-plan-phase、gsd-review。編排器Orchestrator本身只做五件事初始化、配置門檢查、循環(huán)控制、解析 CYCLE_SUMMARY 中的 HIGH 數(shù)量、停滯檢測與升級門控。核心工作流文檔見 get-shit-done/workflows/plan-review-convergence.md。這一設(shè)計同時復(fù)用了項目中最基礎(chǔ)的三個模式參考revision-loop.md 中的Check-Revise-Escalate模式最多 3 次迭代、問題數(shù)不降則提前升級gates.md 中的門類型分類法Pre-flight / Revision / Escalation / Abortagent-contracts.md 中的完成標(biāo)記約定如 planner 輸出## PLANNING COMPLETE。二、啟用前置條件功能門默認(rèn)關(guān)閉該功能默認(rèn)關(guān)閉opt-in這是#2306-v2引入的安全策略。工作流第 1.5 步通過 SDK 查詢配置鍵CONVERGENCE_ENABLED$(gsd-sdk query config-get workflow.plan_review_convergence 2/dev/null || echo false)若CONVERGENCE_ENABLED不為true則顯示提示并退出gsd-plan-review-convergence is disabled (workflow.plan_review_convergencefalse). This feature automates the plan→review→replan loop using external AI reviewers. Enable it with: gsd config-set workflow.plan_review_convergence true Then re-run: /gsd:plan-review-convergence {PHASE}啟用方式gsd config-set workflow.plan_review_convergence true該鍵在配置架構(gòu)中正式注冊見 config-schema.manifest.json 中的workflow.plan_review_convergence并在 docs/CONFIGURATION.md 中登記默認(rèn)falsev1.39 起引入。測試 tests/plan-review-convergence.test.cjs 專門斷言了默認(rèn)必須為 falseopt-in以及必須展示啟用指令這兩個行為。三、參數(shù)解析與默認(rèn)值工作流第 1 步從$ARGUMENTS提取以下參數(shù)參數(shù)含義默認(rèn)值PHASE階段編號支持小數(shù)如3.1必填--codex/--gemini/--claude/--opencode指定外部 AI 審核 CLI未指定任何審核者時默認(rèn)--codex--ollama/--lm-studio/--llama-cpp指定本地模型服務(wù)器作為審核者—--all使用所有可用 CLI 與運行中的本地模型服務(wù)器—--max-cycles N最大「重規(guī)劃 → 評審」循環(huán)次數(shù)3--text文本模式把AskUserQuestion替換為純文本編號列表關(guān)閉--ws name轉(zhuǎn)發(fā)給評審/重規(guī)劃 Agent 的 workspace 參數(shù)—參數(shù)解析的參考實現(xiàn)工作流第 1 步PHASE$(echo $ARGUMENTS | grep -oE [0-9]\.?[0-9]* | head -1) REVIEWER_FLAGS echo $ARGUMENTS | grep -q \-\-codex REVIEWER_FLAGS$REVIEWER_FLAGS --codex # ... 其余審核者標(biāo)志同理 ... if [ -z $REVIEWER_FLAGS ]; then REVIEWER_FLAGS--codex; fi MAX_CYCLES$(echo $ARGUMENTS | grep -oE \-\-max-cycles\s[0-9] | awk {print $2}) if [ -z $MAX_CYCLES ]; then MAX_CYCLES3; fi GSD_WS echo $ARGUMENTS | grep -qE \-\-ws\s\S GSD_WS$(echo $ARGUMENTS | grep -oE \-\-ws\s\S)注意--codex是默認(rèn)審核者命令文檔中明確寫著 Use Codex CLI as reviewer (default if no reviewer specified)。測試command documents the workflow.plan_review_convergence config key與--codex is the default reviewer對此均有斷言。本地模型審核者的配置三種本地服務(wù)器審核者的連接方式由配置鍵控制docs/CONFIGURATION.md 中均有登記配置鍵默認(rèn)值說明review.ollama_hosthttp://localhost:11434Ollama 服務(wù)器地址OpenAI 兼容review.lm_studio_hosthttp://localhost:1234LM Studio 本地服務(wù)器地址review.llama_cpp_hosthttp://localhost:8080llama.cppllama-server地址review.models.ollama服務(wù)器默認(rèn)傳給 Ollama 的模型名如gsd config-set review.models.ollama codellamareview.models.lm_studio服務(wù)器默認(rèn)LM Studio 模型名review.models.llama_cpp服務(wù)器默認(rèn)llama.cpp 模型名review.models.cli通用地把一個審核 flavor 映射為 shell 命令如review.models.codex可配置為codex exec --model gpt-5。這些鍵同樣注冊在 config-schema.manifest.json測試對review.ollama_host、review.models.llama_cpp等鍵的存在性逐一斷言。四、初始化與階段校驗Pre-flight Gate工作流第 2 步調(diào)用gsd-tools.cjs完成初始化INIT$(node $HOME/.claude/get-shit-done/bin/gsd-tools.cjs init plan-phase $PHASE) if [[ $INIT file:* ]]; then INIT$(cat ${INIT#file:}); fi解析返回 JSON 中的字段phase_dir、phase_number、padded_phase、phase_name、has_plans、plan_count、commit_docs、text_mode、response_language。若設(shè)置了response_language后續(xù)所有面向用戶的輸出都應(yīng)使用該語言若--text存在或text_mode為true則進入TEXT_MODE所有AskUserQuestion調(diào)用替換為純文本編號列表讓用戶輸入選項編號。第 3 步是階段校驗Pre-flight Gate對應(yīng) gates.md 的入口處用低成本確定性檢查阻止無效工作原則PHASE_INFO$(node $HOME/.claude/get-shit-done/bin/gsd-tools.cjs roadmap get-phase ${PHASE})若found為 false則列出可用階段并退出。校驗通過后顯示啟動橫幅━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GSD ? PLAN CONVERGENCE — Phase {phase_number} ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Reviewers: {REVIEWER_FLAGS} Max cycles: {MAX_CYCLES}五、初始規(guī)劃門無計劃則先生成計劃第 4 步判斷是否已有 PLAN.md若has_plans為 true跳過初始規(guī)劃顯示Plans found: {plan_count} PLAN.md files — skipping initial planning.若沒有計劃顯示◆ No plans found — spawning initial planning agent...然后生成一個隔離的 AgentAgent( descriptionInitial planning Phase {PHASE}, promptRun /gsd:plan-phase for Phase {PHASE}. Execute: Skill(skillgsd-plan-phase, args{PHASE} {GSD_WS}) Complete the full planning workflow. Do NOT return until planning is complete and PLAN.md files are committed., modeauto )Agent 返回后驗證產(chǎn)物PLAN_COUNT$(ls ${phase_dir}/${padded_phase}-*-PLAN.md 2/dev/null | wc -l)若PLAN_COUNT 0報錯退出初始規(guī)劃失敗。這一必須驗證 Agent 確實產(chǎn)出文件的檢查遵循 agent-contracts.md 中Agents without markers write artifacts directly to disk that the caller parses的交接約定——這里以PLAN.md文件的存在性作為完成判據(jù)。六、收斂循環(huán)評審 → 計數(shù) → 停滯檢測 → 重規(guī)劃第 5 步是核心循環(huán)。初始化循環(huán)變量cycle 0、prev_high_count Infinity然后進入 5a→5d 子步驟。6.1 評審 Agent5a每輪遞增cycle顯示◆ Cycle {cycle}/{MAX_CYCLES} — spawning review agent...生成隔離的評審 AgentAgent( descriptionCross-AI review Phase {PHASE} cycle {cycle}, promptRun /gsd:review for Phase {PHASE}. Execute: Skill(skillgsd-review, args--phase {PHASE} {REVIEWER_FLAGS} {GSD_WS}) Complete the full review workflow. Do NOT return until REVIEWS.md is committed. IMPORTANT — CYCLE_SUMMARY contract (required): Your final response MUST include a machine-readable line of exactly this form: CYCLE_SUMMARY: current_highN Where N is the integer count of HIGH-severity concerns that REMAIN UNRESOLVED in this cycles findings. Counting rules: INCLUDE in the count: - Newly raised HIGHs in this cycle - PARTIALLY RESOLVED HIGHs: concern acknowledged and a mitigation is in progress, but not yet verified/completed - Previously raised HIGHs that are still unresolved EXCLUDE from the count: - FULLY RESOLVED HIGHs: concern addressed with verification complete (closed ticket, verification log, or reviewer sign-off) - HIGH mentions in retrospective/summary tables comparing cycles - Quoted excerpts from prior reviews referencing past HIGH items Definitions: PARTIALLY RESOLVED — concern acknowledged and mitigation is in progress but not yet verified/completed (e.g., open ticket exists but fix not landed). FULLY RESOLVED — concern addressed with verification complete (closed ticket, verification log, or explicit reviewer sign-off confirming closure). Your final response MUST also include this section immediately after the CYCLE_SUMMARY line: ## Current HIGH Concerns [List each unresolved HIGH with a brief description, one per bullet] [If none: write exactly None.], modeauto )注意{GSD_WS}會被轉(zhuǎn)發(fā)給評審 Agent——測試專門斷言了這一行為review agent spawn forwards --ws via GSD_WS (symmetric with replan agent)因為如果評審讀了錯誤的 workspace 而重規(guī)劃讀了正確的 workspace會導(dǎo)致評審與修訂對象不一致。gsd-review命令本身見 commands/gsd/review.md檢測 CLI → 構(gòu)建評審提示 → 調(diào)用每個 CLI → 收集響應(yīng) → 寫出REVIEWS.md。Agent 返回后驗證REVIEWS_FILE$(ls ${phase_dir}/${padded_phase}-REVIEWS.md 2/dev/null)若為空報錯退出評審 Agent 未產(chǎn)出 REVIEWS.md。6.2 CYCLE_SUMMARY 合約為什么不能 grep REVIEWS.md5b這是整個工作流最關(guān)鍵的正確性設(shè)計#2306-v2修復(fù)的假停滯缺陷Do NOT grep REVIEWS.md for HIGH count.REVIEWS.md accumulates history across cycles — resolved HIGHs from prior cycles remain in the file as audit trail, inflating a raw grep count and causing false stall detection.REVIEWS.md會跨循環(huán)累積歷史上一輪已解決的 HIGH 仍留在文件中作為審計軌跡若直接用 grep 數(shù) HIGH計數(shù)會被虛高從而誤報停滯。因此 HIGH 數(shù)量必須來自評審 Agent 返回消息中的CYCLE_SUMMARY合約行# Extract the integer from CYCLE_SUMMARY: current_highN in the agents return message HIGH_COUNT$(echo $REVIEW_AGENT_RETURN | grep -oE CYCLE_SUMMARY:\s*current_high[0-9] | head -1 | grep -oE [0-9]$) if [ -z $HIGH_COUNT ]; then # Distinguish malformed contract from completely absent contract if echo $REVIEW_AGENT_RETURN | grep -q CYCLE_SUMMARY:; then echo CYCLE_SUMMARY present but current_high is malformed — expected integer, got non-numeric value. Retry or switch reviewer. else echo Review agent did not honor the CYCLE_SUMMARY contract — cannot determine HIGH count. Retry or switch reviewer. fi exit 1 fi # Extract the ## Current HIGH Concerns section from the agents return message HIGH_LINES$(echo $REVIEW_AGENT_RETURN | awk /^## Current HIGH Concerns/{found1; next} found /^##/{exit} found{print}) if [ ${HIGH_COUNT} -gt 0 ] [ -z ${HIGH_LINES} ]; then echo ? Review agents CYCLE_SUMMARY reports ${HIGH_COUNT} HIGHs but did not provide ## Current HIGH Concerns section — continuing with incomplete escalation details. fi合約語義要點計入本輪新提出的 HIGH部分解決PARTIALLY RESOLVED問題被確認(rèn)且有緩解在進行但尚未驗證/完成如 ticket 已開但修復(fù)未落地的 HIGH上一輪仍未解決的 HIGH不計入完全解決FULLY RESOLVED附帶驗證完成證據(jù)關(guān)閉的 ticket、驗證日志或?qū)徍苏吆炇盏?HIGH對比各輪次的回顧/匯總表里的 HIGH 提及引用舊評審中提及過去 HIGH 的摘錄合約缺失或格式錯誤時的錯誤信息可區(qū)分present but malformed與completely absent兩種情形便于排障HIGH_COUNT 0但缺少## Current HIGH Concerns小節(jié)時給出警告防止升級門展示空白問題列表。測試文件 tests/plan-review-convergence.test.cjs 用一整組用例守護這一合約必須存在CYCLE_SUMMARY: current_high格式、必須定義 PARTIALLY/FULLY RESOLVED、必須要求## Current HIGH Concerns小節(jié)、必須區(qū)分 malformed 與 absent、成功標(biāo)準(zhǔn)中不得出現(xiàn) grep HIGHs。6.3 收斂成功HIGH_COUNT 0若HIGH_COUNT 0已收斂更新狀態(tài)并退出node $HOME/.claude/get-shit-done/bin/gsd-tools.cjs state planned-phase --phase ${PHASE} --name ${phase_name} --plans ${PLAN_COUNT}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GSD ? CONVERGENCE COMPLETE ? ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Phase {phase_number} converged in {cycle} cycle(s). No HIGH concerns remaining. REVIEWS.md: {REVIEWS_FILE} Next: /gsd:execute-phase {PHASE}6.4 停滯檢測與最大循環(huán)檢查5c若HIGH_COUNT 0顯示◆ Cycle {cycle}/{MAX_CYCLES} — {HIGH_COUNT} HIGH concerns found然后做兩項判斷停滯檢測若HIGH_COUNT prev_high_count? Convergence stalled — HIGH concern count not decreasing ({HIGH_COUNT} HIGH concerns, previous cycle had {prev_high_count})這正是 revision-loop.md 中issue count not decreasing → early escalate模式的體現(xiàn)問題數(shù)在相鄰兩輪之間不下降說明生產(chǎn) Agent 卡住了繼續(xù)循環(huán)也無濟于事應(yīng)提前升級。最大循環(huán)檢查若cycle MAX_CYCLES進入升級門Escalation Gate。TEXT_MODE下用純文本編號列表Plan convergence did not complete after {MAX_CYCLES} cycles. {HIGH_COUNT} HIGH concerns remain: {HIGH_LINES} How would you like to proceed? 1. Proceed anyway — Accept plans with remaining HIGH concerns and move to execution 2. Manual review — Stop here, review REVIEWS.md and address concerns manually Enter number:否則使用AskUserQuestionAskUserQuestion([ { question: Plan convergence did not complete after {MAX_CYCLES} cycles. {HIGH_COUNT} HIGH concerns remain:\n\n{HIGH_LINES}\n\nHow would you like to proceed?, header: Convergence, multiSelect: false, options: [ { label: Proceed anyway, description: Accept plans with remaining HIGH concerns and move to execution }, { label: Manual review, description: Stop here — review REVIEWS.md and address concerns manually } ] } ])選Proceed anyway顯示最終狀態(tài)并退出接受帶殘留 HIGH 的計劃進入執(zhí)行選Manual review給出指引并退出Review the concerns in: {REVIEWS_FILE} To replan manually: /gsd:plan-phase {PHASE} --reviews To restart loop: /gsd:plan-review-convergence {PHASE} {REVIEWER_FLAGS}兼容性提示命令源文件 commands/gsd/plan-review-convergence.md 的runtime_note指出在 VS Code Copilot 環(huán)境中應(yīng)將AskUserQuestion替換為vscode_askquestions兩者等價都是同一個交互式提問 API 的實現(xiàn)不要因為AskUserQuestion看似不可用就跳過提問步驟。--max-cycles 1的語義值得注意測試escalates immediately after cycle 1 when --max-cycles 1斷言了cycle MAX_CYCLES檢查因此當(dāng)?shù)谝淮卧u審仍有 HIGH 且 max cycles 為 1 時會直接觸發(fā)升級門而不會進入重規(guī)劃。6.5 重規(guī)劃 Agent5d在未達到 max cycles 時先更新prev_high_count HIGH_COUNT顯示◆ Spawning replan agent with review feedback...再生成重規(guī)劃 AgentAgent( descriptionReplan Phase {PHASE} with review feedback cycle {cycle}, promptRun /gsd:plan-phase with --reviews for Phase {PHASE}. Execute: Skill(skillgsd-plan-phase, args{PHASE} --reviews --skip-research {GSD_WS}) This will replan incorporating cross-AI review feedback from REVIEWS.md. Do NOT return until replanning is complete and updated PLAN.md files are committed. IMPORTANT: When gsd-plan-phase outputs ## PLANNING COMPLETE, that means replanning is done. Return at that point., modeauto )兩個關(guān)鍵細(xì)節(jié)--reviews讓gsd-plan-phase把REVIEWS.md中的交叉評審反饋并入重規(guī)劃這正是gsd-review命令objective中 fed back into planning via /gsd:plan-phase --reviews 的閉環(huán)--skip-research研究已在初始規(guī)劃完成重規(guī)劃不再重復(fù)研究測試斷言了這一點replan agent must skip research完成判據(jù)復(fù)用 agent-contracts.md 中登記的 planner 完成標(biāo)記## PLANNING COMPLETE。Agent 返回后回到5a進入下一輪評審直到收斂或升級。七、成功標(biāo)準(zhǔn)與測試保障工作流文檔末尾的success_criteria定義了該功能的驗收清單可視為實現(xiàn)契約Config gate checked before running — exits with enable instructions ifworkflow.plan_review_convergenceis falseInitial planning via Agent → Skill(gsd-plan-phase) if no plans existReview via Agent → Skill(gsd-review) — isolated, not inline;{GSD_WS}forwardedReplan via Agent → Skill(gsd-plan-phase --reviews) — isolated, not inlineOrchestrator only does: init, config gate, loop control, parse CYCLE_SUMMARY for HIGH count, stall detection, escalationHIGH count extracted from review agents CYCLE_SUMMARY return message (not by grepping REVIEWS.md)Review agent prompt definesCYCLE_SUMMARY: current_highNcontract with PARTIALLY/FULLY RESOLVED definitionsAbort with clear error if CYCLE_SUMMARY is absent; distinguish malformed from absentWarn if HIGH_COUNT 0 but## Current HIGH Concernssection is absent from return messageEach Agent fully completes its Skill before returningLoop exits on: no HIGH concerns (converged) OR max cycles (escalation)Stall detection reported when HIGH count not decreasingSTATE.md updated on convergence completion這一契約被 tests/plan-review-convergence.test.cjs 系統(tǒng)性地守護。值得注意的是該測試文件頂部的注釋揭示了一個核心設(shè)計哲學(xué)The workflow markdown IS the runtime instruction. Testing its text content tests the deployed contract — if the CYCLE_SUMMARY requirement is absent, the false-stall bug is absent from defenses too.即工作流 Markdown 本身就是運行時指令因此對工作流文本的測試就是對部署契約的測試。測試覆蓋了命令源gsd:前綴、全部審核者標(biāo)志、Agent在 allowed-tools 中、Copilot 的vscode_askquestions降級說明、配置注冊workflow.plan_review_convergence及三個本地 host 鍵必須存在于VALID_CONFIG_KEYS、文檔同步docs/CONFIGURATION.md 必須記錄這些鍵及默認(rèn) false 行為以及工作流行為初始規(guī)劃門、收斂循環(huán)、合約定義、停滯檢測、升級門、--max-cycles 1立即升級、REVIEWS.md 產(chǎn)物校驗。八、典型使用場景與手動替代方案使用場景當(dāng)某個階段如3的計劃需要經(jīng)受多模型交叉評審、且你希望在評審發(fā)現(xiàn) HIGH 級問題后由系統(tǒng)自動修訂計劃直至收斂時啟用并執(zhí)行g(shù)sd config-set workflow.plan_review_convergence true /gsd:plan-review-convergence 3 --codex --gemini --max-cycles 4混合審核--all會使用所有可用 CLI 與運行中的本地模型服務(wù)器也可只指定本地審核者以保護數(shù)據(jù)隱私/gsd:plan-review-convergence 3 --ollama --lm-studio手動替代不啟用該命令時上述循環(huán)退化為手工操作鏈條gsd-plan-phase 3 → gsd-review 3 --codex → gsd-plan-phase 3 --reviews → gsd-review 3 --codex → …由REVIEWS.md作為評審反饋載體。plan-review-convergence的價值正是把這條鏈條封裝為可配置、帶停滯檢測與升級門控的自動化循環(huán)。九、實現(xiàn)原理小結(jié)從源碼結(jié)構(gòu)可以歸納出該工作流的三個設(shè)計支柱編排器極薄Agent 極厚所有真實工作規(guī)劃、評審、重規(guī)劃都通過隔離 Agent 調(diào)用既有 Skill 完成編排器只做參數(shù)解析、循環(huán)控制與狀態(tài)流轉(zhuǎn)——這保證了plan-review-convergence復(fù)用的都是已被單測覆蓋的成熟 Skill自身只承擔(dān)編排風(fēng)險機器可讀合約優(yōu)先跨 Agent 傳遞結(jié)論不靠語義理解而是靠嚴(yán)格格式的CYCLE_SUMMARY: current_highN行 ## Current HIGH Concerns小節(jié)配合 PARTIALLY/FULLY RESOLVED 的精確計數(shù)規(guī)則從根本上規(guī)避了REVIEWS.md累積歷史導(dǎo)致的假停滯門控分層入口有配置門 Pre-flight 階段校驗循環(huán)內(nèi)有停滯檢測Revision Gate 的提前退出循環(huán)外有 max-cycles 升級門Escalation Gate與產(chǎn)物缺失時的硬錯誤Abort 語義完全對齊 gates.md 的四類門型分類法。需要深入了解的讀者建議按此順序閱讀倉庫源碼get-shit-done/workflows/plan-review-convergence.md工作流本體→ commands/gsd/plan-review-convergence.md命令殼→ get-shit-done/references/revision-loop.md模式來源→ tests/plan-review-convergence.test.cjs契約測試→ docs/CONFIGURATION.md配置參考?!久赓M下載鏈接】get-shit-doneA light-weight and powerful meta-prompting, context engineering and spec-driven development system for Claude Code by T?CHES.項目地址: https://gitcode.com/GitHub_Trending/getshi/get-shit-done創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考