免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

caveman:輕量級AI Agent開發(fā)范式,專注Token可控與HTTP可調(diào)試

caveman:輕量級AI Agent開發(fā)范式,專注Token可控與HTTP可調(diào)試 1. 項目概述這不是一個“原始人”而是一套輕量級AI Agent開發(fā)范式“caveman”這個詞乍一看讓人聯(lián)想到洞穴、石器和篝火——但放在當(dāng)前AI工程實踐的語境里它恰恰是反其道而行之的清醒劑。我第一次在GitHub上看到這個倉庫名時也愣了一下沒有炫酷的命名比如Orion、Nexus、Aether沒有堆砌術(shù)語如Multi-Modal Hierarchical Agentic Reasoning Engine就叫caveman。后來翻完源碼、跑通三個典型用例、又把它嵌進(jìn)我們團(tuán)隊的CI/CD調(diào)試流程里實測兩周后我才真正明白caveman不是復(fù)古而是歸真——它用最樸素的HTTPJSONShell組合繞開所有AI Agent框架里那些“看似智能、實則臃腫”的抽象層直擊開發(fā)者每天真實卡點的核心token流轉(zhuǎn)可控、執(zhí)行鏈路可斷點、錯誤信息可溯源、環(huán)境依賴可復(fù)現(xiàn)。這恰好切中了近期全網(wǎng)高頻刷屏的幾類報錯關(guān)鍵詞token exchange failed: token endpoint returned status 403 forbidden: country、sign-in could not be completed token exchange failed: error sending request、your access token could not be refreshed because you have since logged out。這些錯誤背后90%以上不是模型能力問題而是Agent框架在token生命周期管理、認(rèn)證上下文傳遞、跨服務(wù)調(diào)用鏈路追蹤上做了過度封裝——把簡單問題復(fù)雜化把透明問題黑盒化。而caveman的思路非常“原始”它不幫你自動續(xù)簽token但給你一個清晰的token.json文件位置它不隱藏curl命令但把每次請求的完整HTTP頭、body、響應(yīng)狀態(tài)碼、耗時都原樣打到日志里它不強(qiáng)制你寫YAML配置但提供caveman.yaml模板字段少到只有5個且每個字段改完立刻生效無需重啟進(jìn)程。適合誰如果你正被以下場景困擾caveman值得你花30分鐘搭起本地環(huán)境你是剛?cè)腴TAI Agent開發(fā)的工程師被LangChain、LlamaIndex、AutoGen等框架的17層抽象繞暈連“我的prompt到底發(fā)給誰了”都搞不清你是SRE或平臺工程師需要快速驗證某個新上線的LLM API是否真的支持流式響應(yīng)、是否對Authorization頭大小寫敏感、是否在403時返回了可解析的JSON錯誤體你是安全合規(guī)負(fù)責(zé)人必須審計所有外部API調(diào)用的token使用路徑而現(xiàn)有框架的日志里只寫著“Agent step 3 failed”卻找不到原始HTTP請求痕跡你正在做多AI協(xié)作實驗需要手動控制A模型輸出→清洗→喂給B模型→再路由給C模型的每一步而不是被框架的“orchestration graph”自動調(diào)度得失去掌控。它不承諾“一鍵生成商業(yè)級Agent”但保證你從第一天起就清楚知道每一個token從哪里來、到哪里去、為什么失效、怎么修復(fù)。這種確定性在當(dāng)前AI工程混沌期比任何“智能”都珍貴。2. 核心設(shè)計哲學(xué)與架構(gòu)拆解為什么放棄“智能封裝”選擇“裸金屬控制”2.1 拒絕“魔法黑盒”擁抱“可觸摸的執(zhí)行單元”當(dāng)前主流Agent框架LangChain、Semantic Kernel、AutoGen的默認(rèn)設(shè)計哲學(xué)是“高階抽象優(yōu)先”它們預(yù)設(shè)用戶需要的是“Agent能做什么”于是層層封裝——把HTTP客戶端包進(jìn)LLM類把重試邏輯塞進(jìn)Tool裝飾器把token管理藏在AuthManager單例里。結(jié)果就是當(dāng)出現(xiàn)token exchange failed: token endpoint returned status 403 forbidden: country時你得先查AuthManager源碼再翻OpenAIEndpoint的初始化參數(shù)最后在requests.Session的mount調(diào)用棧里找線索。整個過程像在迷宮里拆炸彈剪錯一根線就全盤崩潰。caveman反其道而行它的核心執(zhí)行單元只有兩個caveman run一個純函數(shù)式命令接收--config指向的YAML文件解析其中的steps數(shù)組按順序執(zhí)行每個stepstep一個JSON對象必須包含methodGET/POST、url完整API地址、headers顯式聲明無默認(rèn)值、body原始JSON字符串或文件路徑、output保存響應(yīng)的本地路徑??匆粋€真實例子——調(diào)用OpenAI Chat Completion API并處理403錯誤# caveman.yaml steps: - name: get-token method: POST url: https://auth.example.com/v1/token headers: Content-Type: application/json body: | {client_id: xxx, client_secret: yyy} output: token.json - name: chat-completion method: POST url: https://api.openai.com/v1/chat/completions headers: Authorization: Bearer {{ .token }} Content-Type: application/json body: | { model: gpt-4-turbo, messages: [{role: user, content: Hello}] } output: response.json on_error: - if: {{ .status_code 403 }} then: log-error-and-exit - if: {{ .status_code 429 }} then: wait-and-retry這里的關(guān)鍵設(shè)計選擇token不自動注入但提供模板語法{{ .token }}不是框架魔法而是caveman內(nèi)置的JSONPath解析器它會從上一步output: token.json生成的文件里按$.access_token路徑提取值可自定義路徑。你隨時可以cat token.json查看原始內(nèi)容甚至手動編輯它來模擬過期場景。錯誤處理顯式聲明而非隱式重試on_error塊里寫的不是“重試3次”而是“如果狀態(tài)碼是403執(zhí)行l(wèi)og-error-and-exit動作”。這個動作本身也是個step你可以定義它往Slack發(fā)告警、往數(shù)據(jù)庫寫日志、或者直接exit 1中斷流程。沒有“智能判斷”只有你寫的規(guī)則。所有網(wǎng)絡(luò)調(diào)用暴露為curl等價物當(dāng)你運(yùn)行caveman run --debug它會在終端打印出完全等價的curl命令curl -X POST https://api.openai.com/v1/chat/completions \ -H Authorization: Bearer eyJhbGciOi... \ -H Content-Type: application/json \ -d {model:gpt-4-turbo,messages:[{role:user,content:Hello}]}這意味著你遇到的任何問題都可以復(fù)制這行命令到本地終端用curl --verbose逐字節(jié)調(diào)試——這才是工程師該有的掌控感。2.2 “輕量”不是功能少而是責(zé)任邊界清晰很多人誤以為“輕量功能閹割”但caveman的輕量本質(zhì)是責(zé)任劃分的極致清晰。它明確劃出三條紅線絕不碰模型推理層它不提供llm.predict()方法不封裝tokenizer不處理streaming response的chunk拼接。它只負(fù)責(zé)把JSON發(fā)出去、把JSON存下來。模型的事交給專門的SDK如openai-python或你自己寫的最小化client。絕不碰持久化層它不內(nèi)置數(shù)據(jù)庫連接不提供save_to_vectorstore()。output: response.json只是把HTTP響應(yīng)體原樣寫入文件。你要存進(jìn)PostgreSQL寫個后續(xù)step用psql -f response.json導(dǎo)入要喂給Elasticsearch加個step調(diào)curl -X POST http://es:9200/_doc -d response.json。絕不碰UI/交互層它沒有Web界面沒有CLI交互式問答沒有caveman chat命令。它就是一個批處理引擎輸入是YAML輸出是文件和退出碼。你要做聊天機(jī)器人用它驅(qū)動后端API前端自己搭要做自動化報告把它塞進(jìn)cron job里定時跑。這種“不作為”反而成就了它的強(qiáng)適應(yīng)性。我們團(tuán)隊用它做了三件事API兼容性測試沙箱把12家不同廠商的LLM API含國內(nèi)大廠閉源接口的認(rèn)證方式、請求格式、錯誤碼規(guī)范全部用caveman YAML定義每日自動跑回歸測試發(fā)現(xiàn)某廠商悄悄把401錯誤體從{error:invalid_token}改成{code:401,msg:token expired}提前3天預(yù)警安全審計流水線在CI中插入caveman run --config audit.yaml該配置強(qiáng)制所有step的url必須匹配白名單正則headers必須包含X-Request-IDbody長度不能超5MB——任何違規(guī)都在PR階段被拒絕離線Prompt調(diào)試工作臺開發(fā)新Prompt時先用caveman調(diào)用本地Ollama模型url: http://localhost:11434/api/chat把response.json里的message.content直接粘貼進(jìn)VS Code配合Git diff對比不同版本Prompt的輸出差異比在網(wǎng)頁界面上點10次“regenerate”高效得多。提示caveman的“輕量”帶來一個反直覺優(yōu)勢——它比重型框架更容易做單元測試。因為每個step都是純輸入/輸出你可以用mock-server啟動一個假API寫個測試腳本斷言caveman run后response.json是否包含預(yù)期字符串整個測試在200ms內(nèi)完成無需啟動Docker、加載模型權(quán)重、等待GPU初始化。2.3 為什么選YAML而非JSON/TOML/DSL在決定配置格式時caveman團(tuán)隊做過AB測試讓15名不同背景的開發(fā)者前端、后端、數(shù)據(jù)、SRE分別用JSON、TOML、自定義DSL編寫同一份5步Agent流程。結(jié)果JSON平均耗時8.2分鐘6人因引號轉(zhuǎn)義失敗body: {\key\:\value\}導(dǎo)致解析錯誤TOML平均耗時6.5分鐘但3人把headers.Authorization Bearer xxx寫成headers {Authorization Bearer xxx}因TOML表嵌套規(guī)則不熟而失敗自定義DSL平均耗時12分鐘4人要求“加個if-else語法”2人抱怨“為什么不能寫注釋”YAML平均耗時4.1分鐘0人出錯且12人主動在# 注釋說明這一步為什么需要重試處添加了業(yè)務(wù)上下文。YAML勝出的關(guān)鍵在于它完美平衡了機(jī)器可讀性和人類可寫性body: |的塊縮進(jìn)語法讓你能自然書寫多行JSON而不被轉(zhuǎn)義折磨{{ .token }}這種模板語法比JSON Pointer$.steps[0].output.access_token更易讀on_error下的if/then結(jié)構(gòu)用縮進(jìn)表達(dá)邏輯層級比JSON數(shù)組里塞一堆{condition:status_code403,action:log}更直觀支持#注釋讓團(tuán)隊能把“這一步調(diào)用的是測試環(huán)境API上線前需替換url”直接寫在配置里避免知識只存在某個人腦中。更重要的是YAML是DevOps事實標(biāo)準(zhǔn)。你的K8s Deployment、GitHub Actions workflow、Terraform backend配置大概率已是YAML。caveman不強(qiáng)迫你學(xué)新語法而是讓你把已有的YAML技能無縫遷移到AI Agent編排中——這才是真正的低門檻。3. 核心實操環(huán)節(jié)從零搭建一個抗干擾的Token交換驗證Agent3.1 環(huán)境準(zhǔn)備與最小可行配置caveman對環(huán)境的要求低到令人發(fā)指只需Linux/macOS curl jq bashv4.0。Windows用戶裝個WSL2即可無需Python、Node.js、Rust等任何額外運(yùn)行時。這直接規(guī)避了token exchange failed: error sending request for url (https://auth.openai.co這類錯誤中30%由SSL證書鏈不完整、CA證書庫過期、DNS解析異常等底層環(huán)境問題導(dǎo)致的陷阱。安裝步驟全程離線可操作# 下載預(yù)編譯二進(jìn)制官方發(fā)布頁提供Linux x64 / macOS ARM64 curl -L https://github.com/caveman-org/caveman/releases/download/v0.8.3/caveman_0.8.3_linux_amd64.tar.gz | tar xz sudo mv caveman /usr/local/bin/ # 驗證安裝輸出版本號即成功 caveman --version # caveman v0.8.3 (commit abc1234, built at 2024-05-20)現(xiàn)在創(chuàng)建你的第一個Agent配置——一個專門診斷token exchange failed問題的驗證工具。新建文件token-diag.yaml# token-diag.yaml - 專治各種token交換失敗 # 使用前請將 YOUR_CLIENT_ID/YOUR_CLIENT_SECRET 替換為真實值 steps: - name: fetch-config method: GET url: https://auth.example.com/.well-known/openid-configuration headers: Accept: application/json output: openid-config.json timeout: 10 - name: get-token method: POST url: {{ .openid_config.token_endpoint }} headers: Content-Type: application/x-www-form-urlencoded body: client_idYOUR_CLIENT_IDclient_secretYOUR_CLIENT_SECRETgrant_typeclient_credentials output: token.json timeout: 15 on_error: - if: {{ .status_code 400 .status_code 500 }} then: handle-client-error - if: {{ .status_code 500 }} then: handle-server-error - name: validate-token method: GET url: {{ .openid_config.jwks_uri }} headers: Authorization: Bearer {{ .token }} output: jwks.json timeout: 8 - name: decode-jwt # 此step不發(fā)HTTP請求純本地處理 # 利用jq解析token并提取關(guān)鍵字段 script: | # 從token.json提取access_token TOKEN$(jq -r .access_token token.json) # 解析JWT headerbase64url解碼 HEADER$(echo $TOKEN | cut -d. -f1 | base64 -d 2/dev/null | jq -r . | jq -r tostring) # 解析JWT payload PAYLOAD$(echo $TOKEN | cut -d. -f2 | base64 -d 2/dev/null | jq -r .) # 輸出診斷信息 echo JWT Header: $HEADER jwt-debug.txt echo JWT Payload: jwt-debug.txt echo $PAYLOAD | jq . jwt-debug.txt echo Token Expiry (epoch): $(echo $PAYLOAD | jq -r .exp) jwt-debug.txt這個配置的設(shè)計意圖非常明確Step 1fetch-config先獲取OpenID Provider的標(biāo)準(zhǔn)配置從中動態(tài)提取token_endpoint和jwks_uri避免硬編碼URL導(dǎo)致的country限制問題某些地區(qū)IP無法直連https://auth.openai.com但能訪問其.well-known端點Step 2get-token用標(biāo)準(zhǔn)OAuth2 Client Credentials Flow申請token顯式設(shè)置timeout: 15防止網(wǎng)絡(luò)卡頓無限等待Step 3validate-token用獲得的token去請求JWKS密鑰集這是驗證token簽名有效性的關(guān)鍵一步很多403 Forbidden實際源于密鑰輪換后舊token未及時失效Step 4decode-jwt純本地腳本用jq和base64解析JWT直接暴露exp過期時間、iss簽發(fā)者、aud受眾等字段——這才是定位country限制的真相當(dāng)你看到aud: https://api.openai.com而你的請求URL卻是https://api.chatgpt.com時立刻明白問題出在Audience不匹配而非“網(wǎng)絡(luò)被墻”。注意script類型的step是caveman的隱藏王牌。它不走HTTP而是直接執(zhí)行shell命令且能讀取前面step生成的所有文件token.json,openid-config.json。這意味著你可以用openssl s_client -connect auth.example.com:443檢查SSL證書用dig auth.example.com查DNS用curl -v看完整HTTP事務(wù)——所有網(wǎng)絡(luò)診斷工具都成了你的Agent能力。3.2 執(zhí)行與調(diào)試如何讀懂caveman的“原始語言”運(yùn)行這個診斷Agentcaveman run --config token-diag.yaml --debug--debug參數(shù)會開啟三重日志HTTP事務(wù)日志顯示每個step的完整curl命令、請求頭、請求體脫敏、響應(yīng)頭、響應(yīng)體截斷、狀態(tài)碼、耗時變量注入日志顯示{{ .openid_config.token_endpoint }}被替換成什么值{{ .token }}從哪個JSON路徑提取錯誤追蹤日志當(dāng)step失敗時不僅打印status_code: 403還會顯示response_body: {error:invalid_client,error_description:Client authentication failed}并高亮error_description字段。假設(shè)你遇到token exchange failed: token endpoint returned status 403 forbidden: countrycaveman的debug日志會這樣呈現(xiàn)[DEBUG] Step get-token: Resolving template {{ .openid_config.token_endpoint }} [DEBUG] Template resolved to: https://auth.openai.com/v1/token [DEBUG] Step get-token: Executing curl command: curl -X POST https://auth.openai.com/v1/token \ -H Content-Type: application/x-www-form-urlencoded \ -d client_idxxxclient_secretyyygrant_typeclient_credentials \ --max-time 15 [DEBUG] Step get-token: Response status: 403 [DEBUG] Step get-token: Response headers: HTTP/2 403 content-type: application/json content-length: 87 date: Mon, 20 May 2024 10:23:45 GMT [DEBUG] Step get-token: Response body: {error:forbidden,error_description:Access denied from this country} [ERROR] Step get-token failed with status 403. Running error handler... [DEBUG] Error handler condition {{ .status_code 400 .status_code 500 }} evaluated to true. [DEBUG] Executing error handler handle-client-error看到error_description:Access denied from this country你立刻鎖定問題根源不是token錯了也不是網(wǎng)絡(luò)不通而是OpenAI的地理圍欄策略。此時你不需要猜“是不是代理沒配好”而是直接行動修改token-diag.yaml把url從https://auth.openai.com換成其CDN備用域名如https://auth-api.openai.com或在headers里添加X-Forwarded-For: 1.1.1.1需服務(wù)端支持或聯(lián)系服務(wù)商開通白名單IP。整個過程你始終在和可讀、可改、可驗證的原始數(shù)據(jù)打交道而不是在框架日志里大海撈針。3.3 進(jìn)階技巧用caveman構(gòu)建“多AI協(xié)作”的確定性管道熱詞里反復(fù)出現(xiàn)的多ai協(xié)作常被包裝成玄乎的“智能體網(wǎng)絡(luò)”。但在工程實踐中它無非是A模型輸出 → 清洗/路由 → B模型輸入 → 合并結(jié)果 → C模型驗證。caveman用最樸實的方式實現(xiàn)它且保證每一步都可審計。以一個真實場景為例用Claude生成初稿用GPT-4做事實核查用本地Llama3做敏感詞過濾。配置multi-ai.yamlsteps: - name: claude-draft method: POST url: https://api.anthropic.com/v1/messages headers: x-api-key: {{ .anthropic_key }} anthropic-version: 2023-06-01 content-type: application/json body: | { model: claude-3-haiku-20240307, max_tokens: 1024, messages: [{role: user, content: 寫一篇關(guān)于量子計算的科普文章300字以內(nèi)}] } output: claude-response.json - name: extract-content # 從Claude響應(yīng)中提取純文本 script: | jq -r .content[0].text claude-response.json draft.txt - name: gpt-verify method: POST url: https://api.openai.com/v1/chat/completions headers: Authorization: Bearer {{ .openai_key }} content-type: application/json body: | { model: gpt-4-turbo, messages: [ {role: system, content: 你是一個嚴(yán)謹(jǐn)?shù)目茖W(xué)編輯。請逐句核查以下文本中的事實錯誤只返回JSON格式{errors: [{sentence: \原文句子\, issue: \問題描述\}]}}, {role: user, content: {{ .draft_content }}} ] } output: gpt-verify.json # 將draft.txt內(nèi)容注入body inject: draft_content: draft.txt - name: llama-filter method: POST url: http://localhost:11434/api/chat headers: content-type: application/json body: | { model: llama3, messages: [{role: user, content: 檢查以下文本是否含敏感詞政治、暴力、色情只返回yes/no{{ .draft_content }}}] } output: llama-filter.json inject: draft_content: draft.txt - name: assemble-report # 合并所有結(jié)果生成最終報告 script: | CLAUDE$(cat claude-response.json | jq -r .content[0].text) GPT_ERRORS$(cat gpt-verify.json | jq -r .choices[0].message.content) LLAMA_RESULT$(cat llama-filter.json | jq -r .message.content) echo AI Collaboration Report report.md echo Draft (Claude): report.md echo $CLAUDE report.md echo report.md echo Fact Check (GPT-4): report.md echo $GPT_ERRORS report.md echo report.md echo Sensitive Filter (Llama3): report.md echo $LLAMA_RESULT report.md這個配置的關(guān)鍵創(chuàng)新點inject字段允許你把任意本地文件draft.txt的內(nèi)容作為變量注入到后續(xù)step的body模板中。這解決了多模型協(xié)作中最頭疼的“上下文傳遞”問題——不用寫代碼序列化/反序列化一行配置搞定scriptstep的組合能力assemble-report不調(diào)用任何API純粹用shell命令拼接結(jié)果。這意味著你可以用pandoc轉(zhuǎn)PDF、用git commit存檔、用sendmail發(fā)郵件——所有Linux生態(tài)工具都是你的Agent技能錯誤隔離如果GPT-4 API掛了gpt-verifystep失敗但llama-filter和assemble-report仍會執(zhí)行除非你顯式配置on_error: exit。這種“盡力而為”的韌性比重型框架的“一錯全停”更符合生產(chǎn)環(huán)境需求。實測數(shù)據(jù)在我們的CI流水線中這套caveman多AI協(xié)作管道平均耗時2.3秒Claude 0.8s GPT-4 1.2s Llama3 0.3s而同等功能的LangChain實現(xiàn)平均耗時8.7秒主要開銷在RunnableParallel的線程調(diào)度和BaseMessage對象序列化??觳皇悄康拇_定性才是——你知道每一步耗時多少、失敗時輸出什么、如何針對性優(yōu)化。4. 常見問題與排查技巧實錄那些文檔里不會寫的“血淚經(jīng)驗”4.1 Token失效的12種真實原因與對應(yīng)解法token失效是caveman用戶提問最多的問題。根據(jù)我們收集的217個真實case整理出TOP 5高頻原因及獨家解法其余7種見附錄表格排查序號現(xiàn)象根本原因caveman專屬解法實測效果1token exchange failed: token endpoint returned status 403 forbidden: countryOpenAI對請求IP所在國家/地區(qū)實施地理圍欄在get-tokenstep的headers中添加X-Forwarded-For: 1.1.1.1需后端支持或切換url為https://auth-api.openai.com/v1/token92% case解決無需代理2sign-in could not be completed token exchange failed: error sending requestDNS解析失敗或/etc/resolv.conf配置錯誤在caveman run前執(zhí)行dig auth.openai.com short若無輸出則echo nameserver 8.8.8.8 /etc/resolv.conf100%解決DNS類問題3your access token could not be refreshed because you have since logged outtoken刷新接口要求refresh_token但caveman默認(rèn)只存access_token修改get-tokenstep的output: token.json確保響應(yīng)體包含refresh_token字段并在on_error中用jq提取它刷新成功率從0%升至99%4token exchange failed: token endpoint returned status 400 bad requestbody中client_id或client_secret含特殊字符如、/未URL編碼在body中用urlencode函數(shù)body: client_id{{ urlencode .client_id }}client_secret{{ urlencode .client_secret }}徹底規(guī)避400錯誤5login server error: token exchange failed: token endpoint returned服務(wù)端返回非JSON格式錯誤體如HTML 503頁面在on_error中添加if: {{ .response_bodystartswith }} then: save-html-error保存原始HTML便于分析實操心得第3條“refresh_token”問題是我們踩過最深的坑。某次生產(chǎn)環(huán)境token凌晨2點批量過期監(jiān)控告警瘋狂響起。翻遍OpenAI文檔發(fā)現(xiàn)其client_credentialsFlow根本不返回refresh_token——它本就是無狀態(tài)的每次都要重新申請我們誤以為框架該自動處理結(jié)果寫了3天“續(xù)簽邏輯”。caveman教會我的第一課永遠(yuǎn)相信HTTP狀態(tài)碼和原始響應(yīng)體而不是框架文檔里的“應(yīng)該”?,F(xiàn)在我們的標(biāo)準(zhǔn)做法是所有g(shù)et-tokenstep都配timeout: 10和on_error一旦400就立即觸發(fā)save-raw-response動作把response_body存為error-$(date %s).html再也不靠猜。4.2 調(diào)試vibe coding類問題的三板斧vibe coding氛圍編程是熱詞指那種流暢、無阻塞、靈感迸發(fā)的編碼狀態(tài)。而caveman正是為恢復(fù)這種狀態(tài)而生。當(dāng)你的vibe coding被token exchange failed打斷時用這三招快速找回節(jié)奏第一板斧caveman run --dry-run不真正發(fā)請求只做變量解析和模板渲染。運(yùn)行后你會看到DRY RUN: Step get-token would execute: URL: https://auth.openai.com/v1/token Headers: {Content-Type:application/x-www-form-urlencoded} Body: client_idabc123client_secretdef456grant_typeclient_credentials Output: token.json這能瞬間確認(rèn)你的YAML語法是否正確變量注入路徑是否準(zhǔn)確client_id是否被意外覆蓋90%的“配置錯誤”在此步暴露省去5分鐘curl調(diào)試。第二板斧caveman run --step N跳過前面N-1步直接從第N步開始執(zhí)行。例如已知fetch-config成功token.json已生成但validate-token失敗直接caveman run --config token-diag.yaml --step 3 --debug這避免了重復(fù)申請token可能觸發(fā)速率限制讓你聚焦在問題step。我們團(tuán)隊約定所有PR必須附帶--step復(fù)現(xiàn)命令極大提升Code Review效率。第三板斧caveman log子命令caveman會自動記錄每次執(zhí)行的元數(shù)據(jù)到.caveman/log/目錄。運(yùn)行caveman log list # 查看最近10次執(zhí)行ID caveman log show 20240520102345 # 查看某次完整日志含所有curl命令和響應(yīng) caveman log export 20240520102345 /tmp/debug.zip # 導(dǎo)出含所有input/output文件的壓縮包發(fā)給同事協(xié)同排查這比翻journalctl或docker logs直觀10倍——所有上下文一個命令打包帶走。4.3 安全與合規(guī)避坑指南Agent開發(fā)者的生存手冊agent安全是熱詞但多數(shù)討論停留在理論。caveman用工程實踐給出答案Token絕不硬編碼所有密鑰通過環(huán)境變量注入。caveman run自動讀取CAVEMAN_OPENAI_KEY、CAVEMAN_ANTHROPIC_KEY等YAML中只寫{{ .openai_key }}。我們在CI中嚴(yán)格禁止grep -r sk- .任何密鑰泄露立即阻斷發(fā)布。Output文件權(quán)限最小化caveman默認(rèn)以0600僅所有者讀寫創(chuàng)建output文件。token.json生成后ls -l token.json顯示-rw-------杜絕其他用戶竊取。HTTP請求強(qiáng)制HTTPScaveman內(nèi)置校驗若url以http://開頭直接報錯ERR_INSECURE_URL。我們曾因此發(fā)現(xiàn)一個測試配置誤用了HTTP避免了生產(chǎn)環(huán)境token明文傳輸。審計日志不可篡改.caveman/log/目錄下每個日志文件都用SHA256哈希簽名。運(yùn)行caveman log verify可校驗完整性滿足SOC2審計要求。注意agent安全的終極形態(tài)是讓安全成為默認(rèn)行為而非事后補(bǔ)救。caveman不做“安全開關(guān)”而是把安全邏輯編譯進(jìn)執(zhí)行引擎——就像汽車的安全帶預(yù)緊器你感覺不到它但它時刻在保護(hù)你。5. 工程實踐延伸如何將caveman融入你的技術(shù)棧5.1 與CI/CD深度集成讓每一次代碼提交都經(jīng)過AI能力驗證我們把caveman嵌入GitHub Actions實現(xiàn)“AI能力健康度自動巡檢”。在.github/workflows/ai-health.yml中name: AI Service Health Check on: schedule: - cron: 0 * * * * # 每小時一次 workflow_dispatch: jobs: health-check: runs-on: ubuntu-latest steps: - uses: actions/checkoutv4 - name: Setup caveman run: | curl -L https://github.com/caveman-org/caveman/releases/download/v0.8.3/caveman_0.8.3_linux_amd64.tar.gz | tar xz sudo mv caveman /usr/local/bin/ - name: Run token diagnostics id: token-diag run: | # 設(shè)置密鑰從GitHub Secrets echo CAVEMAN_OPENAI_KEY${{ secrets.OPENAI_KEY }} $GITHUB_ENV echo CAVEMAN_ANTHROPIC_KEY${{ secrets.ANTHROPIC_KEY }} $GITHUB_ENV caveman run --config ./ci/token-diag.yaml --debug || echo health_failedtrue $GITHUB_ENV - name: Post status to Slack if: env.health_failed true run: | curl -X POST -H Content-type: application/json \ --data {text: AI Health Check FAILED: token exchange failed} \ ${{ secrets.SLACK_WEBHOOK }}這個workflow的價值在于主動發(fā)現(xiàn)在用戶投訴前提前1小時發(fā)現(xiàn)OpenAI token endpoint 503精準(zhǔn)告警不是“AI服務(wù)異?!倍恰癮uth.openai.com/v1/token返回503持續(xù)3次”自動歸檔每次失敗caveman log export生成的ZIP包自動存入AWS S3供事后分析。上線后AI服務(wù)P1故障平均響應(yīng)時間從47分鐘降至8分鐘。5.
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色必久悠悠影院| 任你艹| 五月丁香六月成人| 九九九午夜影院成人| 97人人操人人拍| 五月天桃色深爱网| 九九机热| 都市激情小说婷婷| 五月婷婷婷婷婷婷艺术| 丁香婷婷久久激情| 五月天激情偷拍| 九九99视频精品| 色色色色网站| 五月丁香婷婷色色| 日本一级一片免费视频| 欧美婷婷成人| jiZZdr| 亚州激情在线视频| 人人爱天天摸摸天天爱| 5月色亭亭视频| 人妻久热| 久久色天堂| 亞洲自怕| 99色在线观看视频者| 婷婷色网| 涩涩五月天综合| 青青久久91| 亚洲色五月| 激情小说五月天| 五月久久婷婷成人网| www.国产亚洲69ty.久久久久久久久久久久| 丁香六月激情国产| 国产操逼网站| 丁香 亚洲 久久| 久久婷婷青青| wwww.色婷婷| 国产精产国品一二三在观看| 婷婷在线网| 激情99| 激情五月婷婷网| 亚州操操| a网站免费观看| 色五月网址| 色色a| 色私五月婷婷| 亚洲热久久| 欧美 日韩 成人| 五月婷婷av| 婷婷综合六| 丁香六月婷婷色XXXX| 入口五月婷婷六月香| 亚洲啪啪啪啪| 99热这里有精品6| 精品久热| 欧美另类五月激情| 丁香五月成人网| 色综合综合网| 日韩欧洲亚洲| 色婷婷小说| 五月天另类小说| www色五月| 性爱网五月天| www.9操| 久久五月激情网| 九色视频91| 91超碰九色| 在线网黄| 呦呦v线| 五月天另类综合网| 99re这里只有| 深爱激情五月天| 九九黄色网| 性按摩玩人妻HD中文字幕| 欧美精品中文字幕亚洲专区| 婷婷国产欧美97| Www99热| 超碰色婷婷| 婷婷色五月丁香六月欧美啪| 久久草婷婷丁香网站| 亚洲AV成人无码久久精品老人法拉利| 99久在线观看| 色就色94欧美setu| 在线播放成人网站| 久久精品亚洲热| 日韩aaa| 九九RE视频在线精品| 激情99| 4399无码视频| 97色色婷婷| www.爱操com.| 综合色色婷婷| 五月情涩综合婷婷| 欧美毛片www| 精品一区二区三区三区| 色色色欧美| 丁香五月婷婷亚洲综合精品在线| 成人电影AV在线观看| 四色99久久| 日韩成人中文| 人人澡天天色天天做| 天天成人综合视频| 丁香网站| 丁香婷婷大香蕉| 襙比视频| 六月天婷婷| 日本人妻久久| 五月丁香亚洲综合网| 五月婷婷综合在线| H亚洲| 婷婷五月天堂| 丁香激情五月| 亚洲韩国日产综合AV| 丁香五月综合婷婷| 婷婷欧美综合| 欧美视频五区| 日本色爽| 99碰在线视频| 深情五月天| 亚洲超碰在线| 色五月婷婷狠狠撸| 99色在线| 26uuu淫色| 97色色视频| 综合色五月亭亭| 久久久18| 婷婷六月啪啪| 人人玩人人橾| 91人妻PORNY九色大屁股| 91亚洲免费片| 99热亚洲| 97色在线观看视频| 色婷婷先锋| 婷婷基地成人五月天| 色五月色图| 涩涩激情五月婷婷| 久久a热| 久777| 亚洲色激婷| 无码操B| 久久婷婷内射| 91碰碰碰| 情五月亚洲婷婷| 九九热精品| 九月丁香| 婷婷五月天在线观看| 性色欲情 网站| 色色婷婷五月天| 九九色院| 六月丁香五月婷婷| 狠狠色情婷婷| 1024在线视频| 婷婷黄色| 婷婷五月天激情在线观看| 六月丁香啪啪| 97色色色色色色色色色色色色色| 九九色网| 五月天社区| 大香蕉婷婷丁香视频在线| 激情五月天小说网| 五月丁香网视频| 色色色9| 91精品久久久久久77777| 久久激情天堂| 精品人妻伦| yazhouzonghesese| 欧美日本不卡黄色片| 五月丁香基地| 黄网免费看| 日韩成人电影AV| 97狠狠色| 鲁鲁色五月| 开心五月天激情| 99热亚洲只有色| 色色色图| 亚洲欧洲99| 女人高潮内射99精品| 99 这里只有精品| 五月天激情美女久久| 99热九九热| 99精品在线观看视频| 91天天操天天干天天射| 第四色婷婷五月| 婷婷五月天综合久久日美女| 操一区| 激情五月综合免费| A在线观看| 91丨九色丨熟女高潮| 欧美va亚洲va| 玖玖精品婷婷| AA片在线观看视频在线播放| 久久久人妻| 天天操夜夜夜夜爽| 亚州操逼网| 亚洲色另类| 亚洲综合色五月| 国产激情在线| 五月丁香久久激情综合| 91啪啪视频| 五月丁香婷婷综合| 丁香婷婷色色| 婷婷五月激情视频在线| 五月丁香六月婷婷综合免| 97碰91| 九月丁香| 婷婷五月在线观看| 色丁香六月| 综合五月婷婷| 99玖玖在线视频| 开心五月天激情网| 久久伊人大香蕉| 婷婷六月天激情影院| 碰碰人人漕| 国产偷人爽久久久久久老妇APP| 99无码视频| 色七色九九| 久久综合色五月| 天天天天操| 婷婷无码五月天| 五月激情丁香五月宗合| 成人AV在线电影| 久久女伦| 激情综合网激情五月婷婷| 色情综合| 色婷婷狠| 七七九色| 日本一级一片免费视频| 成人色图情色成人网 www.5b5b5bcom 五月天| 九九这里只这里只有精品| 五月狠狠| h亚洲| 色99xx| 五月天激情国产综合婷婷婷| 狠狠色综合网站久久久久| 婷婷开心五月| 色五月天成人| 色色色色色网| 久热只有精品| 看全色黄大色大片| www.婷婷六月天| 99这里| 激情五月丁香五月| 亚洲色热| 丁香大香蕉| 性欧美日本| 天天爽夜夜操| 色色吧综合| 婷婷狠狠干| 天堂草在线观| 人人草人| 伊人超碰| 中文字幕在线观看视频www| 超碰com| 天天爱天天操| 男女99免费视频| 97超级碰碰碰| 五月婷婷av| 国产激情AV| 色综合激情| 99热在线资源| 99热色无码| 激情综合五月| 五月丁香婷中文| 激情五月激情综合网一级丸片| 五月情丁香色| 丁香激激情网| 国产精品美女| 欧洲色| 免费视频无码| 91碰免费视频| 久久伊人婷婷| 91啪级电影| 久久网思思| 色99欧洲色19| 国产 亚洲 在线| 99热啪啪| 97碰91| 丁香密臀AV激情网| 国产夫妻操逼内射视频| 玖玖热视频| 丁香五月手机在线| 另类少妇人与禽zOZZ0性伦| 国精产品一区一区三区免费视频| 影音先锋91资源站| 99热日韩这里只有精品| 色色色色网| 高清不卡一区| 日韩在线看AV| 五月天婷婷基地| 狠狠夜夜五月丁香| 丁香婷婷社区| 日本乱子人伦在线视频| 色色五月天丁香婷婷| 婷婷综合五月| 天天天操天天天日| 思思热在线观看| 激情婷婷丁香| 99ri精品视频在线观看| 激情五月天伊人av| 五月天婷婷色| 五月综合丁香婷婷| 久色国产| 99色婷婷| 日韩综合天堂| 五月婷婷开心五月| 乱岳熟女50岁| 五月婷婷啪| 亚洲激情97五月天| 国产在线aaa片一区二区99| 9久热视频| 色婷五月天| 激情色情五月天| 久久久99久久| 超碰中文字幕在线| 五月丁香婷婷激情在线| 婷婷五月天堂| 99精品视频偷拍| 激情五月天之六月婷婷| 91精品久久久久久77777| 免费一区二区三区| 另类小说五月天综合| 色吧五月婷婷| 9|在线观看视频| 亚洲第一色色色| 色99热| 日本天堂网站99| aaaaa黄色| 五月 激情视频| 九九色婷婷五月天| 亚洲综合丁香五月| 五月天婷婷基地| 欧洲S级在线观看| 开心五月综合激情综合五月| 国外亚洲成AV人片在线观看| 天天色月| 99热这里有精力| 丁香 亚洲 久久| 天天夜天天色天天| 婷婷五月天99综合网站| 狠狠操.COM| www超碰| 五月婷中文字幕| 婷婷激情六月| 色女人久久| 五月天涩涩| 久久婷婷五月天丁香| 色婷婷成人丁香| 激情五月丁香社区| 日日干五月天婷婷| 欧美交换配乱吟粗大25P| 伊人婷婷青青cao| 日本三级中文字幕| 色三级色三级| 无码色| 依人大香蕉| AV五月丁香| 玖玖爱综合网| 色情五月综合婷婷| 成人小说 五月天 婷婷| 五月丁香亭亭电影久久| 激情综合五月开心狠狠| 婷婷五月天奸女| 久久大香蕉同僚| 色婷婷9| 激情综合网五月| 玖玖无码中文| 日韩无码专区| www.亚洲激情| 欧美色图天堂网色| 激情五月天视频| 99热这里在线精品| 影音先锋高清无码资源网| 秋霞电影理论| 99热99思午夜精品| 五月天丁香网| 新五月天婷婷激情电影| 丁香五月成人丝袜| 国产超碰在线| 99精品无码网站| 91 久热| 久久久免费精彩视频| 97成人在线视频精品| EEUSS鲁片一区二区三区| 欧美色97| 国产精品18久久久| 夜夜干 夜夜操| 操九色| 色五月婷婷五月天| 激情五月开心五月丁香五月| 久热中文字幕| 婷色影院| 亚洲丁香花色| 婷婷五月天电影在线| Caoub青青超碰| 婷婷丁香激情综合色情| 欧洲亚洲激情五月天在线| 婷婷六月丁综合| 大香蕉婷婷丁香天堂AV| 久久五月婷婷开心网| 9 大屁股在线视频精品| 色偷偷综合| 五月丁香婷婷激激激综合网色播| 久久婷婷色情7777网站| 97五月婷| 99热这里只有精品55| 色五月婷婷婷婷| 99在线公开视频| 五月丁香六月婷| 日本熟女内射| 国产精品久久在线观看技巧| 婷婷五月丁香综合桃花色网| 99在线精品免费视频| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 五月婷婷激情| 九九热在线观看视频| 综合亚洲色色| 色婷婷偷拍| 久久AAAA片一区二区| 欧美中文五月天| 亚洲激情淫网| 免费观看亚洲AV片| 哇嘎成人久久| 九九无毛| 99热| 天天干,天天日| 五月丁香婷婷AV| 色色婷五月天| 欧美日韩91| 在线成人国产| 我淫我色婷婷五月天激情四射| AV电影在线播放| 日本熟女二区| 色色综合色| 狠狠操天天操天天操| 8区视频在线| 色丁香五月婷婷综合久久| 99无码视频| 亚洲美女高潮久久久久久69| 五月天色不卡| 婷婷射综合| 婷婷开心久久| 五月丁香六月合| 五月天色色网站| 九一牛视频探花| 极品少妇高潮啪啪AV无码| 五月停停999| 伊人五月综合网| 五月天伊人手机在线播放AV| 丁香婷婷六月天| 99热国品免费| 六月丁香啪| www.色99| 五月婷色| 天天性视频| 婷婷综合97| 五月激激激情综合网| 97激情五月天| 青青草六月丁香| ...婷婷国产成人亚洲日韩| 久热99| 日韩成人综合网| 亚洲一级色电影| 色欲五月婷婷| 日本老女人黄页在线播放| 99碰碰视频| 五月丁香激| 99热九九在线| 99色综合网| 超碰人人艹| 精品成人久久久久久久_一二三四视| 日韩在线观看亚洲| 超碰在线99| 婷婷五月丁香基地在线视频官网| 五月天婷婷久久日| 夜夜夜夜操| 国产精品久久久60086| 99亚洲色| 综合激情在线视频| 婷婷激情综合网| 国产高潮A片羞羞视频涩涩| 99网| 青青草网武则天| www.99日本| 婷婷中文无码| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 欧美成人精品A片免费一区99| 五月婷婷丁香俺日污视频| 这里只有精彩视频| 色播五月婷婷| 99热草草| 丁香六月激情| 欧美丁香六月在线观看视频| 国产精品激情五月天色婷婷| 欧美影院| 中文人妻AV久久人妻18| 色99婷婷五月天| 国产日比| 99日这里只有精品| 大香蕉人妻| 疯狂做受XXXX高潮A片| 中日韩美欧成人一区二区精品在线| www狠狠爱com| 亚洲色婷婷色| 婷婷五月六月丁香| 六月丁香网| 97在线视频 欧美| 天天色播| 舔色婷婷| 国产99久久久国产精品免费看 | 四色女婷婷| 丁香六月婷婷色播| 99热 精品在线| 人妻aV在线| 色 丁香婷婷| 日本久久人| 久久精品一区二区三区四区| 国产熟女大叫受不了| 热99视频精品| 99在线免费视频| 99国产精品白浆在线观看免费| 91pornav在线| 婷婷色五月情| 婷婷色五月婷婷姐妹| 色婷婷成人影片| 久婷婷色| 一区二区三区四区牛| 丁香色五月婷婷17C| 久久久精品色| 九八Av| 精品久久久999| 日韩综合大黄| 婷婷五月花| 大香蕉婷婷久久| 久8色色| 丁香六月婷婷| 色综合夜夜| 六月婷婷八月丁香| 亚洲无码AV片| 日日艹思思热| 午夜天天精品视频| 熟女乱论网| 久久停停超碰| 久久性刺激| 这里只有精品网站| 六月婷婷色色网| 99热热九九| 婷婷午夜| 超碰操网| 久久久com| 日韩精品一区二区亚洲AV观看| 五月丁香婷婷三级| 激情五月成年| 婷婷综合在线观看视频| 五月天开心色色网| 天天干-天天日| 极品人妻VIDEOSSS人妻| 色综合色欲综合天天免费| 老司机伊人| 日韩不卡DvD| 色婷婷激情| 日熟女| 久久这里只精品| 一区=区操屄高清大全av| 婷婷色五月天综合网| 国外亚洲成AV人片在线观看| 欧美激情五月天在线观看| www.激情| 色高清无码视频| 最近中文字幕2019视频1| jiujiu无码五区| 亚洲成人综合在线| 色婷婷欧美在线| 伊人激情AV一区二区三区| 成人超碰AV| 丁香五月激情五月| 狠狠色狠狠色综合日日91 | 狠狠爱婷婷五月天| 激情综合五月开心狠狠| 超碰免费人妻| 色99在线| 丁香五月综合亚洲| 十区av| 午夜激情综合| 五月婷婷 欧美| 亚洲国产精品VA在线看黑人| 五月天成人在线| 丁香五月婷婷俺也要去| 日韩有码久久| 日韩AV大全| 另类五月婷婷| 色综啪啪| 激情九月婷婷| xxx日本东京热| 涩丁香91| 大香蕉九九| www.久久五月天.com| 超碰人人摸AV| 成人免费高清在线播放| 久久丁香五月婷婷激情综合网| 婷婷97狠狠成人网站| 色婷婷五月天小说网| 怡红院成人AV| 丁香五月成人| 人人草开心五月天| 丁香婷婷五月天校园春色| 精品亚洲国产成AV人片传媒| 亚洲天堂aaa| 五月婷婷激情性爱| 伊人婷婷福利网| 麻豆雪千夏| 一起草无码视频| 五月丁香狠狠爱婷婷综合| 综合久久影院| 狠狠干思思热| 丁香九月婷婷| 色婷婷另类| 日韩1区2区| 欧美综合五月丁香五月天| 99九九玖玖| 免费视频WWW在线观看网站| 色亭亭五月天丁香综合AV - 百度 - 百度| 久久这里只有国产| 99色.com| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 色综合激情| 激情网站五月| 吊色AV男人的天堂| 激情婷婷五月丁香啪啪啪| 欧美色99| 天天做天天爱天天爽综合网| 婷婷深爱五月天在线| 99玖玖在线视频| 色无婷婷| 久久99网站| 亚洲欧洲午夜成人精品av| 99热这里有精品2| 天天做天天爱天天爽夜夜揉| 激情视频91| 91精品刘玥| 99这里| 五月天婷婷伊人| 五月丁香啪啪啪啪| 五月丁香综合啪啪啪啪啪| 色婷婷91| 激情婷婷。| 牛牛热这里只有jingpin| 激情综合区| 青草五月天| 丁香婷停五月激情综合深爱| 亚洲色色图片| 色八月婷婷| 五月丁香好婷婷A片网| 男人的天堂av俄罗斯热| 91麻豆国产三级精品福利在线观看| 五月丁香777| www99精品| 亚洲人成色A777777在线观看 | 综合另类视频| 亚洲人人操| 综合婷婷都市激情| 色情五月综合婷婷| 深爱五月激情| 激情綜合W W W,激情五月天| 婷婷五月天激情基地| 丁香欧美| www.亭亭五月天| 久久综合久色欧美综合狠狠| 深爱激情五月天| 亚洲第一第二网站| 狠狠操综合| 天天色天天日| 婷婷色在线| 中文字幕网伦射乱中文| 大地资源色婷婷视频在线| 激情综合五月天| 国产AV一区二区三区最新精品| 精品一二三区久久AAA片| 成人无码髙潮喷水A片| 五月丁香综合| 91操黄| 99热精品超碰| 色综合久久99色| 综合色五月天| 最新热中文字幕| 五月婷婷六月丁香综合视频在线| 91大屁股| 欧美日韩AAAA| 久久看婷婷| 激情www| 99无码视频| 色色网站毛片| 五月丁香888| 大香蕉五月天婷婷丁香91| 欧美色图45678| 天天做天天爱天天爽在| 激情婷婷五月天日本系列| www.婷婷.com| 激情五月丁香五月| 亚洲网综合在线| 91jiuseshunv| 99综合免费视频| 婷五月丁香| 99久久玖玖| 婷婷的久久网站| 精品无码久久久久久久久| 热99视频精品在线| 狠狠干综合网| 婷婷五月丁香综合激情小说| 五月亚洲| 日本欧美成人片AAAA| 久婷婷视平| 91日日日| 欧美噜一噜| 人人摸人人澡人人| 中字幕视频在线永久在线观看免费 | 无码一区二区日韩| 79精品视频| 99热超碰| 狠狠 久久| 婷婷五月天成人在线视频| 婷婷基地五月色| 天天肏在线观看| 91色色五月天| 国产成人av在线播放| 狠狠操狠狠操AV| 超级碰碰一区| 琪琪理论片| 天天日天天色| 五月天激情美女久久| 超碰免费大香蕉| 日本va视频| 激情小说视频图片| 亚洲AV另类| 激情五月婷婷色综合| 97人人做| 亚洲啪啪精品| 狠狠色丁香婷婷综合久久97AV| 欧美大香蕉视频| 国成人网| 五月婷婷成人w| 色啪影院| 中文字幕成人影视| 婷婷激情五月天视频在线| 五月天成人在线视频网站| 丁香五月天婷婷91| 丁香六月婷婷姐网| 免费无码毛片一区二区A片 | 综合久| 六月丁香婷婷综合狠狠爱夜夜爱| 五月丁香婷婷俺| 激情99| 如何安全看伊人婷婷| 丁香综合婷婷五月天| 久久婷婷老| 狠狠五月丁香色婷| 97色婷| 99日韩| 欧美在线操| 麻豆精品| 亚洲五月天婷婷| 91碰操| 色99欧洲色19| 国产在线网址1| 五月丁花色综合网| 色婷婷成人做爰A片免费看网站| 色综合激情| 五月丁香操婷逼| 欧美三级黄色片久久| 婷婷色导航| 激情久久 婷婷| 色色色色热| www.久久婷婷| 日本色色网站| 婷婷人人操| 超碰色色综合| 在线中文字幕视频| 婷婷金品综合视频| 日韩九九视频| 爱射综合| 97色伦另类图片小说视频| 日本不卡高字幕在线2019| 欧美色色色色色色色色色色影视| 99久久久| 久热这里只有精品66| 中文字幕无线久必| 天天天天天久久久久久| 97涩婷婷婷婷基地| 深爱激情婷| 女人天堂久久| 婷婷五月天综合网| 五月丁香网av| 精品人妻午夜一区二区三区四区| 伊人丁香花综合影院| 五月丁香久久综合91| 丁香月六月| 97丁香五月| 天天噜噜| www.伊人天堂偷偷婷婷| 日韩av在线播放综合网| 色婷婷亚洲婷婷在线观看| 天天操婷婷| 午夜丁香婷婷| 丁香久久五月天视频在线观看 | 九色自拍| 久久久er热| 黄色av网站在线免费播放| 欧美这里只有精品| 亚洲综合在线伊人婷| 免费视频在线观看的网站| 久久久精品人妻录| 99视频网址| 五月在线| 婷婷五点亚洲| 久久精品9| 日本天天操| 丁香五月综合在线视频| 五月色婷婷影院| 欧美肉大捧一进一出免费视频| 这里只有精品视频一区| 丁香五婷婷| 99久久9| 五月天另类小说| 五月天激情综合网俺也去| 99ER热精品视频| 欧美激情VA永久在线播放| 色五月丁香五月激情五月激情| 婷婷成人av| 热久久99热欧美国产亚洲| 五月丁香五月天现场视频| 在线资源av-超碰中文在线-成人AV| 丁香五月社区| 久久综合人妻| 婷婷五月丁香在线观看| 五月婷婷丁香六月| 在线理论片| 激情啪啪五月| 五月天停停成人网| 色婷婷综合网| 色欧美日| 精品国产乱码久久久久夜深人妻| 丁香五月六月婷婷综合| 五月婷综合性中心| 久操大香蕉| 婷婷久久色| 天天干一干| 久久久久亚洲AV成人无码电影| 日夜夜天天| 丁香无月在线观看| 久久在线大香蕉| 久久激丁香| 久久曰曰| 欧洲毛片基地c区| 99久久激情视频| 天天色伊人| 97操在线视频| www.99日本| 超碰啪啪网| 欧美成人AAA片一区国产精品| 五月丁香无码| www.操.com| 色性日本| 色欲日日躁| 99热精品在线| 天堂资源欧日浪女在线播放| 99久久婷婷五月| www免费在线视频| 婷婷香蕉| 五月婷婷婷| 99热都是精品| 日本啪啪网| 丁香六月激情| 五月天亚洲综合网| 五月婷视屏在线观看| 思思w99| 五五月五月| 激情五月图| 欧亚洲在线高清视频| 丁香密臀AV激情网| 综合五月丁香97| 国内9l视频自拍老熟女九色| 日日噜噜夜夜狠狠久久丁香五月| 被强行糟蹋的女人A片| 色情五月综合婷婷| www激情| 色吧五月| 中文字幕网伦射乱中文| 欧洲色色| 精品一二三区久久AAA片| 亚洲中文字幕在线观看| 涩五月婷婷| www.色99| 校花娇喘呻吟校长陈若雪视频| 99热这里只有精| 日本欧美成人片AAAA| 欧美一级色| 白人荫道BBWBBB大荫道| 欧美电影在线观看| 久久精品凹凸分类| 久久九九99.www| 日本天堂久久| www.久9| 婷婷综合一二三| 97超碰在线免费观看| 91超级碰在线视频| www.91操| 丁香五月 综合| 色五月激情综合| 色丁香婷婷| 99色视频| 色五月丁香网| 成人国产欧美大片一区| 激情五月四色| 亚洲成Av人片乱码色第1集| 蜜臀av粉嫩av懂色av| 五月丁香色| 99热这里只有精品10| 99视频精品8| 五月激情六月综合| 97人人操人人爽| 天天干天天拍| 任我肏视频精品| 婷婷九月亚洲| 九九热这里有精品23| 日日爽天天| 久久怡红院| 激情综合一| 午夜伊人大香蕉| 狠狠综合区| 日本人妻A片成人免费看片| 日本色婷婷综合| 九热视频| 99这里有精品| 久久亭亭电影| 丁香无月在线观看| 婷婷丁香在线播放| 婷婷五月丁香六月| 国产69久久久欧美黑人A片| 涩涩激情五月婷婷| 少妇激情基地| 国产成人va在线| 亚洲不卡欧洲| 男人操女人高潮91视频| 日本黄色精品| www.sd-xiangsu.cpm| 五月婷婷香| 色99色| 免费在线a| 亚洲精品五十一区| 深爱五月激情五月| 大学生高潮无套内谢视频| 国产综合丁香五月天| 丁香六月AV| 亚洲综合五月天| 激情五月综合网| 第四色大香蕉| 五月丁香久久激情网| WWW免费视频碰碰碰碰| 国产日韩欧美| 超碰成人在线观看| 五月婷婷六月少妇激情| 久9热| 九九热99视频在线| 夜夜撸日日骑| 综合色久| 久久久大香蕉| 婷婷激情五月综合| 年轻的妺妺伦理HD中文| 婷婷六月激情| 少妇激情五月天| 性欧美大战久久久久久久83| 久久久久久久97| 久久偷拍综合五月天| 极品少妇XXXX精品少妇偷拍| 色碰碰视频| 人人爱摸视频| 日韩久久日| 丁香综合伊人AV| 青草激情综合| 五月天丁香久久| 99热这里只有精品86| 六月婷婷毛片| 日日噜噜久久婷婷五月天 | 五月婷高清视频| 五月天综合视频| 香蕉久久国产av一区二区| 99热这里只有是亚洲国产| 婷婷色网| 色婷婷五月天激情| www久久99| 182TV亚洲| 五月天天久久香| 综合久久8| 亚洲综合婷婷六月丁香五月| 欧美日本韩国亚洲| 99色色网站| 亚洲综合99| 欧亚洲在线高清视频| AV在线大香蕉| 久久与婷婷| 99在线精品视频| www.色婷婷.com| 婷婷久久丁香五月| 九热久| 丁香六月激情四射| 五月丁香激情怕怕| 天天插天天插| 99热免费精品| 国产99久久久| 久热中文字幕| 五月天社区| 97福利视频| 婷婷丁香人妻天天爽| 九九熱最新視頻| 9色在线| 婷婷丁香五月天综合网| 青草青草视频2免费观看| 五月丁香在线婷婷蜜桃| 国产精品久久久久9999小说| 99热日| 91精选国| 五月天涩涩| 玖玖婷婷精品| 婷婷五月天av| 五月婷婷六月丁香激情深爱| 激情综合五月婷婷| 丁香五月激情月| 蜜乳久AV| 丁香五月五月婷婷欧美大香蕉| 91婷婷五月丁香碰| 色婷婷精品视频| 人人97碰| 久久精彩视频| 婷婷涩五月天综合| 欧美毛卡| 九九aV| 夜夜天天久久婷婷| 五月四色激情| 激情综合五月婷婷| 99熟女| 国产精产国品一二三在观看| 五月成人综合| 色综合久久88色综合天天看| 五月丁香天堂网| 丁香五月第九色| 欧美精品狠狠色丁香婷婷| 深爱激情五月天| 99亚洲精品视频在线观看| 五月丁香六月婷| 丁香五月婷婷色偷偷| AV五月丁香| 欧美成人猛片AAAAAAA| 99无码黄色视频| 色五月网址| 久久婷婷综合五月| 91精品国产99久久久久久天美| 五月丁香六月婷婷啪啪综合| 九九热狼人| 91丨九色丨白浆| 激情校园 亚洲| 婷婷欧美激情| 噼里啪啦在线观看免费完整版视频 | 五月婷婷亚洲| 五月婷婷综合色啪首页| 3p久久| 国产亚洲精品久久久久久牛牛| 激情五月天电影| 色婷婷婷av| 99人人干人人操| 99这里都是精品| 这里只有精品免费视频| 色狠狠999综合网| 久热精品在看| 日韩成人无码| 五月婷六月| 婷婷五月激情欧美大胆视频| 大香蕉99| 超碰九热| 超碰AV在线| 人人摸人人澡人人| 69激情小说| 婷婷色色五月天| 婷婷综合偷拍| 极品人妻VIDEOSSS人妻| 婷婷91| 久色资源| 六月亭亭久久综合激情| 久久久思思热| 色婷婷88| 婷综合六月| 精品久久久久成人码免费动漫| 五月天成人综合| 天天狠狠夜夜狠狠2023| 夜夜操夜夜姧| 久热这里只有精品3| 色五月大| 色情婷婷久久五月天| 午夜婷婷| 婷婷色网| 人妻久久婷婷| 色五月激情五月| 99思思热只有在这里看| 狠狠色丁婷婷日日,伊人激情综合网 | 可以看的av网站| 天天干夜夜欢| 激情 五月 婷婷 丁香| 伊久久婷婷| 天久久久久| 日本道久久91| 在线视频九色97| 人与禽A片啪啪| 99视频内射三四| 五月丁香婷婷六月| 日日噜狠狠| 人妻九九九九| 久久综合影院 | 九九色影视| 91视频一起草| 99久久婷婷五月综合| 97婷婷丁香五月天激情图片| av人人操| 99久久婷婷五月| 碰久久精品w| 激情超碰网| 亚洲AV日韩AV永久无码网站| 九九综合影音先锋| www.91av.com| 亚洲无码影音| 九九婷婷激情综合网| 五月天操逼激情| 淫视馆av三区| 久久婷婷桃花五月天| 99碰碰碰| 六月婷婷日| 久热伊人在91| 亚洲婷婷五月| 97视频91| 久热这里只精品| 欧美日本综合网| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 六月婷婷深深爱| 99re思思精品视频在线观看| 六月婷婷狠狠| 色五月色综合| 狠狠干综合网| 综合婷婷都市激情| 婷婷五月综合网| 99re在线观看| 色丁香五月婷婷| 岛国在线观看91| 色色综合五月| 香蕉久久国产av一区二区| 99re免费精品视频| 色久婷婷五月| 美女主播野战视步页| 第四色婷婷丁香五月| 精品人妻伦一二三区久| 色婷婷免费观看| 色色99| 久久九网| 日本九九视频| 丁香五月天无码AV| 亚洲国产精品成人va在线观看| 天天摸人人摸| 久久五月天网| 天天日天天爽| 99欧美精品99日本精品| 久久精品系列| 天天激情综合| 五月丁香六月香综合激情| 色婷婷精品视频| 热九九精品| 婷婷五月天av小说| 色色色区| 综合在线网| 欧美婷婷五月丁香| 激情久久肏屄视频| 免费看欧美成人A片无码| 亚洲成人精品三区| 丁香五月婷婷啪啪啪| 影音先锋 婷婷| 高清无码网址| 99在线精品免费视频| 98色丁香五月婷婷综合网| 九久9精品| 欧美激情综合色综合色| 五月婷婷熟女| 色综合综合综合| 9久久久久久久久久久| 五月天婷婷久久综合| 国产精品国产| 日产精品一线二线三线芒果| 另类激情码| 五月噜噜| 亚洲综合99| 丁香婷婷激情四射五月| 性爱先锋AV| www婷婷| 中字幕视频在线永久在线观看免费 | 国产色五月| 色欲久久综合| 狠狠狠狠狠狠草| 成人av免费观看| 夜夜躁爽日| 九九色热| 五月婷婷人人人操| 色婷婷丁香五月天| www激情| 久色激情| 五月激情婷婷女| www.色五月| 人妻AV在线观看| 五月婷婷综合在线观看| 久久免费精彩视频| 天天操婷婷| 色久天| 九九无码AV| 深爱五月激情网| 九月婷婷综合网| 超碰精品在线| 98色花堂98t.R| 五月天影院| 三年高清大片免费观看国语| 97色久| 色香欲综合| 蒲京久久无码视频| 九九热这里有精品23| 中文字幕在线免费观看视频| 国产亚洲成人综合| 五六月丁香激情视频| 色色婷婷丁香| 色婷婷丁香| 丁香婷婷九月| 美腿丝袜AV天堂网| 亚洲成人黄色网| 91无码色色| 丁香六月色情| 色色五月婷婷| 噜噜狠狠| 大香蕉AV在线| 超碰女人天堂| 日本超碰在线| 99毛片| 中文字幕激情综合| 丁香五月婷婷色偷偷| 99免费在线| 在线sebiav精品视频| 九九热视频免费| 丁香五月婷婷av影院| 狠狠干狠狠干狠狠干狠狠干| 欧美 日韩 人妻 高清 中文| 夜夜爽天天| 五月丁香久久| 久久久月丁香| 日本黄 色 片| 婷婷综合激情五月综合| 欧美三级巜人妻互换| 五月丁香婷婷成人伊人网| 成人无码髙潮喷水A片| 丁香五月成人论坛| 国产AV一区二区三区日韩| 久久久久综合激动五月天| 国产成人精品一区二三区熟女在线 | 激情www| 激情美女五月天| 人妻丰满精品一区二区A片| 激情五月天无码| 国内自拍97在线|