色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合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
返回資訊列表
日韩熟女三十乱伦| 精品人妻1237| 国产深夜福利| 婷婷色导航| 亚洲九九爱| 亚洲激情综合另类男同| 97精品中文字幕| 国产亚洲福利第一页丝袜| 大香蕉人妻| 欧美96交| 婷婷五月在线视频| 91白虎| 日韩国产成人自拍视频| 亚洲有码第一页| 国产乱伦亚洲| 60秒免费小视频| 国产亚洲深夜激情| 高潮综合网| 国产精品蜜臀久久久久无码AV| 特级大荫道BBwBBwBBW| 97超碰护士| 欧美日不卡| 精品无码久久久久久久杏吧| 在线 亚洲 网爆 自拍| 黄片www视频免费| 九九玖玖精品| 中文精品一区二去| 五月天人妻综合| 无码自拍SM| 青青草在线视频播放器| 久久久不能久久久久| 9久在线视频只有精品| 中文字幕天天天天天| 丰满人妻被猛烈进入中| 精品免费国产二区三区| 色官网在线| 国产91 丝袜在线播放 | 午夜电影在线观看无码专区| 色噜噜人妻av中文字幕| 一本道综合色图| 97色色色| 久草新免费| 日韩无码黄色片| 欧美96在线|欧| 九九久久九九久久| 日小BB小视频| 91精品国产长腿丝袜美女| 无码少妇精品一区二区60岁老人| 97视频在线播放| wwe 天天干.com| 欧美一区二区福利在线| 97欧美日韩精品| 97免费在线视频在线观看| 亚洲成人性爱网站在线播放| 国内毛片四区| 污污污8888| 久久精品国产免费观看99| 9久久精品| 青青草视频久久久久| 日本一级婬片试看三分钟| 久久后入制服| 你草精品在线视频| 91啪啪视频| 另类亚洲一区二区三区| 加勒比av网| 丰满翘臀美女影院视频| 国产做?爰片久久毛片?片美国| 亚洲97超碰| 夜夜 中文视频rt| 激情五月婷| 国产传媒午夜理伦精品| 91久久国产精品| 青青操在线亚洲视频观看欧美在线| 乱伦av.com| JIZZJIZZ亚洲女人被躁| 黑白配性爱AV成| 精品国产乱码久久久兰草影视| 另类小说五月天| 无码精品久久| 东北毛片| 久久久999国产精品| 日韩人妻操B| 精品毛片久久久精品毛片| 亚洲精品一二牛牛| 97天天操| 欧美伦乱| 日韩欧美偷拍美女视频| 天天综合网久久ww| 男人的天堂2010| 日韩无码黄色片| 亚洲天堂一区| 精品无吗m| 亚洲欧美国产精品久久久久久久| 亚洲视频二区 | 18岁禁 茉莉成人久久| 久久久18| 欧美成人一区二区三区在线播放| 操B视频日韩无码| 亚洲男人的天堂va亚洲男人社| 偷拍综合亚洲| 91在线丝袜视频| 欧美 亚洲 制服 精品| 国产不卡免费在线视频| 尤物视频一区| 尤物黄色在线观看网站| 日韩传媒在线| 人妻在线臀日韩| 又黄又爽在线观看视频 | 久热超碰| 综合啪啪| 欧苏综合色综合| 91free福利| 日本国产欧美高清在线| 午夜福利免费福利视频| 国产区性爱在线视频秋霞豆| 99在线无码精品秘 入口黑人| 超碰在线人人射| 超碰九7| 91性感在线| 干B网| 大干人妻| 日天天九九天堂666| 97中文综合| 久久久免费视频18| 亚洲欧美97√| 日日夜夜精品视频| 女性喷水高潮在线观看| 欧美日本成人一区二区| 国产欧美在线观看免费观看| 无遮挡男女激烈动态图| 亚洲精品免费中文字幕| 中国一级操逼视频| 性爱av在线免费观看| 六十路日本| 日韩午夜啪啪视频| 超碰av在线| 69超碰综合| 91人人看| 91美女在线视频| 超碰人妻中文在线| 美国aaaaa一级黄片| 黄色AAAAA欧美| 美女午夜福利免费视频| 无码抄逼网| 欧美色色色| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 留下AⅤ黄色片| 爆操无码| 密臀视频一区二区三区| 伦理第一页| 婷婷中文字幕| 欧美日韩在线视频网站| 欧美日韩人人精品| 亚洲人妻在线精品| 国产丝袜美女诱惑| 亚洲一级黄色毛片| 日本一区二区成人在线| 亚洲激情深爱文学小说网站| 国产久久久久久久久一区二区| 91n处女在线观看| 日韩AV电影网站| 国产在线视频午夜精华在| 亚洲熟妇图片| 成人精品一区二区91毛片不卡| 麻豆久久久久久久久丝袜 | 乳欲人妻办公室奶水| 九99久久| 99热97| ,成人免费啪啪视频| 色男人色天堂东京热| 91挑色欧美| 熟女乱伦二区| 午夜福利av电影在线| 高清不卡 中文 人妻| 人妻少妇精品一区二区三区| 欧美成人AⅤ大片在线观看| 天天夜夜rb| 麻豆性爱视频在线播放| 激情久久av一区av二区av| 亚洲成人激情小说视频| 上床啊啊啊| 大香蕉琪琪日本女优不卡| 九九色色| 波多野结衣被操50分钟免费视频| 天天伊人| 综合色区偷拍| 亚洲综人网| 综合久草| 91超碰人人| 久热久| 亚洲AV操| 欧美劲爆视频一区二区| 欧美大香蕉专区网| 天天谢天天干| 成人小说视频在线精品欧美| 91精品无码久久久久久久| 日日AAvv| 97久久国产亚洲精品超碰热| 久久只有精品一区二区三区| 久久久久9久久久久| 超碰在线99| 国产色呦呦| 亚洲制服aⅴ中文字幕| 亚洲情色欧美| 成人一级性爱| 粉嫩粉嫩一区性色AV片| 国产精品高朝久久久久久久| 99国内熟女露脸视频| 一区麻豆 高清中文字幕| 黄总AV色图| 极品白嫩福利在线| 国产九九久久久精品| 男人下部插入女人下部 | 久久国产精品熟女人妻| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 日韩激情视频| 在线播放中文字幕| 香蕉视频欧美一卡二卡| av网站在线观看了| 色丁香久久| 加勒比大香蕉视频在线| 精品人人| 久久九操在线观看| 999久久久久久久久| 97超碰9| 乱伦日本中文自拍| 国产三级多多影院2022国产AA一级毛片无码 | 操逼天美3区| 国产AV高清AV无码| 人妻无码后入| 欧洲色综合| 无码高清操逼| 99热这里只有精品9| 色婷婷五月天| SUV一区二区在线看| 日韩欧美女求操每天更新| 精品国产AV一区天美传媒| 91老司机在线| 99热99在线| 超碰人妻中文在线| 欧亚无码视频| 九九伊人网| 久久透逼视频| 激情av| 久久国产精品熟女人妻| 91精品老女人| 久操热| 丰满精品人妻少妇久久字幕| 亚洲无码一区成人免费午夜| 亚洲一区二区久久久久| 怡红院视频在线| 麻豆色99999| 人人操我人人干| 嗯嗯啊操我| wuyechaopeng| 很黄很色的视频在线观看| 麻豆60秒| 亚洲色图图片| 色婷婷影视| 肉丝中文无码高清| 成人久久精品| 精品176精品2| 熟女乱3伦999| 97国产色综合| 91欧美丝袜| 成人aⅴ一区二区三区| 国产伊人自拍| 富女玩鸭子一级毛片| 欧美综合自拍成人自拍第二十页| 国产九九九九九九| 欧美一区二区三区日韩| 色哟哟av| 青草视频在线看看看看看看看看看| 久久久偷拍| 日韩精品国产精品五码一区二区| 亚洲资源站| 欧美综色欧| 激情看片网站| 亚洲中文字幕在现观看| 99re热| 国内毛片国产专区二| 九七人妻在线| 蜜臀av一区二区三区免费观看| 国产一区二区精品久久久不卡蜜臀 | 翔田千里A片一区二区| 在线另类| 久久午夜鲁丝片| 啊啊啊快操我视频| 蜜乳AV一区二区三区四| 97综合激情| 高清不卡国产| 色噜噜综合网| 五月丁香综合网| 99久久9| 色综合中文字幕不卡| 亚洲最大的综合性av| 加勒比综合| 在线色资源| 激情终合网| 一区二区你上我| 日韩av不卡在线观看| 亚洲一区二区三区不卡国产欧美| 怡春院久久| 啊啊啊在线看| 亚洲欧美在线综合| 男人的天堂久久狠| 亚洲999综合| 欧美性,色九九| 亚洲91极品| AV九九| 好舒服视频| 亚州综合色图| 嗯嗯啊好大| 97碰碰日本乱偷人妻中文的| 久久成年精品| 亚洲黄a三级三级三级看三级| 色好看av| 狠狠夜色午夜久久综合在线| 日欧毛片久久| 久久久国产精品亚洲精品| 青青草大香蕉在线视频| 欧美变态激情网| 日韩美女,国产传媒,视频一区| 操操操操操操| 91在线丝袜| 熟人人妻少妇精品久久| 白丝AV| ,成人免费啪啪视频| 天天激情综合站| 欧美一级特黄淫片在线观看| 思思热免费视频观看| 欧洲精品一级二级精品综合视频综合| 秋霞Av理论一级在线| 人妻日日夜夜精品| 日本三级大片| 欧美成va视频网站| 岛国在线一区二区三区| 黄色操人| av无线看| 中文字幕,人妻,日韩| 麻豆91熟妇人妻中文字幕茄子| 老女人碰碰在线碰碰视频| 玖玖综合色| 99re3这里只有精品| 亚洲五月天激情| 国产精品一区二区 尿失禁| 久久黄色性爱视频| 中国女人内射6XXXXX| 国产高清免费不卡av| 亚洲日韩青青草色月| 九月婷婷综合| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 亚州男人的天堂| 美女主播色欲91抠b在线播放| 嗯嗯嗯嗯啊啊啊好紧好大| 校园春色之综合网| 中日韩久久人妻一区二区| 98一区二区精品| 亚洲精品丝袜-不卡成人免费……| 99最新日韩偷拍视频| 青青草色AV| 欧美亚洲| 大黄片做爱的大的| 97色婷| 插入综合网| 密臀AV在线| 亚洲天天天| yiqicaoav| 成人 日本A片无码8888| 涩五月婷婷| 丝袜内射| 日本免费二区三区| 青娱乐欧美激情一区二区| www.色五月| 色第一页| 综合色区偷拍| 91c色| 久久久久久久 九九九九九九九| 青青操在线亚洲视频观看欧美在线| 在线观看午夜婷婷久久久久清性观看| 992视频一区| 八戒无码国产午夜福利| 日韩精品一二三四| 天天草AV| 成人久久久| 在线精品福利免费播放| 天天看特黄的免费网站| 亚洲欧美在线丝袜| 99久久久久久久久| 1204av韩国| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 四虎影视精品| 国产偷拍自拍在线视频| 精品无码一二三四区| 国语av狠狠色丁香婷婷综合激情| 曰韩av中文字幕专区| 久久伦理视频久久大香蕉视频| 一起草视频在线| 91日本在线观看| 尤物视频偷拍免费| 岛国在线一区二区三区| 精品无码人妻一区二区免费蜜桃| 午夜a成v人电影| 内射中出日韩在线观看视频| 欧美在线电影| 婷婷丁香五月综合| 麻豆天美在线| 大香蕉碰碰| 天天干18禁| 狠狠操天天干| 日韩三级伊人| 影音综合网| 久久亚洲中文字幕视频| 99自拍B亚洲| 九九九精品成人免费视频小说| 一个人在线看的黄色电影网站| 99re热有精品视频国产| 亚洲久久天堂| 免费视频a级毛片免费视频| 青青伊人久久| 玖玖资源综合在线视频| 亚洲人精品久久久| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 欧美瑟综合| 天天干1区2区在线| 国产亚洲99久久精品| 就去色综合| 青娱乐亚洲热| 国产美女自拍AV| 日韩精品影视| 九久久九精品视频| 中国亚洲呦女专区| 狠狠操,使劲操| 淫乱图区 | 精品日韩中文在线| 青青草国产欧美非洲黑人| 97色色色综合网站| 久久五月天婷婷丁香中文字幕| 国产人人干| 日韩伦理视频| 久久人妻视频网| 日本一级婬片试看三分钟| 亚洲熟女一区二区| 人妻人人澡人人爽人人| 999久久久精品国产| 亚洲图片色图欧美另类| 国产suv一区二区三区6| 97视频620| 日本大片日本一区二区免费高清| 九九视频黄色片| 97伊人超碰| 欧美91精彩| 啊啊啊好舒服好爽啊啊啊视频| 人人摸人人叼| 国产精品露脸在线观看| 久久少妇| 亚洲图片 欧美电影| 亚洲精品国产精品乱码不卡| 亚殴在线| 欧洲熟妇xxXx欧美老妇裸体| 超碰色男人操熟女| 99热| 东北女人高潮视频| 蜜臀99久久精品| 疯操AV| 精品久久久一本一道| q2午夜理论片夜色av| 久久久熟妇熟女国产| 18一区二区三区| 116美女午夜| 99久久com免费视频′| 蜜臀av一区二区三区免费观看| 日韩一级片在线看| 狠狠干综合| 天天爽爽爽爽| 香蕉99秘 精品一区丁香| 欧美拳交在线播放| 日本三级人妻a人妻一在线| 一区二区激情国产熟女| 性站| 免费网色网站| 亚洲成人在线乱码色午夜| 2017,超碰| 国产精品视频在线观看| 色欧美综合| 青青免费在线视频一区| 国产探花精品在线| 五月丁香色色网| 91粉芽高清在线一区二区| 口爆综合网| 婷婷情色综合网| 97精品久久久久中文字幕| 天欧美在线| 麻豆91熟妇人妻中文字幕茄子| 2024黄色视频| 久久久久亚洲?V片无码V| 乱老女人一区二区视频| 久视频在线观看| 人妻喷水| 91色碰| 97超碰超欧美。| 伊人久久AV诱惑悠悠| 人人看欧美性爱| 800zy一区二区| 美女91av| 国产一区免费午夜视频| 超踫中文字幕| 人妻熟女一区二区在线视频| 久久精品欧美一区二区三区不卡| 操逼网站地址| 日本超碰97日韩精品人妻| 青青五月天| 亚洲暴力强奸AV| 高凊专区人人操| 亚欧美色图| 日韩探花精品在线视频| 精品人人| 2019天天干| 欧美综合站| 久久精品电影在线| hd成人一区二区在线| 97人人中文网| 精品无码一区二区三区色欲| 丁香五月激情啪啪| 亚洲色天堂九9| 一个国产在线综合网站| 欧美熟妇乱码在线一区| 91夜色| 天天综合91在线| 久久久日本电影| 五月丁香亭亭| 亚洲97综| 天天爽夜夜欢视| 国产第12页| 精品美女少妇一区二区三区| 国产一进一出视频网站| 日韩 女同 综合| Blackedraw视频一区二区| 制服诱惑亚洲一区二区三区在线观看| 国产日韩色综合| 欧洲精品人妻| 在线观看国产黄色| 国产搭汕a级片| 日韩在线76| 国产精品久久久无码aV去| 人妻出轨一区二区三区| ji熟女.com| 操曰本熟女| 亚洲AV永久无码一区仙野| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 日日操免费视频| 狠狠躁日日躁夜夜躁A| www.色操逼| 中出欧美| 中文字幕诱惑制服人妻丝袜美丝袜美| 美女操逼福利视频| 亚洲久久久久| av草草在线电影| 男人的天堂啪啪啪啪啪蜜桃不卡| 日韩AV无码网站| 超碰这里有精品| 日韩有码一区三区| 色综合天天| 天美传媒婬乱在| 另类av天堂| 伊人色综合网| 特级毛片特黄久久免费看| 欧美日韩资源| 亚洲中文字幕av| 日本蜜桃| 亚洲精品久久久久久久久豆丁网| 91人妻素女| 国产无码精品无码| 午夜男人的天堂| 九九九只有精品| 有码色中文字幕在线观看| 欧美黄片视频在线观看免费 | 国产成人无码久久精品| 国产毛片久久久久久久| 极品白嫩美少妇在地板上位骑射淫水泛滥| 精品少妇人妻| 亚洲日韩乱码中文无码蜜桃臀网站| 大香蕉碰碰| 九九内射在线| 天天干美少妇一区| 色播丁香| 区日韩亚洲乱码av电影| 婷婷爱五月| 激情四射五月天| 91精品伊人久久久大香线蕉91| 欧美一区二区福利在线| 91AV入口| 成人一道本免费视频| 婷婷伊人五月| 92性色国产午夜福利在线661| 夜色91| 69视频入口| 四虎精品永久在线播放| 夜草网站| 福利社区午夜一区二区| 操B视频日韩无码| 亚洲国产精品无码AV久久久| 一级性爱视频免费在线| AV麻豆免费一区| 熟女乱伦A| 日日碰狠狠添天天爽超| 高清无码 国产精品| 97色97好| 天天日美女的B| 九九九九九九综合| 国产精品99999| 日韩精品中文字幕人妻| 一区二区影院| 欧美嗯啊……在线观看视频免费| 射欧美综合| 国产AV线| 91操熟女| 成人性爱AV在线免费观看| 中文字幕交换人妻| 涩五月婷婷| 极品白嫩福利在线| 丝袜视频网国产90| 粉嫩av在线| 玖玖玖玖精品国产剧情| 欧美日韩免费专区在线| 人妻 欧美亚洲| 看全色黄大色大片免费视频| 噜噜噜在线视频| 色五月婷婷色| 精产国品一区二三产品| 99热伊人| 国产免费黄色一级大片| 天天艹天天日| 色九月综合| 91成人18| 大香蕉线| 亚洲成熟国产精品美女| 蜜臀久久99精品久久久久久久久| 在线 亚洲 网爆 自拍| 蜜臀99久久精品| 999精品国产高清一区二区| 国产综合操逼高清| 熟女高潮精品一区二区| 一级成人性爱| 91撸色网 玖玖网 欧美| 狼人狠干| 色色无码| 97中文热色| 色色色色日本| 1区2区3区中文字幕日韩| 亚洲美女精品九九视频| 操逼网免费无码视频| 五月婷婷hd| 超碰免费人妻人人| 台湾佬中文娱乐自偷自拍| 欧美人妻熟女在线| 色九九综合| 欧美日韩小说| 中文字幕日韩国产传媒欧美精品| 98久久超碰| 黄色小视频日本txt| 999熟女精品| 午夜福利免费福利视频| 日韩精品国模| 日韩性爱再线视频| 男女一级A片大黄,一进一出| 制服诱惑亚洲一区二区三区在线观看| 久久三| 91女日逼| av天天在线观看| WWW.操逼.COM| 国产五码丝袜屁眼| 国产精品久久久久中文字幕| 熟妇无码视频三区| 久久综合乱子伦国产免费| 国产宅男宅女在线观看| 日韩无码服务区| 日韩,欧美,中文在线| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 日本人妻A片成人免费看片| 男人天堂无码| 欧美性猛交美女自慰91| 成全在线观看免费观看| 91性感网站| 婷婷大香蕉| 蜜乳AV免费观看| 后入综合久久| 熟妇一区二区三区| 日韩一级欧美一级在线观看| 色妇综合网| 欧美乱妇狂野欧美在线视频| 亚洲18禁| 亚洲激情综合| 日日碰狠狠添天天爽超| 天天视频黄| 99999久久精| 美女丝袜激情小说| 国产超碰人人操| 日韩亚洲中文有码视频| 懂色av一区二区三区天美传媒| 蜜臀AV成人精品蜜臀| 92午夜免费福利视频| 高潮的A片激情扒开一区| 91丰满| 欧美亚洲中文字幕| 日韩青久久| 乱精品一区字幕二区| 天天草天天干天天日| 亚洲AV成人无码一二三久久| 亚洲97在线| 九九热午夜欧亚国产视频| 国产传媒一区日韩| 翔田千里A片一区二区| 欧美热图99| 成人久久久精品| 亚洲宗合网| 青青欧美| 亚洲自拍欧美色综合| 中文字幕人乱码中文字的预防方法 | 亚洲欧美综合网| 91狠狠综合久久| 性色高清..……| 这里都是精品| 久久中出| 中文乱码字幕观看| 激情五月综合开心五月| 国产亚洲深夜激情| 天天干人人干天天日97| 可能人人看人人摸| 自慰白浆在线观看| 亚洲激情在线| 成人精品视频一区二区| 99啪啪| 综合色久欲| 国产精品96| 91第一页| 91碰超| 亚洲欧美国产成人综合不卡| 9 9精品一区二区三区| 性欧美另类高清| 成 人 影视 一区 二区 三区 四区 | 天综合网| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 丁香五月天激情网站| 人人色人人操在线| 无码人妻一区二区一牛影视| 亚洲999综合| 在线二区不卡| 国产精品久久久久久久久久梁医生| 青青久久手机线视频| 亚洲久热| 亚洲图片 激情小说| 日韩中文9| 97啪啪| 91精品久久久久久77777| 精品久久久久瑟瑟| 天天综合站| 樱花蜜乳av| 亚洲丝袜色| 好爽免费视频,| 国产精品一区二区三区四区五区| 欧美成人AⅤ大片在线观看| 午夜久久一区二区无码中出| 亚洲精品国产熟女久久久| 欧美国产精品久久九九| 久久9视频| 超碰在线综合97| 一级片在线观看高清无码| 亚洲天堂人妻一区二区| 天天干夜夜操一区二区| 日本色色色视频| 极品内射| 国产一区自拍欧美日韩| 久久熟女人| 青青草中文字幕| 91 刺激在线| 欧美亚洲成人在线一区二区三区| 亚洲大色鬼| 亚洲国产日韩欧美熟妇在线| 一区二区三区视频国产免费| 日本韩高清无砖码22o| 欧美色91| 超碰色97| 操淫穴亚洲五月丁香 | 国产中出内射一区二区| 久久久久久久91| 婷婷丁香人妻| 黑人粗大V S日韩女优视频| 99xav| 观看免费区二区三区二| 午夜精品99久久久久传媒| 精品久热| 99亚洲精品| 91GD.COM| 伊人五月天| 中文字幕精品资源在线| av凤凰久久久| 8050午夜少妇无码| 伦理片秋霞免费影院| 成人八戒网站| 国产www色在线观看| 久操网无码在线| 国产A v无码专区| 国产女人与拘做受视频免费| 国产亚洲精品农村妇女 | 天天综合色| 欧美后进式| 狠狠干综合| 99热综合| 亚洲综合春色| 人妻出轨一区二区三区| 久久 亚洲 日韩 人妻| 亚洲欧美九九九| 亚洲欧美日韩有码| 啊啊啊啊啊好大好舒服想要| 小骚逼被操的爽不爽| 亚州综合图片| q2午夜理论片夜色av| 国产蜜臀在线| 97资源站国产精品| 9丨久久九九九| 91久久| 91性高朝久久久久久久久| 日韩成人精品| 中文字幕一区二区日韩网| 曰韩操B| 精品一区二区人妖| 五月天婷婷色| 97资源超碰| 久久爽爽精品| 大香蕉伊然在亚洲91| 亚洲日本大香蕉1| 91欧美情色| 91啦人妻| 国产精品呦一区二区三区| 蜜桃无码AV一区二区| 91爱综合| 九九九久久久久| 无码精品啪啪啪一区二区三区三州| 久久精品女同亚洲女同13| 97这里有精品| 69国产对白刺激| 3P乱轮视频| 国产超碰在线| 久久大线蕉一区| Aa东京男人的天堂| 欧美美逼| 色欲Av人妻精品一区二| 亚洲欧洲网站免费观看| 婷婷在线视频| 欧美色综合图片| 韩国嫰模上门援交视频| 欧美96精品在线| 在线A日本| 天天综合精品| 狠肏骚人妻| WWW美腿丝袜香蕉中文| 九九碰九九爱97超| 久久国产乱子伦精品免费女人| 亚洲精品视频在线| 国产成人AV麻豆| 漂亮人妻被强中文字幕hd| 日韩视频中文字幕| 操比国产| 东京热亚洲一区二区| 色综和网| 在线综合网| 欧美日韩中文亚洲v在线综合| 97九色人妻| 久草线上视频免费看| TS人妖另类精品视频系列| 久久国内| 天天舔九色婷婷| 欧美春色| 97人妻免费中文字幕| 亚洲另类久操网| 在线电影亚洲色图| 亚洲国产成人精品久久久国产成人一区二区| 免费在线观看国内色片网站网址| 日韩丝袜人妻AV| 青青久久久| 亚洲成熟国产精品美女| 很黄很色的视频在线观看| 95精品在线| 97欧美色| 日韩 欧美 视频 在线 一区| 这里是精品| 精品久9| www.色婷婷色综合| 日韩视频小说在线观看| 五月丁香黄色网| 99视频在线| 日日碰视频网| 91人妻最真实刺激绿帽| 香一区二区三区| 大鸡巴久久| 秋霞视频一区二区 | 日本999精品视频| 性色A∨91| 欧美在线观看综合国产| 黄色av播放免不| 日韩精品人妻| 亚洲精品视频二区| 日韩一级二级三级| 人妻激情偷乱视三区频一区二区| 日本免费一区二区不卡| 国产日韩色综合| 啊啊啊97视频| 乱操乱伦AV| 亚洲最大的黄色电影网站。| 亚洲网站一区二区在线| 狠狠久久亚洲欧美专区| 亚洲深夜福利| 国模精品一区二区三区苹果色戒| 色香综合天天影视综合| 国产精品美女在线一区| 绑缚麻绳人妻寝取完整版| 97香蕉网| 极品色社| 百度百度日本操逼| 熟女丰满人妻一区| 亚洲中文字幕久久无码精品| 国产三级中文有码在线视频| 亚洲美女黄色| 免费亚洲黄色视频在线观看| 欧美 亚洲 另类 综合| 天堂俺去俺来也www久久婷婷| 亚洲永久永久永久永久一级一级一级精品| 青娱乐国产剧情av一区| 天天综合AV| 日韩免费一级性爱视频| 曰本人妻人人澡人人夹| 欧美日本不卡| 91人妻Pr| 亚洲资源一区| 发朗少妇买婬全视频中文| 男同专区一区二区三区在线| 蜜桃色色网站视频三区| av网站免费看| 抽查国产福利主播| 强奸乱伦亚洲第一页| 国产精品在线网站| 日韩精品亚洲专区在线影视| 天天影视之亚洲综合网| 欧美在线视频99| 天天日天天干少妇日| 亚洲精品819| 国产精品爱欲| 韩日巨乳美女免费视频在线观看| 亚洲成a人片在线观看中文!!!| 熟妇一区,二区,三区。| 久久九色| 亚洲97综| 69人妻精品丰满熟女区| 亚洲最大AV网| 蜜桃臀AV在线| 国产亚洲在线观看| 国产91福利小视频在线观看| 日韩传媒在线| 日韩一区二区高清在线观看的| 亚欧美综合| 亚洲最大黄网| av无码精品久久久久| 精品少妇一区二区三区| 人人喜人人妻| 丰满美女一级毛片在线播放| 大香蕉综合在线| 思思热在线观看| 亚州熟女乱伦| 精品欧美日韩在线观看| 色五月婷婷久久| 欧美精品23| 久久久无码精品人妻二区| 免费啪啪一级视频| 91网站18| 亚码人妻| 无码99| 日韩人妻制服丝袜av| 后入式福利| 性生活久久久久久久久久| 亚洲 国产 精品一区| 天天肏天天干| 久久久精品视频欧州站| 天天综合日韩网| 亚洲成人av电影在线| 日韩91网| 久久久久久中文版| 狠狠操狠狠插| 五月婷婷丁香六月丁香| 九九九只有精品| 婷婷综合在线观看| 久99热| 波多野结衣先锋影音| 亚洲欧美日韩激情不卡| 97视频www| 亚洲丝袜二区| 久操视频资源站公开| 一区二区视频在看| 亚州 综合 色图| 六月激情网| 美女尤物人人操| 我想要啊 啊 啊| 97色论| 日韩不卡毛片Av免费高清| 人妻干天天| 亚洲丝袜综合| 久久高清无码夜夜操| 99这里只有精品| 丁香五月社区| 青草精品视频日本久久久久网站在线| 国产熟女| 国内精品伊人久久久久影院会| 丝袜人妻av一区二区| 91大香蕉伊人| 久久草视频污视频| 性感女人网页在线观看视频| 国产三级电影免费观看| 在线日韩精品一区二区三区| 精人妻一区二区三区| 午夜福利在线合集| 91色噜噜狠狠| 99999无码| 久久黄黄| 亚洲综合九九| 国产又粗又长又爽又色| 国产精品无码av| 国产探花日韩援交| 欧美激情综合| 午夜欧美精品久久久| 欧美日韩精品久久久久东北老熟妇| 久草综合视频| 伊人久久国产免费观看视频| 色性综合| 懂色AV一区二区三区| 欧美性爱伊人| 国产性爱乱伦AV| 中文字幕三四区| 伊人操| 性猛交| 91成人无码| juliaann欧美丝袜办公室| 99热这里只有精品1| 蜜桃狠狠色伊人亚洲综合 | 99久久久er直播网址| 国产强奸91| 亚洲一曲日韩精品| 久久久999| 国产精品高潮久久久无码| 国产精品九九九| 不卡在线观看视频| 97超碰人妻| 91美女视频在线观看| 久久人妻熟女一区二区| 91模特在线观看| 亚洲天堂少妇| 少妇人妻在线| 97在线观看视频| 91精品久久久久久77777| 亚洲日韩久久精品一区| 人人摸人人舔一区二区| 天天日熟妇| 中文字幕午夜精品久久久| 91蜜臀人妻中文字幕在线| 天天性射网| 国产精品夜夜| 99婷婷一区二区| 国内毛片热久久思思热| 亚洲精品国产熟女| 成人七区| 人人操人人叉人人插人人| 久久久久久久国产a∨| 欧美日韩岛国大片在线观看| 日韩免费看黄片| 国产欧美一区激情交| 欧美综合自拍成人自拍第二十页| 欧美夜夜狠| 99re在线观看| 东北女人的毛片| 91国产在线精品| 无套后入双马尾| 亚洲国产综合图区中文字幕| 欧美性天天| 亚洲精品毛片在线观看| 老熟女搡BBBB搡BBBB视频| www.大香| 日本在线不卡一二区| 五月天伊人| 亚洲人成色9999精品久久| 婷婷情色五月天| 91精品久久久久久| 久久二| 樱花蜜乳av| 操人91| 亚洲国产一区二区三区在线| 91 丝袜在线观看| 最新精品久久蜜桃| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 欧美日韩中文字幕不卡| 在线视频亚洲无码| 91性高朝久久久久久久久| 自拍视频一区在线观看| 天天拍天天操| 天天综合影院91| daxiangjiao你懂的 | 欧美懂色综合网| 亚洲色欲天天天堂色欲网女| 中文字幕成人理论在线| 99热亚洲天堂| 91操人| 日韩97P| 强奸乱伦资源| 亚洲天堂人妻一区二区| 人妻素股| 天天看精品动漫视频一区| 国产无马视频| 五月久久HDAV| 97久久久久久久久久| 精品无码久久久久久久久果冻糖心| 91小视频| 男人下部插入女人下部 | 亚洲天天更新| 国产黄色 A 片免费看| 91亚洲人电影| 人妻少妇无码| 久久久久久国产成人| 大香蕉综合在线| 97视频900| 久久精品国产亚洲5555| 亚洲一区二区精品福利| 九九热超碰97亚洲最新香蕉| 91国产美女丝袜足交精品视频 | 成人一二三区| 欧美1区二区三区公司| 欧美激情综合| 九九国产热| 日本αv| 婷婷99狠狠| 亚洲资源网| 欧美精品久久久久久久丰满| 丰满人妻一区二区三区大胸懂色 | 青久操| 亚洲天堂资源网| 欧美中出1| 久热大香蕉网站| 欧美天天干| 色久桃花影院在线观看| 国产不卡片| 亚洲综合在线91| 国产亚洲日韩在线三区黑人| 九九毛片这里只有精品| 国产精品另类| 久久夜黄色无码A级大片| 国产天天骚| 亚州综合色| 操操操日本的逼| 欧美色图私拍91| 丁香婷婷五月| 91黑丝露脚| 97中文综合| 国产自偷自拍一区|