欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

AI代理Gateway架構(gòu)解析:消息模型、渠道適配與部署避坑指南

AI代理Gateway架構(gòu)解析:消息模型、渠道適配與部署避坑指南 做AI代理工具的朋友大多都有過這種體驗(yàn)Agent核心能力已經(jīng)調(diào)通任務(wù)規(guī)劃、工具調(diào)用、上下文管理都運(yùn)轉(zhuǎn)正常了但真正想把一個(gè)代理投入日常使用卡住你的往往不是模型本身而是“消息到底怎么進(jìn)去、結(jié)果怎么出來”。終端、飛書、Webhook、定時(shí)任務(wù)……每個(gè)渠道都有自己的協(xié)議和交互方式如果每接入一個(gè)渠道就給Agent核心開一個(gè)專屬入口代碼很快就會(huì)變成一團(tuán)亂麻。這個(gè)系列前面幾篇拆了插件機(jī)制、工具調(diào)用鏈和Agent核心調(diào)度這次終于輪到整套入口設(shè)計(jì)中最重要的模塊Gateway。這篇會(huì)從源碼視角把nanobot的Gateway架構(gòu)、消息模型、渠道適配器、模型路由分發(fā)逐一拆開同時(shí)結(jié)合我實(shí)際部署時(shí)遇到的502、路由不匹配、Windows任務(wù)計(jì)劃失敗這些坑整理成一份可以直接對照排查的實(shí)操手冊。無論你是打算從OpenClaw遷移到nanobot還是只想在自己項(xiàng)目里同時(shí)接入終端和IM機(jī)器人這篇應(yīng)該都能給你一個(gè)清晰的地圖。1. 為什么先聊GatewayAI代理的“喉嚨”與“神經(jīng)中樞”1.1 沒有Gateway的代理會(huì)怎樣先設(shè)想一個(gè)最簡單的場景我只想在自己電腦的命令行里跟Agent對話。一個(gè)最原始的實(shí)現(xiàn)是把終端輸入直接喂給Agent核心拿到結(jié)果再打印出來。這個(gè)流程確實(shí)能跑但一旦加上HTTP調(diào)用、飛書機(jī)器人、定時(shí)觸發(fā)問題就來了——每個(gè)渠道的鑒權(quán)方式不同飛書要求校驗(yàn)簽名HTTP要解析JSON body終端要處理ANSI轉(zhuǎn)義每類消息的格式也不同有的帶用戶有的帶圖片有的消息本身只是系統(tǒng)回調(diào)。如果這些邏輯全部堆在Agent核心層核心代碼會(huì)被渠道細(xì)節(jié)污染得一塌糊涂。我在自己改造第一個(gè)代理項(xiàng)目時(shí)就是這個(gè)狀態(tài)核心模塊里塞了一堆“如果是飛書請求就取event.message.text”、“如果是HTTP請求就取body.prompt”這種分支判斷。剛開始只有兩個(gè)渠道勉強(qiáng)能維護(hù)加到第三個(gè)渠道時(shí)差點(diǎn)重構(gòu)。那之后我才真正理解網(wǎng)關(guān)層存在的意義它不是錦上添花的抽象而是讓Agent核心保持純粹的關(guān)鍵邊界。Gateway把所有渠道的差異攔在外面向上只暴露統(tǒng)一的消息模型向下只負(fù)責(zé)把Agent的回復(fù)翻譯成對應(yīng)渠道能理解的形式。1.2 三種網(wǎng)關(guān)形態(tài)的取舍聊到Gateway很多人第一反應(yīng)是微服務(wù)里的Spring Cloud Gateway或者最近的Envoy AI Gateway。這幾個(gè)概念容易混淆我放在一起對比一下網(wǎng)關(guān)類型代表項(xiàng)目關(guān)注的核心問題典型場景流量網(wǎng)關(guān)Spring Cloud Gateway路由、熔斷、限流、負(fù)載均衡微服務(wù)集群的南北向流量入口AI基礎(chǔ)設(shè)施網(wǎng)關(guān)Envoy AI Gateway多模型接入、統(tǒng)一協(xié)議、成本治理企業(yè)級AI平臺統(tǒng)一管理模型API代理內(nèi)置網(wǎng)關(guān)nanobot Gateway渠道接入、消息標(biāo)準(zhǔn)化、會(huì)話粘滯個(gè)人/小團(tuán)隊(duì)AI代理的多端接入nanobot的Gateway和前兩者的定位完全不同。它不需要處理大規(guī)模并發(fā)也不需要考慮跨多個(gè)后端的負(fù)載均衡它要解決的是“一個(gè)Agent服務(wù)多端”的問題。所以它的設(shè)計(jì)不是轉(zhuǎn)發(fā)流量的代理而是渠道適配層。這門動(dòng)態(tài)也解釋了為什么它比Spring Cloud Gateway那一套更輕——在nanobot里Gateway與Agent就在同一個(gè)進(jìn)程內(nèi)消息直接通過內(nèi)存?zhèn)鬟f而不是走HTTP再轉(zhuǎn)一圈。1.3 Gateway要解決的四個(gè)核心問題把nanobot的Gateway邏輯梳理完后我發(fā)現(xiàn)它所有設(shè)計(jì)都圍繞四個(gè)問題展開這四個(gè)問題也是你接任何渠道時(shí)都必須回答的問題第一是協(xié)議屏蔽。終端是標(biāo)準(zhǔn)輸入輸出HTTP是請求響應(yīng)飛書是事件訂閱加開放API它們底層的傳輸協(xié)議完全不同。Gateway要讓Agent核心感知不到這些差異。第二是消息標(biāo)準(zhǔn)化。飛書消息里有event.message.contentWebhook里可能有prompt字段終端里就是一行純文本Gateway要統(tǒng)一成一個(gè)標(biāo)準(zhǔn)結(jié)構(gòu)。第三是會(huì)話粘滯。同一個(gè)用戶在同一個(gè)渠道里的多輪對話必須命中同一份上下文不能因?yàn)橄碜圆煌肟诰桶焉舷挛母盍?。第四是安全邊界。哪些渠道允許執(zhí)行高權(quán)限工具、哪些操作需要審批這個(gè)校驗(yàn)必須在入口層做掉否則每個(gè)渠道自己處理安全邏輯遲早出漏洞。這四個(gè)問題對應(yīng)到源碼里就是消息模型、渠道適配器、調(diào)度器和審批機(jī)制。2. 消息模型與渠道抽象nanobot Gateway的“骨架”2.1 統(tǒng)一消息模型讓所有渠道站在同一條起跑線在nanobot里所有進(jìn)入Agent核心的消息最終都會(huì)被打包成一個(gè)統(tǒng)一的消息對象。我在閱讀源碼時(shí)留意到這個(gè)對象的核心字段設(shè)計(jì)非??酥茮]有把各渠道的特殊字段全部塞進(jìn)去而是只保留了所有渠道都需要的最小公共集合。# nanobot/message.py dataclass class Message: channel: str # 來源渠道標(biāo)識如 tty / http / feishu user: str # 用戶標(biāo)識如 user_001 session_id: str # 會(huì)話標(biāo)識用于多輪上下文關(guān)聯(lián) role: str # 消息角色user / assistant / system / tool content: str # 消息正文統(tǒng)一為純文本 raw: Any # 原始渠道數(shù)據(jù)調(diào)試時(shí)保留 metadata: dict # 擴(kuò)展字段渠道特有信息放這里這里的核心設(shè)計(jì)思路是公共字段用于主流程路由特有信息全部通過metadata傳遞。比如飛書消息里的chat_id、HTTP請求里的X-Request-ID都屬于渠道特有信息放在metadata里讓上游插件按需取用不會(huì)干擾主流程。我一開始總覺得應(yīng)該在Message里為飛書、釘釘各預(yù)留一個(gè)字段后來看到nanobot這個(gè)設(shè)計(jì)才反應(yīng)過來——預(yù)留字段看起來方便實(shí)際上是把渠道差異泄露到了核心層每加一個(gè)渠道就要改一次消息結(jié)構(gòu)。統(tǒng)一走metadata之后核心代碼完全不需要變動(dòng)。2.2 渠道適配器接口接一個(gè)渠道要寫哪些代碼統(tǒng)一消息模型是數(shù)據(jù)層面的事情渠道接入則是代碼層面的事情。nanobot里每個(gè)渠道對應(yīng)一個(gè)BaseChannel的子類這個(gè)抽象類我結(jié)合源碼結(jié)構(gòu)還原出來大概長這樣# nanobot/gateway/base.py class BaseChannel(ABC): name: str base def __init__(self, config: dict, dispatcher: Dispatcher): self.config config self.dispatcher dispatcher abstractmethod async def start(self): 啟動(dòng)渠道監(jiān)聽比如 HTTP 服務(wù)啟動(dòng)、WebSocket 連接建立、飛書長連接注冊 abstractmethod async def stop(self): 優(yōu)雅關(guān)閉渠道監(jiān)聽 abstractmethod async def send(self, channel_target: str, message: Message): 把 Agent 的回復(fù)推送到渠道指定目標(biāo)如飛書的 chat_id、HTTP 連接的 response body abstractmethod async def recv(self) - AsyncIterator[Message]: 從渠道接收原始事件解析為統(tǒng)一的 Message 對象一個(gè)渠道要接入核心就是實(shí)現(xiàn)這四個(gè)方法。start和stop負(fù)責(zé)渠道生命周期recv負(fù)責(zé)把渠道的原始輸入翻譯成Messagesend負(fù)責(zé)把Message翻譯成渠道輸出。dispatcher是渠道與Agent核心之間的紐帶它負(fù)責(zé)把recv收到的消息交給Agent處理再把Agent返回的結(jié)果交給send推回去。這里有一個(gè)很容易被忽視的點(diǎn)recv不是一次性返回一個(gè)消息而是一個(gè)異步迭代器。這是因?yàn)锳I回復(fù)是流式的——Agent在生成過程中token是一個(gè)一個(gè)或一段一段產(chǎn)生的如果等整段回復(fù)生成完再發(fā)送飛書和HTTP上的用戶體驗(yàn)會(huì)非常差。異步迭代器讓渠道可以把流式輸出一段段推給用戶這就是為什么在實(shí)際使用中TTY里能看到一個(gè)字一個(gè)字蹦出來。2.3 會(huì)話粘滯與上下文路由多渠道接入后最苦惱的問題不是“消息進(jìn)不來”而是“聊著聊著上下文串了”。如果你在飛書里跟Agent聊了十輪第五輪問“剛才那個(gè)方案里的第二步是什么”——Agent必須知道“剛才”指的是這十輪里哪個(gè)會(huì)話。nanobot的調(diào)度器在處理消息時(shí)會(huì)按照channel user或channel session_id組合生成一個(gè)會(huì)話上下文鍵。飛書里一個(gè)用戶的私聊上下文和HTTP請求里同一個(gè)用戶發(fā)的消息會(huì)被視作兩個(gè)獨(dú)立的會(huì)話除非在metadata里顯式傳了session_id來指定歸屬。這個(gè)設(shè)計(jì)在不同渠道之間做了會(huì)話隔離而同一渠道內(nèi)部通過user保證多輪上下文連續(xù)。實(shí)際使用中HTTP渠道最容易踩這個(gè)坑。因?yàn)镠TTP請求是無狀態(tài)的如果外部系統(tǒng)每次調(diào)用都傳一個(gè)新的session_id那么Agent永遠(yuǎn)無法感知多輪上下文。后來我習(xí)慣在業(yè)務(wù)系統(tǒng)側(cè)自己維護(hù)session_id每次請求帶上這樣跨請求的上下文連續(xù)性問題從應(yīng)用層就解決了。2.4 一次消息的完整生命周期把前面幾個(gè)模塊串起來一條消息從進(jìn)入到返回的完整鏈路是這樣的渠道監(jiān)聽器收到原始事件比如飛書Webhook推過來一條JSON。recv將JSON解析提取event.message.content結(jié)合配置的app_id、chat_id等信息包裝成統(tǒng)一的Message對象。dispatcher拿到Message根據(jù)channel user計(jì)算會(huì)話鍵從上下文中取出歷史記錄組裝成完整的請求消息序列。主Agent核心處理消息可能調(diào)用工具、檢索知識庫最終生成回復(fù)。如果是流式響應(yīng)Agent產(chǎn)生一段文本就回調(diào)一次。dispatcher把回復(fù)包裝成Message調(diào)用渠道的send方法將文本逐段推送到原始渠道。這個(gè)鏈路最巧妙的地方在于核心Agent完全不知道消息來自飛書還是終端它只看到“用戶發(fā)來了一條文本現(xiàn)在要把文本回復(fù)返回給用戶”。所有渠道差異都被壓縮到了recv和send這兩個(gè)方法的內(nèi)部實(shí)現(xiàn)里。這也是你后續(xù)想接入新渠道時(shí)的唯一工作區(qū)。3. 多渠道集成實(shí)操從TTY到HTTP到IM機(jī)器人3.1 配置與網(wǎng)關(guān)注冊機(jī)制想啟用哪個(gè)渠道改配置就行源碼解析不能只看理論得落到實(shí)際配置。nanobot的渠道啟停走的是配置驅(qū)動(dòng)核心思路是你要在啟動(dòng)時(shí)加載哪些渠道全部寫在配置文件里程序啟動(dòng)時(shí)掃描這些渠道類并實(shí)例化注冊。{ gateway: { enabled: [tty, http, feishu], http: { host: 0.0.0.0, port: 8090, token: sk-local-token }, feishu: { app_id: cli_xxx, app_secret: xxx, verify_token: xxx } }, models: { main: { provider: openai, model: gpt-4o, base_url: http://127.0.0.1:15721/v1, api_key: sk-xxx } } }enabled數(shù)組是總開關(guān)配置了哪個(gè)渠道啟動(dòng)時(shí)就會(huì)加載哪個(gè)渠道類并實(shí)例化。沒配置的渠道不會(huì)被初始化這相當(dāng)于用一份配置實(shí)現(xiàn)了渠道的可插拔。啟動(dòng)命令也很直白nanobot start --config nanobot.json控制臺顯示[gateway] enabled channels: tty, http, feishu基本就說明渠道注冊成功。我實(shí)測下來這個(gè)注冊機(jī)制對多渠道集成的擴(kuò)展非常友好新增渠道只需要在gateway目錄下新增一個(gè)適配器文件然后在enabled數(shù)組里加上名字不需要改路由、不需要重啟Agent核心。3.2 TTY網(wǎng)關(guān)開發(fā)調(diào)試的黃金搭檔TTY渠道是我開發(fā)時(shí)最常用的它的本質(zhì)是“命令行直接對話”。啟動(dòng)nanobot后在終端里輸入文本回車即發(fā)送Agent的回復(fù)直接在終端流式打印。TTY網(wǎng)關(guān)沒有鑒權(quán)、沒有回調(diào)、沒有消息格式轉(zhuǎn)換它的recv實(shí)現(xiàn)核心就是一行異步讀輸入# nanobot/gateway/tty.py async def recv(self): while True: content await asyncio.to_thread(input, you ) yield Message( channelself.name, userself.config.get(user, local), session_idtty-default, roleuser, contentcontent, )這個(gè)渠道雖然簡單但定位很重要它是最佳的調(diào)試手段。當(dāng)HTTP渠道或飛書渠道出現(xiàn)問題時(shí)我會(huì)先在TTY里跑一遍同樣的話術(shù)看是否能復(fù)現(xiàn)。如果TTY正常、其他渠道報(bào)錯(cuò)基本可以斷定問題出在“渠道適配層”而不是Agent核心。這能幫你快速定位問題邊界。3.3 HTTP/Webhook集成給外部系統(tǒng)開一扇門HTTP渠道是讓nanobot接入現(xiàn)有業(yè)務(wù)系統(tǒng)的常用方式。它本質(zhì)上是一個(gè)輕量的HTTP服務(wù)接收POST請求把請求體解析成消息處理后返回響應(yīng)。外部系統(tǒng)調(diào)用時(shí)發(fā)送的請求格式長這樣curl -X POST http://127.0.0.1:8090/message \ -H Content-Type: application/json \ -H Authorization: Bearer sk-local-token \ -d { user: external_001, session_id: conv_009, content: 幫我把這份需求整理成執(zhí)行計(jì)劃 }HTTP渠道的recv實(shí)現(xiàn)邏輯是解析請求頭里的token校驗(yàn)權(quán)限從JSON body里提取content作為消息正文將user和session_id映射到Message字段然后把這個(gè)Message交給dispatcher。返回時(shí)則把Agent的完整回復(fù)或流式片段作為HTTP響應(yīng)體返回。權(quán)限上建議給HTTP渠道配置獨(dú)立token不要復(fù)用模型API的key。我在項(xiàng)目里的做法是在HTTP渠道上多包一層白名單校驗(yàn)只有來源IP在預(yù)設(shè)范圍內(nèi)才允許調(diào)用這樣即使token泄露風(fēng)險(xiǎn)也被控制在內(nèi)網(wǎng)訪問級別。3.4 即時(shí)通訊接入以飛書機(jī)器人為例的接入思路把Agent接進(jìn)IM是我覺得最有成就感的集成方式——直接在聊天框里跟Agent對話交互體驗(yàn)遠(yuǎn)比終端溫和。以飛書為例整個(gè)接入鏈路分成三步第一步在飛書開放平臺創(chuàng)建應(yīng)用拿到app_id和app_secret同時(shí)配置事件訂閱。飛書的新版機(jī)器人支持長連接模式不需要公網(wǎng)回調(diào)地址這大大簡化了本地調(diào)試的復(fù)雜度。第二步在nanobot.json的feishu節(jié)點(diǎn)里填上應(yīng)用憑證啟用渠道。第三步啟動(dòng)服務(wù)觀察日志里是否出現(xiàn)“飛書長連接注冊成功”的提示。飛書渠道適配器的核心關(guān)注點(diǎn)不是消息格式而是事件處理。飛書推送的事件可能有三種類型普通聊天消息、機(jī)器人被的事件、消息被撤回等系統(tǒng)事件。接管recv時(shí)要判斷事件類型聊天消息包裝成Message系統(tǒng)事件直接忽略或記一條調(diào)試日志。# nanobot/gateway/feishu.py (簡化) async def recv(self): async for event in self.client.event_stream(): if event.type im.message.receive_v1: text extract_text_from_event(event) yield Message( channelfeishu, userevent.user_id, session_idevent.chat_id, roleuser, contenttext, metadata{raw: event, chat_id: event.chat_id}, )這里有一個(gè)很實(shí)用的session_id映射把session_id直接設(shè)為chat_id天然實(shí)現(xiàn)“每個(gè)群一個(gè)會(huì)話上下文”。同一個(gè)群里多輪對話自動(dòng)關(guān)聯(lián)不同群之間互相隔離既符合直覺又不用自己維護(hù)映射表。3.5 模型路由配置多渠道背后的模型分發(fā)多渠道集成后一個(gè)容易忽略的問題是模型怎么分發(fā)。低優(yōu)先級渠道可能只需要用便宜的小模型命令行調(diào)試可以用滿血旗艦?zāi)P惋w書群里則可能同時(shí)有兩個(gè)不同模型處理不同群。這時(shí)候就輪到模型路由出場。其次還要給真模型路由配置。路徑是models.route.field{ models: { main: { provider: openai, model: gpt-4o, base_url: http://127.0.0.1:15721/v1, api_key: sk-xxx }, lite: { provider: openai, model: gpt-4o-mini, base_url: http://127.0.0.1:15721/v1, api_key: sk-xxx } } }在渠道配置里可以通過model_route字段聲明當(dāng)前渠道綁定哪條路由。例如HTTP渠道給外部系統(tǒng)用綁定lite省tokenTTY和飛書私聊綁定main效果優(yōu)先。這個(gè)方案本身很常規(guī)但確有一個(gè)隱蔽的坑很多人在配置base_url時(shí)會(huì)習(xí)慣性把它填成模型服務(wù)商的主域名比如https://api.xxx.com/v1結(jié)果請求發(fā)過去返回502。后面我會(huì)詳細(xì)說這個(gè)坑。4. 部署實(shí)戰(zhàn)中的典型故障與排查實(shí)錄4.1 502 Bad Gateway先從服務(wù)有沒有起來查起凡是用Gateway的地方502基本是最高頻的錯(cuò)誤。我查了大量用戶反饋?zhàn)畛R姷囊活悎?bào)錯(cuò)是在部署時(shí)看到類似這樣的一行unexpected status 502 bad gateway: unknown error, url: http://127.0.0.1:15721/v1/responses這句話的重點(diǎn)不在“502”而在URL。它說明你的gateway或agent核心已經(jīng)把請求轉(zhuǎn)發(fā)到了http://127.0.0.1:15721/v1但那個(gè)端口上沒有服務(wù)在監(jiān)聽或者監(jiān)聽了但上游返回了異常狀態(tài)。502本身只是表象它后面的URL才是破案線索。我總結(jié)了一套排查套路第一檢查端口是否真的有服務(wù)在監(jiān)聽。在部署機(jī)上執(zhí)行curl -v http://127.0.0.1:15721/v1/models如果連接被拒絕說明模型服務(wù)沒有啟動(dòng)或者啟動(dòng)的端口和配置里的端口不一致。用netstat -tlnp | grep 15721再確認(rèn)一下。第二如果端口有服務(wù)但curl返回502說明上游服務(wù)自身出了問題通常是模型服務(wù)依賴的模型文件沒加載、顯存不足、或API key校驗(yàn)失敗。這時(shí)候要去看模型服務(wù)自己的日志而不是盯著agent日志。第三如果用的是網(wǎng)關(guān)轉(zhuǎn)發(fā)模式還要確認(rèn)轉(zhuǎn)發(fā)路徑和配置路徑是否一致。比如配置的base_url是http://127.0.0.1:15721/v1但實(shí)際模型服務(wù)的監(jiān)聽前綴是/api/v1路徑不匹配也會(huì)表現(xiàn)為502。我自己的經(jīng)驗(yàn)是遇到502先別慌按“端口 - 日志 - 路徑配置”的順序排查絕大多數(shù)能在五分鐘內(nèi)定位。真正難的是那些端口正常、日志正常、路徑也一致但依然報(bào)502的情況這時(shí)候大概率是上游服務(wù)在返回層做了特殊邏輯比如鑒權(quán)失敗也返回502那就需要抓取HTTP響應(yīng)體來分析了。4.2 模型路由不匹配expected a gateway model route另一個(gè)高頻報(bào)錯(cuò)是這類提示doesnt look like an anthropic model: expected a gateway model route reference從字面看是說“返回結(jié)果不像預(yù)期的模型格式”。我第一次遇到時(shí)很懵因?yàn)槲铱床欢癳xpected a gateway model route reference”到底是什么意思。后來排查才明白這個(gè)問題通常不是模型服務(wù)本身的問題而是配置里model_route或模型路由的映射沒有生效。在nanobot這類多模型路由架構(gòu)里model_route的作用是告訴網(wǎng)關(guān)“哪條路由應(yīng)該用哪個(gè)模型”。如果路由名配置錯(cuò)了或者路由名在models節(jié)點(diǎn)里不存在網(wǎng)關(guān)就不知道應(yīng)該把請求轉(zhuǎn)給誰只能把請求發(fā)到一個(gè)默認(rèn)地址結(jié)果對方返回了預(yù)期之外的格式于是拋出“doesnt look like”的提示。排查方法是先確認(rèn)配置文件models節(jié)點(diǎn)下有幾條路由route名分別是main、lite還是自定義的渠道配置里引用的model_route是否在路由列表中路由配置的base_url是否指向了正確的模型網(wǎng)關(guān)端口如果配置沒問題再看運(yùn)行時(shí)日志。啟動(dòng)nanobot時(shí)正常會(huì)打印“model route main - http://127.0.0.1:15721/v1”這樣的信息對照一下路由名是否和你預(yù)想的一致。這個(gè)問題的根源一般是“配置文件的key拼寫不一致”比如一個(gè)地方寫main另一個(gè)地方寫main-model兩邊對不上。4.3 Gateway服務(wù)啟動(dòng)失敗Windows計(jì)劃任務(wù)與權(quán)限部署到Windows上時(shí)很多人遇到過這個(gè)經(jīng)典錯(cuò)誤gateway start failed: error: schtasks run failed: 錯(cuò)誤: 由于已禁用計(jì)劃任務(wù)“xxx”這個(gè)錯(cuò)誤是在把Gateway注冊為Windows計(jì)劃任務(wù)時(shí)出現(xiàn)的。我在Windows Server上部署時(shí)踩過同樣的坑原因是計(jì)劃任務(wù)被系統(tǒng)策略禁用或者當(dāng)前啟動(dòng)用戶沒有創(chuàng)建/運(yùn)行計(jì)劃任務(wù)的權(quán)限。排查優(yōu)先級從低到高排列錯(cuò)誤環(huán)節(jié)常見原因處理手段schtasks run failed計(jì)劃任務(wù)被策略禁用檢查任務(wù)計(jì)劃程序庫右鍵啟用以管理員身份重跑安裝命令權(quán)限不足當(dāng)前賬戶不是Administrator使用管理員終端執(zhí)行安裝腳本路徑含中文/空格腳本解析路徑異常將nanobot安裝路徑改為純英文目錄殺毒軟件攔截網(wǎng)關(guān)注冊服務(wù)被攔截臨時(shí)關(guān)閉實(shí)時(shí)防護(hù)加入白名單其實(shí)不只是nanobot很多工具在Windows下注冊系統(tǒng)服務(wù)時(shí)都會(huì)遇到計(jì)劃任務(wù)的問題。我的建議是如果只是想本地跑不必非要把Gateway注冊成系統(tǒng)服務(wù)直接前臺運(yùn)行nanobot start即可。系統(tǒng)服務(wù)是為“開機(jī)自啟、后臺常駐”準(zhǔn)備的開發(fā)調(diào)試階段沒必要增加這層復(fù)雜度。等真正需要7x24小時(shí)跑的時(shí)候再考慮用nssm這類工具包裝成Windows服務(wù)可控性比計(jì)劃任務(wù)高很多。4.4 審批機(jī)制與安全窗口exec-approvals 在渠道層的作用最后聊一個(gè)容易忽略的安全話題。在OpenClaw那一類完整功能的代理框架里存在一個(gè)審批機(jī)制配置文件例如exec-approvals.json。這個(gè)文件的作用是定義哪些危險(xiǎn)命令需要在執(zhí)行前彈窗審批。執(zhí)行exec、shell等敏感操作時(shí)代理會(huì)讀取該文件里的審批策略決定是放行、拒絕還是請求人工確認(rèn)。這個(gè)機(jī)制在Gateway層面同樣值得引入。因?yàn)槎嗲澜尤牒蠼K端渠道可能由你自己控制但HTTP和IM渠道未必——一個(gè)外部系統(tǒng)或者群聊里的用戶不應(yīng)該擁有和你命令行會(huì)話同等的執(zhí)行權(quán)限。我的做法是在消息進(jìn)入dispatcher之前根據(jù)Message.channel和Message.user做一次策略拉平把高權(quán)限渠道TTY本地的指令放行低權(quán)限渠道HTTP外部調(diào)用的shell、文件寫入類指令直接降級或拒絕。這實(shí)際上就是把安全邊界從“Agent核心”前移到了“Gateway入口”。很多人覺得這些審批機(jī)制是給CI/CD用的個(gè)人項(xiàng)目不需要。但當(dāng)你的Agent同時(shí)接入飛書群和公網(wǎng)Webhook時(shí)一個(gè)不設(shè)防的“幫你執(zhí)行Shell命令”的Agent是早晚要出事的。我強(qiáng)烈建議在渠道層把權(quán)限策略和審批配置提前做好不要等到被他人投喂惡意構(gòu)造的Prompt時(shí)再后悔。5. 我再多說幾句Gateway設(shè)計(jì)里的取舍與心得讀到這你應(yīng)該對nanobot的Gateway結(jié)構(gòu)有了一個(gè)完整的圖景。源碼里這個(gè)模塊不復(fù)雜甚至可以說每個(gè)類都很小但它把“協(xié)議、會(huì)話、權(quán)限、路由”這些原本糾纏在一起的問題用清晰的接口分割開了。這種取舍給我的啟發(fā)比代碼本身更大一個(gè)再小的項(xiàng)目也值得在“入口層”花時(shí)間做抽象。不要覺得只有兩個(gè)渠道就不需要Gateway等你需要加第三個(gè)渠道時(shí)前期這半小時(shí)的抽象會(huì)幫你省下至少一整天的重構(gòu)時(shí)間。我自己的實(shí)操體會(huì)是Gateway和渠道適配器最適合按“最小可用先跑通”的節(jié)奏迭代。先接TTY把消息模型跑通再加HTTP驗(yàn)證異步迭代器和流式輸出最后才接飛書這類IM平臺。每一步都在前一步的基礎(chǔ)上增加一種協(xié)議形態(tài)而不是一次性鋪開。這個(gè)順序能讓你在早期就發(fā)現(xiàn)問題集中在渠道適配層而不是核心調(diào)度層調(diào)試體驗(yàn)會(huì)好非常多。最后再分享一個(gè)擴(kuò)展性的小技巧如果你覺得nanobot自帶的渠道不夠用不要急著改它源碼。先照著BaseChannel接口實(shí)現(xiàn)一個(gè)自己的適配器丟到gateway目錄下注冊進(jìn)配置再用TTY先驗(yàn)證——這個(gè)過程順利了基本就說明你已經(jīng)吃透了這個(gè)項(xiàng)目的渠道模型后面不管是接釘釘、接企業(yè)微信還是接自己開發(fā)的內(nèi)部IM工具都是同一套方法論。代碼最怕的不是沒有擴(kuò)展接口而是擴(kuò)展接口長得太復(fù)雜讓人提不起勇氣去實(shí)現(xiàn)它。nanobot的Gateway是我見過的少數(shù)能把“擴(kuò)展一個(gè)渠道”這件事做到讓人愿意動(dòng)手的設(shè)計(jì)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月综合视频| 欧美色色色色色| 婷婷五月综合免费在线| 色播五月丁香| 日韩视频99| 欧洲S级在线观看| 国产激情综合五月久久| 六月婷婷激情| 久久精品视频9| 日韩九区| 色情婷| 婷婷色综合| 99国产这里只有精品| 久久久久9| 亚洲人成网站999综合| 亚洲色啪| 激情五月天综合网| 夜夜爽天天爽| 狠狠色综合网站久久久久| 亚洲综合九九| 99色干| 丁香五月婷婷欧美性爱| 免费看欧美成人A片无码| 日本天堂免费99| 成人五月天在线视频在线观看| 国产激情综合| 五月天丁香成人社| 五月丁香色婷婷久久| 伦乱美欧| 99rewww| 丁香五月九九| 十二区无码| 99操碰| 亚洲婷婷基地| 综合性爱网| 天天色,天天日,天天做| 99re思思热久久| 久久6这里只有精品| 五月玖玖| 精品九九在线观看视频| 亚洲综合在线伊人婷| 99日本视频| 天天婬色综合| 888久久久| www.99精品日操伊人乱碰在线| 国产精品VA在线| 亚洲开心激情网| 丁香五月激情婷婷视频| 99精品在线播放| 天堂在线9| se色综合网| 丁香六月欧美| 99视频网址| 丁香五月婷婷亚洲另类| 日韩久热| 国产欧美婷婷| 日撸夜撸日操| 色婷婷五月天在线观看| 成人网址在线观看| 国产乱妇乱子在线播视频播放网站| 婷婷开心激情| 草草视频91| 五月婷婷天堂| 五月丁香婷婷色| 成人丁香五月| 婷婷丁香成人色综合| 江苏少妇性BBB搡BBB爽爽爽| 久久艹网| 久热久色| 婷婷五月综合激情免费| 97色婷婷| 99热日韩这里只有精品| 偷拍视频五月天| 丁香六月成人网| 另类小说五月天激情| 五月六月丁香婷婷在线观看| 婷婷五月天电影区小说区| 日本va欧美va欧美| 天堂A∨在线| 99久在线精品99re8热| 91日韩在线| 亚洲中文字幕在线观看| 玖玖婷婷婷丁香五月| 婷婷va| 啪啪99| 丁香五月天堂| 国产玖玖资源| 开心激情婷婷| 91岛国片| 9久热这里只有精品视频| 日本熟女内射| 丁香五月婷婷基地| 99人人精品| 久久丁香五月综合六月激情红杏视频| 婷婷香香五月| 欧美成人精品老美女噜噜噜| 色综合天天| 91九色最新视频| 亚洲av电影网站| 97碰成超视频免费视频| α久久| 丁香五月乱中文字幕| 9久热在线视频精品| 婷婷亚洲综合| 99自拍网| 国产无套精品一区二区| 噼里啪啦在线观看免费完整版视频| 97热这里只有精品| 婷婷色基地在线看| 久色中文| 色色色热| 丁香五月在线自慰| 欧美婷婷五月天| 久久激情五月婷婷| 久久婷婷丁香五月宗合| 婷婷色五月综合| 99色婷婷视频| av色婷婷| 天天干天天拍| 狠狠干在线| 五月天成人在线精品| 99久久6| 六月丁香啪啪啪| 婷婷性爱视频在线| 婷婷五月六月丁香| 亚洲不卡123| 激情 五月 婷婷 丁香| 天天色激情| 99ri在线观看视频| 五月天天堂久久| 激情网婷婷婷| 精品一区久热| 人人看人人草人人摸| 久久9久| 1024成人免费看| 婷婷在线播放av| 色噜噜狠狠一区二区三区| 风流少妇A片一区二区蜜桃| 色五月婷婷91| 婷婷情色五月天| 国产精品成人网址| 激情性五月天免费小说视频| 九九色黄色| 中文aV网| 久草免费福利视频| 丁香五月婷婷六月| 天堂综合久| 天天爽天天做| 99热999| 涩涩婷婷五月| 超级碰碰一区| 婷婷五月天天爽| 97超碰色| 九九热re99re6在线精品| 91丨九色丨国产| 激情五月天婷婷久久久久久久久久久| 九九99九九99| 久久综合性| 五月天婷婷伊人| 色婷婷影音| 五月草视频| 中文字幕操比影片| 五月丁香婷婷导航视频| 亚洲在线操| 97久久超碰| 久综合色| 99色色网| 26uuu国产激情视频| 久久久久9久无码视频| 天天色综合网吨吧| 91ncm视频| 天天干天天做| 99re这里只有精品9| 色欲婷婷五月天| 中美日韩成人在线| 国产成人AV不卡| 97好吊操| 亚洲av免费在线| 99这里只有| 99r久久这里只有精品| 五月激情小说| 久久久久久久人妻| 成人精品一区二区三区四区五区| 久操热| wwxx日本| 丁香色影院| 欧美色色色色色色| 国熟女视频| 91久久婷婷| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 日韩中出视频| 综合网五月| 婷婷爱五月| 伊人婷婷大香蕉| 久久婷五月综合| 丁香九九九九| 激情婷婷五月天在线观看| 大香蕉丁香婷婷| www.五月天| 97成人丁香婷婷| 久久久一级AAA| 天天日天天爽| 天天综合五月| 五月丁香久久综合| 丁香伊人五月色婷婷五十路| 色99色| 亚洲、热| 草综合网| 91久久综合亚洲噜噜成人在线| 五月天激情美女久久| 超级碰 久久9| 午夜少妇在线观看视频| 欧美综合五月丁香六月婷| 99热20| 亚洲精品操一操、噜一噜、摸一摸、爽 | 能看的AV| 五月天激情图片| 亚洲色9| 草久私拍| 日本一级黄色片。| 久热免费| 欧美日韩成人高清在线| 99热99这里只有精品| 成人丁香五月| 久久婷婷内射| 91热久| 这里有精品| 日日夜夜狠狠| 天天插,天天射| 免费AV黄在线播放| 99热综合在线| 综合久久婷婷| 日本色天堂| 天天碰夜夜操| 亚洲精品一区无码A片| 五月天婷婷综合网| 天天干天干| 都市激情五月婷婷综合| www。狠狠干。com| 干亚洲天堂| 色五婷婷| 色综合久久44| 玖玖色综合网| 综合激情婷婷| 人妻射精AV| 日本精品干| 色婷婷啪啪综合网| 96色婷婷| 蜜乳人妻一区二区三区| 色婷婷精品视频| 久久综合天天综合| 美女激情婷婷| 丁香六月亚洲综合| 亚洲激情综合免费| 五月激情偷拍| 色偷偷综合| 毛片色五月| 狠狠狠五月婷婷六月丁香| 欧美综合激情五月丁香| 亚洲色色色色| 99热这里精品| 婷婷五月综合体验看| 99乱视频| 9l视频自拍九色9l视频自拍九色9l社区| 五月五婷婷网| 婷婷五月丁香激情色情| 丁香综合网| 亚洲丁香五月美女| 99热最新| 91狠狠综合网| 性一交一乱一交A片久久四色| 天天色五月| 99久久9| 亚洲AV日韩无码| 五月伊人婷婷999| 婷婷丁香五月视频| 丁香五月激情综合婷综| 狠狠干综合| 色欲天天综合网| 色色激情五月天| 女人露出p毛视频www网站| 婷婷的久久网站| 中文字幕 中文字幕明步| 日韩精品二三区| 96丁香六月婷婷蜜桃综合久久| 国产1区2区3区在线观| 热的五码久久精品| 五月天精品综合在线| 99色看| 狠狠撸激情综合丁香五月天俺来啦| 无码动漫av| 九九热精品99| 天天激情视频| 天天精品视频免费观看| 操操人人| 少妇伦子伦精品无吗| www.色色色com| 超级碰碰碰久久网站| 99热最新精品| 五月天中文字幕在线婷婷| 99日这里只有精品| 91丨九色丨东北熟女| 操骚货在线| 99婷婷精品推荐在线视频| 九九视频在线观看视频在线播放69| 日本高清久久| 99在线热视频| 69婷婷丁香午夜| 免费在线观看欧美激情xx小视频| 天天激情| 色婷婷亚洲婷婷| 色综合综合综合| 小泽玛利亚视频一区二区| 99视频超级精品| 五月久久丁香| 99热精品在线观看| 色域五月婷婷丁香| 99er热精品视频| 婷婷综合网| 综合色在线| 伊人碰碰婷婷| 久久性爱视频这里只有精品| 一起草av| 亚洲综合网 665566| 色欲丁香久久| 亚洲综合五月天| 欧美一线视频| 狠狠色噜噜狠狠| 91狠狠综合久久久| 六月婷婷激情图片| 超碰免费99| 激情综合网激情五月俺也去| 97成人丁香婷婷| 五月婷婷丁香网| 国产精产国品一二三在观看| 狠狠搞五月天| 人人操99| 色婷婷亚洲| 丁香六月激情国产| 日韩aⅴ视频| 丁香色六月| 免费精品99| 久久桃花网色婷婷| 五月丁香好婷婷A片网| 99热都是精品| 人妻九九九九| 99操碰| 欧美人人超级碰| 五月婷婷丁香六月在线| 黄色录像网点| 操你av| wwW天天干| 亚洲免费av在线| 成人精品免费在线观看| 色五月成人在线| 狠狠综合网| 那里有AV网址| 丁香五月性| 国产激情久久| 99色色网| 五月婷婷色情| 亚洲无码AV片| 五月天婷婷综合网| 中文字幕av久久爽一区| 99热这里只有精品青草| 婷婷另类开心| 波多婷婷久久| 欧美日本另类| 亚洲色夜| 91九色首页| 91在线日| 国产精品久久久爽爽爽麻豆色哟哟| 久久免费干| 激情综合网五月激情| 亚洲成人av在线观看| 日韩精品二三区| 丁香五月很很肏| 思思热视频在线| 五月婷婷综合社区| 色婷婷亚洲精品天天综| 久久久月丁香| 激情色情五月天| 久久人妻伦理| 91色噜噜狠狠狠狠色综合| 日韩人妻无码精品| 欧美激情 日韩无码 婷婷 五月天 久久婷婷丁香五月一二三 | 色色五月婷| 99热免费在线| 天天舔天天插天天干| 伊人在线另类| 成人丁香五月| 亚州激情在线视频| www91色网站| 五月天.com| 91精品综合久久婷婷九色| 综合色图区| 美女五月天婷婷| 国产人妻777人伦精品HD| 99re26视频| 激情久久婷婷| 婷婷五月影院| 婷婷五月天视频免费在线观看| www,五月天激情| 97日韩无套内| 久热一本| 99热视精品| 丁香五月天.com| 99久久综合网| 五月花免费视频| 亚洲综合字幕色色| 丁香操逼| 任你草| 深爱激情网五月天| 99热99ai| 日韩黄色电影| 亚洲AV久久久久久久久久久久久久久久 | 中文字幕不卡+婷婷五月| 色五月xxx| 99视频在线9| 婷婷99视频精品| 天天碰天天插天天操| 色五月婷婷操逼| 欧美成人精品A片免费一区99| 激情5月婷婷狠狠干| 久久久.www| 久久激情视频| 九九在线精点品| 丁香婷婷五月天色综合| www.99日本| 91se精品国产| AV九九| 婷婷射综合| 久久99美女精彩视频| 狼人久草| 欧美超级视频97| 中文字幕乱码亚洲精品一区| 五月婷六月| 婷婷五月天免费视频| 色五月婷婷五月丁香五月激情五月视频| 丁香六月激情综合| 婷婷五月综合在线| 色色五月天丁香婷婷| 99热国产在线| 婷婷五月色丁香在线看| 五月丁香花伦理电影| 国产ava| 亚洲第二AV| 99色爱| 色色色欧美| 五月丁香综合在线| ji'qi'luan'ren'lun| 欧洲激情五月天婷婷| 九月婷婷久久久| 亚洲小电影在线观看黄999| 永久天堂日本| 996热re视频在线观看视频| 91精品激情9| 色爱综合网| 99亚州综合精品成人网| 日本片日本片祼观看网站在线看中文版网页在线看 | 120分钟婬片免费看| 色色色国产| 色五月激情综合| 婷婷五月婷婷| 色婷婷五月天激情在线观看| 99热精品中文字幕| 色色色色热| 狠狠色噜噜狠狠| 5月丁香六月婷婷| 五月婷婷在线网站| 天天射色五月天| 99视频只有这里精品| 五月丁香六月婷婷亚洲| 小视频久久久aaa| 亚洲va欧洲va国产va不卡| 天天精品视频在线观看视频| 五月婷婷无码| 久久婷婷内射| 97色色婷婷| 亚洲色五月| 亚洲成av人影院| AA片在线观看视频在线播放| 五月丁香久久综合91| 大香蕉AV电影在线| 五月丁香六月婷婷久久肏| 97色女人在线| 婷婷放心五日爱| 色色综合成人网| 成人婷婷桔色| 99青青草| 色色五月天丁香| 天天综合网在线| 色五月激情五月| 国产熟妇乱子伦hd| AAAA网站| 婷婷综合激情| 婷婷五月天免费99| 99热1| 久久XX| 五月社区丁香| 婷婷五月丁香综合激情| 久久99综合| 色婷婷基地 | 久777| 欧美日韩日韩成人| 婷婷五月激情四月综合| 丁香五月天视频在线播放| 操骚货在线| 激情五月天丁香| 成熟妇人A片免费看网站| 991自拍视频| 欧美在线97| 五月婷婷香蕉| 婷婷五月天成人| 婷婷色网| 久草九九| 全国最新疫情| 婷婷九月在线| 久草婷婷网 | 成人网在线视频| 五月天婷基地| 六月丁香VA| 亚洲色综合| AV网在线| a在线观看| 99热在线观看免费| 成人看片网站| 91人人澡人人爽人人看| ss视频xx91| 99热官网精品在线| 91性人人| 天天干天天叉| 人妻少妇色综合| 亚洲AV无码一区二| 丁香五月婷婷激情中文| 天天开心婷婷丁香五月| 五月婷婷激情综合| 九热av| 婷婷五月中文在线| 欧美日本国产欧美日本韩国99 | 亚洲激情.com| 亚洲精品V天堂中文字幕| 夜色综合网| 九九这里精品| 午夜69成人做爰视频| 色五月综合在线| 丁香五月播播| 97超级碰| 色五月婷婷DVD| 色婷久久| 日日噜人人人做人| 九九这里都是精品| 亚洲精品国产setv| 色五月天丁香| 伊人久久婷| 五月天婷婷基地| 色吧网91| 人人草人人爱手机视频看看| 激情婷婷丁香五月| 丁香六月爱综合| 五月丁香在线| 美女要搞搞天天搞搞搞网站| 五月丁香六月激情| 在线VA视频| www.夜夜| 99热这里只有精品手机在线观看| 亚洲99精品欧美一区| 蜜臀久久99精品久久久久久酒店| 密臀av无码人妻精品| 色婷婷丁香| 丁香五月婷婷激情蜜桃| 精品A√| 97精品人人A片免费看| 五月视频日本免费观看| 国产又爽又猛又粗的视频A片| 婷婷黄色网| 午夜激情五月| 色综合女人99| 婷婷五月色激情欧美激情| 激情婷婷五月天日本系列| 9久久狠狠的| 青草热视频这里只有精品| 超碰在线网站9| 色性日本| 五月婷婷综合性爱噜噜| 色婷婷中文在线| 日韩欧美颜射| 五月丁香婷婷久久| 天天爽天天| 天天爽在线视频| 97干在线视频| 99热只有这里才是精品| 1024久婷| 婷婷伊人久久| 亚洲久久视频| 天天爽天天摸天天爱| 国产亚洲网站在线| 色9999日韩国产| 五月婷婷精品视频| 9热在线观看| 色色婷| 精品一二三区视频立| 国产成人AV不卡| 激情五月天在线视频| 九九色之九九色之88| 婷婷伊人| 五月丁香花婷婷玉莉AV| 人人操AV| 538在线精品| 婷婷丁香人妻天天久久| 丁香婷婷久久| 国产女18毛片多18精品| 亚洲中文字幕AV| 丁香五月色综合色播五月| 亚洲182在线观看| 日韩在线9| 噜噜噜噜噜日本视频| 激情性爱婷婷| 五月丁香啪啪啪| 五月色天情| 99综合免费视频| 久操香蕉| 狠狠穞A片一區二區三區| 青青草原福利在线| 激情综合婷婷五月| 五月婷婷七月丁香| 国产精品天天狠天天看| 丁香色五月 97干| 六月婷婷国产| 高清无码.com| av在线免费网站 | 人人性久久| 色色99| 九九99视频| 五月婷婷综合热| 97艹| 青草视频在线播放| 久/久精品99看9| 色婷婷五月天不卡| 日本99热| 久99久视频免费观看| 超PEN精品在线| 99精在线| 色婷婷伊人| 思思国产99| 亚州激情网| 黄色激情久久| 久久一级片| 北条麻妃伊人| 色狠狠色噜噜AV天堂五区| 五月丁香婷婷综合| 色婷婷9| 婷婷久久综合久色| 思思久热| 九色视频这里只有精品| 五月婷婷狠天天色综合| 激情小说五月天社区丁香| 五月婷婷六月丁香首页| www亚洲无码| www.丁香黄色五月天人与| 九久9精品| 在线播放成人网站| 成人一级片| 天天日天天舔| 这里只有精品久久| 综合色色婷婷| 99色在线观看视频| 夜夜大香蕉婷婷丁香| 五月丁香啪啪网| 丁香六月欧美| 99久久网站| 五月天激情国产综合婷婷| 一本久道综合色婷婷五月| 精品99网站| 婷婷综合五月激情| 色婷婷综合五月| 96性爱视频| 五月天激情Av| 婷婷激情五月综合丁香社| 色五月激情基地| 另类图片婷婷五月天| 69er小视频| 九九亚洲小视频| 天天日,夜夜爽| 五月综合六月丁| 婷婷五月色网| 夜夜干 夜夜操| 亚洲综合热| 深爱激情五月网| 丁香五月欧美| 色色色综合网| 婷婷久久综合久| 第四色在线观看| 九九九九九九热| 99婷婷色| 99无码超碰| 色五月色五天色情网| 99碰网站| 67194国产| 丁香六月婷婷色XXXX| 久草 tingting| 天堂网色色| 六月丁香啪啪| 婷婷五月免费在线| 99视频精品在线| 超碰人人草| 国产午夜精品一区二区三区嫩草| 97碰| 大地9中文在线观看免费高清| 97色婷| 亚洲国产精品VA在线看黑人| 久久全色| 大香蕉啪啪啪| 久久这里只有精品1| WWW.桔色成人.COM| 五月天婷婷成人网| 五月婷婷综合色啪首页| www.五月婷婷久久.com| 99精品在线下载| 久久3p| 风流少妇A片一区二区蜜桃 | 免费97碰碰| 99久久99视频只有精品| 天天日夜夜爽。| 色欲婷婷五月天| 激情 久久 婷婷| 色五月婷婷av| 五月婷婷激情四月| 欧美丁香婷婷五月| 热996精品在线观看| WWW五月婷婷| 日本婷婷色日| 午夜性做爰电影| www,com,五月色色| 日本va视频| 99日本精品视频热| 婷婷综合国产| 99r这里只有精品哦| 噜噜在线| 国产干逼片| 婷婷四月 成人 狠狠干| 中文成人在线| 天天操天天插天天射| 五月婷六月综合在线观看| 五月在线| 五月婷婷丁香日韩在线| 婷婷色色狠狠| 亚洲中文字幕av| 丁香熟女乱| xxx综合在线| 99久久性爱| 激情视频综合| 天天爱夜夜爽| 久久婷婷五月综合色欧美| aⅤ79成人片| 九九热精品视频在线观看| 久久曰9| 婷婷 激情 五月| 99精品热| 色婷婷成人网| 在线观看亚洲视频影院| 影音先锋综合网| 色欲资源网| 粉嫩AV久久一区二区三区| 色五月综合网| 97操在线视频| 99A级片| 狠狠色大香蕉| www热久久yy9| 99这里只有| 天啪天啪天啪天啪| 婷婷六月视频| 亚洲精品第一国产综合亚AV | 色综合五月天| 综合久| 日韩啪啪视频| 五月丁香婷婷久久| 久久综合性| 香蕉综合在线| 婷婷五月激情丁香| WWW,色五月| 开心婷婷五月| 色色无码日韩| 香蕉久久国产AV一区二区| 琪琪理论片| 精品人妻伦九区久久AAA片| 玖玖伦理电影| 亚洲欧洲中文日韩久久AV乱码| 国产avapp 网| 99久在线视频| 久操操| 99精品在线播放| 婷丁香五月天| 大香蕉色婷婷伊人在线| 天天成人综合视频| 五月丁香A∨在线| 99re这里只有| 成人五月丁香社区| 激情综合五月天| 五月丁香999| 久久九九99视频| 丁香五月天激情免费在线观看AV777 | 91丨九色丨首页| 日本五月视频| 超碰97色| 久久精品视频99| 色情性爱视频网址| 2025超碰| 综合网五月| 天天搞天天色综合| 色综合伊人网| 激情五月丁香在线观看直播| 狠狠综合久久综合| 99操久久| 色五月av伊人| 久久亭亭电影| 日本色婷婷| www.狠狠狠狠| 五月丁香婷色| 99爱在线视频| 婷婷色成人| 国产ava| 99精品视频在线观看| 99无码黄色视频| 九九99久久| 久久五月天激情| 五月天开心网| 五月花成人网| 久久久婷婷五月亚洲97号色| 婷婷成人五月天| 日日天天干| 国产五月丁香在线| 婷婷丁香先锋资源网站| 深爱激情五月网| 日韩操| 婷婷和五月天| 亚洲天堂有码| 99操视频| 开心五月深爱五月| 综合xx网| 丁香六月婷婷综合欧美| 欧美日韩二区在线| 激情AV| 99热在线成人网站| 色五月丁香总合网| 六月丁香婷婷色狠狠久久| 可以免费观看的AV| 久久超级碰碰| 激情五月亚洲| 婷婷欧美色| 九九精品热播| 91a片爽| 97干在线视频| 婷婷五月天AV在线| 涩涩涩.com| 26uuu淫色| 超碰不卡在线| 久久五月天丁香| 欧美黑人巨大性生话| 97香蕉久久超级碰碰高清版| 色婷婷五月天天天干天天操天天爽 | 2016日日夜夜操| 五月婷婷视频| 九色PORNY9l原创自拍| 狠狠色噜噜狠狠| 常久最新免费的色吊丝| 管管補管管紱| 久久精品性爱视频,| 玖玖爱综合网| 久人操| 人操人| 日韩av手机在线观看| 婷婷综合激情| 91九色国产在线| 激情五月天综合婷婷网| 久8色色| 久久五月婷综合网| 深爱 五月天| 思思99热这里只有精品| 五月丁香琪琪| 在线天堂9| 日本WWW九九九| 色99免费视频中文| 91久久九九| 久久99激情五月天| 色噜噜狠狠狠狠色综合久欧美| 五月丁香琪琪| 超碰在线9| 五月天激情啪啪| 五月丁香六月欧美综合网站| 亚艹艹| 丁香激情婷婷网| 色情一区二区播放| 日本五月视频| 六月 丁香 视频| 婷婷五月丁香伊人| 五月丁香中文字幕| 六月综合婷婷开心伊人| 丁香五月天成人网站| 五月婷婷亚洲| 超碰人人99| 五月丁香性爱| 欧美丁香婷婷五月| 久久女婷| 国产成人精品一区二三区熟女在线 | 人人爱摸视频| 五月精品| 永久免费视频| 欧美人妻一区二区| 久久小视频| 中日韩美欧成人一区二区精品在线| 久久婷五月天| 99久久99九九99九九九| 国产69久久久欧美黑人A片| 亚洲妇女熟BBW| 欧美色必爱| 东北黄色一级| 五月天堂色| 狠狠色婷婷7| 思思久久思思| 日日干天天| 中文字幕在线日亚洲9| 九九香蕉网| seuuu婷婷| 天堂网啪啪| 久久激情网| 丁香五月第九色| 丁香五月婷婷激情中文| 成人综合AV| 婷婷91| 五月婷婷久久爱| 久久九⑨| 丁香九月婷婷| 日日撸日日操| 99视频九九热| 国产精产国品一二三在观看 | 久久ri精品| www91久久| 久久久精品99亚洲综合| 天天干天天色天天干| 亚洲第一综合| 久久五月天婷婷| 婷婷黄色网| 九九色精品| 久久成人精品视频| 久草视频一,二三四| 无码人妻少妇色欲AV一区二区| 亚洲无码99| 五月婷婷亚洲综合在线 | 国内一级精品| 五婷婷六月合| 五月丁香激情综合网| 五月天激情综合网| 99综合成人视频在线观看| 超碰免费在线| 日日噜狠狠色综合久| 日日日日日| 色综合久久综合| 26uuu淫色| 成人色图情色成人网 www.5b5b5bcom 五月天| nvrentiantang av| 婷婷97狠狠成人网站| 99超碰人人| 五月丁香在线国产 | 99艹精品在线观看| 成人色五月天婷婷| 99热这里只有精品青草| 欧美S码亚洲码精品M码| 久久婷五月综合| 天天爽夜夜爽| 任你草| 丁香婷婷色色| 热99精品视频| 国产精品国产成人国产三级| 亚洲情色一区| 青草少妇激情| 国产亚洲精品久久久久久久久动漫| 91蝌蚪窝视频在线| 丁香色婷婷| 五月丁香六月综合激情| se色婷婷视频| 琪琪理论片| 久操无码| 丁香五月婷婷综合91| 99精品无码网站| 久久久婷婷| 天天色播| 超碰91人人操| 日本精品九九九| 丁香六月婷婷综合在线| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲在线成人| 激情影院免费视频婷婷五月天| 日日夜夜干| 五月丁香久久激情综合| 五月丁香六月婷婷中文版| 五月天婷婷综合| 天天操B| 色婷婷五月在线| 9九色首页| 亚洲中文乱字字幕在线永久| 天堂网亚洲色图| 丁香五月激情无码视频| 丁香激情六月天婷婷| 五月天激情久久| 啪啪综合| 高清不卡一区| 日韩av在线电影| 成人 视频免费观看网站| 天堂色色色| 激情第四色| 香蕉久久国产av一区二区| 久久人人九| 东京热免费视频网站| 日韩视频99| 色青五月天| 五月婷婷激情综合av| 丁香六月婷婷色播| 九九大香蕉黄色影院| 玖玖五月| 久久婷婷色| 99热成人永久免费| 深爱激情五月天| 丁香伊人激情| 国产免费一区二区三州老师F1……| 9久久精品| 久热超碰| 77799热| 强辱丰满人妻HD中文字幕| 狠狠色五月| 潮汕成人AV片在线| 婷婷俺去也| 色婷婷综合久久久久| 操骚货在线| 怡红院院久久| 996黄色片| 久9免费视频| 99视频色在线观看| 日产精品一线二线三线芒果| 丁香五月综合在线观看| 色噜久| 国产精品视频免费看| 久久综合99| 婷婷成人基地| 色五月婷婷丁香五月| 丁香五婷婷| 五月婷婷啪啪| 久久久久人无码人妻| 五月天伊人久久| 99久re热视频精品98| 婷婷大美在线| 婷婷综合伊人| 婷婷99| 五月婷婷无码专区| 无码动漫av| 狠狠狠狠狠干| 五月丁香六月综合激情无码软件亮点 | 日韩激情婷婷五月天| 婷婷五月综合色小姐小说| 五月丁香网站| 日韩砖区| 九月婷婷在线观看| 激情六月综合| 可以免费看的av网站| 亚洲网站999| 国产成人精品亚洲线观看| 综合色色色| 开心 五月 综合| 国产亚洲成AV人片在线| 五月丁香啪啪| 九九久久网| 热久久成人| 伊人三级激情| 中文字幕欧美日韩VA免费视频| 这里只有精品日韩| 国产探花一片区| 婷婷金品综合视频| 激情丁香五月婷婷啪啪| 色噜噜婷婷| 午夜九九九九九九| 亚洲操逼网| 狠狠综合网| 婷婷五月天视频小说| 99色热视频| 中文AV网站| AAA久久| 伊人大香久久| 无码99| 久久久久久久97| 人妻精品久久久久久| 中海油常州环保涂料有限公司| 日日操天天操| 97亚洲婷婷| 人人视频色| 5月丁香婷婷| 99日本黄站| 激情熟女网| 日本美女97在线视频| 99天堂网| 99热大香蕉| 91午夜激情| www,五月天激情| 日日操夜夜爽白洁| 9久久久久久久久久久| 午夜激情久久| 2025神马午夜福利| 色啪网| 啪啪综合网| 丁香五月欧美午夜视频| 五月丁香六月婷婷亚洲视频| 五月婷婷久久综合| 国产亚洲精品人人| 无码人妻电影| 激情亚洲婷婷| 色婷婷亚洲在线观看| 操逼电影免费看| 婷婷五月激情黄色| 无码激情AAAAA片-区区| 五月丁香婷婷综合| 天天色亚洲| 九九热黄色| 9色视频在线| 热久久91| 99久精品视频| 可以免费观看的AV| 色99在线观看| 五月丁香婷婷综合视频| 五月婷婷丁香社区| 99爱视频在线播放| 5月婷婷激情网| 婷婷五月天六月| 草婷婷在线| 欧美英丁香开心快乐六月天网| 視频福利乱色| 久久青草国| 久久区区一二三av| 毛v一区二区视频| 五月天综合色| 日韩xx在线| 婷婷五月天中文字幕| 99在线视频播放| 免费AV播放| 五月色婷婷在线观看| 五月激情五月丁香| 99re久热只有精品6在线直播| 欧美激情久| 黄色AAAAAAA| 色蜜婷婷| 国产在线黄色| 日本色道视频网站| 欧美va亚洲va| 狠狠色丁香婷婷基地| 99性感视频| 五月天亚洲色| 人人综合久| 开心五月激情网| 五月丁香大香蕉| 色色色热| 99精品视频在线观看| 色婷五月天| 教师性爱毛片| 丁香天堂夜| 91婷婷色| 99精品在线播放| 五月婷婷激情| 综合激情开心五月| 婷婷五月天激情亚洲小说| 激情五月丁香五月| 日本啪啪天堂| 色婷婷小说| 超碰啪啪网| 日本 欧美在线| 久久人妻爱爱| 思思热久热| 91九色在线| 99干日日干| 啪精品| 五月丁香久久网| 久久精品亚洲一级牲爱综合| 亚洲视频99| 天天干天天操天天拍| 丁香综合| 色色色五月婷| 亚洲中文无码成人| 天天做天天爱天天要| 99综合| 色 五月婷婷基地| 97干婷婷| 九九热精品视频在线观看| 色婷大香蕉| 色色五月天婷婷| 亚洲国产色色| 淫视馆aV二区一区| 91制片厂久久久国产电影| 九色91国产| 玖久精品视频9| 婷婷激情综合| 1024AV视频| 激情五月综合网| 五月天伊人综合| 五月丁香网站| 久久久久久18| 婷婷舔| 九九色欲网| 伊人婷婷大香蕉在线| 五月婷在线观看| 深爱五月日韩| 久久五月综合| 超级黄色片| 五月综合精品| 五月婷丁香| 影音先锋91资源站| 五月婷婷免费在线观看| 国产99热| 久久99三级在线视频| 玖玖资源网站最新站| 婷婷久久久| 日韩AV中文字幕在线| 日本激情91| 涩五月婷婷| 五月天丁香欧美激情| 婷婷久久国产视频| 丁香九月婷婷综合| 中文字幕综合色| 好好日激情五月天| 五月婷婷欧美| 五月天怕怕| 精品人妻久久久久久久| www婷婷| 日本色超碰| 五月丁香六月婷精品视频| 久久亚洲激情五码| 激情久久 婷婷| 秋霞三及片| 伊人在线视频| 久久久久久久丁香五月天婷婷| 五月丁香六月激情综合网| 欧美精品18| 五月天精品| 在线另类| 色三级色三级| 亚洲AVwwwwwww| 99热成人在线观看| 婷婷欠久少妇| 成人婷婷深爱综合网| 久久性视频| 99精品国产在热久久| 超碰成人在线观看| 国产无人区大片| 天天爽夜夜操| 亚洲四色五月| 99热国产这里只有精品| www.夜夜爱.com| 色插综合网| 激情99| 亚洲天堂AV免费片| 九九综合色| se色99| 亚洲视频在线观看| 五月天无码视屏播放| 专区无日本视频高清8| 色婷丁香五月| 五月天精品| 色婷婷综合五月| 综合久久十三| 婷婷六月激情综合|