亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

Happy × OpenCode 運行時協(xié)議追蹤實錄:從源碼跑通到消息-部件(message+parts)的權限、媒體與子會話對照

Happy × OpenCode 運行時協(xié)議追蹤實錄:從源碼跑通到消息-部件(message+parts)的權限、媒體與子會話對照 人工智能AI AgentAI 應用移動開發(fā)CLI后端【免費下載鏈接】happyMobile and Web client for Codex and Claude Code, with realtime voice, encryption and fully featured項目地址https://gitcode.com/gh_mirrors/happy20/happy點擊查看免費下載本文是 Happy 項目針對 OpenCode 做的一輪協(xié)議層運行時追蹤從源碼啟動 OpenCode 服務、復制全局認證到隔離臨時根目錄、驅動真實樣例項目只相信「發(fā)給 OpenCode 的請求體、OpenCode 返回的 JSON、/event的原始 SSE 日志、以及 OpenCode 源碼」四類證據從而回答一個核心問題——OpenCode 的實時同步與轉寫模型到底是什么樣Happy 的轉寫與同步層又該從中借鑒什么。讀完本文你將掌握 OpenCode 目錄路由、權限詢問、媒體輸入、子會話四類真實協(xié)議的完整載荷與事件序列并理解docs/plans/provider-envelope-redesign.md中「消息 部件」改造方案的證據來源。一、追蹤背景與證據邊界這份追蹤記錄撰寫于 2026-03-21是較早一輪競品分析缺失的協(xié)議級補充。其方法非常直接運行 OpenCode 源碼把全局安裝里的認證復制進一個隔離的臨時根目錄驅動一個真實的小項目并且只信任以下證據發(fā)送給 OpenCode 的精確請求體OpenCode 各端點返回的精確 JSON 響應OpenCode/event的原始 SSE 日志OpenCode 源碼本身。在 Happy 一側這份文檔只信任 Happy 倉庫內的代碼。換言之這是一份「用真實運行軌跡說話」的對照文檔而不是紙面推測。1.1 實際使用的環(huán)境項值OpenCode 源碼檢出../happy-adjacent/research/opencode作者本地外部檢出目錄檢出版本commit2e0d5d230893dbddcefb35a02f53ff2e7a58e5d0樣例項目倉庫內的 environments/lab-rat-todo-project純前端靜態(tài)小項目index.html、app.js、styles.css、README.md隔離運行時根/tmp/opencode-trace-dev.ptZAVJ認證來源~/.local/share/opencode/auth.json復制到/tmp/opencode-trace-dev.ptZAVJ/share/opencode/auth.json復制后的認證文件中僅保留了openai一個 provider key1.2 服務端啟動命令XDG_DATA_HOME/tmp/opencode-trace-dev.ptZAVJ/share \ XDG_CACHE_HOME/tmp/opencode-trace-dev.ptZAVJ/cache \ XDG_CONFIG_HOME/tmp/opencode-trace-dev.ptZAVJ/config \ XDG_STATE_HOME/tmp/opencode-trace-dev.ptZAVJ/state \ OPENCODE_CONFIG_DIR/tmp/opencode-trace-dev.ptZAVJ/profile \ OPENCODE_DB/tmp/opencode-trace-dev.ptZAVJ/share/opencode/opencode.db \ bun run --cwd packages/opencode --conditionsbrowser src/index.ts \ serve --hostname 127.0.0.1 --port 4098 --print-logs --log-level DEBUG這套命令的要點在于通過XDG_*系列環(huán)境變量把 OpenCode 的數據、緩存、配置、狀態(tài)全部隔離到/tmp/opencode-trace-dev.ptZAVJ下OPENCODE_CONFIG_DIR指定獨立配置目錄OPENCODE_DB顯式指定 SQLite 數據庫路徑服務監(jiān)聽127.0.0.1:4098并以 DEBUG 級別打印日志。這樣既能復用全局認證只含 openai key又不會污染真實環(huán)境。支撐這套實測的關鍵 OpenCode 源碼文件作者本地檢出路徑從../happy-adjacent/research/opencode起packages/opencode/src/auth/index.tspackages/opencode/src/server/server.tspackages/opencode/src/server/routes/experimental.tspackages/opencode/src/session/message-v2.tspackages/opencode/src/session/prompt.tspackages/opencode/src/tool/task.tspackages/opencode/src/permission/index.ts二、什么是「真實」證據分散在四個面追蹤得出的第一個重要結論是OpenCode 有用的協(xié)議證據并不是一個大的隱藏 RPC 信封而是分散在四個面上發(fā)送到POST /session/:id/prompt_async的請求體從GET /session/:id/message讀到的持久化消息行從GET /event獲得的實時補丁流控制面端點如/path、/permission、/session/:id/children、/experimental/worktree、/experimental/workspace的響應。這個區(qū)分對 Happy 至關重要。OpenCode 并沒有一條「一次性提供給 UI 全部所需」的 append-only 轉寫流而是由四類機制協(xié)同帶類型部件的穩(wěn)定消息行stable message rows with typed parts針對這些行的實時補丁事件live patch events權限與會話狀態(tài)的一等旁路事件first-class side-channel events轉寫之外的獨立 workspace / worktree 路由。三、Flow 0目錄路由、worktree、workspace 與「sandbox」的真實含義在觸碰任何 prompt 之前先驗證服務端如何限定請求范圍。關鍵路由輸入是請求頭x-opencode-directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project真實的GET /path響應{ home: /Users/kirilldubovitskiy, state: /tmp/opencode-trace-dev.ptZAVJ/state/opencode, config: /tmp/opencode-trace-dev.ptZAVJ/config/opencode, worktree: /Users/kirilldubovitskiy/projects/happy, directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project }當前項目對應的真實空列表GET /experimental/worktree - [] GET /experimental/workspace - []這意味著項目限定是請求路由問題不是轉寫問題當前項目位于一個更寬的worktree根目錄之下以及一個更窄的directory之內worktree 與 workspace 是顯式的控制面資源這些內容不會以type: sandbox或type: workspace之類的轉寫部件出現。所以當 OpenCode 的產品語言說「sandbox」時落在具體實現上主要是三件事目錄限定、可選的 workspace 路由、可選的 git worktree 管理。它不是Happy 已經擁有代碼的那種 OS/文件系統(tǒng)/網絡沙箱策略——后者可以參考 packages/happy-cli/src/sandbox/config.ts 中的buildSandboxRuntimeConfig它按sessionIsolationstrict/workspace/custom構造文件系統(tǒng)allowWrite/denyRead/denyWrite白名單并按networkModeblocked/allowed/custom配置allowedDomains/deniedDomains/allowLocalBinding等網絡策略。這是兩種完全不同的「沙箱」語義。四、Flow 1圍繞apply_patch的權限詢問——最完整的一條真實鏈路這是整個追蹤中最干凈的一條鏈路因為它一次跑通了用戶 prompt 創(chuàng)建 → 助手步驟生命周期 → reasoning → 工具調用 → 權限請求 → 權限回復 → 文件編輯副作用 → 助手最終跟進。4.1 會話創(chuàng)建強制詢問的編輯權限規(guī)則POST /session { title: trace permission ask, permission: [ { permission: edit, pattern: *, action: ask } ] }會話創(chuàng)建時顯式帶上權限規(guī)則把edit的*模式設為ask從而強制觸發(fā)權限詢問。4.2 實際發(fā)送的 Prompt 請求體POST /session/{sessionID}/prompt_async { agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Create a new file named TRACE_PERMISSION.md in the current directory with exactly one line: rat permission trace. Then reply with one short sentence. } ] }注意prompt 本身就是「帶類型部件的數組」agent與model在消息外層顯式聲明。4.3 用戶消息被持久化{ info: { role: user, id: msg_d0f8263b50016s8bKlZ36Te52c, sessionID: ses_2f07d9c71ffeikGiLoOKqF2Evb }, parts: [ { type: text, text: Create a new file named TRACE_PERMISSION.md in the current directory with exactly one line: rat permission trace. Then reply with one short sentence. } ] }消息被持久化為info角色、id、會話 idparts有序類型部件兩層結構與請求體形態(tài)一致。4.4 實時權限事件SSE真實 SSE 事件{ type: permission.asked, properties: { id: per_d0f826ef60011FReJ16cM2d0MK, sessionID: ses_2f07d9c71ffeikGiLoOKqF2Evb, permission: edit, patterns: [ environments/lab-rat-todo-project/TRACE_PERMISSION.md ], always: [*], tool: { messageID: msg_d0f8263b9001UcnDrNrnbyYeyT, callID: call_uJj6gIQfIPpSoBV9oOWBT7cF }, metadata: { filepath: environments/lab-rat-todo-project/TRACE_PERMISSION.md, files: [ { relativePath: environments/lab-rat-todo-project/TRACE_PERMISSION.md, type: add, after: rat permission trace\n, additions: 1, deletions: 0 } ] } } }這是追蹤里最重要的發(fā)現之一OpenCode 的權限不是簡單的「工具 X 想要批準」。這個請求攜帶了權限種類edit精確路徑模式patterns穩(wěn)定的請求 idper_...與工具調用的回鏈tool.messageIDtool.callID一份可直接渲染的 diff 載荷metadata.files帶type、after、additions、deletions。也就是說權限事件本身就為 UI 準備好了審批界面的全部素材。4.5 工具調用前后的助手消息批準后持久化的助手消息{ info: { role: assistant, finish: tool-calls, id: msg_d0f8263b9001UcnDrNrnbyYeyT }, parts: [ { type: step-start, snapshot: dfd3f0873ec51c2ddbf0b6b79acc154e5ab15c5d }, { type: reasoning, text: **Creating a file**\n\nI need to create a file..., metadata: { openai: { itemId: rs_..., reasoningEncryptedContent: gAAAAA... } } }, { type: tool, callID: call_uJj6gIQfIPpSoBV9oOWBT7cF, tool: apply_patch, state: { status: completed, input: { patchText: *** Begin Patch\n*** Add File: TRACE_PERMISSION.md\nrat permission trace\n*** End Patch }, output: Success. Updated the following files:\nA environments/lab-rat-todo-project/TRACE_PERMISSION.md } }, { type: step-finish, reason: tool-calls } ] }隨后 OpenCode 又發(fā)出第二條助手消息承載最終可見文本{ info: { role: assistant, finish: stop }, parts: [ { type: step-start }, { type: text, text: Done. }, { type: step-finish, reason: stop } ] }關鍵點工具調用攜帶自己的狀態(tài)機state.statuspending → running → completed且step-start/step-finish是獨立部件reasoning 也是獨立部件最終文本又落在單獨的 assistant 消息里。整條鏈在持久化層是自解釋的。4.6 實際看到的實時事件序列原始 SSE 流的順序18 步session.createdmessage.updated用戶消息message.part.updated用戶text部件session.status→busymessage.updated助手消息殼message.part.updated→step-startmessage.part.updated→reasoning大量message.part.delta塊流式推送 reasoning 文本message.part.updated→ 工具部件status: pendingpermission.askedpermission.repliedfile.editedfile.watcher.updatedmessage.part.updated→ 工具部件status: runningmessage.part.updated→ 工具部件status: completedmessage.part.updated→step-finish第二條助手消息攜帶最終textsession.status→idle文件確實在磁盤上被創(chuàng)建TRACE_PERMISSION.md: rat permission trace五、Flow 2媒體輸入失敗路徑——provider 拒絕前的誠實存儲失敗場景很有價值因為它展示了 provider 拒絕請求之前 OpenCode 到底存了什么。5.1 Prompt 請求體{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: tiny.png, url: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO7Z0XQAAAAASUVORK5CYII } ] }5.2 用戶消息被持久化原樣{ info: { role: user }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: tiny.png, url: data:image/png;base64,iVBORw0K... } ] }5.3 助手錯誤被持久化{ info: { role: assistant, error: { name: APIError, data: { message: The image data you provided does not represent a valid image. Please check your input and try again., statusCode: 400, isRetryable: false, metadata: { url: https://api.openai.com/v1/responses } } } }, parts: [] }實時流同時發(fā)出了session.error。這是一個 OpenCode「誠實」的好例子用戶側的file部件被原樣存儲失敗則成為助手/會話的錯誤狀態(tài)而沒有被「規(guī)范化」掉。對 Happy 而言這意味著消息層必須能表達失敗而不是把失敗折疊進某個模糊的文本里。六、Flow 3媒體輸入成功路徑——本地文件被 OpenCode 自行解析成功路徑完全不同因為輸入 URL 是本地file://...由 OpenCode 自己解析。6.1 Prompt 請求體{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: logo.png, url: file:///Users/kirilldubovitskiy/projects/happy/logo.png } ] }6.2 規(guī)范化后的用戶消息{ info: { role: user }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: text, synthetic: true, text: Called the Read tool with the following input: {\filePath\:\/Users/kirilldubovitskiy/projects/happy/logo.png\} }, { type: file, mime: image/png, filename: logo.png, url: data:image/png;base64,iVBORw0K... } ] }這是session/prompt.ts的真實行為原文檔明確標注非猜測OpenCode 注入一條synthetic: true的文本部件描述這次讀取再把媒體本身作為file部件存儲且本地文件被解析成具體的data:URL。6.3 助手響應被持久化{ info: { role: assistant, finish: stop }, parts: [ { type: step-start }, { type: reasoning, text: , metadata: { openai: { itemId: rs_..., reasoningEncryptedContent: gAAAAA... } } }, { type: text, text: A cute cartoon otter is lounging in water while using a laptop. }, { type: step-finish, reason: stop } ] }6.4 實時流證明了什么/event日志顯示message.part.updated合成讀取文本→message.part.updatedfile部件→ reasoning 創(chuàng)建 → 流式message.part.delta助手文本→session.status回到idle。所以真實的媒體故事是三段式用戶側 prompt 部件type: file內部轉寫展開synthetic text 具體file助手側回答普通文本輸出。七、Flow 4子任務 / 子會話 / 權限約束——與 Happy 對照最重要的一環(huán)這是四類追蹤里與 Happy 做并排對照最重要的一條。7.1 Prompt 請求體含 agent 部件{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Find the main files in this tiny project and report back briefly. }, { type: agent, name: explore } ] }7.2 用戶消息被改寫OpenCode沒有只存原始的agent部件而是把用戶消息重寫為{ info: { role: user }, parts: [ { type: text, text: Find the main files in this tiny project and report back briefly. }, { type: agent, name: explore }, { type: text, synthetic: true, text: Use the above message and context to generate a prompt and call the task tool with subagent: explore } ] }同樣是session/prompt.ts的真實行為追加一條合成文本把「派生子代理」這件事顯式寫進轉寫。7.3 父會話的助手消息與task工具部件{ info: { role: assistant, finish: tool-calls, id: msg_d0f855de2001b0RbgA3JGA5lzk }, parts: [ { type: step-start }, { type: reasoning, text: **Generating a task prompt**\n\nI need to call the task tool with the subagent explore... }, { type: tool, callID: call_OqUEr7ccnf3zEb2rgLYDp5uR, tool: task, state: { status: completed, input: { description: Find main project files, prompt: Inspect the repository and identify the main files in this tiny project. Focus on the key entry points, config files, and any top-level files that define how the project runs. Return a brief list of the most important files with one short note each about what they appear to do. Keep it concise and do not modify anything., subagent_type: explore }, output: task_id: ses_2f07a8dd6ffeRc23sIIgM4ZpMT (for resuming to continue this task if needed)\n\ntask_result\nMain files:\n\n- .../index.html ...\n- .../app.js ...\n- .../styles.css ...\n- .../README.md ...\n\nNo build/config files are present; it looks like a simple frontend-only static app.\n/task_result, metadata: { sessionId: ses_2f07a8dd6ffeRc23sIIgM4ZpMT, model: { modelID: gpt-5.4-mini, providerID: openai } } } }, { type: step-finish, reason: tool-calls } ] }兩個關鍵點父轉寫存儲task工具調用及其結果可恢復性由子會話 id 提供以task_id形式返回ses_2f07a8dd6ffeRc23sIIgM4ZpMT即子會話 id可用于續(xù)跑該任務。7.4 子會話真的被創(chuàng)建了真實GET /session/{parentID}/children響應[ { id: ses_2f07a8dd6ffeRc23sIIgM4ZpMT, parentID: ses_2f07aa25affeqiZHSnBiN8pSyG, title: Find main project files (explore subagent), directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project, permission: [ { permission: todowrite, pattern: *, action: deny }, { permission: todoread, pattern: *, action: deny }, { permission: task, pattern: *, action: deny } ] } ]這是「OpenCode 子代理就是子會話」最干凈的證明子會話擁有自己的 id、自己的parentID指向父會話、自己的標題、繼承的目錄以及自己的權限規(guī)則這里顯式 deny 了 todo 寫入/讀取與再派生子任務防止無限遞歸。7.5 跨父子的實時流原始/event流父會話用戶消息創(chuàng)建父會話助手step-start父會話 reasoning 增量父會話task工具部件 →pending子會話session.created父會話工具部件 →running子會話內出現子會話用戶消息子會話助手消息開始子會話 reasoning 增量流式推送子會話達到idle父會話工具部件 →completed結論OpenCode 并沒有在一條扁平消息泳道里「假裝」子代理而是使用父會話轉寫 子會話轉寫 父工具元數據鏈接到子會話 id。八、與 Happy 當前代碼的逐項對照以下對照只使用 Happy 代碼不做 Happy 運行時追蹤表中 OpenCode 側結論由日志/源碼證明主題OpenCode日志/代碼證明Happy代碼證明外層信封消息行已有頂層info 有序類型化partspackages/happy-wire/src/messages.ts 仍把較新格式包裝為role: session 內層content: sessionEnvelope事件判別部件用頂層type如text、reasoning、tool、file、agent、subtask、step-startpackages/happy-wire/src/sessionProtocol.ts 仍把事件類型嵌套在ev.t之下sessionEventSchema是t判別聯(lián)合權限實時permission.asked/permission.replied事件攜帶工具回鏈與 diff 元數據packages/happy-app/sources/sync/reducer/reducer.ts 仍需通過合并類轉寫消息與加密agentState來重建權限狀態(tài)子代理帶parentID的真實子會話task_id是可恢復的子會話 idpackages/happy-wire/src/sessionProtocol.ts 的信封只有可選的subagent字段cuid2 校驗沒有子會話身份 轉寫級鏈接媒體用戶file部件 合成輔助text成功的本地文件變成具體data:URLpackages/happy-wire/src/sessionProtocol.ts 只有一種file事件形態(tài)計劃文檔提出直接采用photo/video/file變體沙箱 / 隔離路由靠 directory/workspace 與可選 worktree「sandbox」大多是 worktree/workspace 語言packages/happy-cli/src/sandbox/config.ts 已有具體的文件系統(tǒng) allow/deny 規(guī)則與網絡模式客戶端復雜度OpenCode 的 reducer 把實時補丁合并進已類型化的消息行packages/happy-app/sources/sync/typesRaw.ts 與 packages/happy-app/sources/sync/reducer/reducer.ts 仍保留多個 legacy 載荷族系agentEvent、session 事件、tool-call 等及復雜的重建邏輯對照結論非常直白OpenCode 擁有更干凈的轉寫形態(tài)Happy 擁有更強的真實沙箱配置Happy 當前的 reducer 復雜度是「不再保留多個明文載荷族系」的最強論據。關于沙箱這一點可以進一步說明Happy 的buildSandboxRuntimeConfig在sessionIsolation: strict時只允許寫入會話目錄 額外寫入路徑 共享 agent 狀態(tài)路徑~/.codex、~/.claude在workspace模式放寬到 workspace 根網絡側blocked模式把allowedDomains與deniedDomains都清空allowed模式則放行。這套文件系統(tǒng) 網絡的策略能力是 OpenCode 目錄路由式「沙箱」所不具備的。九、對provider-envelope-redesign.md的啟示當前規(guī)劃上下文來自 docs/plans/provider-envelope-redesign.mdDRAFT v2OpenCode 衍生現有判斷仍然成立p6 信封重設計工作位于 dirty worktree尚未進入已提交的分支歷史該工作已經驗證了若干有價值的清理動作type放頂層、去掉外層role: session、引入parentId/agentId、轉寫級權限、直接媒體變體該計劃文檔中的現有提案仍是「記錄的方案」plan of recordOpenCode 的原始協(xié)議形態(tài)仍是鎖定 Happy 新穩(wěn)態(tài) schema 前最值得評估的外部參照Claude 更舊的類轉寫格式如果最終證明最簡單穩(wěn)定的模型更接近那段歷史仍是合理的回退選項。原文檔特別強調OpenCode并不主張照抄 ACP 包裝器行為而是主張照抄原始轉寫形態(tài)穩(wěn)定的消息行stable message rows類型化部件typed parts顯式的權限對象explicit permission objects顯式的子會話身份explicit child-session identity轉寫狀態(tài)與實時補丁傳輸的清晰分離。這與provider-envelope-redesign.md的取舍一致該計劃采納 messageparts 形態(tài)但拒絕OpenCode「權限/問題走旁路 SSE 事件」的做法——計劃在工具部件狀態(tài)機中加入顯式blocked狀態(tài)讓權限請求與決策永久落在工具部件上block字段 decision: once | always | reject并拒絕以原始message.part.delta回放作為持久化同步模型改為可打補丁的規(guī)范消息pending → blocked → running → completed 原地演進同步發(fā)完整更新消息refetch 拿最新狀態(tài)。十、Happy 最難的部分加密存儲下的三個落地方案這是 OpenCode 與 Happy 分歧最大的地方。OpenCode 之所以能長期維持規(guī)范消息行 部件補丁是因為它的存儲層能看到明文會話狀態(tài)SQLite 明文行可隨意打補丁。而Happy 存儲的是不透明加密 blob。因此直接照抄 OpenCode 就必然要做一個存儲決策。以下是三個候選方案。方案 Aappend-only 規(guī)范轉寫事件存儲已規(guī)范化的、自身可持久化的加密記錄。示例心智模型{ kind: agent-event, type: tool-start, ... } { kind: agent-event, type: permission-request, ... } { kind: agent-event, type: tool-end, ... }優(yōu)點存儲不可變refetch 簡單匹配 Happy 當前的傳輸假設避免重放原始 delta 來重建可用轉寫。缺點不是對 OpenCode 補丁模型的字面照搬要么 start/end 事件永遠分離要么客戶端必須為 UI 便利推導「最新狀態(tài)」視圖。方案 B給規(guī)范加密消息行打補丁保留穩(wěn)定加密消息 id但當部件獲得新狀態(tài)時重寫加密載荷使 refetch 返回最新的規(guī)范快照。示例心智模型初始{ messageId: msg_123, parts: [ { type: tool, state: { status: pending } } ] }之后被重寫為{ messageId: msg_123, parts: [ { type: tool, state: { status: completed, input: { ... }, output: ... } } ] }優(yōu)點最接近 OpenCode 的服務端模型refetch 直接拿到最新規(guī)范狀態(tài)客戶端重建問題更少。缺點加密消息行變得可變同步/版本控制更微妙除非同時保留影子事件日志否則失去純 append-only 歷史。方案 C追加原始補丁事件客戶端重建存儲原始流客戶端重建消息狀態(tài)。示例心智模型{ type: message.updated, ... } { type: message.part.updated, ... } { type: message.part.delta, ... } { type: permission.asked, ... }優(yōu)點最接近 OpenCode 實時流只要每個補丁都被追加就是完全不可變的。缺點這恰恰是最可能復刻 Happy 當前 reducer 之痛的路線refetch 需要回放/物化加密存儲 遺留格式支持使其成為復雜度最高的選項。推薦結論如果 Happy 要向 OpenCode 借鑒應該借形態(tài)shape而不是整套持久化策略。最強的兩個選項是append-only規(guī)范事件方案 A可打補丁的規(guī)范消息快照方案 B。最弱的選項是把原始補丁流重建作為主要持久化格式方案 C——那會保留太多我們正試圖消除的復雜度。方案 B 也正是docs/plans/provider-envelope-redesign.md選定的方向消息 id 穩(wěn)定、工具部件狀態(tài)演進時整體重加密并同步完整消息、refetch 直接拿最新狀態(tài)、不以 append-only 事件日志作為主存儲而 DB 行、seq排序、localId、v3 HTTP 消息 API、Socket.IO 失效通知與加密 blob 格式均保持不變。小結以真實運行軌跡為唯一證據可以確認 OpenCode 的協(xié)議核心是「穩(wěn)定消息行 類型化部件 顯式權限對象 顯式子會話身份 轉寫與實時補丁分離」。它對 Happy 的最大價值不是可照抄的傳輸層而是可作為穩(wěn)態(tài) schema 的參照形態(tài)而 Happy 真正的差異化優(yōu)勢文件系統(tǒng)/網絡級沙箱策略、端到端加密存儲決定了它必須把 OpenCode 的形態(tài)改造進自己的加密存儲約束之內——這正是docs/plans/provider-envelope-redesign.md正在做的事。建議繼續(xù)閱讀同一研究系列中的 docs/competition/opencode/message-protocol.md 與 docs/competition/opencode/sources.md以及 docs/plans/provider-envelope-redesign.md 的完整方案。贊分享人工智能AI AgentAI 應用移動開發(fā)CLI后端【免費下載鏈接】happyMobile and Web client for Codex and Claude Code, with realtime voice, encryption and fully featured項目地址https://gitcode.com/gh_mirrors/happy20/happy點擊查看免費下載相關推薦Happy Provider Envelope 重構設計以 OpenCode messageparts 模型統(tǒng)一多 Provider 會話協(xié)議Happy Provider Envelope 重構設計以 OpenCode messageparts 模型統(tǒng)一多 Provider 會話協(xié)議 本文基于 d人工智能AI AgentAI 應用移動開發(fā)CLI后端OpenCode 消息協(xié)議深度剖析happy 項目借鑒的 Envelope Typed Parts 轉寫模型OpenCode 消息協(xié)議深度剖析happy 項目借鑒的 Envelope Typed Parts 轉寫模型 導讀 本文基于 happy 倉庫 docs/人工智能AI AgentAI 應用移動開發(fā)CLI后端Happy 競品協(xié)議矩陣解析OpenCode、Codex、Claude、Superset 的傳輸、轉錄、權限與沙箱設計對照Happy 競品協(xié)議矩陣解析OpenCode、Codex、Claude、Superset 的傳輸、轉錄、權限與沙箱設計對照 本文基于 docs/competi人工智能AI AgentAI 應用移動開發(fā)CLI后端上一篇Medusa 開源電商框架完整指南從零搭建可定制的 Commerce 后端下一篇開源項目推薦mir_eval創(chuàng)作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美激情1区| 国产黄片在线免费观看| 大香蕉狠狠爱| 91精产一区二区三区| 韩日性爱av| 亚洲精品1区| 国产一区二区精品久久99| 色爽——AV| 五月丁香六月激情| 国产一区二区三区视频在线看| 日本道日本道中文字幕日本道最新日本道在线观看 | 超碰久久性爱| 五月丁香社区婷婷日韩欧美精品影院 | blacked精品一区国产| 台湾佬中文娱乐网久久久久久久久久com | 99re公开精品免费视频| 亚洲天天综合| 丝袜美女诱惑 91 视频| 91电影色诱| 中文字幕成人理论在线| 亚洲欧美999| 亚洲 欧美 日韩另类 麻豆| 综合啪啪| 日本精品无码三级网站| 欧美人与动性人交a| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 精品国产乱码久久久久久蜜臀| 97久久超碰国产网站| www.色婷婷| 日本在线不卡123| 欧美性天天影视| 欧美 日韩 亚洲 春色| 激情av| av日韩中文字幕| www.色操逼| 天天色,天天干,天天干| 欧美激情在线观看视频| 男人网站婷婷| 99久在线精品99re8a| 日韩亚洲美州欧洲综三区一品在线| av强奸乱轮| 97超级久久| 啊啊啊慢点| 91色堂| 人人摸人人干| 国产噜噜噜噜噜久久久久久久久| 78久久久| 性老妇一区二区三区| 成人在线视频二区| 五月天久久婷婷亚洲| 亚洲一区二区三区四区视频| 人妻激情偷乱视三区频一区二区| 动漫爆乳3D奶水一区在线观看 | 岛国AV一区二区电影| 青草av在线| 欧美性爱伊人| 伊人成人中文字幕久久网| 欧美性爱十八禁| 国产AV久久久蜜爱影集| 国产刺激视频| 久久中出在线| 熟妇女伦乱视频视频| 性欧美999| 欧美午夜熟妇黑人精品91| 欧美日韩97在线| 青久久| 久久精品日韩专区免费观看| 99精品九九九九九九| 人妻91少妇| 夜夜精品视频| 国产熟女完整版中字| 操逼啊啊啊91| 日韩乱码Av| 亚码激情| 舔人妻中文免费视频| 欧美色91| 中文字幕aⅴ在线视频| 中日韩熟女| 欧美成人午夜免费福利785| 综合影视国产无码| 啊啊啊啊啊啊啊国| 日日A∨| 九九九草| 翔田千里A片一区二区| 狠狠久久手机视频精品| 26uuu国产免费观看| 国产成人资源| 操东北女人| 强奸国产在线| 亚洲 图片 综合91| 99国内熟女露脸视频| 久久九九热| 欧美懂色综合网| 一级毛片久久久久久久女人18| 亚洲高清无码在线桃色| 视频二区美腿丝袜制服人妻欧美| 国产第二页| 97超碰人人操人人操| 国产成人亚洲精品无码古代早漏男| 天天视频网站黄| 日韩精品一区二区日韩| 中文字幕97色| 97亚洲中文| 亚洲色系另类精品国产| www.97在线| 久久九九精品一区二区 | 日本操逼无码| 国产亚洲精品久久久久小| 综合在线导航一区| 伊人成人情色综合| 夜夜骑日日| 热99这里有精品综合久久| 亚洲最大AV网| 亚洲男人综合网| 美国日韩黄片| 97精品国产97久久久久久| 欧美亚洲涩涩| 思思热免费在线视频| 综合欧美日韩在线观看| 超碰综合色| 人妻激情视频| 91热爆在线| 欧美色日本| 无遮挡男女激烈动态图| 人妻久热在线| 99热这里只有精品1| 人人操人人摸人人看人人插| 爱欲AV| yazhououmeizongya| 日韩 欧美 视频 在线 一区| 久久久久久91香蕉国产| 美国日韩黄片| 亚洲妇色| 看免费的黄片| 国产久久一区二区三区野外在线| 国内精品嫩模A∨私拍小视频| 五月花婷婷| 91痴汉| 久久性视频| 91精品国产91久久久久久久久久久久| 日本中文字幕在线视频| julia中文字幕在线观看| 亚欧高清| 久久爽爽精品| 日韩成人在线性爱视频| 欧美 综合 亚洲| 天天躁日日躁AAAAXXXX国产| 亚洲大色堂| 欧美欧美啪啪视频| 久久精品72| 亚洲第一狼人丝袜美女另类 | 中文字幕精品三级久久久| 逼逼逼逼操操操操操操操操操午夜剧场 | 国产欧美一区二区| 国产免a费看黄片在线| 日本久久综合| 东京热免费视频| 狠狠爱夜夜干| 一品道视频一区二区三区| 黑人性暴力毛片| 天天日天天插| 无码 黑人一区二区三区| 日韩中文字幕2020| 91久热| 上特色A在线| 91欧美长吊| 欧美日韩亚洲一区二区在线观看| 天堂av最新电影网| 69精品少妇一区二区三区蜜桃| 超碰97护士| 亚洲AV免费在线观看| 日韩99精品视频综合区| 久9爱精品| 五月天激情四射| 亚洲乱妇p22| 亚洲人码13| 这里只有精品视频| av网站免费看| 99热欧美| 亚洲高清视频在线观看| AV电影在线播放| 亚洲乱码精品一区二区| 热热色综合网| 校园春色综合色| 激情综合久久| 日本无码1| 久久久久久人体| 日日A∨| 亚洲无码久久久久久久| 日本精品一级二级三级| 美女黑人91神马| 91精品黄在线观看| 手机在线中文字幕国产| dy888午夜老子影视达达兔| 啊啊啊啊啊啊啊啊啊在线观看| 91xingse| 青青11操操操操操操操操| 尤物一级在线免费观看| 亚洲欧美97| 欧美少妇色综合| 久久熟女人| 在线v中文字幕一区二区三区 | 欧美劲爆视频一区二区| 大学生口爆吞精| 亚洲成人贴图| 亚洲男人在线观看天堂| 亚洲在线综合| 亚洲欧美setu| 久9综合在线| 精品无码人妻一区二区免费蜜桃| 欧美综合色站| 久艹伊人精品综合在线| 欧美日韩理论一区| 一区二区首页| 青青草吊丝| 欧美日日夜夜| 伊人色综合超碰| 欧美午夜精品久久久久久超碰| 亚洲操人| 国产精品久久伊人| 国产AV激情无码久久无码 | 欧美色图片91| 亚洲天堂人妻一区二区| 久草视频制服诱惑| 热久久99999| 超碰97最新人妻| 女人的天堂大香蕉网| 日本特黄f c2| 日本不卡三级网在线播放| 97九色人妻| 午夜久久一区二区无码中出| 中文激情网| 婷婷99狠狠| 天天弄天天操| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 女同性恋久久| 欧美日韩中文亚洲v在线综合| 日本性爱少妇| av情色影音| 国内黄色精品| 久草精品视频| 欲色综合| 午夜传煤十二区精品| 色欧美综合| 永久免费av无码网站国产app| 黄片免费看的| 久久 国产精品 一区| 91大学精品激情戏| 亚洲欧洲色情高清| 日韩91网| 91色人妻| 国产www色在线观看| 久久久成人国产精品无码| 人妻22p| 素人美腿视频网站| 欧亚久久偷拍视频| 黄色不卡视频| 超碰激情808| 91艹逼精品| 日韩欧美天堂| 熟女少妇一区二区三区| 欧美色图另类图片| 中国一级操逼视频| 亚洲 欧美 中文 日韩超碰 | 不卡一区二区日本视频| 日本污ww视频网站| 射欧美综合| 四虎影视永久在线观看精品免费网站| 97干在线| 久久精品国产亚洲AV无码电影| 天天日B夜夜干B时时操B| 95精品在线| 97超碰色屌| 亚欧美色图| 精品国模无码| 九九这里只有精品| 欧美AB在线观看| 久久偷拍人| 精品十八在线观看| 日逼逼免费看| 嗯嗯啊啊啊好舒服| 五十路三区在线| 99国产在线 精品 视频| 超碰调教97| 欧美综合网1| 亚洲天堂久久久久久粉红视频| 岛国视频一二三区| 亚州色站 日韩电影| 日韩十八禁| 影音先锋中文字幕日本好一区二区| 日本青青草在线| 亚洲校园激情| 天天操天天射天天日| 日韩不卡a级视频专区| 天天摸夜夜摸| 无遮挡男女激烈动态图| AV天天在线观看| 91色伦| 成在线人在线观看视频| 欧美嗯啊……在线观看视频免费| 日韩欧美女求操每天更新| aaaa少妇高潮大片| 韩国嫰模上门援交视频| 一牛影视成人片免费| 美腿丝袜高跟网免费视频免费视频| 老熟女91视频| 欧美黄片视频在线观看免费 | 国产成人 综合亚洲 天堂| 精品中文字幕第一页| 厕所偷拍在线| 91欧美网| 大香蕉伊人久久| 亚洲天天影视综合网| 麻豆精品.欧美精品.日韩精品.| 婷婷AV一区二区三区| 99综合自拍| 草草草草视频| 亚洲。日韩。欧美| 男人a天堂手机在线版| 伊人991| 日韩国产欧美伦理在线| 久久宗合亚洲| 国岛片视频| 69AV女优男人的天堂| 婷婷综合激情| 国产熟女二区| 神马久久久久久伦理片| 亚洲熟妇综合久久久久久| 欧美片第一页| 欧美日本一区二区a人| 熟妇激情| 大香蕉久久| 亚洲国产熟妇综合色专区| 天天色,天天干,天天干| 在线色资源| 国产丝袜欧美在线视频| 99精品人人爽| 丁香五月天啪啪| 96精品久久久久久久久| 色av中文字| 高清无码久操视频| 呻吟 欧美 日本 中出| 日韩999| 蜜臀99久久精品久久久懂爱| 九九毛片这里只有精品| 国产精品九九九| 国产午夜视频| 丁香五月婷婷色| 大香蕉免费3| 天天操熟妇| 国产在线不卡导航| 强奸乱伦日韩AV| 无码人妻一区二区三区免费九色| 91欧美性| 久久久久精| 日韩成人性日韩成人性爱视频在线免费观看 | 国产AV激情无码久久无码| 97欧美色| 亚洲欧美日韩国产丝袜自拍中文| 九九视品黄色| 国模吧 一区二区三区| 亚洲成人在线乱码色午夜| AV天天综合| 亚洲影视综合| 蜜屁Av| 精品区9| 夜夜影视四色| 2017人人操,人人摸| 欧日韩一二三f区| 精品然女一区二区| 人妻一区二区三区| 欧美日不卡| 人人操,操人人| 国产h小视频在线观看免费| 啊啊啊好大好湿| 男女一级A片大黄,一进一出| 天天射夜夜操| 一区二区播放| 九九热九九| 日韩成人性日韩成人性爱视频在线免费观看 | www五月| 精品人妻视频一区二区三区蜜桃视频| 在线观看啊啊啊啊啊| 夜夜高潮夜夜爽夜夜爱爱一区| 一区二区视频你懂的| 亚洲色交| 成人精品在线| 尤物视频新赏网鲜网色诱网| 亚洲图片日本AⅤ欧美在线| 人妻少妇视频在线播放| 中文字幕免费看| 欧美综合娱乐久久| 四虎永久在线精品免费网址| 久久99九九九九6666免费观看软件| 人妻丰满熟妇一区二区三| 性站| 超碰97 线线 在现| 91狠狠色丁香婷婷综合久久精品| 九热超碰| 2019久久久久久久久福利| 操死我干死我| 精品久久久久久AV无码| 人人手机欧洲亚洲国产人妻| 1769一区| 美骚妇av高清在线| 超碰免费97| 麻豆精品久久久久久久| 天天综合-91入口| 殴美牲| 丰满人妻区一区二区三| 97视频网站在线观看| 欧美色图91| 在线国产探花| 欧美+日产+中文| 亚洲天堂中文字幕无码男同| 亚洲欧美日韩不卡人妻| 一区二区三区精品黑丝白丝酒店对鸡 | 久久精品国产亚洲粉嫩| 啪啪91| 亚洲欧美日韩激情不卡| 曰韩欧美国产传媒麻豆第一区| 玖玖久久久| 蜜臀久久一区二区| 色图四区| 国产污视频麻豆传媒一区二区| 亚洲在线网站| 曰韩香蕉97| 国内偷自视频区视频综合| 日韩图区| 色婷婷香蕉| 色逼综合| 国产免费久久精品99re韩国| 日韩欧美字幕亚洲一区二区| 91AV天美在线视频| 丁香五月天啪啪| 一区二区不卡视| 天天天肏屄欧美| 人妻一二三区| 青青久草| 综合久欧洲| 中国大陆国产高清AⅤ毛片| 国产精品69久久久久孕妇欧美| 综合色色网| 天久久久噜噜噜久久国产精品爽爽| 亚洲乱色视频一区、二区在线| 国产亚洲性生活视频播放| 亚洲精品白丝| 在现视频女上位好爽| 另类小说综合网| 精品无码一区二区三区| 成人影 天天操 亚洲| 久久美女国产| 91综合熟女| 亚洲国内精品成人不卡| 91大学精品激情戏| 午夜一区二区三区国产| 91人妻少妇| 久久精品高清无码一区| 亚洲国产无码精品首页久久久| 天堂网亚洲区手机版| 97超久碰| 99色天堂| 嫩草一区二区在线观看| 91精品导航| 无码男人天堂| 91最新综合| 六月婷婷综合| 久久精品毛片免费不卡| 欧差乱伦二三| 午夜啊啊| 亚洲91综合| 97精品视频免费| 中文字幕 人妻不满 在线视频| www.大香| 亚洲AV秘无码一区..| 啊啊啊啊操死我| 熟妇高潮二区三区| 免费成人在线熟妇网| 久久9 9 9精品| 桃色五月天| 日韩成人大片一区二区| 一起草日韩| 在线人成亚洲视频免费观看| 青娱乐91| 日韩大香蕉| 色区97| 色大师网站www永久网站视频| 长长久久免费视频| 日韩精品一区二区三区色欲| 久久久一区二区三区三州| 久草在线| 99热这里只有精品18| 亚洲做性| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 欧洲黄色网| 欧美色图第一页| 9Ⅰ超碰| 操熟女91| 男人在线天堂| 91精品国产91久久福利| 婷婷操视频| 国产亚洲欧美每日在线| 性爱乱伦视频免费| 成人精品一区二区91毛片不卡| 国产黄色影片在线观看| 思思热久久成人| 久久久久亚洲Aⅴ无码| av天堂5| 黄片在线免费在线观看| 精品久热| 精品无吗久久| 91精品国久久久久久无码| 欧美日韩天堂| 国产精选视频| 老熟女91| 国产绿奴视频在线观看| 十八禁视频网站| 99热色精品| 99国内精品| 男人 天堂 日 亚洲| 和协影院中文字幕三区| 性欧美| 男人天堂2017| {男男暴菊gay无套网站| 粉嫩av在线一区二区| 色婷婷色99国产综合精品| 天天干天天干天天| 精品97久久综合| 欧美日韩人妻婷婷一区| 一二三区精品视频| 超碰色男人操熟女| 91free福利| 熟妇亚洲一区二区三区| 婷婷探花久久精品一区| 天天综合网网欲色| 郑州宾馆老熟女露脸啪啪| 色99在线| 色偷偷色偷偷欧美日韩| 天堂亚洲欧美| 性在久久久久久| 亚洲 综合 欧美| 青青欧洲黑| 激情一区二区| 日本黄大片在线观看视频| 国产 亚洲 丝袜 制服| 天天舔天天 | 蜜臀久久久久久999| 97精品97| 国产剧情在线| 亚洲一区日韩| 农村妇女精品一区二区| 亚洲国产天堂| 国产1769在线| 超碰人妻久久人妻中文97| 国产精品伦理| 色成人Www精品永久观看| 深夜操逼网| 人人操超碰在线| 又大又大又大又粗爽高潮观看| AA特级绝黄| 国产盗摄美女如厕大神作品在线观看| 亚洲精品电影| 91精品国产高清久久久久久,亚洲成人 | 91美女看B| 欧洲黄色网| 欧美另类色图片| 欧美91久久久久| Sekablack无码一区| 女同在线视频一区| 亚洲a色| 欧美性爱视频免费一区一A| 色诱avtt| 久久双插| 熟妇人妻一区二区三区| 夜夜精品视频| 日韩乱码Av| 玖玖久久久| 玖玖色综合| 插插综合网天天影视网| 综合久久六月久久婷婷| 欲女人妻性色av| 秋霞无码av鲁丝片一区| 夜夜狠狠躁日日躁色视频| 日韩国产精品人妻无码久久久| av九九| 久热伊人| 国产成人亚洲精品自产在线| 国产白丝网站| 91日本在线观看| 麻豆一区二区三区在线看 | 日本一二区不卡| 婷婷综合网站| 欧美色视| 九九色逼| 久热热| 素人美腿视频网站| 日韩内| 大香樵伊人网| 97色伦97色伦国产欧美| 欧美精品丝袜久久久中文字幕| 26uuu最新| 爱啪精品一区| 性爱边摸边日免费AV| 欧亚揄拍偷拍精品视频| 91狼人| 欧美亚州综合网图片| 亚洲欧美大| 高清国产无码av| 大香伊人在线一区| 日韩人妻中文视频| 果冻传媒A片麻豆熟妇人妻| 污啪啪啪视频| 91人精品妻入口| 麻豆精品天美| www.色操逼| 超碰在线一区二区| 国产偷仑| 精品一区二区亚洲国产| 精品久久97观看在线视频| 东京太热久久久| 国产精品午夜福利亚洲综合网| 久久婷婷欧美| 九月丁香婷婷| 狠狠久久手机视频精品| 精品视频久久区| 五月婷婷激情网| 亚洲视频精选| 蜜臀久久久| 九月婷婷| 在线A日本| 亚洲欧美97√| 精产国品一区二三产品| 欧美一级做a爰片免费视频| 9丨久久九九九| 成人天天看站长推荐| aⅴ日韩成人电影av在线免费看av大全 | 六月丁香网| 天天弄天天操| 精品国产乱码久久久久久久久久毛片| 草b在线| 中文字幕jul-617人妻熟女| 日韩欧美日韩| 久久久免费高清中文视频| 国产精品青青草| 91社区拍啪人妻| 黄色无码高清黄色无码网站| 加勒比色综合| 美女的肌被草喷水视频| 婷婷99| 嫩草影院性色| 亚洲无码com| 日本2020一区二区| yy少妇精品久久| 亚洲人在线成线成人| 色婷亚洲五月在线观看| 明星性猛交ⅹxxx乱大交| 91亚洲丝袜熟女| 日韩欧美水蜜桃人妻| 91肏屄网| 无码99| 国产热RE99久久6国产精品首| AA级电影三区| 九九九九AV| 大干人妻| 色爽——AV| 美腿丝袜高跟网免费视频免费视频| 思思性爱| 天天操夜夜操狠很操| 91丝袜在线观看| 亚洲黄色AV电影| 午夜久久久| 日本顶级天天操狠狠操夜夜操中文字幕| 日韩pv中文| 欧美在线播放aaaa| www.人人cao| 户外裸露刺激视频第一区| 日本1区2区不卡视频| 亚洲伊人久久综合97| 久久久久久久唑| 九九精品网| 成年在线视频日本亚洲在线视频区精品江靖宇公司| 9久久美女首页| 91在线免费观看处女| 920日本午夜免费| 91校园春色长篇| 大香蕉伊人久久| 婷婷综合激情| 中文字幕一区av| 综合激情婷婷| 丁香九月激情啪| 自偷自拍的亚洲视频| 精品成人av一区二区三区在线| 十八禁的黄污污免费网站| h4610国产人妻| 91成人久久| 操逼1区| 亚洲精品精品一区二区| 综合久久婷婷| 国产成人网| 亚洲有码 欧美精品| 97精彩视频网站| 人人操人人摸超碰| 高颜值美女口爆高潮浪叫| 五月丁香拍拍激情综合三级| 久久国产乱子伦精品免费女人| 国产丝袜欧美在线视频| 夜夜操青青草| 中国探花熟女| 色色热| 又黑又大又粗| 麻豆一区二区三区精品| 欧美激情精品久久久| 欧美91网站| 青青草久久在线| 99re黄 | 激情五月婷婷综合| 小草三级久久观看| 色情五月丁香| 亚洲欧美天堂在线| 欧美啪啪色吧在线| 国产性刺激| 亚洲欧洲国产综合av| 色99视频| 啊啊啊好舒服好爽啊啊啊视频| 天天超级碰碰碰| 国产女大学生AV| 韩国一级AAA| 青青青操| 亚洲第一黄色av网站| 丁香六月婷婷久久综合| 男人的天堂激情| 人人摸人人摸人人干| 日本99久久| 黑丝少妇麻豆| 欧美黑人168页欧美黑人167| 日躁天天爽爽| 波多野42部无码喷潮在线观看| 中文字幕jul-617人妻熟女| 国产乱婷婷精品二区三区| 2017大香蕉国产精品久久| 风韵犹存大大大大香蕉| 草草影院日本第一页| 无码国产Av| 久久草草欧美精品| 欧美韩日精品资源| 91无码西班牙视频在线| 久久久久久国产无码精品| 久久天天摸| 国产精品69久久久久久久| 欧美精品二区视频在线| 久久精品国产72国产精品福利| 台湾佬激情综合| 天天日天天干天天摸天天操| 国产拍偷精品网站| 色色亚洲| 国产熟码AV| 影视综合无码少妇| 人妻啊啊人妻啊| 超碰偷拍| 操逼逼中文字幕| 欧美不卡在线美女| 男人的天堂com| 精品v日韩欧美国产| 国产天天骚| 国产综合久| 国产精品一区二区 尿失禁| 东京热一区二区三区四区五区六区| 夜夜嗨免费视频| 中文字幕在线观看永久| 青青操97| 天天噜| 十八禁视频网站| 久久久精品一区二区| 亚欧免费| 91亚洲影院综合| 女色综合| 男人天堂2019亚洲| 东京热综合久久一区二区| 亚洲一区二区精品福利| 好舒服视频| 尤物网址| 91激情网| αⅴ天堂| 国偷自 一区二区| 午夜120视频在线观看| 男人天堂综合| 亚洲小电影免费涩涩成人在线高清| 国产高清1234区| V A在线| 五月综合久久| 欧美亚州综合网图片| 丁香五月久久| 3P丝袜熟女 色综合| 丁香六月啪| 亚洲蜜臀精品视频久久| 亚洲成人久久美女| 97鸡把在线视频| 婷婷六月色| 日本综合色图| 抽查国产福利主播| 国产隔壁老王影院在线| 亚洲少妇激情视频| 欧美成人一级免费电影| 综合大香蕉美。| 乱色视频中文字幕| 亚洲欧洲自拍| 97超碰色屌| 久久成人国产| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 中文字幕第23区| 久久久久久精品免费看A级| 91欧美少妇| 色婷婷影视| 香蕉国产精品麻豆亚洲欧美日韩| 青青草白白色| 黄片在线免费在线观看| 欧美96在线|欧| 日韩内射视频| 亚洲成a人在线观看久| 日韩毛片9| 丝袜美腿欧美| www.91人妻.com| 免看60秒涩涩视频| 99色综合| 国产最新小视频在线播放下载 | 在线女人91| 欧美少妇性爱网站| 亚洲色交| 精品一区二区三区四区外站| 国产亚洲禁久一区二区| 国产深喉视频一区二区| 伊人991| 大香蕉AV在线| 香港澳门日本三级网站| 大香蕉在线SuP| 人妻久热在线| 久热在线精品免费观看| 五月天人妻综合| 强上我不卡卡| 大香蕉综合在线| 免费精品国偷自产在线在线 | 蜜臀AV一区二区三区激情综合| 国产最新小视频在线播放下载| AV中文字幕三四五| 中国黑人三级片网站上区| 国产欧美一区激情交| 久久性爱视频免费看| 国产熟码AV| 双插在线| 色av中文字| 欧美少妇性爱网站| 亚洲一区二区三区春色| 日本一卡二区在线| 嗯嗯嗯啊啊啊操的我好爽| 91成人精品在线播放| 91P0RNY大屁股人妻| 美女好片色日本| 中文有码第五页| 日日夜夜天天| 高清在线偷拍自拍视频| 日韩综合无码色欲vv| 欧美九九九九九| 蜜臀一二三区| 精品无码久久久久| 秋霞男人网| 99∨VTV| 视频分类 国内精品| 欧美一级特黄淫片在线观看| 蜜臀无码视频在线观看| 精品国产乱码久久久A| 久久9999 | 蜜桃精品一区二区三区ww| 日欧操屄视频| 国产麻豆一级精品视频| 成人性爱av.com| 国产精品国产亚洲区艳妇糸列| 清纯唯美亚洲综合| 亚洲美女精品九九视频| 天天躁日日躁狠狠狠躁| 亚洲中亚日激情视频| 色九九九综合| 丁香婷婷激情五月天无毒不卡| 嗯啊啊啊轻点视频 | 97超碰国产亚洲精品| 十八禁一区二区无码观看| 99精品伊人| 亚洲精品欧洲精品| 精品一区96| 欧美中文字幕男人天堂久久精品 | 性在久久久久久| 日韩人妻制服丝袜av| 午夜亚洲国产理论秋霞| 亚洲精品国产日韩无码AV永久免 | 超碰97资源网亚洲| 国产青青综合伊人| 国产精品农村妇女精品| 玖色av| 欧美男人的天堂| 亚洲欧美91| 欧美AB在线| 我要色综合网| 亚洲麻豆av一区二区| 草草电影院| 囯戸精品高潮呻吟旡码| 欧洲精品区| 超碰欧美97资源| 亚州欧美在线| 欧美天天射| 国产精品一区二区a| 很很操在线| 北约熟女超碰| 国产尹人在线视频免费| 五月天婷婷色色| 999狠狠综合| 麻豆影音天美视频| 天堂涩涩| 97se亚洲| 久久精品店| 无码137片内射在线影院| 日本人妻中文字幕| 逼逼逼逼操操操操操操操操操午夜剧场| 国产一在线观看| 亚洲精品三| 九九热免费国产视频婷婷伊人五月| 韩国女主播青草福利视频| 九九九九九九亚洲| 91丝袜美腿片| 91观看 国产白丝| 国产婷婷综合在线观看| 曰韩中文人妻视频| 色色网91| 自拍鲍鱼一区在线高清观看免费| 四虎AV在线观看| 日韩精品熟妇| 日韩av电影网站| 丰满少妇一区二区三区免费看| 国产女同在线观看视频| 国产专区第一页| 人人扣人人操| 亚洲自拍欧美国产首页网曝| 国产日韩中文字幕欧美| 蜜臀久久99精品久久久电影| 亚洲A曰本VA欧美VA视频| 思思热影视| 九九热精品免费视频| 亚洲色91C| 亚洲国产天堂| 一级毛片久久久久久久女人18| 成人国产精品三级A片| 蜜臀精品1区2区| 爱丝福利| 成人一二| 国产自偷自拍一区| 日韩成人午夜精品久久高潮| 欧美精品不卡一二三四在线91| 亚洲九九九九| 日韩去日本高清在| 99国产精品久久久久久久成人热| 91制服丝袜| 干日本人少妇午夜寂寞影院| 狠狠干狠狠干| 91亚.色| 日韩欧美操逼xxx| 亚洲婷婷五月天| 中亚黄色三级大片| 视频一区二区三区精品| 色区久久| 人人摸人人舔一区二区| 成人午夜高潮av猛片| 亚洲操人| 人妻黑丝袜电影| 久久久久国产精品久久久| 夜夜影视四色| 精品国产自在在线99| 夫妻AV网站| 亚洲图片日本AⅤ欧美在线| 无遮挡h肉动漫在线观看| 爱爱动态试试看6 0秒| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 老女人爆菊| 成人三级片无码| 国产精品操| 日韩av一级黄片| 蜜臀久久在线视频| 人妻欧美| 丁香五月影院| 超碰97护士| 爱射综合| 深夜福利黄片| 天天干人人乐| 久9视频| 人妻素股| 亚洲中文日韩欧美大香蕉视频| 九九九久千久久激情蜜桃在线看| 美女91网址| 一区二区娱乐网站| 精品丰满熟妇人妻一区| 国产粉嫩出水在线播放| 久久久久久裸体| 午夜福利精品| 99re6在线视频精品免费完整版安卓版| 伊人丁香五月婷婷| 97碰碰日本乱偷人妻中文的| 免费成人在线观看91| 99精品丰满人妻无| 亚洲熟妇一,二,三期| 久久色激情一区二区三区| 亚洲在线欧美| 嗯嗯啊在线视频| 蜜桃狠狠色伊人亚洲综合网站| 91neishe| 欧美日韩大香蕉| 91热情品| 国产精品国产自产高清AV| 亚洲视频二区| 亚洲成熟国产精品美女| 欧美综合传媒| 日韩激情小说一区二区| 亚洲老司机123专区| 岛国艾薇凹凸视频天堂| 插插综合网天天影视网| www.婷婷| 91精品无码久久久久久久| 国产精品。| 在线精品福利免费播放| 亚洲双插| 97香焦色区| 欧美亚洲第一页| 久草成人影片| 欧美综合站| 激情小说图片亚洲首页| 一区二区三区色综合| 亚洲av强奸乱伦| 欧美亚洲图片| 亚洲美女色图| 日本道久久综合色色| 亚洲天堂男人的天堂| 精品网站99999| 麻豆这里只有精品| 久久大黄片| 人人搡人人肉久久精品| 91麻豆va国产精品| 日韩一级欧美一级国产一级台湾| 午夜毛片高清免费不卡| 国产成人网址| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 日韩免费大片一级播放| 天天干夜夜肏| 婷婷五月天成人| 亚洲人妻中文在线视频| 夜夜夜夜爽| 色女女女导航| 婷婷午夜成人色中色| 欧美色图99| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 亚洲av综合色| 啊啊啊爽爽| 久草精品视频| 99国产精品人妻人伦| 99性爱在线观看| 东北女人高潮视频| 天美传媒AV国产在线| 99在线精品视频| 日韩人妻制服丝袜av| 大香蕉综合网| 精品久久久久成人码免| 国产精品视频电影| 黄色av一区二区在线| 色黄污美女啪啪啪免费网站| 日韩图色| 白丝在线一区| 四虎影库国产精品免费| 在线观看精品国产免费| 精品无码一区二区三区色欲| 亚洲自拍小说| 精品久久九| 超碰 97国产熟女| www.av在线观看| 成人日韩3| 17c嫩草51久久91嫩草| 天天综合网亚洲综合网| 久久一区,青青青青草视频在线播放| 国产操逼逼网| 日韩无码精品综合久久| 91天堂网| 亚洲Av诱惑| 日本亚欧爱爱| 久久爽爽精品| 黄色成品网站| 欧美亚洲综合色| 女人午夜视频777| 91色人妻| 久久大黄片| 欧美午夜熟妇黑人精品91| 偷拍综合亚洲| 久久一二三四五六七八九区区| ss久久| 色色色网站| 思思热免费视频观看| 温婉少妇玩3p| gogogo免费高清看中国国语| 97色97干| 五月天亚洲色图| 777超碰| 日韩欧美中文字幕搭讪巨乳美人妻视频| 男人天堂综合| 97国产色图| 91久久久老司机| 97精品国产精品免费观看| 欧美1727免费观看视频| 亚洲综合网电影91| www.yw尤物| 五月丁香六月| 日本有码久久| 99re这里只有精品中心播放| 思思热在线| 一区二区偷拍拍视频| 久久综合五月天| 夜色五月天| 97精品国产97久久久久久户外免费| 天综合中文| 亚州宗合另类| 蜜桃中文字日产乱幕4区| 欧美黑人与女人91~| 桃色六月天| 嗯……啊…嗯嗯…啊…好舒服| 情色日播放AV| 久久五月视频| 天天日天天舔| 极品白嫩福利在线| 91电影色诱| 天天射夜夜| 91国内外在线| 婷婷精品国产一区二区三区日韩| 九九英色视频| 91欧美另类| 日本免费一区二区不卡| 不卡免费av在线播放| 亚洲无码 国产无码| 99无码狠狠久久| 国产亚洲深夜激情| 日日噜噜夜夜狠狠视频无| 波多野结衣一级视频| 爆操无码| 开心激情站| 精品女人999| 精品国产91久久久久久一区黄无| 中文字幕久久精视频久久大全| 色妇91| 91N综合网| 一区二区乱码福利| 2021国产成人精品久久| 吖在线不卡一区二区国产剧情| 亚洲成人无码影院| 操一区| 人妻久热在线| 99国产精品久久久在线播放| 热久久无毒不卡| 极品国产内射| 国产操操日韩三级黄|