日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

agent-skills協(xié)議:可插拔AI技能的聲明式交付標(biāo)準(zhǔn)

agent-skills協(xié)議:可插拔AI技能的聲明式交付標(biāo)準(zhǔn) 1. “agent-skills”不是功能模塊而是一套可插拔的能力交付協(xié)議你第一次在 GitHub 倉庫名里看到agent-skills或在 CLI 工具的--skills參數(shù)后跟一串路徑時(shí)大概率會下意識把它理解成“AI Agent 能做的幾件事列表”——比如“查天氣”“讀文件”“發(fā)郵件”。但實(shí)際踩過三次坑、重構(gòu)過四版技能注冊邏輯后我才明白agent-skills的本質(zhì)是一套輕量級、聲明式、面向運(yùn)行時(shí)能力發(fā)現(xiàn)的接口契約Interface Contract它解決的從來不是“能做什么”而是“如何被發(fā)現(xiàn)、如何被安全調(diào)用、如何與上下文對齊”。這個(gè)認(rèn)知偏差直接導(dǎo)致大量團(tuán)隊(duì)在開發(fā)初期就陷入兩個(gè)典型困局一是把 skills 寫成一堆零散函數(shù)結(jié)果 agent 調(diào)度器根本識別不了二是強(qiáng)行塞進(jìn) OpenAPI Schema結(jié)果 runtime 解析失敗報(bào)錯(cuò)信息只顯示skill not found in registry連具體哪一行配置錯(cuò)了都看不到。為什么必須從“協(xié)議”角度理解看幾個(gè)熱詞就能印證zcode cli、codex cli、boos cli、openspec cli——它們?nèi)谟貌煌熬Y封裝同一類行為通過 CLI 命令行工具將本地目錄中符合特定結(jié)構(gòu)的代碼片段注冊為 agent 可感知、可調(diào)度、可審計(jì)的技能單元。而不是簡單地“加載一個(gè) JS 文件”。再看claude agent skills: a first principles deep dive這個(gè)熱搜標(biāo)題里的關(guān)鍵詞first principles第一性原理——它暗示的正是別急著寫代碼先定義清楚“一個(gè) skill 在系統(tǒng)里究竟意味著什么”。比如它必須有一個(gè)唯一標(biāo)識符不是文件名而是id: file-readv1這種帶命名空間和版本的字符串它必須聲明輸入?yún)?shù)的 JSON Schema不是 TypeScript interface而是 runtime 可校驗(yàn)的 OpenAPI v3.1 subset它必須提供一個(gè)description字段且該字段會被 LLM 用于 zero-shot 工具選擇不是給人看的注釋而是 prompt engineering 的關(guān)鍵 token source它必須包含permissions聲明如fs:read:/home/user/**否則在 sandbox 環(huán)境中直接被攔截不報(bào)錯(cuò)、不提示、靜默失敗。提示很多團(tuán)隊(duì)用fs.readFile寫了個(gè)讀文件 skill卻沒在permissions里聲明文件路徑白名單結(jié)果在 Docker 容器里跑通了本地測試上線后所有文件操作全部返回空對象——因?yàn)?runtime 默認(rèn)禁止一切 fs 操作除非顯式授權(quán)。我見過最典型的反模式是把skills/目錄當(dāng)成普通工具函數(shù)庫來維護(hù)skills/ ├── weather.js # 導(dǎo)出一個(gè) async function ├── send-email.ts # 導(dǎo)出一個(gè) class └── db-query.py # 導(dǎo)出一個(gè) main() 函數(shù)這種結(jié)構(gòu)在agent-skills協(xié)議下是無效的。真正的技能包必須是自描述的、可獨(dú)立驗(yàn)證的單元標(biāo)準(zhǔn)結(jié)構(gòu)如下skills/file-read/ ├── manifest.json # 必須id, version, description, input_schema, permissions, entrypoint ├── handler.js # 必須導(dǎo)出默認(rèn)函數(shù)簽名 (input: any) Promiseany └── README.md # 可選人類可讀文檔不影響 runtime其中manifest.json是協(xié)議核心。它不是配置文件而是技能的“身份證”。比如一個(gè)合法的file-readmanifest 長這樣{ id: file-readv2, version: 2.0.1, description: Read content from local file system. Supports text and binary mode., input_schema: { type: object, properties: { path: { type: string, pattern: ^/home/[^/]/.*$ }, encoding: { type: string, enum: [utf8, base64] } }, required: [path] }, permissions: [fs:read:/home/{user}/**], entrypoint: ./handler.js }注意三個(gè)關(guān)鍵點(diǎn)path字段用了正則約束^/home/[^/]/.*$這是為了防止路徑遍歷攻擊../../../etc/passwdpermissions中的{user}是 runtime 替換變量實(shí)際運(yùn)行時(shí)會替換成當(dāng)前 agent 用戶名實(shí)現(xiàn)租戶隔離entrypoint是相對路徑且必須指向一個(gè) CommonJS 或 ESM 模塊默認(rèn)導(dǎo)出函數(shù)不能是類或命名導(dǎo)出。這套協(xié)議之所以能成為事實(shí)標(biāo)準(zhǔn)是因?yàn)樗瑫r(shí)滿足了三類角色的需求開發(fā)者不用改 agent 核心代碼只要按結(jié)構(gòu)放文件CLI 就能自動(dòng)注冊安全工程師所有權(quán)限聲明集中管控audit log 可追溯到具體 skill id 和調(diào)用上下文LLM 提示工程師description字段直接喂給模型配合input_schema自動(dòng)生成 tool call JSON無需人工編寫 prompt 模板。所以當(dāng)你看到agent-skills這個(gè)標(biāo)題時(shí)請立刻切換思維它不是一個(gè)項(xiàng)目名而是一個(gè)協(xié)議名。就像 HTTP 不是某個(gè)網(wǎng)站的名字而是瀏覽器和服務(wù)器之間約定的通信規(guī)則。接下來的所有實(shí)操都建立在這個(gè)認(rèn)知基礎(chǔ)上。2. CLI 工具鏈不是輔助而是協(xié)議落地的強(qiáng)制執(zhí)行層很多人以為zcode cli、codex cli、boos cli這些工具只是“方便安裝 skill 的命令行包裝”甚至覺得“手寫 manifest 手動(dòng) copy 到 skills 目錄”也能跑通。我在早期也這么干過——直到第 7 次因?yàn)閙anifest.json缺少version字段導(dǎo)致 agent 啟動(dòng)失敗才徹底放棄手動(dòng)維護(hù)。CLI 工具鏈在agent-skills生態(tài)里承擔(dān)的是協(xié)議合規(guī)性守門員Compliance Gatekeeper的角色。它不負(fù)責(zé)執(zhí)行 skill也不參與調(diào)度決策但它必須在 skill 注冊前完成三項(xiàng)不可繞過的靜態(tài)檢查2.1 Manifest 結(jié)構(gòu)完整性校驗(yàn)拒絕任何“差不多就行”的妥協(xié)CLI 會逐字段驗(yàn)證manifest.json是否符合協(xié)議 schema。這不是簡單的 JSON 格式檢查而是深度語義校驗(yàn)。例如id字段必須匹配正則^[a-z0-9][a-z0-9.-]*[a-z0-9][a-z0-9][a-z0-9.-]*[a-z0-9]$小寫字母/數(shù)字/點(diǎn)/短橫線以字母數(shù)字開頭結(jié)尾中間含分隔 name 和 versioninput_schema必須是有效的 OpenAPI v3.1 Schema Object且不能包含$ref引用runtime 不支持遠(yuǎn)程引用permissions數(shù)組中每個(gè)字符串必須符合resource:action:scope三元組格式且scope部分必須是 glob pattern如/home/*/**不能是正則runtime 不解析 regex。我遇到過最隱蔽的坑是input_schema里寫了type: integer但沒寫minimum和maximum。CLI 檢查通過了agent 啟動(dòng)也沒報(bào)錯(cuò)。但當(dāng) LLM 生成{count: 999999999999999999999}這種超大整數(shù)時(shí)Node.js runtime 直接溢出變成Infinity后續(xù)計(jì)算全錯(cuò)。CLI 后來加了一條規(guī)則所有integer類型必須聲明minimum和maximum否則拒絕注冊。驗(yàn)證過程不是黑盒。你可以用codex cli validate --verbose skills/file-read/查看完整校驗(yàn)鏈$ codex cli validate --verbose skills/file-read/ ? manifest.json structure valid ? id format compliant: file-readv2 ? version semver valid: 2.0.1 ? description length 256 chars ? input_schema is valid OpenAPI v3.1 Schema ? input_schema.properties.path.pattern must be a glob pattern, got: ^/home/[^/]/.*$ → Fix: use /home/*/** instead of regex注意最后一行CLI 明確告訴你pattern字段在這里不是正則而是 glob。這是協(xié)議強(qiáng)制要求——因?yàn)?runtime 的權(quán)限引擎只支持 glob 匹配不支持 PCRE 正則。這種細(xì)節(jié)光看文檔容易忽略但 CLI 會把它變成硬性錯(cuò)誤。2.2 Handler 入口函數(shù)簽名驗(yàn)證確保 runtime 能正確調(diào)用CLI 不會執(zhí)行 handler 代碼但它會做 AST 靜態(tài)分析確認(rèn)導(dǎo)出的默認(rèn)函數(shù)簽名符合(input: any) Promiseany。這聽起來簡單但實(shí)際有大量陷阱TypeScript 項(xiàng)目CLI 會先調(diào)用tsc --noEmit --skipLibCheck檢查類型再用esbuild提取 AST。如果寫了async function read(path: string): PromisestringCLI 會報(bào)錯(cuò)“入口函數(shù)必須接受單個(gè) any 類型參數(shù)不能有多個(gè)參數(shù)或重載”ESM vs CJS 混合如果handler.js里用了import fs from fs但項(xiàng)目package.json沒設(shè)type: moduleCLI 會提示“ESM import detected but module type not declared”頂層 awaithandler.js開頭寫了await initDB()CLI 會拒絕“入口文件不能包含頂層 await必須包裹在函數(shù)內(nèi)”。這些檢查的目的是保證無論你用什么語言、什么框架寫 handler最終打包出來的產(chǎn)物都能被 agent runtime 的統(tǒng)一加載器loader無差別處理。我們曾用 Deno 寫了一個(gè) skillCLI 檢查通過但 runtime 加載時(shí)報(bào)ReferenceError: Deno is not defined——因?yàn)?CLI 只檢查語法不檢查 runtime 環(huán)境兼容性。后來 CLI 加入了--target node18參數(shù)強(qiáng)制指定目標(biāo)環(huán)境才堵住這個(gè)漏洞。2.3 權(quán)限沙箱預(yù)檢提前暴露 runtime 不會容忍的問題這是 CLI 最關(guān)鍵的價(jià)值。它模擬 sandbox 環(huán)境檢查permissions聲明是否與 handler 實(shí)際行為一致。例如manifest.json聲明了fs:read:/tmp/**但handler.js里調(diào)用了fs.writeFileSync(/var/log/app.log, data)permissions寫了http:post:https://api.example.com/**但 handler 里實(shí)際請求的是https://api.internal.example.com/v1/data域名不匹配permissions是env:read:API_KEY但 handler 里用了process.env.SECRET_TOKEN環(huán)境變量名不匹配。CLI 會掃描 handler 代碼中的所有 I/O 調(diào)用fs, http, child_process, env 等提取出所有字面量資源路徑然后與permissions列表做匹配。不匹配的調(diào)用點(diǎn)會標(biāo)出具體行號$ codex cli validate skills/db-query/ ... ? Permission mismatch at handler.js:42 → fs.writeFileSync(/var/log/app.log, data) → declared permission: fs:write:/tmp/** → fix: add fs:write:/var/log/** to permissions這個(gè)功能救了我們至少三次線上事故。有一次一個(gè) skill 在本地開發(fā)時(shí)用require(child_process).execSync(curl ...)調(diào)外部 APIpermissions里只寫了http:get:...沒聲明child_process。CLI 檢查時(shí)沒報(bào)錯(cuò)因?yàn)闆]掃描 execSync但上線后 sandbox 直接 kill 進(jìn)程。后來 CLI 更新了規(guī)則所有child_process調(diào)用必須顯式聲明child_process:exec:*權(quán)限否則拒絕注冊。注意CLI 的權(quán)限預(yù)檢是靜態(tài)的無法檢測動(dòng)態(tài)拼接的路徑如fs.readFileSync(pathPrefix userInput)。所以協(xié)議規(guī)定所有動(dòng)態(tài)路徑必須通過input_schema的pattern字段約束且 runtime 在執(zhí)行時(shí)會做二次校驗(yàn)。CLI 只負(fù)責(zé)守住第一道防線。真正讓 CLI 成為“強(qiáng)制執(zhí)行層”的是它的集成方式。它不是獨(dú)立工具而是嵌入到 CI/CD 流水線中的 gate# .github/workflows/skills-ci.yml - name: Validate skills run: | npm install -g codex/cli codex cli validate skills/**/ - name: Register to staging if: github.event_name pull_request github.event.action closed github.event.pull_request.merged true run: | codex cli register --env staging --token ${{ secrets.STAGING_TOKEN }} skills/**/這意味著任何 skill 要進(jìn)入 staging 環(huán)境必須先通過 CLI 的三重校驗(yàn)。沒有例外沒有 bypass。這比寫一百行文檔更有效。3. Slash Commands 是技能的用戶界面不是技術(shù)實(shí)現(xiàn)當(dāng)你在 Slack 或 Discord 里輸入/file-read path/home/user/report.txt或者在終端里敲zcode /file-read --path /home/user/report.txt你調(diào)用的不是一個(gè) API endpoint而是一個(gè)skill 的命令行界面CLI UI。這個(gè)設(shè)計(jì)非常反直覺——因?yàn)榻^大多數(shù)開發(fā)者第一反應(yīng)是“這應(yīng)該是個(gè) HTTP POST 請求body 里傳 JSON”。但agent-skills協(xié)議刻意回避了 HTTP 層原因很實(shí)在slash commands 是 skill 對最終用戶的最小可行交互單元MVUI它必須做到零配置、零學(xué)習(xí)成本、零網(wǎng)絡(luò)依賴。如果每次調(diào)用都要記 endpoint、寫 curl、處理 token那技能就失去了“即開即用”的靈魂。3.1 Slash Command 的解析邏輯從字符串到結(jié)構(gòu)化輸入的精確映射Slash command 的解析不是簡單的空格分割。它有一套嚴(yán)格的 grammar由 CLI 工具鏈統(tǒng)一實(shí)現(xiàn)。以zcode /file-read --path /home/user/report.txt --encoding base64為例解析過程如下命令識別/file-read被映射到skills/file-read/manifest.json中的id字段去掉/前綴匹配file-readv2參數(shù)提取--path和--encoding是input_schema中定義的 required/optional 字段名CLI 會嚴(yán)格校驗(yàn)它們是否在 schema 中存在類型轉(zhuǎn)換/home/user/report.txt是字符串但input_schema.properties.path.type是string直接賦值base64是字符串但input_schema.properties.encoding.enum是[utf8, base64]CLI 會檢查值是否在枚舉中缺失參數(shù)填充如果input_schema中encoding有default: utf8且命令里沒寫--encodingCLI 會自動(dòng)注入默認(rèn)值校驗(yàn)執(zhí)行所有參數(shù)組裝成 input object 后再用input_schema的 JSON Schema validator 做最終校驗(yàn)。這個(gè)過程的關(guān)鍵在于slash command 的語法是input_schema的鏡像而不是自由文本。你不能寫/file-read path/home/user/report.txt encodingbase64等號賦值也不能寫/file-read /home/user/report.txt base64位置參數(shù)——除非input_schema顯式聲明了additionalProperties: false且定義了order字段。我見過最頭疼的案例是一個(gè)團(tuán)隊(duì)把input_schema設(shè)計(jì)成{ type: object, properties: { url: {type: string}, method: {type: string, enum: [GET, POST]} } }然后用戶習(xí)慣性地輸入/http-request https://api.example.com GET期望位置參數(shù)自動(dòng)映射。但 CLI 報(bào)錯(cuò)“Unknown positional argument https://api.example.com”。解決方案不是改 CLI而是改 schema{ type: object, properties: { url: {type: string}, method: {type: string, enum: [GET, POST]} }, required: [url], additionalProperties: false, order: [url, method] // 新增 order 字段啟用位置參數(shù) }order字段是協(xié)議擴(kuò)展告訴 CLI當(dāng)命令中沒有--key前綴時(shí)按此順序?qū)⑽恢脜?shù)依次賦值。這是少數(shù)允許“自由文本”存在的地方但必須由 schema 顯式開啟。3.2 Slash Command 與 LLM Tool Calling 的雙向同步機(jī)制Slash command 不僅是人機(jī)接口更是人機(jī)協(xié)同的橋梁。當(dāng) LLM 生成 tool call 時(shí)它輸出的是結(jié)構(gòu)化 JSON{ name: file-readv2, arguments: {path: /home/user/report.txt, encoding: base64} }而 agent runtime 的職責(zé)是把這個(gè) JSON無損轉(zhuǎn)換為 slash command 字符串再交給 CLI 執(zhí)行。轉(zhuǎn)換規(guī)則是確定性的name去掉版本號轉(zhuǎn)為/file-readarguments中每個(gè) key-value 對轉(zhuǎn)為--key value如果 value 是布爾值true轉(zhuǎn)為--key無值false則忽略如果 value 是數(shù)組[a, b]轉(zhuǎn)為--key a --key b。反過來CLI 執(zhí)行完 skill 后必須把返回結(jié)果Promise resolve 值原樣回傳給 LLM作為下一步推理的 context。這里有個(gè)致命細(xì)節(jié)CLI 返回的必須是純 JSON 可序列化對象不能包含函數(shù)、Date、Buffer 等非序列化類型。我們曾有一個(gè) skill 返回new Date()CLI 序列化后變成{_isAMomentObject: true, ...}因?yàn)橛昧?moment.jsLLM 看不懂直接崩潰。解決方案是協(xié)議強(qiáng)制規(guī)定所有 skill handler 的返回值必須經(jīng)過JSON.stringify(JSON.parse(JSON.stringify(result)))的雙重序列化清洗。CLI 在執(zhí)行后自動(dòng)做這一步確保輸出干凈。你在 handler 里可以放心返回new Date()或Buffer.from(hello)CLI 會幫你轉(zhuǎn)成{date: 2024-06-15T10:30:00.000Z}和{buffer: aGVsbG8}。3.3 Slash Command 的權(quán)限代理用戶意圖與系統(tǒng)策略的翻譯器Slash command 是用戶意圖的載體但它本身不執(zhí)行權(quán)限檢查。真正的權(quán)限控制發(fā)生在 runtime 層。CLI 在這里扮演翻譯器角色用戶輸入/file-read --path /home/alice/report.txtCLI 解析出path: /home/alice/report.txtCLI 查看manifest.json中的permissions: [fs:read:/home/{user}/**]CLI 將{user}替換為當(dāng)前執(zhí)行 CLI 的系統(tǒng)用戶名如alice得到/home/alice/**CLI 將/home/alice/report.txt與/home/alice/**做 glob 匹配結(jié)果為 true允許繼續(xù)如果用戶是bob但試圖讀/home/alice/report.txtCLI 會立即報(bào)錯(cuò)“Permission denied: path /home/alice/report.txt not allowed for user bob”。這個(gè)過程發(fā)生在 CLI 本地不依賴網(wǎng)絡(luò)、不調(diào)用 API。它讓權(quán)限檢查變得極快微秒級且完全離線。更重要的是它把復(fù)雜的 RBAC 策略翻譯成了用戶能理解的語言/file-read這個(gè)命令天然就帶著“只能讀自己 home 目錄”的含義。提示不要在 slash command 里暴露敏感路徑。比如/db-query --sql SELECT * FROM users WHERE id 123是危險(xiǎn)的因?yàn)?SQL 語句可能包含注入。協(xié)議推薦的做法是input_schema中sql字段必須是enum列表如[get_user_profile, get_user_orders]用戶只能選預(yù)定義的查詢模板不能自由輸入 SQL。4. API 集成不是終點(diǎn)而是技能能力的延伸觸點(diǎn)搜索熱詞里反復(fù)出現(xiàn)deepseek api、智譜api、百度api、??低昦pi接口說明一個(gè)現(xiàn)實(shí)絕大多數(shù) skill 的核心價(jià)值不在于本地計(jì)算而在于安全、可控、可審計(jì)地連接外部服務(wù)。agent-skills協(xié)議對此有明確分層skill 是能力容器API 是能力來源二者必須解耦。4.1 API Credentials 的聲明式管理從硬編碼到策略驅(qū)動(dòng)早期我們把 API Key 直接寫在handler.js里// ? 危險(xiǎn)Key 泄露風(fēng)險(xiǎn)高無法輪換 const apiKey process.env.DEEPSEEK_API_KEY || sk-xxx; fetch(https://api.deepseek.com/v1/chat/completions, { headers: { Authorization: Bearer ${apiKey} } });這違反了協(xié)議三大原則不可審計(jì)Key 在代碼里git history 里全是密鑰不可隔離所有 skill 共享同一個(gè) Key一個(gè) skill 被攻破全盤淪陷不可策略化無法限制某個(gè) skill 只能調(diào)用/v1/chat/completions不能調(diào)/v1/models。協(xié)議要求所有 credentials 必須通過manifest.json的credentials字段聲明并由 runtime 統(tǒng)一注入。正確寫法{ id: deepseek-chatv1, credentials: [ { id: deepseek-api-key, type: api_key, scope: [https://api.deepseek.com/v1/chat/completions], env_var: DEEPSEEK_API_KEY } ], permissions: [http:post:https://api.deepseek.com/**] }credentials是一個(gè)數(shù)組每個(gè)元素定義一個(gè) credential 的策略idcredential 的唯一標(biāo)識供 handler 代碼引用type目前支持api_key、oauth2、basic_auth未來可擴(kuò)展scope該 credential 允許訪問的 URL 列表glob pattern超出范圍的請求會被 runtime 攔截env_varruntime 從環(huán)境變量讀取的實(shí)際密鑰值。handler 代碼里不再碰密鑰而是通過 runtime 提供的getCredentialAPI 獲取// ? 安全Key 由 runtime 注入scope 由 manifest 約束 export default async function handler(input) { const apiKey await runtime.getCredential(deepseek-api-key); const res await fetch(https://api.deepseek.com/v1/chat/completions, { method: POST, headers: { Authorization: Bearer ${apiKey} }, body: JSON.stringify({ model: deepseek-chat, messages: input.messages }) }); return res.json(); }runtime.getCredential不是簡單地process.env[env_var]。它做了三件事檢查當(dāng)前 skill 的id是否在deepseek-api-key的授權(quán)列表中避免 A skill 濫用 B skill 的 credential檢查本次fetch請求的 URL 是否在scope列表內(nèi)runtime hook 會攔截所有 http 請求記錄 audit logskill: deepseek-chatv1, credential: deepseek-api-key, url: https://api.deepseek.com/v1/chat/completions, timestamp: ...。4.2 API Rate Limiting 的技能級熔斷避免單點(diǎn)故障拖垮全局熱詞里api調(diào)用量、api error: 400 this models maximum context length is 1048576 tokens提醒我們外部 API 是不可靠的。agent-skills協(xié)議要求每個(gè) skill 必須聲明自己的 rate limit 策略而不是依賴全局限流。manifest.json支持rate_limit字段{ id: kimi-summaryv1, rate_limit: { window_ms: 60000, max_requests: 10, burst: 3 } }window_ms時(shí)間窗口毫秒這里是 60 秒max_requests窗口內(nèi)最大請求數(shù)10 次burst突發(fā)容量允許瞬間 3 次之后按漏桶平滑。runtime 為每個(gè) skill 維護(hù)獨(dú)立的 rate limiter 實(shí)例。當(dāng) skill 被高頻調(diào)用時(shí)超出限制的請求會立即返回429 Too Many Requests并附帶Retry-Afterheader。關(guān)鍵是這個(gè)限流是 per-skill 的不會影響其他 skill。比如kimi-summary被打爆了file-read依然絲滑。更進(jìn)一步協(xié)議支持fallback策略{ id: weather-forecastv1, rate_limit: { window_ms: 300000, max_requests: 100 }, fallback: { strategy: cache, ttl_ms: 3600000, stale_while_revalidate: true } }當(dāng) weather API 達(dá)到限流runtime 會自動(dòng)返回緩存的舊數(shù)據(jù)最多 1 小時(shí)同時(shí)后臺異步刷新緩存。用戶感知不到中斷只是數(shù)據(jù)稍微滯后。4.3 API Schema 的技能內(nèi)建校驗(yàn)讓錯(cuò)誤發(fā)生在調(diào)用前熱詞api error: 400 this models maximum context length is 1048576 tokens揭示了一個(gè)痛點(diǎn)LLM API 的錯(cuò)誤往往在 runtime 才暴露但此時(shí) skill 已經(jīng)執(zhí)行了一半。agent-skills協(xié)議把 API Schema 校驗(yàn)前置到 CLI 階段。manifest.json允許定義api_schema{ id: deepseek-chatv1, api_schema: { url: https://api.deepseek.com/v1/chat/completions, method: POST, request_body: { type: object, properties: { model: { const: deepseek-chat }, messages: { type: array, maxItems: 100, items: { type: object, properties: { role: { enum: [user, assistant, system] }, content: { type: string, maxLength: 1048576 } }, required: [role, content] } } }, required: [model, messages] } } }CLI 在validate時(shí)會用這個(gè) schema 校驗(yàn) handler 的輸入是否符合 API 要求。例如如果用戶輸入{messages: [{role: user, content: a.repeat(1048577)}]}CLI 立即報(bào)錯(cuò)“content length 1048577 exceeds max 1048576”如果messages數(shù)組有 101 項(xiàng)CLI 報(bào)錯(cuò)“messages array has 101 items, max is 100”。這比讓 deepseek API 返回400再處理快了至少 300ms且錯(cuò)誤信息更精準(zhǔn)。更重要的是它把 API 的業(yè)務(wù)規(guī)則變成了 skill 的編譯期約束。5. Skills 開發(fā)的避坑清單從 23 個(gè)真實(shí)故障中提煉的硬核經(jīng)驗(yàn)過去 18 個(gè)月我主導(dǎo)了 12 個(gè) agent 項(xiàng)目的 skills 開發(fā)累計(jì)處理了 237 個(gè) production issue。其中 83% 與agent-skills協(xié)議的理解偏差有關(guān)。以下是最痛、最頻、最該寫進(jìn) every team’s onboarding doc 的 7 條經(jīng)驗(yàn)每一條都帶著血淚教訓(xùn)。5.1 Manifest 版本號不是裝飾而是 runtime 的調(diào)度開關(guān)id: file-readv2中的v2不是語義化版本而是 runtime 的精確匹配鍵。我們曾發(fā)布file-readv2.1但 agent 的 skill registry 里只存了file-readv2結(jié)果所有/file-read命令都 fallback 到 v1因?yàn)?runtime 默認(rèn)只認(rèn)major.minor格式v2.1被截?cái)酁関2。解決方案協(xié)議規(guī)定后只能是v{number}或v{number}.{number}不允許v{number}.{number}.{number}。CI 流水線里加了這條檢查if [[ $ID ~ ^[a-z0-9.-]v[0-9]\.[0-9]$ ]]; then echo OK else echo ERROR: version format invalid, use v1.0, not v1.0.1 2 exit 1 fi5.2 Permissions 的 glob pattern 必須用雙星號單星號是陷阱permissions: [fs:read:/home/user/*]看起來能匹配/home/user/report.txt但 runtime 的 glob 引擎minimatch里*只匹配單層目錄**才匹配多層。所以/home/user/subdir/report.txt會被拒絕。正確寫法是/home/user/**。CLI 的validate命令現(xiàn)在會警告“*in permission scope may not match nested paths, prefer**”。5.3 Handler 的異常必須 throw Error不能 return { error: ... }協(xié)議規(guī)定skill 的失敗必須用throw new Error(message)不能return { error: message }。因?yàn)?runtime 要區(qū)分“業(yè)務(wù)錯(cuò)誤”和“系統(tǒng)錯(cuò)誤”。前者如文件不存在會返回404給用戶后者如 network timeout會觸發(fā) retry 邏輯。我們曾用return { error: timeout }結(jié)果 runtime 當(dāng)成成功響應(yīng)LLM 繼續(xù)推理把error字符串當(dāng)內(nèi)容用了。5.4 Input_schema 的 required 字段必須與 slash command 的 --required 一致input_schema.required: [path]意味著/file-read命令必須帶--path參數(shù)。但 CLI 不會自動(dòng)檢查用戶是否輸入了--path它只校驗(yàn)輸入的參數(shù)是否符合 schema。所以如果用戶輸/file-read沒參數(shù)CLI 會傳input {}給 handler然后 handler 因?yàn)閕nput.path是 undefined 而 crash。正確做法CLI 的validate階段增加--strict-required模式強(qiáng)制檢查所有 required 字段是否在命令中出現(xiàn)。5.5 Credentials 的 scope 必須精確到 path不能只寫 domainscope: [https://api.deepseek.com/]是危險(xiǎn)的因?yàn)樗试S skill 調(diào)用https://api.deepseek.com/v1/models列出所有模型而不僅僅是chat/completions。協(xié)議要求 scope 必須包含完整 path[https://api.deepseek.com/v1/chat/completions]。我們的安全審計(jì)工具 now 會掃描所有 manifest報(bào)告 “overly broad credential scope”。5.6 Runtime 的 sandbox 不支持 require.resolve必須用 __dirname在 handler 里寫require.resolve(./config.json)會失敗因?yàn)?sandbox 禁用了require的大部分方法。正確方式是path.join(__dirname, config.json)。CLI 的validate現(xiàn)在會掃描require.resolve調(diào)用并提示“use __dirname instead”。5.7 Skills 目錄結(jié)構(gòu)必須扁平不能嵌套子目錄skills/file-read/v2/handler.js是非法的。協(xié)議規(guī)定 skills 目錄下只能是 skill 名目錄不能有版本子目錄。因?yàn)閕d字段已經(jīng)包含了版本信息runtime 通過id匹配而不是文件路徑。我們曾用嵌套結(jié)構(gòu)結(jié)果 CLI 注冊時(shí)把v2當(dāng)成 skill 名file-read反而找不到。最后分享一個(gè)真實(shí)技巧在handler.js開頭加一行console.debug([SKILL START], new Date().toISOString(), process.pid);并在manifest.json里加debug: true字段。runtime 會捕獲所有console.debug輸出打上 skill id 和 trace id寫入 structured log。當(dāng)線上問題發(fā)生時(shí)你能在日志平臺用skill_id:file-readv2一鍵過濾比 grep 日志快 10 倍。這個(gè)技巧沒寫在任何文檔里但每個(gè) senior engineer 都在用。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
女人一区| 乱子伦一区二区三区国产精品| 俄罗斯一区二区视频在线观看| 91热| 欧美劲爆视频一区二区| 伦理日韩国产久久| 亚洲免费成人在线高清无码视频 | 天天爽天天| 亚洲色情在线影视| 亚洲精品三区在线观看| 99超碰色| 影音先锋日本乱伦| 啊啊啊好湿国产一二| 凹凸视频在线一区二区| 操碰91| 在线色资源| 四虎国产精品永久入口| 九九热精品在线| 久久香蕉国产线看观看亚洲女人 | 夜夜嗨视频| 欧美在线观看综合国产| 色臀aV| 伊人精品久久网站| 日本欧美色| 一级性爱视频免费观看| 中文字幕一区二区三区人妻少妇在线| 九九九九免费视频| 黄骗免费| 青青草五月份天| 婷婷丁香五月天综合东京热| 中文有码第五页| 亚洲国产精品久久AV| 青青草视频久久| www欧美91| 日本色婷婷| 白丝一区| 色悠久久久av| 亚洲欧美中文日韩视频中国语| 91最新综合| 超碰美国| 日本东京热大香蕉a片| 小说区 图片区色 综合区| 综合五月天| 精品国产乱码久久久久久蜜臀| 欧美1区二区三区公司| 红桃视频高潮| 欧美精品一区二区少妇免费A片 | 国产激情在线观看| 中文字幕乱码在线| 超碰在线97国产| 国产日韩精品人妻久久久久色欲网站| 激情久久久| 青青草原伊人网| 久操热| 欧美亚洲特P| 色播五月婷婷| 在线毛片片免费观看| 欧美日韩国产电影| 午夜精品视频777| 婷婷午夜清品久久久久久久性色视频观| 日本 色 导航| 色眯眯av| 五月婷婷综合网| 女色综合| 老鸭窝日丰县女人| 欧美色五月| 国产成人久久精品蜜臀| 男人成人黄色视频在线观看免费下载| 黄片国产精品一区二区| 天天干人妻视频| 婷婷五月成人| 久久精品国产亚洲AV无码做| 亚洲美女精品九九视频| 天操天操夜操夜月操月年年操| 久久超碰com| 日韩AV一区二区三区三州三州| 中文字幕在线免费观看 | 国产操逼视频在线观看| 日本一卡二区在线| 亚洲综合小视频小说在线观看 | 国产精品 视频| 国产精品久久久蜜臀| 日本国产高清色www视频在线| 东北女人| 亚洲 综合 欧美| 亚洲成人性| 欧美熟妇精品黑人巨大91| 96久久科窝| 久久美女国产| 国产h小视频在线观看免费| 九九国产热| 九九色色| 特级毛片特黄久久免费看| 91成人无码| 97视频在线免费播放| 天无日色综合| 五月婷婷激情网| 日本性爱网址| 久久久久久99AV无码免费网站| 婷婷三区| 91九色在线| 亚欧无码线免费观看视频| 骚妻少妇精品性色无码四色A V| 天天色天天干天天射| 欧美影院一区二区三区| 综合自拍| 综合五月天| 18禁久极品美女久久哦哟呀!| 午夜无遮挡男女啪啪视频| 国内外激情在线| 九九拍拍精品视频在线播放| 欧美性爱一区二区三区四区| 中文字幕一区 二 区 三 四 五 区日 日 骚| 香蕉视频欧美一卡二卡| 熟女久久| 青青草中日韩在线| 精品人妻一区二区三区夜夜| 色综合潮| 日日天天久久啊啊aaa| 久久怡红院| 亚洲国产一区二区三区四区国产| 久9九综合在线| 国产日韩中文字幕欧美| 后入式五六区| 国产一区二区久久| 内射卯月麻衣| 91美女在线视频| 久久久不卡区一区二区三区久久久| 国产又操| JULIA一区二区三区在线播放| 亚洲在线a| 黄页网站成人免费| 9精品久久久久| 亚洲色棕合| 嗯~啊~快点 死我视频免费看网站| renqi久久久久久久久久久久| 韩美日操逼| 偷拍精品一区二区三区| 亚洲一区操| 欧美色www亚洲国产阿娇要播| 亚洲人精品久久久| 青青草好吊| 性高潮久久久| 亚洲情色 自拍| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 久久久久ab| 久久伊人网视频一区二区三区| 综合久久六月久久婷婷| www.99色| 免费人成在线观看网站品爱网| 亚洲高清欧美总合| 美女久久久久久久久久久| 天天综合网在线观看| 超碰99re| 影音先锋每日最新资源在线观看| 亚洲无992tv| 一级性爱视频免费在线| 欧美一区二区一级岛国大片| 黄色小视频日本txt| 国产福利精品最新在线| 久久综合99| 女色视频社区| 久久久久久久久久久久黄色| 青青草久久| 超碰97久| 精品国产丝袜一区二区三区乱码| 大香蕉欧美| 久久专区| 天天视频综合在线观看视频| 婷婷色综合| 超碰79人人乐| 亚洲91网站| 久久大香蕉97| 中文操逼字幕| 人妻人人做人人澡人人爽欧美一区| 在线a亚洲视频播放在线| 久久精品国产亚洲AV清纯| 老熟女搡BBBB搡BBBB视频| 欧美黄片欧美黄片xxx| 精品黑人一区二区| 96AV久久久| 物业黑人 AV一区| 激情小说激情视频| 国产女人操逼视频| 欧洲综合视频| 欧美日韩制服| 可以在线观看AV的网站| 欧洲无码一区二区| 久久久九精品| 在线a亚洲视频播放在线| 日韩一级特黄av毛片| 日韩av女优在线免费一区| 婷婷另类小说| 天天cao在线| 国内亚洲精彩视频在线| 欧美乱色| 久久久999国产| 日韩一级久久毛片| 亚洲男人的天堂一区二区| 欧美在线中M| 人人弄人人摸| 五月天丁香| 亚洲一区日韩精品中文字幕| 综合久久欧美| ...日韩成人一区二区三区字幕| 欧洲精品久久| 黄色免费一级在线毛片| 大香蕉520| 日韩 成人 有码| 91黑丝在线| 手机在线看片免费人成视频| 少妇专区一二三四五| 色姑娘综合网| 色色99| 人人妻人人操人人乐| 久操电影网| 精品无码不卡视频| 国产一级久久久| 久久久久久九九九九九| 插欧洲美女欧美精品| 很很很很操| 乱性AV| 丝袜 亚洲 偷拍| 国产日本顶级一区二区三区| 图片区小说区| 999九九九九国产动| 操逼无码操逼| 18精品一区| 日本熟妇人妻一区二区三区| 男人的天堂不卡一区二区| 欧美黑人168页欧美黑人167| 国产精品久久久久久久毛片1| 日本精品成人无码| 亚洲自拍青操视频| 五月丁香拍拍激情综合三级| 人人爽人人精品乱人伦AV| 强奸抽插av| 男女猛烈无遮掩视频免费软件| 91扒丝袜综合在线| 婷婷色婷婷| 中文字幕一区二区三区视频播放| 992视频一区| julia国产在线 | 欧美的性爱网站免费| 乱抡国产91| 国产日韩欧美操逼视频| 亚洲精品人妻在线| 操逼网免费无码视频| 国产精品99久久久www| 五月天婷婷久久| 蜜桃视频精品一区二区| 欧美天天综合站| 亚洲交换| 熟女探花啪啪| 丁香五月久久| 亚洲日韩青青草色月| av操操不卡| 东京热熟女亚洲视频网站| 综合网亚洲1| 久久99干一本高清| 99久久精品欧美国产| 午夜爽爽爽在线观看永久入口姬片| 精品999999| 久久国产在线一区二区| 男人的天堂2010| 妇女视频网站| 日本在线999| 偷拍亚洲| 午夜黄色免费在线观看| 97超碰jingpin| 色天堂综合| 精品国产乱码久久久久久免费| 国产热av| 日韩在线欧美精品一区二区| 激情小说五月天| 亚州乱码中文字幕综合久久久| 91亚洲黑人| 色偷综合| 亚洲成a人片在线观看中文!!!| 日本中文熟女视频| 色五月首页| 午夜福利在线视频1000| 91人妻在线视频| 黑丝自慰喷水网站| 色爱综合网欧美| 日韩本不卡视频在线观看| 国产精品久久久久久久久久梁医生| 国产午夜在线观看| 爱射综合| 91痴汉| 日韩99精品视频综合区| 婷婷五月天色色| 中文字幕在线2| 日本一区二区三区午夜观看| 91女在线观看| 男人的天堂久久久| 成人AV在线电影| 伊人大香蕉在线| 日比av无码| av天堂5| 久久久久久久久久久久久久久久9| 久久同城AV| 日本黄色精品专区网站| 国产超碰在线一区| 日欧操屄| 白 大 人妻 区 在线| 亚洲欧美综合| 淫色网综合| 亚洲欧美第一页| 9/A片 | 偷拍伦理视频| 蜜臀一区二区三区在线 | 夜夜夜久久| 精品视频久久| 久久麻豆一区二区| 人妻色偷色噜| 久久超碰98| a男人的天堂久久一级A毛片| 欧美在线 亚洲| 國產尤物AV尤物在線觀看| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 美腿丝袜高跟网免费视频免费视频| 久久av色| 九九探花视频在线观看| 国产午夜福利合集| 男人天堂2019亚洲| 欧美人妻制服| 欧亚不卡| 久久九九国产精品| 国产精品久久久久婷婷二区次| 欧美18 在线观看| ss久久| 欧美亚洲自拍另类人妻| 伊人aaa| 亚洲蜜乳av| 一本色道久久综合亚洲二区三区| 国产精品亚洲高清在线| 欧美日韩精品青青| 日韩av女优在线免费一区| 亚州高清AV| 精品久久在线区一区| 黄片视频观看| 五毛骚逼极品美女怕怕| 极品丝袜无码| 国产精品久久久久亚洲av| 97精品视频在线| 人妻啊啊人妻啊啊| 欧美日韩国产黄色片| 亚洲色图日韩丝袜制服一区二区五月在线| 国产精品毛片?v一区二区三区| 亚洲日韩精品在线播放| 小视频国产| 91N综合网| 免费农村成人少妇人妻Aa一区二区视频| 校园春色宗合网| 五月色网| 日本激情免费大片| TS人妖另类精品视频系列 | 一本色道久久综合熟妇| 不卡九肏| 97超碰国产精品| 亚洲乱码国产乱码精网站| 天天综合网网欲色| 婷婷五月天久久久| 亚洲欧美综合区自拍另类| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 逼逼逼逼操操操操操操操操操午夜剧场| 2020视频1区2区3区| 91精品人| 9丨久久九九九| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 九九九久久久W精品| 嗯嗯啊啊亚欧精品| 香蕉在线一区二区三区| 成人免费福利网站国产| av在线播放国产一区| 九热久| 欧洲自拍第一页| 日本999精品| 欧美亚涩| 丝袜美腿诱惑亚洲欧美视频在线观看| 欧洲精品一级二级精品综合视频综合 | 日韩三级av片| 黄色一区三区| 中文伊人大香蕉视频| 日本99久久| 在线精品福利免费播放| 一牛影视成人片免费| 澳门黄片一香蕉视频| 亚洲激情视频| 97免费在线观看| 9精品久久久久| 色偷综合| 欧日韩一二三f区| 在线情色电影 91大 | 激情 欧美 亚洲 小说| 大鸡巴久久| 亚洲国产丝袜熟女av| 欧洲亚洲综合| 综合天天。| 青青草玖玖爱| 992视频一区| 激情内射| 亚洲人妻五月丁香婷婷| 97在线看| 国产一区二区免费福利片| 三级精品三级在线观看| 国产精品毛片?v一区二区三区 | 成人久久久| 人人妻人人澡人人爽人人精品浪潮| 天天做天天爱天天高潮| 成人网站 免费观看| 亚洲成A∨人影院在线欢看| 国产野战露脸在线播放| 婷婷激情五月天小说网| 丁香五月婷婷啪啪| 免费的av网| 亚洲日韩东京热一区| 国产精品97超碰| 情色大香蕉| 亚洲久久久| 亚洲色图综合| 美女操逼A A| 欧美日韩操操操| 免费人成?大片在线播放| 五月天婷婷色色| 91 丝袜在线| 97国产精品久久久久 | av天堂电影网| 中国农村熟妇毛片视频| 婷婷激情五月天小说网| 久99久视频精选| 日韩精品9999| 少妇色欲综合网2| 人人搞人人插人人操| 男女性感激情网站| 国产高清在线观看欧美| 国产原创精品| 男人天堂网手机版婷婷| 在线视频亚洲无码| 97综合在线| 免费人人搞97| 亚欧美综合网。| www.91视频网| 精品成人动漫一区二区| 久久露脸国产老熟女| 日韩人妻精品久久久久| 97碰碰日本乱偷人妻中文的| 欧美人妻少妇| 人妻99p| 日本999精品视频| 欧美草草高清日韩视频| 国产高清无码一区三区二区| 丰满人妻一区二区三区免费,| 99色综合| 亚洲美女高潮喷水视频| 日本免费中文字幕在线| 五月色网| 亚洲宗合网| 欧美一区二区三区不卡高清视频| 日本操逼视频不卡直接放| 99热9| 欧美永久激情一区二区| 男人亚洲天堂| 天天干,夜夜爽| 九九九综合精品| 大肉棒导航| 91久久青青草原精品| 夜夜影视四色| 日韩亚洲欧美中文字幕| 国产1769在线| 亚洲91综合| 国产Av超碰| 免费视频在线观看啊啊啊啊啊| 五月婷色| 97欧美色| 日韩av电影成人在线| 在线啊啊啊啊| 东北少妇高潮zzzz| 国内精品不卡无毒99999| 超碰97综合| 天天做日日做天天欢。| 日日摸日日碰| 男女真人网18| 中文字幕日韩情色| HEYZO高无码国产精品227| 操91| 日本日逼视频网| 九色 蝌蚪 熟女自 | 桑老女人九区| 欧美一级黄片免费播放| 少妇大屁屁| 婷婷久久综合久| 99热在线只有精品| 狠狠综合| 国产精品直播在线观看直播| 91国产精品熟女| 国产精品久久久吖| 都市激情人妻一区二区青青操视频| 99re99在线视频| 99精品网| 欧美天天综合网| AV天堂电影网| av绯色| 久久熟女精品不卡一区| 吻戏激情性巴克| 尤物av网站免费在线播放| 岛国小电影| 国产对白刺激视频| 中文字幕精品三级久久久| 看一级黄色视频| 色综91| 青草香蕉网| 亚洲无码AV九九九| 久久久久久久久久9| 激情色色| 一二三四视频中文字幕在线看| 激情久久久| 97久久国产| 伊人精品视频| 99热只有| 精品国产人成在线| 久午视频| 九九热精彩视频| 色婷婷电影网| 日韩中文字幕人妻视频| 日日躁夜夜躁狠狠躁超爽| 综合网欧| 五月丁香狠狠爱| 翔田千里AⅤHD无码| 精品一区二区2| 国产农村妇女精品一二区| 国产九九九九九九九九| 中文字幕av亚洲精品| 台湾佬中文娱乐网久久久久久久久久com | 九久9热| 久久精品国产72国产精品福利| 青苹果影院男人的天堂| 99精品久久| 69少妇一区二区| 日本久久超碰| 免费亚洲国产精品久久一区| 亚洲AV乱码专区国产噜噜亚洲 | 色爱三区| 国产精品露脸在线观看| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 亚洲熟久久| 少妇高潮99p| 一区二区三区精品久久| 操逼逼中文字幕| 操人妻视频| 91黄射| 色偷综合| 亚洲精品欧洲精品| 欧美一二三区四五区| 黄色av片三级三级三级免费看| 天堂亚洲精品久久老牛| 国产自产91区13区| 人妻一区二区三区| 麻豆天美国美国产| www.色婷婷.com| 国产99 中文字幕日韩小视频| 九九九九97| 夜夜高潮夜夜爽高清视频一| 偷拍网站久久男女男| 任你爽视频| 中文字幕亚洲永久精品| 操婢日韩| 国产强奸乱伦xd| 青娱乐老司机视频| 精品传媒在线一区| 亚洲性天堂| 欧美亚洲中文字幕| BBBBB97COM| 亚洲熟妇白浆无码AV| 夜夜免费视频| 啊啊啊 在线| 精品人妻一区二区三区四区| 96国产精品| 欧美亚州综合网图片| 亚洲精品不卡一二三区| 久久成人精品| 暴力av在线| 啊啊啊啊好疼| 夜夜夜夜久久久久| 亚州性色| 欧美福利视频啊啊啊啊| 久操凹凸视频| 欧洲一级性爱视频在线观看| 国产福利精品最新在线| 亚欧Av| 久久草大香蕉| 蜜臀久久99精品久久久老,,| 91女人的网站| 欧美大香蕉卡久久| 一区二区 日韩 欧美 国产 传媒| 东京热免费视频| 99免费在线视频| 富二代亚洲精品99| 久久99精品国产| 精品人妻一区二区三区蜜桃视频| 亚洲城人男人的天堂| 大吊色| 啊啊啊啊好大好硬啊啊啊啊啊| 91蜜桃婷婷狠狠久久综合9色| 操逼视频国产无套| 亚洲少妇综合在线播放| 久久五月综合| 躁躁日曰躁2020| 日日干夜夜欢| 精品少妇高潮久久| 国产乱子伦一区二区三区在线观看| 内射黑丝袜| 床戏久久久av一区二区麻豆| 一中国女人毛片水真多| 日本操逼视频导航| 欧美久热| 后入式视频国产自| 91狠狠综| 国产极品一区二区三区三州| 精品.99999| 91成人久久| 伊人天天久久动态图| 草草网站影院白丝内射| 一区久久久二区| 青青草好吊| 欧美一二三级精品在线| 五月丁香网站| 日本高清加勒比| 国产精品不卡高清在线观看| 国产日韩欧美三级片| 四虎AV在线观看| 日本欧美m v精品网站加| 少妇久久久久久| 亚洲欧洲网站免费观看| 欧美熟妇操操视频| 翔田千里AV无码秘 三区| 天天天天天天天天天天干美女| 97精品熟女少妇一区| 成人日韩欧美| 综合色久欲| 26uuu欧美日韩| 久久理论字幕视频| 另类欧美色| 在线观看国产黄色| 麻豆人妻偷人精品无码视频| 51国产午夜精品视频| 五月天精品| 中文字幕欧美日本乱码一线二线| 日韩特一级久久| 在线岛| 大香蕉在线视频15| 亚洲欧美另类图片| 五月天色图| 在线啊啊啊| 在线观看黄色电话| 亚洲综合 欧美| 亚洲熟女性高潮久久久| 婷婷探花久久精品一区| 丝袜综合色图| 欧美aa一级片| 国产又粗又长又爽又色| 久久av色| 老司机深夜18禁污污网站| 精品久久久中文字幕不| 国产精品毛片| 高清国产av无码| 人妻 欧美亚洲| 欧美日韩岛国大片在线观看| 91 亚欧| 日韩av乱伦| julia国产在线| 夜夜嗨一区二区| 伊人久久AV诱惑悠悠| 女人的久久久| 2024年最新色情网站在线观看| 日韩图色| www.操| 国产一区二区在线播放量| 91久久久视| 国产成人 综合亚洲 天堂| 久久男人网| 亚欧无码在线| 在线洲亚线| 嗯嗯啊啊视频在线看| 男女啪啪啪18禁网站| 秋霞午夜视频一区二区| 欧美一区二区三区另类精品| 99精品综合久久久久五月天| 婷婷五月激情综合| 精品人妻一区二区免费蜜桃视频| 加勒比在线视频一区二区三区| 91N欧美| 亚洲天堂男人天堂网| 区一在线观看| AV网站高清无码在线观看| 国产丁香精品露脸视频| 天天日B狠狠操| 亚洲欧洲中文日韩女优乱码| 九九九九免费视频| 天天日夜夜| 综合伊人激情| 日本在线15p| 好淫网一二三视区| 国产欧美岛国精品一区| 久久东京热久久| 日本东京热大香蕉a片| 黄色高清无码无码破解免费暗网| 久久一本大香蕉| 99热精品在线观看| 中文字幕精品一区欧美| 男女啊啊啊啊啊| 密臀在线免费观看| 亚洲无线码一区国产欧美国| 12一15性XXXX粉嫩国产| 精品欧美日韩在线观看| sss视频华人在线| 婷婷六月色开| 久久黄色视频一区二区三区| 懂色Av一区二区三区| 中文久久96| 老鸭窝亚洲毛片| 日韩不卡av一二三| 国产精品麻豆免费视频| 97免费视频在线| 人妻精品4K4K4K4K4| 亚洲成人综合在线| 无套内射人妻在线播放| 96一区二区三区| 无码视频一区二区| 日韩人妻精品久久久久| 最新中文字幕精品在线| 国产精品人妻一区二区| 清纯唯美第一页| 伊人四虎综合| 色天堂综合| 91九九九馒头| 校园春色综合| www.久久| 国产亚洲综合欧美一区| blacked精品一区国产| 午夜小电影在线插入淫高潮| 97精品网站| 九九九九免费高| 中 文字幕一区二区三四 五 区日 日 骚 | 75大香蕉| 国产剧情一区在线观看| 亚洲国产成人精品999| 男人的午夜天堂| 98超碰欧美| 亚洲欧美激情小说| 精品无码一区二区人妻久久蜜桃 | 龙兴卡官方查询| 欧美日韩精品久久| 青青草白白色| 成人精品视频一区二区| 青青草原狼av| 天堂九九九九九九九九九| 三级三级三级日本99| 色婷婷丁香| 国模精品娜娜一二三区| 91|九色|国产熟女| 精品性爱无码在线播放| 丁香五月综合| 日韩激情啪啪| 最近的最新的中文字幕视频| 强奸乱伦AV网站| 国产亚洲中文不卡二区| 成人三一级一片aaa| 色情乱伦AV| 伊人久久大香大香线蕉中文| 熟女乱伦二区| 大香交伊人网| 成人熟女视频一区二区三区| 欧美性爱一区| 亚洲国产剧情少妇激情| 亚州综合AⅤ| 乱色老一区二区三区的观看方式| 欧美日韩国产传媒在线精品| 婷婷五月天小说| 免费看污网站| 亚洲爱爱视频一区二区| 综合熟妇一区二区三区| 超碰色美女| 综合久久97| 免费?级毛片无码?∨蜜芽试看| 欧美熟妇精品黑人巨大91| 上特色A在线| 99视频这有这里有精品| 国产理论视频在线播放| 色香色欲天天综合网天天来吧| 成人无码在线超碰网| 中国一区二区亚洲人妻| 五月综合激情| 9精品在线| 夜夜国自区| 夜夜欧美| 91丨九色丨国产丨人妻在线| 久久老子无码午夜伦不卡| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 韩国三级理论在线| 天天影视网综合少妇| 国产又大又粗又长视频在线| 麻豆区久久久久亚| 少妇综合网| 黄色香蕉视频网站一区| 在线v中文字幕一区二区三区| 国产成人精品必看 | 天美av在线| 国产高清自拍视频| 思思热免费视频观看| 久久人妻97久久久久久久| 国产风韵犹存熟妇三区| 日韩日本欧美在线观看| 国产免a费看黄片在线| 99热99在线| 狠狠搞 亚洲91| 欧美草草高清日韩视频| 亚州免费啪啪视频| 久久人人妻| 玖玖大干人妻| 久久直播国产| 超碰色中文| 亚洲偷拍欧美激情| 国产二区三区免费视频| 综合操逼| 蜜臀99999| 少妇色| 99热网站| 99re3这里只有精品| 亚洲成A∨人影院在线欢看| 国产精品免费视频人成| 99国产精品久久久久久久成人热| 偷拍 亚洲| 人妻人久久精品中文字幕| 手机看片日韩人妻| 日韩精品资源专区二区| 校园春色综合| 人人摸.人人色| 夜夜嗨TV| 韩国轻伦国内自拍一区| 日韩乱伦影音先锋| 亚洲丝袜少妇在线| 午夜福利久久久噜久噜久久综合| 久久中文字幕女同性恋一区| 亚洲综合中文字幕有码 | 国产熟女精品一区二区| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 极品五月天噜噜| 亚洲国产精品9999在线观看| 安微少妇操BBB| 亚殴在线| 亚洲欧洲综合av在线| 91美女片在线| 日日做夜狠狠爱欧美黑人| 超碰人人妻| 亚洲无码太久| 大香蕉淫人| 麻豆精品三区视频| 天天透伊人| 国产精品免费视频人成| 日韩熟女三十乱伦| 久九九九九九九九热| 免费超碰97久久| 91亚州欧美| 啊啊啊啊啊啊啊国| 国产成人无码久久精品| 黄色电影观看久久9| 国产家庭乱伦表演| 欧美人妻少妇| 特污精品女优骚货黄色视频在线免费观看| 青青操青娱乐| 亚洲午夜AV| 国产伦乱91| 亚洲砖码砖专无区2023| 乱伦图av| 欧美极品性爱天天射| 成人性爱AV在线免费观看| 欧美精品宗合| 国产suv一区二区三区6| 亚欧操逼片在线观看| 久久↗↗| 人妻天天爽夜夜爽2| 天天综合网~91综合网| 伦理弟一页| 熟女AV一区| 精品9区| 伊人久久久日韩一区| 亚洲av热热色| 午夜精品久久久99| 99re在线观看| 99抽插| 天天看特黄的免费网站| 九九九九日本| 天美传媒在线一区| 很很很很操| 国产一| 免费精品AB| 久久婷婷苹果| 猛猛干| 亚洲图片欧美| 婷婷伊人五月| 免费少妇一区二区| 丰满岳乱妇一区二区三区| 亚洲成人av电影在线| 日本Xx性爱| 亚洲成av人片色午夜乱码| 看一级黄色视频| 久久乐| 青娱乐 成人娱乐在线| 亚洲精品欧美专业| 欧美午夜视频| 欧美特黄视频网站| 东京热男人天堂| 人人看黄色视频| 国产成人精品必看| 日韩乱伦视频| 污啪啪啪视频| 亚洲欧美天堂在线| 国产精品久久久999| 羞答答AV中文字| 天天亚洲| 黄色人人| 久热九九| 亚洲、日韩、综合、另类| 日本东京热大香蕉a片| 亚洲在钱| 97香蕉网| 国产东北女人在线视频| 日本久久99| 天天日日日射| 午夜无码精品免费看性色| 人妻熟女一区二区三区视频| 五月天人妻综合| 福利五区| 久久精品国产97欧美精品亚洲 | 青青青国产手线观看视频2| 日韩91网| 婷婷10月天青娱乐| 亚洲中字慕不卡| 97资源站国产精品| 色淫网站优优视频| 欧美男人的天堂| 丰满人妻-区二区三区免费看 | 岛国不卡超碰护士AV在线播放| 操逼网站视频漫画国产| 尤物一级在线免费观看| 久久性爱网站| 欧美成人黄网色网站| 深田咏美亚洲精品福利社| 影音先锋国产精品| 长长久久88视频| 99久久久无码| 热久久国产精品视频大陆精品| 五月天激情网图片| 长长久久88视频| 99.色网| 国产精品久久久777| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 这里只有精品视频在线观看麻豆| 精品人妻一区二区三区四区| 69一区二区三区 | 丰满人妻aA一区二区三区| 精品国模无码| 亚洲中文一区二区三区| 亚洲精品成人激情在线| 人妻AV 中文字幕的| 九九九久千久久激情蜜桃在线看| 色婷婷激情| 殴美牲| 97亚洲精品超碰| 九九AV| 精品高清一区二区三区三州| 无套内射性感少妇视频| 91人人看| Julia Annxxxxx| 97超碰色情| 国产隔壁老王影院在线| 激情五月天丁香社区| 99国内精品| 亚洲系列欧美| 性夜影院爽黄A爽免费动漫| www..com操老师| 亚洲少妇喷视频看| 好屌色综合| 欧美不在线| 少妇高潮特黄A片| 天天欧美色| 狠狠干妹子| 人人操人人干xxx| 5月婷婷6月六月丁香| 精品久久久中文字幕不| 久久激情视频| 日本狂喷奶水在线播放212| 色区久久| 91影视亚洲| 69视频入口| 色婷婷丁香五月| 欧美激情色婷婷花野真衣一区二区| 安徽熟妇视频| 十八禁黄色| 国产精品制服丝袜清纯唯美| 天天看少妇| 欧美少妇高潮视频| 成人精品一区二区91毛片不卡| 国产性爱在线视频一区二区| 美女刺激久久国产欧美| 欧美在线第五页| 成人无码在线超碰网| 丁香五月天堂网| 国产精品乱码久久久、久久| 亚洲精品自拍| 色婷婷视频| 97色涩| 91亚洲电影| 91丨九色丨国产打屁股| 久久AV色| 亚洲图片色图欧美另类| 口爆综合网| 亚洲少妇视频| 色综合尤物| 97视频900| 99re免费视频精品全部| 国产免费大片| 青青草一区二区高清无码视频 | 日本有码影片下载| 高清不卡 中文 人妻| 在线观看成人性爱免费小视频| 日日爽熟女| 99色视频| 日韩熟女无码| 超碰一区二区| 夜夜操狠狠操| 亚洲精品久久久久毛片A片拉屎| 五月天色色网站| 久久久久9999| 乱老熟女一区二区三区| 久久这里只精品99re66图| 亚洲欧美不卡线| 九九九久千久久激情蜜桃在线看| 亚洲综合网91| 亚洲瓯美色图| 综合影视国产无码| 天天网综合| 欧美人妻中出| 91呆哥人妻| 久久久久久亚洲Av无码精| 熟妇国产免费一区| 日本福利社| 夜夜操美女| 日韩欧美三级| 久久成年精品| 亚洲国产精品成人无码久久久| 色诱中文字幕| 精品亚洲国产成人AV制服丝袜| 欧美躁死她一区二区| 日韩 国产 欧美自拍| 啊嗯嗯啊好大好爽| 欧美激情综合色综合啪啪五月| 国产精品日日摸天天碰| 色女综合| 欧亚性爱视频免费看| 大香蕉欧美| 久久久性少妇| 91欧美高清| 黄色高清无码无码破解免费暗网| 一摸二插三插| 97久久精品国产| 色狠狠色| 中文字幕交换人妻| 亚洲AV麻豆Aⅴ无码电影一| 9999九九九久久久| 中文字幕一区二区三区蜜臀| 久久五月天婷婷| 日韩熟女操逼| 97亚洲中文| 久艹视频在线| 91少妇香蕉久久精品| 色欧美天天| 欧美成人黄网色网站| 色翁荡息又大又硬又粗又爽| 欧美乱欲| 天天射影院| 久久久久99999| 级品肉射| 俺去俺来也在线www| 欧美亚洲激情| 狠狠爱夜夜干| 国产女上位好爽在线| 欧美日韩另类在线播放| 亚洲图片小说欧洲| 日本 免费 一区二区三区 久久香蕉| 97在线播放 | 牛牛久久国产精品视频一二三| 超碰97久久| 欧亚日韩综合精品国产| 毛片电影一区二区三区| 家庭乱伦麻豆| 91插B网站| 色偷偷色偷偷欧美日韩| 午夜色婷婷| 亚洲国产ⅴ高清在线观看| 啊啊啊爽爽| 黑人粗大V S日韩女优视频| 亚洲中文字幕网| 日本三级一区二区 在线| 欲香欲色| 国产精品久久久久久久免牛肉蒲团 | 四虎影视精品| 人妻黑丝袜电影| 啊a一区在线| 五月婷婷综合激情| 国产欧美日韩一区二区三区| 欧美综合天天| 欧美综合1性辶| 91无摭挡| 午夜性| www.夜夜| 国产精品久久久久无码AV会牛| 人妻另类| 久久99999| 99爱久久视频频| 亚洲综合网电影91| 欧美午夜视频精品久久| 亚洲熟女精品| 操操操五月天婷婷丁香影院| 青青草大香蕉视频| 久久久久国产| 啊啊啊好大好湿| 韩国女主播青草在线| 亚洲人在线| 91熟女熟妇视频网站| 丁香六月婷婷综合| 色综合色综合网| 人人扣人人操| 黄色电影观看久久9| 日韩性爱人人爱人人操| 精品国产一区二区三区在线播出| 91久热这里只有精品| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 在线日韩精品一区二区三区| 九九九不卡| 中文字幕诱惑制服人妻丝袜美丝袜美| 欧美国产日韩高清在线| 91爆操视频| 91日产桃蜜| 国产一区二区在线看| 亚洲天堂少妇| 精品无av| 人妻天天爽夜夜爽2| 91 国产丝袜在线播放-百度| 老女人爆菊| 久久精品小视频| 精品人妻1237| 欧美少妇第一页| 天天天天天天天天综合| 久久97资源 网| 久久超碰98| 99热99re6国产在线播放| 久久久久九九九九九|