99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Claude Code防偷懶指南:用Hook+狀態(tài)機搭建AI Agent治理層

Claude Code防偷懶指南:用Hook+狀態(tài)機搭建AI Agent治理層 如果你用過 Claude Code 做過稍微復(fù)雜一點的任務(wù)十有八九遇到過這種場景它跑得很嗨日志刷了一屏最后停下來告訴你“已完成”你一看測試沒跑文檔沒更新甚至改的文件跟需求都不相關(guān)。這不是個別模型的“態(tài)度問題”而是 Agent 類工具在沒有外部約束時的必然行為。我們內(nèi)部從第一次被坑到?jīng)Q定系統(tǒng)性解決大概花了兩三周最后產(chǎn)出一套被叫做 wow-harness 的治理層框架16 個 Hook 覆蓋任務(wù)從進來到交付的每一個關(guān)鍵動作外加 8 關(guān)狀態(tài)機把整個任務(wù)的推進過程固定在軌道上。這篇文章把完整思路和可復(fù)現(xiàn)的配置從零拆一遍適合正在用 Claude Code 做真實項目、又不想每次都被它“差不多得了”式交付折磨的團隊。1. 為什么我會在 Claude Code 外面再加一層治理框架先說結(jié)論治理層的目標不是限制 Claude Code 的能力而是把它從“憑感覺自由發(fā)揮”變成“按流程推進”。Agent 工具的價值在于它能把多步任務(wù)串起來但只要中間沒有硬性檢查點它就一定會走最短路徑哪怕這條路徑是錯的。1.1 連續(xù)被“看起來完成”坑了半個月在引入治理層之前我這邊幾乎每天都會收到類似的反饋“它怎么又沒寫測試”“它怎么把配置文件也改了”“我讓它先出方案它上來就寫代碼?!蔽耶敃r沒有急著批評模型而是把所有失敗案例收集到一起發(fā)現(xiàn)偷懶行為其實可以歸納成五類跳步。明明是“先設(shè)計方案、確認后再實施”的任務(wù)模型跳過方案評審直接改文件。假測試。測試文件確實建了測試命令也跑了但測試函數(shù)里沒有一條 assert或者斷言恒為 True退出碼照樣是 0。范圍蔓延。一個需求沒做完但它順手“重構(gòu)”了相鄰幾個模塊理由通常是“為后續(xù)打好基礎(chǔ)”。風(fēng)險掩藏。命令執(zhí)行遇到環(huán)境變量缺失、網(wǎng)絡(luò)超時、權(quán)限不足它選擇忽略錯誤繼續(xù)往下寫最后告訴你一切正常。幻覺閉環(huán)。它在最終回復(fù)里寫“已驗證通過”但翻遍日志都沒有找到一次真實的測試運行記錄。這五類問題沒有一個靠提醒能解決。我試過在系統(tǒng)提示里寫“你必須先寫測試”當天有效任務(wù)一復(fù)雜就失效也試過讓它每一步反問自己結(jié)果是日志變長了交付質(zhì)量沒有明顯變化。原因很簡單提醒是軟約束可以被上下文稀釋而 Agent 的行為終點只有一個——生成一段看起來合理的回復(fù)。1.2 AI Agent 偷懶的根因不是態(tài)度是目標函數(shù)很多人把“偷懶”理解成模型故意偷工減料其實不是。大模型生成代碼時優(yōu)化的目標是預(yù)測最合理的下一個 token而不是“讓測試全部通過”。你說“幫我加個緩存”模型天然傾向于輸出一段緩存代碼而不是去跑一遍回歸測試。輸出一段代碼是低成本的跑測試、分析失敗、修修復(fù)、再跑測試是高成本的多輪行動。在沒有任何外部反饋的情況下模型會選擇最短路徑來結(jié)束這一輪對話。工具調(diào)用還會放大這個問題。Claude Code 一旦接入終端、文件系統(tǒng)、代碼搜索等工具它就有了“動手”的能力但它的反饋回路里缺少一層“質(zhì)檢員”。命令退出碼是局部的模型不一定在下一輪決策中讀取測試報告再難看只要沒有人在中間打斷它就可能視而不見。所以我們需要的不是更長的提示詞而是一個能在關(guān)鍵動作發(fā)生前后判斷“現(xiàn)在能不能做、做完對不對”的外部層。1.3 為什么是 Hook 狀態(tài)機而不是繼續(xù)調(diào) prompt治理層到底怎么搭我評估過三條路線。第一條是把約束全部寫進 prompt包括禁止行為清單、流程要求、驗收標準。優(yōu)點是零成本缺點是約束會被新輸入的上下文沖淡任務(wù)越長效果越差。第二條是讓模型每一步自問自答比如“我現(xiàn)在完成的步驟是否滿足驗收標準”。優(yōu)點是能讓它慢下來缺點是自問自答仍然是 token 生成它完全可以自問完之后又自答一個“滿足”很難被證偽。第三條才是 wow-harness 走的路線在真實的事件鏈路上插樁。Claude Code 在執(zhí)行周期里會產(chǎn)生大量事件比如收到新指令、準備改文件、調(diào)用外部命令、拿到測試結(jié)果、準備輸出最終回答。治理層在事件前后掛 Hook用外部腳本判斷“這個動作該不該放行”同時用狀態(tài)機記錄任務(wù)的推進階段。狀態(tài)機解決的是橫跨多輪對話的“流程問題”你從哪個階段進來、現(xiàn)在該在哪個階段、有沒有跳過必經(jīng)關(guān)卡。Hook 解決的是單點動作的“合規(guī)問題”這一步改的文件是否越界、這條命令是否高危、這份測試證據(jù)是否真實。這兩者組合起來相當于給 Agent 裝了一整套安檢設(shè)備和一張流水線工單。它不再靠自覺而是靠結(jié)構(gòu)。2. 16個Hook的埋點拆解每個關(guān)鍵動作都有一道安檢16 這個數(shù)字不是湊出來的而是從任務(wù)生命周期里一條條數(shù)出來的。我按“入口、規(guī)劃、執(zhí)行、收尾”四段來分布每一段對應(yīng) Claude Code 行為鏈路上的一個關(guān)鍵拐點。下面先把全景表放出來再逐個說清楚每個 Hook 到底檢查什么、為什么需要它。2.1 先看全景16個Hook分布總覽編號Hook 名稱所屬階段核心職責(zé)E1intent_guard入口校驗任務(wù)描述是否包含目標、范圍、完成定義E2context_injector入口注入倉庫規(guī)范、技術(shù)棧邊界、文檔模板E3task_splitter入口強制把大任務(wù)拆成可驗證的子任務(wù)E4goal_locker入口將驗收標準寫入任務(wù)狀態(tài)文件并鎖定P5plan_validator規(guī)劃校驗方案是否包含步驟、風(fēng)險、驗收方式P6tech_choice_review規(guī)劃新引入技術(shù)棧必須有明確理由和對比P7risk_register規(guī)劃登記高危操作供后續(xù)命令守衛(wèi)使用P8queue_builder規(guī)劃生成有序子任務(wù)隊列X9edit_scope_guard執(zhí)行改文件前檢查是否越出允許目錄X10command_guard執(zhí)行命令執(zhí)行前匹配高危清單與白名單X11dependency_probe執(zhí)行依賴文件變更時要求兼容性說明X12test_trigger執(zhí)行每個子任務(wù)完成后強制觸發(fā)對應(yīng)測試X13self_review_pump執(zhí)行向上下文注入質(zhì)檢問題并要求逐條自答X14progress_heartbeat執(zhí)行記錄有效產(chǎn)出檢測原地空轉(zhuǎn)C15evidence_check收尾核驗測試斷言、失敗計數(shù)、運行記錄C16delivery_signoff收尾校驗 diff、文檔、回滾方案后簽收交付這四個階段和后面的 8 關(guān)狀態(tài)機是對應(yīng)的入口對應(yīng) S0 到 S1規(guī)劃對應(yīng) S1 到 S2執(zhí)行對應(yīng) S2 到 S4收尾對應(yīng) S4 到 S7。Hook 負責(zé)事件級檢查狀態(tài)機負責(zé)任務(wù)級推進兩者不沖突。2.2 入口四個Hook把任務(wù)說清楚、鎖清楚再開工入口階段的四個 Hook 解決的是同一個問題Claude Code 經(jīng)常在任務(wù)描述模糊的情況下就開始動手。你只說一句“優(yōu)化一下接口性能”它就敢直接改核心模塊至于“優(yōu)化到什么程度”“哪些接口算在里面”“怎么證明優(yōu)化有效”全是空白。intent_guard 會在任務(wù)進入時檢查描述里有沒有可執(zhí)行的目標、明確的范圍邊界和可驗證的完成定義。如果沒有它不會直接拒絕而是返回一組提問讓 Claude Code 先把缺失信息補齊。比如任務(wù)里只說“加緩存”intent_guard 會問緩存鍵是什么失效策略是什么命中率指標是什么。context_injector 負責(zé)把治理層配置好的上下文注入進去。它不等同于系統(tǒng)提示而是按項目動態(tài)加載倉庫的技術(shù)棧約定、禁止修改的目錄、代碼風(fēng)格要求、文檔模板。這樣做的原因是讓模型在開局就把邊界裝進上下文而不是中途自己去猜。task_splitter 是專門治“一口吞”的。任務(wù)描述過于龐大時它要求必須拆成子任務(wù)列表每個子任務(wù)都要有獨立的驗收標準。拆不出來就停在原地。很多偷懶都是從“任務(wù)太大、模型隨便做幾下就說完成”開始的。goal_locker 則是把前面確認好的驗收標準固化到任務(wù)狀態(tài)文件里比如目標、范圍、禁止項、完成定義全部寫入 harness/state/task_xxx.json。之后所有 Hook 都以這份文件為準防止中間對話太長模型把最初的目標忘了。2.3 規(guī)劃四個Hook方案不行代碼一行都不許動到了規(guī)劃期AI Agent 最容易犯的錯誤是不做規(guī)劃直接寫代碼。它天生傾向于“從第一行代碼開始”因為寫代碼才是它能獲得正反饋的路徑。plan_validator 就是在這里設(shè)卡Claude Code 必須先產(chǎn)出方案方案里必須有實施步驟、風(fēng)險點、驗證方式。沒有驗收方式的方案直接打回。tech_choice_review 看起來像是限制技術(shù)自由其實是防止“順手換輪子”。模型經(jīng)常會在中途說“這個庫不如換成另一個更現(xiàn)代”然后就改了依賴。這類變更不是絕對禁止但必須有對比和理由比如性能數(shù)據(jù)、維護狀態(tài)、遷移成本。沒有對比就攔截有對比就放行。risk_register 把方案里識別出的危險操作記錄下來例如刪除目錄、批量修改文件、操作生產(chǎn)環(huán)境。它不會單獨攔人而是把風(fēng)險清單傳給后面執(zhí)行期的 command_guard讓命令守衛(wèi)有依據(jù)地攔截高危動作。風(fēng)險識別放在規(guī)劃期比在執(zhí)行期臨時判斷要準得多。queue_builder 負責(zé)把子任務(wù)轉(zhuǎn)換成有序隊列寫入狀態(tài)機可識別的字段。這個隊列決定了執(zhí)行期和測試觸發(fā)器的節(jié)奏。隊列的意義在于任務(wù)一旦被拆解并鎖定順序Claude Code 就不能隨心所欲地先做后做它必須按隊列推進。2.4 執(zhí)行六個Hook把工具的每一次調(diào)用都管起來執(zhí)行期是自由度最高的階段也是治理層最容易誤傷的地方。六個 Hook 里edit_scope_guard 和 command_guard 是硬閘門另外四個是證據(jù)采集和節(jié)奏控制。edit_scope_guard 在文件寫入前觸發(fā)檢查目標路徑是否落在允許目錄清單內(nèi)。比如某次任務(wù)只允許改 src/order 和 tests/order如果 Claude Code 準備寫 config/production.yaml直接被攔。范圍蔓延這個毛病靠提示詞根本管不住只有路徑級攔截才可靠。command_guard 看的是終端命令。規(guī)則分兩層黑名單命令直接拒絕比如清庫、強制推送、刪除整個目錄風(fēng)險命令進入人工審批或要求附帶說明。執(zhí)行高危命令時治理層會把 risk_register 里的上下文一并帶出讓模型解釋這條命令與當前任務(wù)的關(guān)聯(lián)。dependency_probe 監(jiān)聽依賴文件比如 package.json、requirements.txt 等。只要這些文件發(fā)生變化它就會要求 Claude Code 在 diff 說明里寫明變更理由和兼容性驗證結(jié)果。沒有理由就回滾這次依賴變更。這樣能防止模型為了完成任務(wù)偷偷升級依賴。test_trigger 是“每個子任務(wù)完成”時的強制動作。它做的事情很簡單找到當前子任務(wù)關(guān)聯(lián)的測試文件執(zhí)行對應(yīng)測試命令。注意它不只跑一次而是每個子任務(wù)完成都跑一次。測試失敗時任務(wù)不能進入下一個子任務(wù)。self_review_pump 不是硬攔截而是往上下文中注入一組質(zhì)檢問題例如改動的邊界是否超出需求異常路徑是否處理測試是否覆蓋了失敗場景。它強制模型在繼續(xù)之前完成一次自檢回答。這看起來很像第二類方案里的“自問自答”但區(qū)別在于自答內(nèi)容會被記錄后面收尾的 evidence_check 會交叉校驗自答說有覆蓋而實際沒有覆蓋時會被抓住。progress_heartbeat 是防“原地空轉(zhuǎn)”的。模型有可能在某個問題上反復(fù)繞圈生成大量日志但沒有任何文件變化或命令執(zhí)行。它定期檢查最近有沒有“有效產(chǎn)出”——文件變更、命令完成、測試結(jié)果——如果長時間沒有就暫停當前任務(wù)并通知人工介入。2.5 收尾兩個Hook驗證據(jù)不驗收態(tài)度收尾是整個治理層最關(guān)鍵的一段。因為大多數(shù)偷懶都發(fā)生在“最后一個環(huán)節(jié)”模型知道快要交付了所以開始縮短流程、跳過驗證、直接寫“已完成”。evidence_check 做的第一件事是解析測試日志。它不只看退出碼還會統(tǒng)計通過數(shù)量、失敗數(shù)量、斷言數(shù)量、實際執(zhí)行時間。如果測試文件里沒有任何 assert哪怕退出碼是 0也會被判定為假測試。如果日志顯示有失敗用例但最終被模型忽略任務(wù)會被打回執(zhí)行期。delivery_signoff 是最后一關(guān)。它會檢查本次 diff 與任務(wù)目標是否匹配有沒有新增與需求無關(guān)的改動檢查相關(guān)文檔是否同步更新檢查變更說明里是否包含回滾方案。三項都通過后任務(wù)才允許進入人工評審狀態(tài)。說白了收尾 Hook 驗收的是證據(jù)鏈不是模型嘴上說的“我認為沒問題”。2.6 Hook 是內(nèi)置還是按場景掛載怎么取舍不是 16 個 Hook 都要為一個項目全部打開。我的經(jīng)驗是分成三檔。必須內(nèi)置的是 intent_guard、edit_scope_guard、command_guard、evidence_check。這四個涉及最基本的準入、越界、危險命令和假測試問題。按項目掛載的是 tech_choice_review、dependency_probe。純前端項目、無依賴變動的腳本項目可以不啟用減少誤傷。按成本掛載的是 self_review_pump、progress_heartbeat。前者會消耗額外 token后者需要有人處理暫停任務(wù)。小項目、短任務(wù)開這兩個反而增加復(fù)雜度只有長時間跑的大任務(wù)才值得。3. 8關(guān)狀態(tài)機任務(wù)像過檢品線一樣少一關(guān)就出不去Hook 管的是“當下這個動作對不對”狀態(tài)機管的是“整個任務(wù)走到哪一步了”。只有 Hook 沒有狀態(tài)機Claude Code 還是可以東一榔頭西一棒子最后繞一個大圈說完成了。狀態(tài)機的作用就是強制單向流轉(zhuǎn)想從第一關(guān)直接跳到最后一關(guān)門都沒有。3.1 八個關(guān)卡從進來到歸檔走一遍這套狀態(tài)機的主干有八個狀態(tài)我把它們稱為八關(guān)。S0 HOLDING 是任務(wù)的初始掛起狀態(tài)。Claude Code 收到任務(wù)后先不干活等 intent_guard 和 task_splitter 確認信息完整、子任務(wù)拆解成功才允許進入下一關(guān)。S1 INTENT_LOCKED 表示意圖已鎖定。此時 goal_locker 已經(jīng)把目標、范圍、驗收標準寫進狀態(tài)文件。這個狀態(tài)存在的意義是后面無論對話多長模型都必須圍繞這份鎖定目標工作不能擅自改需求。S2 PLAN_APPROVED 是方案通過狀態(tài)。plan_validator 通過、tech_choice_review 通過、risk_register 完成、queue_builder 生成隊列后任務(wù)才進入這里。從這一關(guān)開始Claude Code 才被允許動代碼。S3 EXECUTING 是執(zhí)行狀態(tài)。它不是一個靜止狀態(tài)而是一個持續(xù)過程每完成一個子任務(wù)test_trigger 必須跑一次測試progress_heartbeat 持續(xù)檢查有效產(chǎn)出。只有隊列里的子任務(wù)全部完成才允許嘗試進入下一關(guān)。S4 SELF_VERIFIED 是自驗證通過狀態(tài)。進入這個狀態(tài)的條件是 all tests passed并且 evidence_check 驗證了斷言數(shù)量與測試日志不存在假測試。注意這里是“自驗證”還沒經(jīng)過人。S5 HUMAN_REVIEW 是人工評審狀態(tài)。任務(wù)進入這里后Claude Code 的自動流程暫停等待人工查看 diff、測試日志、文檔更新和回滾方案。人工有“通過”和“打回”兩個動作打回則回到 S3 或 S2。S6 RELEASED 是發(fā)布狀態(tài)。人工通過后任務(wù)進入可發(fā)布序列。如果項目對接了 CI/CD這里可以觸發(fā)上線流水線。S7 ARCHIVED 是歸檔狀態(tài)。發(fā)布完成、復(fù)盤記錄寫完后任務(wù)關(guān)閉。歸檔時會保存任務(wù)的狀態(tài)記錄、Hook 執(zhí)行日志、測試證據(jù)摘要后續(xù)想追溯某次“偷懶是怎么被攔住的”直接查這份檔案。3.2 狀態(tài)流轉(zhuǎn)表與看門狗機制八關(guān)的流轉(zhuǎn)表如下當前狀態(tài)遷移觸發(fā)條件依賴的證據(jù)目標狀態(tài)S0 HOLDING意圖校驗與拆解通過intent_guard、task_splitter 輸出S1 INTENT_LOCKEDS1 INTENT_LOCKED方案評審?fù)ㄟ^plan_validator、queue_builder 輸出S2 PLAN_APPROVEDS2 PLAN_APPROVED子任務(wù)隊列開始執(zhí)行queue_builder 隊列已加載S3 EXECUTINGS3 EXECUTING隊列清空且測試全通過test_trigger、evidence_check 輸出S4 SELF_VERIFIEDS4 SELF_VERIFIED人工點擊通過人工評審意見S5 HUMAN_REVIEWS5 HUMAN_REVIEW發(fā)布動作完成CI/CD 或發(fā)布確認S6 RELEASEDS6 RELEASED復(fù)盤與歸檔完成歸檔記錄S7 ARCHIVED光有流轉(zhuǎn)規(guī)則還不夠狀態(tài)機要有自己的看門狗。每個狀態(tài)都帶一個 TTL比如 S3 EXECUTING 最長允許 30 分鐘。同一個狀態(tài)停留超過閾值看門狗就會觸發(fā)先提醒 Claude Code 提供進展再沒反應(yīng)就自動降級到 PAUSED。PAUSED 不是主干八關(guān)之一而是一個異常掛起狀態(tài)專門等人來處理。3.3 異常分支駁回、暫停、熔斷與恢復(fù)狀態(tài)機只有主干會顯得很死板所以還需要幾個不在主干計數(shù)里的分支REJECTED、PAUSED、FAILED、ROLLBACK。REJECTED 是任意階段被打回。比如 entry 階段信息不完整、plan 階段方案不合格、執(zhí)行階段被 command_guard 攔截了高危命令。REJECTED 會帶著原因跳回對應(yīng)狀態(tài)比如方案不合格回到 S0 或 S1執(zhí)行中被攔截回到 S3。PAUSED 是暫停。人工干預(yù)、長時間無有效產(chǎn)出、測試一直失敗但模型在瞎繞圈時狀態(tài)機會把任務(wù)掛起。掛起期間不允許繼續(xù)消耗工具調(diào)用只能等人工判斷“繼續(xù)”“打回”還是“終止”。FAILED 表示任務(wù)確實失敗。S3 階段測試失敗且三分鐘內(nèi)沒有任何修復(fù)進展FAILED 會把失敗原因歸檔任務(wù)回到 S3 重置執(zhí)行上下文而不是直接在舊上下文里繼續(xù)試錯。很多時候模型在失敗后反復(fù)繞圈是因為上下文已經(jīng)被錯誤日志污染了重置反而更快。ROLLBACK 是回滾分支。S6 RELEASED 后發(fā)現(xiàn)線上問題可以觸發(fā) ROLLBACK把代碼回到 S5 HUMAN_REVIEW 通過前的版本任務(wù)狀態(tài)回到 S3 重新執(zhí)行。這一分支保證了治理層不是只負責(zé)“上線前不出錯”還要給“上線后出錯”留退路。3.4 狀態(tài)機與16個Hook怎么配合很多第一次接觸這套設(shè)計的人會混淆Hook 是不是就是狀態(tài)機的一部分其實分工很明確。Hook 是傳感器狀態(tài)機是控制器。Claude Code 的每個動作觸發(fā) HookHook 檢查后把結(jié)論寫成一個“證據(jù)票據(jù)”比如“edit_scope_guard 通過”“evidence_check 發(fā)現(xiàn) 0 條斷言拒絕”。狀態(tài)機不自己去執(zhí)行這些檢查它只看證據(jù)票據(jù)是否齊全。偽代碼是這樣on_event(event): tickets run_hooks(event) if any(ticket.rejected): state.transition_to(REJECTED, reasonticket.reason) return if state.can_advance(tickets): state.advance() watchdogs[state].start_timer()狀態(tài)機只認票據(jù)不認描述。Claude Code 在對話里說一萬遍“我驗證過了”都沒用只有 evidence_check 寫下的帶時間戳的票據(jù)才能讓狀態(tài)從 S3 挪到 S4。這套設(shè)計把“語言承諾”和“實際證據(jù)”徹底分開是治理層能真正防偷懶的核心原因。4. 最小可運行方案手把手搭一個防偷懶治理層前面的設(shè)計聽起來很復(fù)雜但真正搭起來需要動手的東西并不多。這里給出一套最小可運行方案是我在某次模擬項目的一次重構(gòu)流程里逐步整理出來的目錄結(jié)構(gòu)、配置注冊和核心腳本可以直接抄。4.1 目錄結(jié)構(gòu)我習(xí)慣把治理層單獨放在倉庫根目錄下的 harness 目錄里與業(yè)務(wù)代碼隔離harness/ ├── config.yaml # Hook 注冊與狀態(tài)機參數(shù) ├── hooks/ │ ├── intent_guard.py │ ├── plan_validator.py │ ├── edit_scope_guard.py │ ├── command_guard.py │ ├── evidence_check.py │ └── delivery_signoff.py ├── state/ │ └── task_id.json # 每個任務(wù)單獨一個狀態(tài)文件 ├── tickets/ # Hook 通過后生成的證據(jù)票據(jù) └── scripts/ └── run_harness.sh # 統(tǒng)一調(diào)用入口state 目錄里以任務(wù) ID 為單位的 JSON 文件是狀態(tài)機的唯一數(shù)據(jù)源。tickets 目錄相當于流水線上的質(zhì)檢記錄單每個 Hook 通過后會往這里追加一條記錄格式是 JSON Lines方便按時間排序和統(tǒng)計。4.2 配置注冊把語義化Hook名掛到事件回調(diào)上下面是一個最小 config.yaml 的示意。需要注意的是Claude Code 的配置以事件契約為基礎(chǔ)不同版本注冊方式可能略有差異但核心思路都是“把某個外部命令掛到某類事件上”。我給 Hook 起語義化名字是為了讓配置表本身可讀version: 1 task_timeout_seconds: 1800 hooks: on_task_start: - command: python3 harness/hooks/intent_guard.py - command: python3 harness/hooks/plan_validator.py on_before_tool_edit: - command: python3 harness/hooks/edit_scope_guard.py on_before_command: - command: python3 harness/hooks/command_guard.py on_test_finished: - command: python3 harness/hooks/evidence_check.py on_before_final_answer: - command: python3 harness/hooks/delivery_signoff.py注冊邏輯是把語義化事件翻譯成 Claude Code 實際可用的回調(diào)位置。我通常讓 run_harness.sh 作為統(tǒng)一入口在里面根據(jù)事件類型分發(fā)到對應(yīng) Hook 腳本這樣配置變更就只發(fā)生在 harness 內(nèi)部#!/usr/bin/env bash EVENT_TYPE$1 TASK_ID${2:-default} export HARNESS_TASK_ID$TASK_ID export HARNESS_EVENT$EVENT_TYPE python3 harness/hooks/${EVENT_TYPE}.py || exit 1早期版本我直接在 config 里寫死每個命令后來發(fā)現(xiàn)管道一多就亂。統(tǒng)一入口的好處是Hook 失敗時退出碼清晰日志集中在同一處排查問題更快。4.3 一個“假測試檢測器”的完整實現(xiàn)我在 2.5 節(jié)說 evidence_check 是收尾最關(guān)鍵的 Hook這里把它拆出來單獨實現(xiàn)。它要解決的偷懶場景是Claude Code 聲稱跑了測試退出碼 0但測試文件里全是沒斷言的空殼函數(shù)。#!/usr/bin/env python3 import json import re import sys from pathlib import Path TASK_ID sys.argv[1] if len(sys.argv) 1 else default STATE_FILE Path(harness/state) / ftask_{TASK_ID}.json def load_task(): return json.loads(STATE_FILE.read_text()) def count_asserts(test_paths): total 0 for path in test_paths: if not path.exists(): continue content path.read_text() total len(re.findall(r\bassert\b, content)) total len(re.findall(rpytest\.raises, content)) total len(re.findall(rself\.assert, content)) return total def check_test_log(test_log_path, min_failures0): if not test_log_path.exists(): return False, test_log file missing text test_log_path.read_text().lower() failures re.findall(r\bfail(?:ed)?\s*\s*(\d), text) if failures and int(failures[-1]) min_failures: return False, ftest log shows {failures[-1]} failures return True, def main(): task load_task() test_paths [Path(p) for p in task.get(test_files, [])] if not test_paths: print(json.dumps({status: error, reason: no_test_files})) sys.exit(1) asserts count_asserts(test_paths) min_asserts task.get(min_asserts, 1) if asserts min_asserts: print(json.dumps({status: error, reason: fake_test, asserts: asserts})) sys.exit(1) ok, msg check_test_log(Path(task.get(test_log, ))) if not ok: print(json.dumps({status: error, reason: failed_test, detail: msg})) sys.exit(1) print(json.dumps({status: ok, asserts: asserts})) sys.exit(0) if __name__ __main__: main()這個腳本的邏輯很直接先確認測試文件存在再統(tǒng)計斷言關(guān)鍵字數(shù)量最后檢查測試日志里有沒有失敗計數(shù)。三項全過才輸出 ok。它扒掉了“測試命令退出碼 0”這層偽裝因為空測試函數(shù)一樣可以退出碼 0但斷言數(shù)不會撒謊。實際使用中我把 test_log 指向 Claude Code 每次跑測試后自動落盤的日志文件。如果日志缺失直接判定失敗。模型再怎么說“我測過了”在“日志文件不存在”這個事實面前都會現(xiàn)原形。4.4 治理前后同一個任務(wù)的對比為了直觀說明這套治理層的價值我用一個具體任務(wù)來對比給訂單模塊加 Redis 緩存要求不改變返回值語義必須有測試覆蓋命中率和失效邏輯。治理前的典型過程Claude Code 找到一個中間函數(shù)在函數(shù)前加了兩行 redis.get 和 redis.set然后運行一兩個現(xiàn)有用例看到綠勾就回復(fù)“已完成”。它不會去驗證緩存失效邏輯不會補新測試更不會檢查是否改變了返回值語義。整個過程可能只需要兩分鐘但代碼一上線就可能出現(xiàn)緩存穿透或數(shù)據(jù)不一致。治理后的過程是intent_guard 先要求補充“命中率怎么測”“失效策略是什么”plan_validator 要求方案里寫出緩存 key 設(shè)計和過期策略edit_scope_guard 檢查改動只落在訂單模塊和測試目錄test_trigger 在每次改動后強制跑關(guān)聯(lián)測試evidence_check 檢查新測試里有沒有斷言緩存命中次數(shù)和淘汰行為delivery_signoff 確認文檔和回滾方案都齊了。最后才進入人工評審。同樣的任務(wù)治理前是“兩分鐘的自嗨”治理后是“帶證據(jù)鏈的交付”??雌饋砺说辽俨粫霈F(xiàn)那種“交付完才發(fā)現(xiàn)根本沒做對”的返工。治理層要的不是快是穩(wěn)。5. 落地四個月踩過的坑和給團隊的建議再好的設(shè)計落地時都會遇到意料之外的問題。這里把我實際踩過的四個坑完整擺出來包括當時的錯誤判斷和最終修正方式希望能幫你繞開。5.1 坑一Hook重入導(dǎo)致遞歸風(fēng)暴這是我遇到的第一個嚴重事故。我一開始把 command_guard 掛在所有外部命令之前同時把 test_trigger 掛在測試命令之后。結(jié)果出現(xiàn)了一個循環(huán)test_trigger 要執(zhí)行 pytest而 pytest 被 command_guard 檢查command_guard 在檢查過程中又要讀取測試日志而讀取日志這個動作本身又被某個 Hook 監(jiān)聽……最終的表現(xiàn)是 Claude Code 在一連串重復(fù)攔截后直接卡死進程被系統(tǒng)殺掉。解決方法是引入一個重入標記。在所有 Hook 腳本入口檢查環(huán)境變量 HARNESS_REENTRANT如果已經(jīng)存在就直接返回 0不做任何二次檢查。只有最外層調(diào)用才真正執(zhí)行邏輯。這個標記要隨環(huán)境變量傳遞給子進程否則不生效。if [ -n $HARNESS_REENTRANT ]; then exit 0 fi export HARNESS_REENTRANT1這個修復(fù)之后Hook 之間的互相調(diào)用不會再無限遞歸。它也給所有 Hook 定了一條隱式紀律一個 Hook 只做自己該做的那一件事不要在里面觸發(fā)別的工具命令。5.2 坑二狀態(tài)機被“退出碼0”騙了狀態(tài)機剛接入時我把 S3 到 S4 的遷移條件寫成“測試命令退出碼為 0”。上線當天就被打臉Claude Code 創(chuàng)建了一個測試文件里面只有一個空函數(shù)pytest 跑完確實退出碼 0狀態(tài)機乖乖把任務(wù)送到了人工評審。人工評審的人一眼就看出了問題但狀態(tài)機不會看。這件事讓我明白自動驗證必須落在證據(jù)層面而不是進程退出碼層面。后來我把 evidence_check 從“可選增強”提升為“強制前置條件”沒有斷言數(shù)和測試日志摘要的任務(wù)永遠到不了 S4。5.3 坑三超時設(shè)置讓Agent徹底變蠢我最初給每個 Hook 設(shè)置了 3 秒超時理由是“檢查動作要快”。結(jié)果發(fā)現(xiàn) Claude Code 稍微想久一點Hook 就超時失敗整個流程不斷被打斷。看起來是“治理層很嚴格”實際上是治理層把模型逼到?jīng)]法思考。后來我做了兩處調(diào)整。第一Hook 腳本只做輕量檢查超過百毫秒的活全部丟到異步隊列不阻塞主流程。第二區(qū)分兩類超時命令級超時控制單條命令可以嚴格任務(wù)級看門狗控制整個狀態(tài)停留時間必須寬松。正常的一次修 bug 過程可能包含多次嘗試把 S3 的 TTL 壓到三分鐘只會讓模型為了趕時間而找更多捷徑。5.4 坑四規(guī)則清單把上下文塞爆我早期還有個錯誤判斷就是覺得規(guī)則寫得越多越好。于是把幾十條禁止行為、樣例、邊界說明全部注入到上下文中希望模型“耳提面命”。結(jié)果上下文憑空多出幾千 token模型反而記不住重點關(guān)鍵約束經(jīng)常被忽略。后來的做法是把規(guī)則從 prompt 移到 Hook 代碼里。禁止改哪些目錄寫在 edit_scope_guard 的路徑清單里哪些命令危險寫在 command_guard 的黑名單里驗收標準怎么寫寫在 plan_validator 的校驗邏輯里。上下文里只保留少量原則性說明。這樣做的效果是規(guī)則不再靠模型“記住”來生效而是靠外部腳本強制攔截。只有當模型準備違反規(guī)則時規(guī)則才以證據(jù)形式回到它的視野里。5.5 建議漸進式灰度先裝4個Hook再上狀態(tài)機如果你準備在團隊里推這套治理層我建議不要一次性全部鋪開。第一天就上 16 個 Hook 和 8 關(guān)狀態(tài)機團隊會覺得“工具不好用”“太卡流程”然后迅速放棄。我推薦分三批走。第一批只開四個 Hookintent_guard、edit_scope_guard、command_guard、evidence_check。這四個能把最痛的四類問題管住需求不清、范圍蔓延、危險命令、假測試。用一周觀察日志看命中率也就是 Hook 真正攔截了多少次問題。第二批再把狀態(tài)機的八關(guān)完整跑起來。此時 Hook 已經(jīng)有了證據(jù)票據(jù)狀態(tài)遷移可以直接復(fù)用不需要改腳本。這一階段的重點是讓團隊適應(yīng)“任務(wù)過檢品線”的節(jié)奏接受人工評審不是額外負擔。第三批按團隊痛點開剩余 Hook。比如總有人忘更新文檔就開 delivery_signoff總有人引入不必要依賴就開 dependency_probe 和 tech_choice_review。最后再分享一個我在落地后期體會最深的小技巧不要用“任務(wù)通過率”來衡量治理層好壞要看“攔截命中率”。一個治理層如果每天都能攔下幾個本會被帶到交付階段的假測試、越界改動或危險命令說明它在實實在在干活。相反如果一整周都零命中不是團隊變自覺了而是規(guī)則設(shè)計得太寬松該收緊閾值了。讓 wow-harness 從“看得見”變成“攔得住”再從“攔得住”變成“不用攔也自然不偷懶”這是我認為最穩(wěn)妥的一條路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
综合色色网| 五月丁香操亭亭网| 97黑人精品区| 婷婷干五月综合在线播放| 9999久久久久| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 超碰爱爱爱| 爱99干99| 久久看婷婷| 大香久久伊人网| 欧美97p| 婷婷欧美| 欧美成人精品老美女噜噜噜| 国产激情在线| 亚洲国产精品SUV| 激情的五月| 亚洲电影在线观看| 婷婷射图| 狠狠色狠狠色综合日日91| 91伦| 亚洲综合99| 五月色婷婷亚洲 | 99热一本久道| 久久五月天免费网站| 丁香五月综合| 真实亲子乱子伦高清在线观看| 日逼影音先锋AV男人资源站| 丁香五月激情图片婷婷| 另类图片色五月| 久久五月婷婷电影| 丁香六月成人网| 色女人久久| 99视频在线观看视频| 伊人久久婷婷五月综合97色| 五月丁香琪琪| 欧美激情综合色丁香婷婷五月天| 伊人久久大香网| 五月天婷婷色| 亚洲乱码在线观看| 激情性爱五月| 丁香婷婷啪啪| 亚洲人成色A777777在线观看 | 五月丁香成人网| 专区无日本视频高清8| 婷婷综合爱| 99久久国产宗和精品1上映 | 天天爽天天日| 天天日夜夜草进麻麻的子宫| 色播婷婷大香蕉| 无码一级片| 色婷婷丁香女女| 成人综合网站| 美女久久婷婷| 嫩草国产| 伊综合蕉| 色色色色欧美| 91高潮喷水久久久久久久久| 人妻丰满精品一区二区A片| 久久免费操| 天天做天天爱天天综合网| 四色 爱 婷婷 精品 亚洲 五月天| www.99热这里精品| 婷婷激情四射| 五月婷婷网久久| 色综合久久88色综合天天看| 婷婷综合另类| 五月激情综合网| 丁香五月停停av| 丁香五月五月婷婷欧美大香蕉| 久热超碰| 色99无码| 91热视频色网站| 婷婷色片| 九九综舍久久| 亚洲综合婷婷五月| 99视频久久| 五月天精品| 激情网五月| www 五月天 com| 婷婷综合五月色播| 婷婷九月激情网| 婷婷综合五月天| 五月丁香婷中文| 日本色频| 激情六月日韩| 亚洲色激情| 丁香婷婷六月男男| 天天射影院| 亚洲亚洲人成综合网络| 丁香五月AV综合| 久久色吧| 婷婷黄色五月| 综合久色五月| 激情婷婷丁香色五月| 久久五月天色| 综合色99| 婷婷综合性爱网| 无码一级片| 色5月婷婷| 日韩九区| 色香欲综合| 激情综合网激情五月天| 久久精品性爱| 97人人操人人插| 成人国产欧美大片一区| 色99xx| 九九99九九99| 深爱开心激情网| 久久视频这里99| 99热网站| 9999热精品| 激情婷婷五月久久| 99热老网站| 九九综合影音先锋| 五月丁香久久呀| 日日爽日日操| 99热精品在线| 色色丁香| 色色色欧美| 婷婷五月天成人| 精品网站:999WWW| 国外亚洲成AV人片在线观看| 五月婷六月综合在线观看| 欧美美女国产日韩一区二区久| 激情五月婷婷五月丁香五月开心五月| 久久久久久久久月丁| 日韩人妻在线观看| 色五月婷婷大香蕉| 日本久久99久久| av九九| 99在线精品视频免费观看20| 97超级碰人人| 99这里是99在线视频| 天天操天天日天天爽| 婷婷色九月| 国产69久久久欧美黑人A片| 97干婷婷| 无码人妻电影| 九热视频精品| 婷婷五月天激情小说| 99碰超| 婷婷五月色情| 婷婷八月丁香激情综合| 亚洲一区二区无遮挡A片| 久色网五月| 麻豆雪千夏| 婷婷九月| 影音先锋 91工厂| 五月婷婷综合网| 九九热色视频| 丁香九月综合| 婷婷中文字幕| 乱精品一区字幕二区| 丁香婷婷色色| 五月婷婷av| 亚洲久久日| 欧美激情VA永久在线播放| 婷婷成人av| 五月色俺婷婷| 色五月婷婷成人| 丁香涩涩五月天| 中国丰满熟女A片免费观| 丁香六月色婷婷欧美| 国产免费一区二区在线A片视频| 九一九九黄色| 91九色国产在线| 色综合狠狠色| 久热免费视频| 久久久久人妻精选| 久热99热| 亚州美女| 婷婷丁香色五月| se.久久视频在线观看| 婷婷五月天无码| 九九色天堂| 九九精品亚洲| 蜘蛛女免费观看完整版高清电影| 婷婷视频网| 五月丁香在线婷婷蜜桃| 中日韩狠狠色| www.夜夜| 天天干天天干天天干天天干天| 热996精品在线观看| 亚洲人人操| 婷婷五月丁香啪啪| 男女啪啪做爰高潮无遮挡| 婷婷五月天欧美图片在线播放电驴| 丁香五月天堂婷婷| 99热这里只有精品86| 国产操B| 美女天天爽| 九一牛视频探花| 色综合久久天天综合网 | 天天日天天摸天天| 五月综合激情啪啪啪啪啪| 五月天婷婷影院影院| 九久热| 国产色五月| 三人荫蒂添的好舒服A片| 亚洲成人乱码av网站| 亚洲a片免费观看| 91成人视频| 色99亚洲| 九色1区视频在线| 亚洲精品在线视频| 激情亚洲婷婷六月| 超碰99在线观看| 影音先锋日本三级资源| 色五月丁香婷婷| 综合亚洲六月婷婷在线| 天天色凹凸| 激情综合九月| 五月婷婷激情久久| 五月婷婷就去色| 婷婷色情五月| 天天日P天天射P| 丁香婷婷色五月| 狠狠狠五月婷婷六月丁香| 久久久ww| 久久人五月| 九月色婷婷综合| 色五月91| 97成人操| 99热有精品在线观看| 亚洲精品成人| 国产精品色婷婷99久久精品| 色色网五月激情| 久久综合婷婷| 大香蕉伊人久久| 综合色视频| 久久在线视频免费观看| 婷婷激情五月天在线视频| 99色久| 牛色色碰| 性生生活大片又黄又| 久草狼人| 欧美乱码国产一级A片| 欧美综合在线五月天色婷婷| 琪琪理论片| 欧洲亚洲免费视频9| 色级婷婷| 色色丁香五月天社区| 影音先锋男人女人| 激情操逼婷婷| 日本综合九九| 第四色色色色色丁香五月天| 99色嘟嘟精品网站| 婷婷丁香五月天色色| 嫩草AV久久伊人妇女超级A| 超碰久热| 韩国真做片在线观看| 性爱综合网| 婷婷五月丁香久久| 来吧亚洲综合网| 九九综合伊人| 丁香五月婷久久| 伊人婷婷五月天av| 夜夜爽天操| 久久人妻情侣| 久8色色| 51成人| WWW久| 99在线视频免费| 久久天堂婷婷五月| 婷婷99中文字幕| 午夜日韩久久久网站| 婷婷激情综合色五月久久91| 在线观看av网站| 香蕉视频91| 9l视频自拍9l视频自拍九色学生| 丁香五月精品视频| 视频这里只有精品16| 精品自拍97| 红桃91人妻爽人妻爽| 婷婷色色网站| 欧美日韩成人高清在线| 99久热| 99色精品视频| 婷婷五月天激情影片| 青草热视频这里只有精品| 五月婷婷丁香大陆免费| 久 久9 9 热 视 频| 五月五婷婷| 久久久精品色| 91啪啪视频| 久久婷婷六月综合综合| 亚洲中文字幕av| 97人人超| 婷婷五月综合色中文字幕| www:99热视频| 久久这里只有精品5| 狠狠五月天婷婷| 天天草天天日| 久热 91| www.丁香五月| 婷婷色在线视频| 久热精品视频在线观| 婷婷亚洲丁香五月| 日本女人久久| 免费无码毛片一区二区A片| 日韩AC在线免费观看| 丁香婷婷综合色五月激情国产基地| 五月激情射| 天天爽天天日人人爱| 中文字幕性爱丰满| 婷婷五月成人| 婷婷综合偷拍| 天天日夜夜夜操操操操| 激情99热| 九色综合五月天婷五月| 99热99网| 色七七九九| 北京熟妇搡BBBB搡BBBB| 久久人人九九| 欧美婷婷精品激情| 国产SUV精品一区二区883| 五月天AV大香蕉| 五月综合亚洲色| 毛片色五月| 丁香六月激情| 国産精品| 99看片| 国产精品人人做人人爽人人添| 五月婷天堂视频| 色播五月综合网| jiujiu无码五区| 色色色com| 另类少妇人与禽zOZZ0性伦| 丁香五月天社区婷婷| 色情五月天小说| 九九无码| 丁香五月综合无码趴趴| 99热在线成人网站| 玖玖九九超碰| 精品无码人妻一区| 日本99久久| 日韩在线一级| 色无码| 中文字幕在线aⅴ免费观看| 超碰激情网| 噜噜色com| 国产SUV精品一区二区6| 丁香五月六月久久综合 | 大香蕉啪啪啪| 久久婷婷六月综合| 色播五月婷婷| www.99在线| 人色五月天婷婷| 五月色网| 激情五月天在线观看婷婷| 综合久久99| 五月 婷 久| 99热在线中文字幕| 色五月激情五月| 26uuu色噜噜精品一区| 在线成人网址| 久久99免费视屏| 丁香 久久| 亚洲区1| 99热精品免费在线观看| 激情骚五月| 久久人妻高清中文| 996黄色片| 五月婷婷激情综合视频| 婷婷五月六月| 色色色婷| 99热91| 97福利视频| 婷婷色九月| 另类天堂| www.夜夜夜| 日本不卡高字幕在线2019| 婷香五月网在线| 开心五月婷婷激情| 欧美婷| 五月伊人91| 欧美狠狠地| 丁香五月婷婷香| 激情六月一二| 色婷婷av在线| 做爰丰满少妇1313| 这里只有精品视频在线看| 久久44| 热99这就是精品视频| 色色色五月| 丁香五月激情综合| 日本五月婷婷久久久六月丁香| 成人做爰黄A片免费看直播室男男 A片试看120分钟做受图片 | 91狠狠综合久久| 91丨九色丨东北熟女| 综合亚洲六月婷婷在线| 99精品视频免费观看近期发布| 久久精品小视频| 五月婷婷丁香日韩在线| 天天爽天天| 婷婷精品免费久久| 超碰av在线| 激情丁香婷婷五月天| 日韩一级一片内射视频4K| 五月天久久综合婷婷丁香| 开心五月婷婷婷美女| 久久丁香| 国产VA亚洲VA96| 婷婷少妇激情| 99re8这里只有精品99re8热视频| 色天天综合成人网| 大香蕉婷婷五月天| 国内熟女黄色系列| 俺去也五月天婷婷| 第四色婷婷丁香五月| 99热主页日本| 激情五月天色色色| 欧美大肥婆大肥BBBBB| 色五月婷婷丁香五月| 狠狠色婷婷7777久| 五月亭大香蕉| 婷婷香蕉精品| 丁香五月六月综合激情| 日婷婷| 五月天激情小说婷婷| 99色嘟嘟精品网站| 97碰在线视频| 热99在线精品| 五月激情五月婷婷五月天在线| 91AV婷婷| 激情丁香久久久久久| www.久久久久| 大香蕉婷婷| 能直接看的av网站| 色天天综合| 久久xxxx| 14色综合婷婷| 色色色9 9 9| 亚洲无AV在线中文字幕| 四色永久成人网站| 性色天| 五月婷婷精品视频| 色五月婷婷天天干| 操碰97| 五月丁香偷拍| 色婷婷综合丁香五月天| 色吧网91| 色综色网| 97搞在线| 色狠狠婷婷| 国产午夜成人AV在线播放| 99色天堂| 99re热在线视频| 五月天四色房丁香亭亭| 女人天堂 AV| 五月欧美色色五月| 79色色免费| 五月婷婷综合激情| 天天色伊人| EEUSS鲁片一区二区三区| 思思综合热| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 桃色成人网| 五月丁香六月激情在线| 激情婷婷五月天。| 沈娜娜av| 超碰精品在线| 激情综合网激情五月丁香五月俺也去| 色99色| 五月丁香综合啪啪啪啪啪| 激情网 久久| 亚洲色夜| 五月婷婷婷自由综合| 五月天婷婷激情网| 激情五月婷婷| 亚洲色五月天| 三区激情四射av| 奇米影视777在线_在线观看午夜_h小视频在线观看_岛国大片 | 天天 青草 丝袜制服 在线| 91精品又长又大又粗又爽又猛| 五月天综合在线| 婷婷五月天黄色小说| 婷婷久久亚洲| 青青色com久久| 99热最新| 丁香婷婷色情| 视色综合| www色婷婷久久综合久色 | 婷婷五月丁香欧洲| 亚洲欧州色情在线观看| 亚洲综合视频天天精品| 国内一级精品| 一起草日本| 99色| 中文字幕不卡+婷婷五月| 激情综合婷婷| 久久之人妻| 久久伊人婷| 国产精产国品一二三在观看| 久久这里只有精品99| 五月婷婷丁香婷婷| 久久这里有精品在线观看| 日日骑夜夜撸| 99热新网址| 成人国产网| 六月激情网| 色婷婷免费视频| 日韩色色视频www| 这里只有精品,日韩视频| 伊人婷婷大香蕉| 丁香五月天日韩无码| 精品一区二区三区四区五区六区| 成人丁香五月| 99操久久| 99在线播放视频| 五月婷婷69| 伍月婷婷六月丁香| A A色色| 综合在线网| 激情四射五月天| 停停综合色色| 婷婷六月丁综合| 丁香五月影| 五月婷婷丁香六月| 婷婷啪啪| 婷婷五月天成人| 丁香五月影院| 丁香六月婷婷综合| 国产偷人爽久久久久久老妇APP| 久热这里只有精品6| 操99| 日日操天天操| www九九热| 色色操| 婷婷亚洲综合| 香蕉久久av一区二区三区| 综合婷婷| 91se视频| 天天视频精品9| 成人小说色图婷婷五月| 九九热99久久99| 99热精品超碰| 色婷婷A| 免费观看全黄做爰的视频| 超碰av在线| 婷婷色五月激情| 欧美久热| 荡乳尤物3HP1V5| 风流少妇A片一区二区蜜桃| 久久精品国产AV一区二区三区 | 精品婷婷| 天天日天天爽| 色色999三级片| 91猫咪国产在线播放| 久久色午夜在线导航| 久久久九九九 99| 久久婷婷激情久久| 久久婷五月婷| 日日操,日日爽| 精品皮股午夜AV| 玖玖资源站中文| 激情性爱五月| 免费观看的av| 夜色.cnm| 99日韩| 99热在线里有精品| 夜夜骑天天玩天天日| 中文av网| 丁香六月综合激情| 99天天操夜夜操| 婷婷五月天综合AV| 欧美噜噜久久久XXX| 国产六月婷婷| 精品成人a v无码内射| 欧美日韩成人高清在线| 欧美激情五月天| 最近中文字幕2019视频1| 九九在线91| 99啪啪网| 伍月婷丁香婷| 天天干狠狠| 五月丁香花视频| 五月丁香激情综合网| 亚洲欧洲中文日韩久久AV乱码| 欧美三级巜人妻互换| 欧美天堂婷婷日韩| 亚洲综合九九| 人妻videos人妻高清| 99国产这里只有精品| 991精品在线视频| 99亚洲精品视频| 九九婷婷热| 天天综合五月天| 婷婷激情综合无月| 激情綜合W W W,激情五月天| 成人五月丁香社区| 久久婷综| www.99婷婷| 五月天久久网站| 99这里只有精品国产| 俺去也在线视频| 五月婷婷激情性爱| 久久综合九色综合97婷婷| 色玖玖网| 色播五月丁香婷婷| 99综合网| 五月综合激情网| 婷婷伊人久久| 日韩人妻操逼视频| 五月天婷婷综合网| 在线中文亚洲| 日本欧美国产| 综合网五月| 国产欧美精品AAAAAA片| 亚洲中文字幕AV| 婷婷综合在线观看视频| 播播网色播播| 五月开心久久| 看国产探花操逼三级片| 亚洲久久激情| 99在线爽| 六月丁香五月激情婷婷| 色婷婷av在线观看| AⅤ在线播放网| 桃色Av色哟哟| 欧美狠狠色| 91男女视频在线观看| 超碰九九热| 五月丁香亚洲综合| 日日影院 | 一区视频网站| 思思热在线视频精品| 亚洲乱码日产精品BD| 五月丁香成人| 亚洲色模骚货| 国产精品久久久久久久久久免费| 亚洲va欧美| 五月丁香在线| 丁香婷婷老司机久操| 五月婷婷综合色啪首页| 亚洲激情综合| 狠狠色丁香| 天堂五月婷婷| 成人中文字幕在线| 深爱五月日韩| 99婷婷狠狠成为人免费视频| 色色色色色级无码| 婷婷五月天色色| 激情久久久久久| 天天天天天天操| 666555。COm毛片| 思思色综合网站| 婷婷五月天小说网| 婷婷成人网五月天| 色五月激情五月天| 亚洲AV无码影院| 综合久久五月天| 91狼友视频在线观看| 六月婷色六月| 九九视频在线观看视频6| 欧美色骚婷婷五月天| 99热精品免费| 五月天国产成人| 超碰免费人人| 蜜臀A∨在线水帘洞| 无码人妻少妇色欲AV一区二区 | 久操香蕉| 99精品爱| 五月精品99综合| 五月天俺去也| 中文字幕综合色| 狠狠五月激情丁香六月| 超碰妻人人| 成人丁香五月天| 五月婷婷久久爱| 99视频这里有精品免费观看| 97干在线看| 大婷婷色呦呦噜噜色呦呦噜噜| 99亚洲精美视频在线观看| 高清无码视频网址| 91视频久久久| 香蕉久久国产AV一区二区| 九九综合伊人| 91碰碰| 五月婷婷开心激情六月蜜桃| 男女啪啪视频久 9| 激情五月,色播五月| 伊人大香蕉综合在线| 99福利导航| 日本啪啪天堂| 97色婷婷| 另类五月激情| 亚洲av免费在线| 综合激情五月天| 天天做天天视天天谢| 综合久久丁丁香婷| 日本色色色| 综合久久高清| 99精品免费视频| 天天拍夜夜爽日日| 91精品啪| 大香蕉综合在线| 深爱激情网婷婷| ztEJj| 99九九99九九九视频精彩| PORNY九色9l自拍视频成人| 色色色色五月| 99热777| 丁乡久久| 99婷婷精品推荐在线视频| 五月综合色播播丁香婷婷| 激情綜合網址| 五月色丁香| 五月天另类小说久久小说网| 综合网亚洲| 亚洲综合五月天综合| 婷婷国产欧美97| 激情五月综合网| 五月天综合影院| 中文字幕AV在线播放| 国产AV影片| 婷婷五月天激情开心网| 色婷婷伊人| 大香蕉 婷婷| 婷婷六月天| 啪啪五月天啪啪| 色99婷婷五月天| 三男玩一女三A片| 天天噜噜| 五月丁香六月合| 超碰a女人的天堂| 五月婷三级片| 婷婷色色丁香五月天| 久久婷网| 婷婷激情综合色五月久久91| 夜夜撸夜夜骑| 99亚洲视频| 婷婷性爱无码视频| 人妻狠狠操| 久久五月天激情婷婷| 国产欧美精品AAAAAA片| 综合激情在线视频| 婷婷五月天黄色小说| 综合丁香婷婷五月天| 91操在线观看| 国产精品成人AV在线观看春天| 国产中文亚洲欧美日韩性交| 婷婷丁香社区| 2025神马午夜福利| 五月丁香激情综合网| 五月天婷婷丁香| 丁香婷婷色五月天| 色六月丁香婷婷啪啪啪| 五月丁香激情综合六月涩涩爱| AA片在线观看视频在线播放| 另类图片五月天| 色日本综合| 玖玖资源部在线播放| 欧美大香蕉视频| 国产在线网址1| 四LLL少妇BBBB槡BBBB| 婷婷九九| 亚洲无码11| 亚洲天天综合| 日本成人小说婷婷六月| 久久丁香婷婷五月天| 成人视频一区| 成人在线日韩欧美| 色婷在线视频| 任你爽在线视频| 五月亭亭开心网| 在线成人视频免费| 婷婷五月激情在线视频| 婷婷五月天激情综合网| 美女天天艹人人爽| 激情丁香婷婷六月天| 一区二区免费看| 九九精彩久久| 婷五月天丁香婷五月| 激情婷| 五月丁香亭亭A片| 亚洲AV成人精品网站在线播放| 婷婷五月天色| 精品无码久久久久久久久| 人人爱操| 婷婷五月天影院| 狠狠草狠狠草| 九九性爱网| 9有码中文| 激情综合五月婷| 天天日天天舔天天摸 | 亚洲色激情| 婷婷丁香五月在线播放| 丁香五月婷婷色| 久久精品爱爱| 综合久色五月| 综合网激情五月天| 色婷婷丁香五月天激情综合网| 99er免费在线观看| 天天狠狠色噜噜| 天天操天天操天天操| 国产精品久久久60086| 丁香婷婷啪啪啪| www,99热| 婷婷五月天在线观看| www.久久久久久久| 成人AV在线电影| 综合五月天| www.夜夜| 婷婷五月天成人视频| 天天久久婷婷| 亚洲熟女乱色综合亚洲网站| 丁香五月情| 五月丁香六月婷婷亚洲天堂网站| 99re66热这里只有精品| 亚洲欧洲自拍图片专区五月天| 五月五丁香婷婷| 日日.c| 无码髙清| 激情综合五月| 婷婷六月天国产综合| 强奸幻女毛片| 99视频35精品视频在线观看| 另类色视频| 亚洲 在线 性爱 | 14色综合婷婷| 色综合网址| 婷婷丁香社区| 国产五月视频| 久久久久久久久99精品| 97操在线视频| 色五月色综合| 色综合天天综合成人网| 网站免费一站二站| 玖玖婷婷五月天| 中文字幕人妻一区二区| 爱iii做iiii日| 大香蕉久久久| 99综合自拍| site:esunnet.com| 99免费视频在线观看爱| 色色色999| 婷色五月天| 碰碰碰91| 欧亚洲在线高清视频| 天天做 天天爱| 九九热精品在线| 国产成人精品一区二三区熟女在线 | 久久黄色网扯| 日日爱699| 亚洲综合激情五月久久| 国产精产国品一二三在观看| 九色无码| 99久久a线观| 一本色道久久综合狠狠躁小说| 色999五月色| 久久ri精品视频| 日韩久久视频| 五月天激情无码专区| 欧美日综合| 一级黄色操B| 99热福利| 99久久精品国产色欲| 99这里都是精品| 97碰人人操| 色天天综合色| 黄网在线免费观看| 久热伊人91| 五月天婷婷基地丁香| 99热无码首页| 国产精产国品一二三在观看| 色七七九九| 欧美va欧美va差| 狠狠做深爱婷婷久久综合一区| 天天久久九九| 久久九九怡红院| 我去色色网五雨天| 91夫妻视频| 人人爽在线视频综合网| 天天日天天草| 亚洲精品**不卡在线播he| 五月天狠狠网站| 991精品在线视频| 97人人操人人插| 五月丁香六月婷婷在线小说视频| 婷婷爱五月天人人爱| 国产AV一区二区三区日韩| 97操在线视频| 性爱视频99| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 日产精品一线二线三线芒果| 婷婷丁香五月综合| 色婷婷五月天久久| 久久久噜噜噜操操操| 久热这里这里有精品| www.超碰在线| a色婷婷| 女高怪谈在线观看| av操逼网| 天天艹天天色| 丁香五月在线播放| 色色精品色| 综合视频久久| 五月激情婷婷综合| 五月人妻婷婷视频| 欧美婷婷综合网| 99这里只有免费的小视频在线观看| www.狠狠| 人妻人人操| 婷婷五月色综合| 色色色色色色色色色色色色色97| 久久aaaa片一区二区| 中字幕视频在线永久在线观看免费| 色婷婷大香蕉| 91丨九色丨白浆秘| 久久久27操| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 99九九热在线观看| 肏屄色播伊人97婷婷| 九九这里有精品| 中文字幕成| 丁香婷婷基地| 九九性爱网| 丁香六月婷婷一区二区三区| 婷婷五月天综合亚洲| 久久视频九九视频| 成人片黄网站色大片免费毛片| 婷婷六月久久| 激情AV网| 婷婷色激情五月天| 啪啪九九色| 天天干夜夜谢| 亚洲国产网站| 4399在线日本A片| 婷婷色网站| 玖玖在线视频| 五月六月激情婷婷| 精品一二三区久久AAA片| wwwC0maV五月花| 日本性视频| 狠狠va| 1024国产在线| 婷婷五月情| 啪啪操超碰| 伊人五月天在线| 婷婷操超碰| 五月天播播| 九月婷婷丁香| 五月丁香婷婷伊人日韩| 96丁香六月婷婷蜜桃综合久久| 91视频免费后入强操| 天天综合 99久久婷婷| 久久久大香蕉| 国产成人精品一区二三区熟女在线| 婷婷六月色情| 激情婷婷护士激情| 啪啪综合| 操操操www.com| 色色欧美色色色| 国产精品香蕉| 亚韩在线视频| 天天肏在线观看| 色七色九九| 五月婷婷9| 丁香五月婷婷偷拍| 婷婷色五月激情| 婷婷激情五月呦呦| 国产精品国产| 色五月丁香总合网| 人人97操| 99ri在线视频| 开心色播色五月婷婷| 五月婷婷导航| 天天色色天天| 996日日爱| 伊人婷婷大香蕉| 黄色国久久| www.henhenl| 五月天婷婷日日爱| 亚洲人成网站999久久久综合| 久99视频在线观看| 好好干av| 99在线公开视频| 成人亚洲精品久久久久| 日本3级片一区2区| 五月天天天综合| 操婷婷基地| www久久99| av狠狠操| 色9999日韩国产| 日本强伦片中文字幕免费看| 色婷婷A| 在线色五月婷婷| 亚洲婷婷91丁香| 一级操逼大片| 99色性爰网络| 色综合激情| 婷婷久久欧美| 中文字幕激情综合| 激情深爱五月天| 久久婷婷视频| 丁香六月婷婷高清| 欧美久久网| 欧美A片在线视频免费观看| 五月婷婷人人人操| 深情五月天| 99热综合网| 久久99日本精品视频免费观看| 国外亚洲成AV人片在线观看| 色五月婷婷九月| 26UUU精品一区二区Com| 一级精品999WWW| 婷婷五月综合免费在线| CHINESE熟女老女人HD视频| 无套内射极品大美女| 操逼在线视频| 色五月综合在线| 久久青青日本视频| 国产av天天插天天操天天爽| 色欲色香综合网| 五月激情天天干| 色情五月综合婷婷| 日韩操啪| 大地资源色婷婷视频在线| 79精品视频| 婷婷丁香五月天综合AV| 无码动漫AV| 日本三级成人秘书精品片| 99热日本| 婷婷色爱| 天天射综合网天天插| 国产阿姨日皮艹逼内射视频| 大香蕉AV在线| 六月婷婷七月丁香| 久久丁香九| 婷婷大香焦| 小香蕉av| 五月丁香婷婷成人网| 婷婷狠狠干| 天天干天天干天天操| 五月亭亭开心网| 六月丁香婷婷综合在线| 丁香婷婷视频一区二区| va中文资源在线观看| 91精品电影18T| 人妻AV在线观看| 日韩超碰在线| 日本高清久| 国产成人亚洲综合亚洲| 96精品国产综合久久久久久| 日产精品一线二线三线芒果| 色婷婷亚洲婷婷| 丁香六月综合激情| 国产无套精品一区二区| 狠狠干婷婷| 91丨九色丨东北熟女| 久久最新色| 超碰九九热| 婷婷六月天天| caop在线视频| 婷婷亚洲天堂| 久久久网站| 天天干夜晚夜操| 9l视频自拍9l九色成人| 99热久| 91久久婷婷| 婷婷在线播放| 99热在线观看| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 激情精品久久| 俺五月| 久久66精品| 日本成人噜噜噜噜噜| 五月天色视频| 97韩国久久电影院| wwwC0maV五月花| 99re8这里只有精品99re8热视频| www,av好吊操| 天堂网啪啪| 久久九九网| 久99热| 中文字幕在线免费看线人| 久久综合九色综合97婷婷| 在线理论片| 九色视频入口91| 99在线播放| 久久久久亚洲AV成人无码电影| 一起草av| 丁香 婷婷五月| 久久思思热视频| 天天干天天做| 丁香五月欧美激情| 五月天激情小说| 九九这里都是精品| 久久视频在线视频| 婷婷久久天堂网| 丁香五月天.com| 国产噜一噜天天噜| 激情综合亚洲色婷婷五月| 精品色色色| 99热亚洲| 欧美成人精品A片免费一区99| av高清无码| 色婷婷瘦婷婷日韩| 日韩av在线免费观看| 久婷婷五月激情| 丁香五月激情五月开心五月| 久久美女五月天| 丁香色婷婷五月天| 亚洲九N| 爆乳熟女-区二区三区| 美女网黄| 五月天成人手机在线视频| 日日夜夜综合| 久草大| 激情五月四色| 久久一级片| 五月天丁香啪啪综合| 骚。com| 亚洲啪视频| 天天久综合网永久入口18| 中文成人在线| 久草a片| 97婷婷丁香五月天激情图片| 亭亭五月色男人| 五月色婷婷综合| 97涩婷婷婷婷基地| 色婷婷综合久久久久| 99热精品9| 99福利视频| 99精品综合| 被强行糟蹋的女人A片| 成人在线网站| 狠狠夜夜五月丁香| 五月丁香六月婷婷色情| 欧美丰满熟妇BBB久久久| 啪啪色激情五月天| 九九RE视频在线精品| 色综合99| 色婷婷综合综合网| 深爱丁香激情| 91成人电影| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 九九99在线免费在线观看视频| 色亚洲婷婷| 人人操AV| 五月婷av| 婷婷五月蜜桃成人桃色丁香| 五月婷婷六月丁香玖玖玫瑰91| 4399无码视频| yellow视频在线观看91| 国产精品A片| 99热最新网址| AAA久久| 九九热9| 99色中文| 丁香五月天天日| 久久狼人天堂| 91在线观看www| 六月丁香综合网| 91偷拍视频| 婷婷色五月天色| 婷婷成人五月天一区| 91九色中文字幕女在线观看| 中文字幕不卡网站| a v色婷婷| 另类视频一区| 丁香五月天婷婷91| 26uuu另类| 欧美色五月| 超碰91在线| www.jiujiujiu| 国产精品24r| 六月丁香综合网| 久久婷五月| 色婷婷五月在线| 99久久这里只有精品| 色播激情| 26uuu国产精品| 国内外色色色色色成人视频| 九九99在线免费在线观看视频| 色色色色色色综合| 国外亚洲成AV人片在线观看| 久久欧洲久久| 丁香五月欧美| 91丁香色五月| 99爱无码| 99色嘟嘟精品网站| 婷婷伊人激情婷婷| 伊人激情AV一区二区三区| www.天天色综合| 日韩久久色| 婷婷五月丁香综合激情| 欧美天堂久久| 成人免费网站免费看| 色丁香影院| Caoub青青超碰| 天天干天天 亚洲| 大地9中文在线观看免费高清| 丁香五月婷婷少妇| 婷婷五月天在线观看| 国产67194| 五月天激情电影| 激情久久久| 97久久超碰| 伊人影音无码一区二区三区| 欧美性丁香色色五月天干干| 影音先锋偷偷色男人站| 五月丁香婷婷三级| 五月婷婷av在线| 九月丁香五月婷婷| 久草视频大香蕉99| 丁香综合伊人AV| 伊人香大香蕉视频| 婷婷丁香色无五月| 久久超级碰视频| 丁香六月婷婷五月婷婷| 加勒比日本一区二区三区| 亚洲色图五月丁香| 99熟女啪啪视频| 亚洲最大在线| 日日夜夜狠狠婷婷色| 久久精品一区二区三区四区| 五月丁香直播| ztEJj| 色综合天天| 婷婷五月丁香欧洲| 五月婷婷色情| 久鲁鲁色网| 激情婷婷五月天| 天天舔天天摸天天射| 99久久婷婷国产综合精品电影| 久久精品只有这| 丁香五月综合久久综合| 69精品人人人人| 天色综合网站| 国产三级在线播放| 丁香六月婷婷| 九九色逼| 中文幕无线码中文字蜜桃| 激情五月婷婷她| 五月天堂色| 丁香五月日啪| 91碰免费视频| 久久久精品人妻| 婷婷五月激情四月综合 | 日本va欧美va欧美va| 99热久97| 天天色天天操天天射| 久久五月人人摸| 91丁香色五月| 99ri国产| 99热精国产这里只有精品| 激情婷婷22月间| 26UUU欧美| 五月丁香婷婷三级| 超碰人人操人人干| 538在线精品| 99热精品中文字幕| 丁香五月婷婷深五月| 四色五月婷婷| 丁香激情五月天| 五月婷婷 欧美| 青青色com久久| 秋霞A V毛片| 天天日日天天| 婷婷天堂视频| 国产午夜伦鲁鲁| 亚洲精品大片| 婷婷激情五月吧| 婷婷激情五月天小说|