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

ARTICLE DETAIL

資訊詳情

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

openrig:用YAML與Node.js統(tǒng)一管理Claude Code和Codex的AI編程環(huán)境配置

openrig:用YAML與Node.js統(tǒng)一管理Claude Code和Codex的AI編程環(huán)境配置 1. openrig 到底是個什么東西第一次看到 openrig 這個名字很多人會以為是某個硬件外設或者開源機械臂項目。實際上結合它周邊的關鍵詞——Claude Code、Codex、YAML、Node.js——可以很清楚地判斷出openrig 是一個圍繞 AI 編程助手生態(tài)構建的本地配置與代理編排工具。它的核心價值在于把 Claude Code、Codex 這類命令行 AI 編程工具的運行環(huán)境、模型接入、代理轉(zhuǎn)發(fā)、配置管理統(tǒng)一到一個可維護的框架里。說白了你平時用 Claude Code 寫代碼可能遇到幾個煩人的問題公司網(wǎng)絡環(huán)境需要走本地代理、想切換到 DeepSeek 或 GLM 這類第三方模型、多個項目需要不同的配置、每次換機器都要重新折騰一遍環(huán)境。openrig 就是來解決這些問題的。它用 YAML 做配置描述用 Node.js 做運行時把 Claude Code 和 Codex 的啟動參數(shù)、環(huán)境變量、代理規(guī)則、模型映射全部收攏到一份配置文件里。這篇文章適合誰看如果你是剛接觸 Claude Code 或 Codex 的新手想搞清楚怎么在本地把環(huán)境跑通如果你已經(jīng)在用這些工具但每次配置都靠手動改環(huán)境變量、記不住參數(shù)如果你需要在多個模型供應商之間切換比如今天用 Claude 官方、明天接 DeepSeek、后天試 GLM——那 openrig 這套思路值得你花時間研究。我自己的使用場景是這樣的手頭有三臺開發(fā)機一臺 macOS 日常開發(fā)一臺 Ubuntu 跑 CI 和長任務還有一臺 Windows 偶爾做前端調(diào)試。以前每臺機器上 Claude Code 的配置都是散的環(huán)境變量寫在 shell 配置文件里代理設置靠手動 export換模型要改好幾個地方。后來用 openrig 的思路把配置統(tǒng)一成 YAML 之后同步配置就是復制一個文件的事。注意openrig 本身不是一個官方項目它更像是一種配置管理模式的代稱。你在 GitHub 上搜到的同名倉庫可能和本文描述的不完全一致但核心思路是通用的——用結構化配置管理 AI 編程工具的運行時環(huán)境。2. 核心組件拆解YAML、Node.js 與代理層2.1 為什么選 YAML 做配置載體YAML 在這套體系里扮演的是“唯一真相源”的角色。你可能會問為什么不用 JSON 或者 TOMLJSON 的問題是寫注釋不方便而配置文件恰恰最需要注釋——你得記清楚每個參數(shù)是干什么的。TOML 雖然可讀性好但嵌套結構表達起來比較啰嗦。YAML 在可讀性和表達力之間取得了不錯的平衡支持錨點和引用這對多環(huán)境配置復用非常關鍵。一個典型的 openrig 配置結構大概長這樣# openrig.yaml version: 1.0 defaults: provider: anthropic proxy: enabled: true host: 127.0.0.1 port: 7890 providers: anthropic: base_url: https://api.anthropic.com api_key_env: ANTHROPIC_API_KEY models: - claude-sonnet-4-20250514 - claude-opus-4-20250514 deepseek: base_url: https://api.deepseek.com/v1 api_key_env: DEEPSEEK_API_KEY models: - deepseek-chat - deepseek-coder glm: base_url: https://open.bigmodel.cn/api/paas/v4 api_key_env: GLM_API_KEY models: - glm-4-plus profiles: work: provider: anthropic proxy: enabled: true personal: provider: deepseek proxy: enabled: false這份配置里providers定義了各個模型供應商的接入信息profiles定義了不同使用場景的組合。你切換工作環(huán)境只需要改defaults.provider或者指定 profile不用去動環(huán)境變量。YAML 的錨點功能在這里特別有用。比如你有多個 provider 共享相同的代理設置可以這樣寫_proxy_default: proxy_default enabled: true host: 127.0.0.1 port: 7890 providers: anthropic: proxy: *proxy_default openai: proxy: *proxy_default這樣改一處就能影響所有引用它的地方避免了復制粘貼帶來的不一致。2.2 Node.js 在其中的角色Node.js 是 openrig 的運行時基礎。為什么不用 Python 或者 Go因為 Claude Code 和 Codex 本身就是 Node.js 生態(tài)的工具用 npm 全局安裝的。openrig 作為它們的配置管理層用 Node.js 寫可以無縫調(diào)用這些工具的 API也能直接復用 npm 的包管理機制。Node.js 的版本選擇有個坑要注意。Claude Code 對 Node.js 版本有要求一般建議用 LTS 版本。我實測下來Node.js 20.x 和 22.x 都能正常工作但 18.x 在某些新特性上會報錯。如果你看到類似error installing 24.21.0: node.js v24.21.0 is not yet released這種報錯說明你指定的版本號根本不存在去 Node.js 官網(wǎng)下載頁面確認一下當前 LTS 版本號。安裝 Node.js 最省事的方式是用版本管理器。macOS 和 Linux 上可以用 nvmWindows 上可以用 nvm-windows 或者直接下安裝包。用 nvm 的好處是可以在不同項目間切換 Node.js 版本# 安裝 nvm 后 nvm install 22 nvm use 22 nvm alias default 22 # 驗證 node -v npm -vopenrig 的啟動腳本通常是一個 Node.js 腳本它讀取 YAML 配置解析出當前 profile 對應的環(huán)境變量然后以正確的參數(shù)啟動 Claude Code 或 Codex。這個腳本的核心邏輯大概是const fs require(fs); const yaml require(js-yaml); const { spawn } require(child_process); function loadConfig(path) { const raw fs.readFileSync(path, utf8); return yaml.load(raw); } function buildEnv(config, profileName) { const profile config.profiles[profileName]; const provider config.providers[profile.provider]; const env { ...process.env }; env.OPENRIG_PROVIDER profile.provider; env.OPENRIG_BASE_URL provider.base_url; env.OPENRIG_API_KEY process.env[provider.api_key_env]; if (profile.proxy profile.proxy.enabled) { env.HTTP_PROXY http://${profile.proxy.host}:${profile.proxy.port}; env.HTTPS_PROXY env.HTTP_PROXY; } return env; } const config loadConfig(./openrig.yaml); const env buildEnv(config, process.argv[2] || default); const child spawn(claude, process.argv.slice(3), { env, stdio: inherit });這段代碼的邏輯很直白讀配置、拼環(huán)境變量、啟動子進程。但就是這種直白的設計解決了很多手動配置時的痛點。2.3 代理層的設計考量代理層是 openrig 里最容易被忽視但最關鍵的部分。Claude Code 和 Codex 都需要訪問外部 API而在某些網(wǎng)絡環(huán)境下直接連接可能不穩(wěn)定或者根本連不上。這時候就需要一個本地代理來轉(zhuǎn)發(fā)請求。代理層的設計有幾個要點第一代理只對 AI 工具的流量生效不影響系統(tǒng)全局。你肯定不希望開個代理把整個系統(tǒng)的網(wǎng)絡都繞一遍。openrig 的做法是通過環(huán)境變量HTTP_PROXY和HTTPS_PROXY只注入到子進程父進程和其他程序不受影響。第二代理要支持按 provider 區(qū)分。有些 provider 需要走代理有些不需要。比如你接 DeepSeek 的國內(nèi)節(jié)點可能直連就很快走代理反而慢。配置里每個 provider 可以單獨設置代理開關。第三代理失敗要有降級策略。我遇到過代理進程掛了但 Claude Code 還在跑的情況請求全部超時。后來在 openrig 的啟動腳本里加了一個健康檢查啟動前先探測代理端口是否可達不可達就自動禁用代理并給出警告。const net require(net); function checkProxy(host, port, timeout 2000) { return new Promise((resolve) { const socket new net.Socket(); socket.setTimeout(timeout); socket.on(connect, () { socket.destroy(); resolve(true); }); socket.on(timeout, () { socket.destroy(); resolve(false); }); socket.on(error, () { resolve(false); }); socket.connect(port, host); }); }這個健康檢查邏輯很簡單但能避免很多“為什么請求一直卡住”的困惑。3. 從零搭建 openrig 工作流的完整實操3.1 環(huán)境準備與依賴安裝開始之前確認你手頭有這些東西一臺能正常上網(wǎng)的開發(fā)機、Node.js 環(huán)境、至少一個 AI 模型供應商的 API Key。如果你還沒有 API Key先去對應平臺注冊申請這里不展開。第一步安裝 Node.js。去 Node.js 官網(wǎng)下載 LTS 版本或者用包管理器# macOS with Homebrew brew install node22 # Ubuntu/Debian curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - sudo apt-get install -y nodejs # Windows # 直接去官網(wǎng)下載 .msi 安裝包雙擊安裝安裝完成后驗證node -v # 應該輸出 v22.x.x npm -v # 應該輸出 10.x.x第二步安裝 Claude Code 和 Codex。這兩個工具都是 npm 全局包npm install -g anthropic-ai/claude-code npm install -g openai/codex如果你在安裝 Claude Code 時遇到y(tǒng)our organization has disabled claude subscription access for claude code這類提示說明你的賬號類型不支持直接使用需要檢查訂閱狀態(tài)或者改用 API Key 方式接入。第三步創(chuàng)建工作目錄和配置文件mkdir -p ~/openrig cd ~/openrig npm init -y npm install js-yaml然后把前面提到的openrig.yaml配置文件放進去根據(jù)你自己的 provider 信息修改。3.2 配置文件編寫與參數(shù)詳解配置文件是 openrig 的核心值得花時間仔細寫。我把自己用的配置拆解一下每個參數(shù)都解釋清楚。version: 1.0 # 全局默認值所有 profile 繼承這里 defaults: provider: anthropic log_level: info timeout: 120000 # 代理設置可以被 profile 覆蓋 proxy: enabled: false host: 127.0.0.1 port: 7890 # 不走代理的地址列表 no_proxy: - localhost - 127.0.0.1 - *.local # 模型供應商定義 providers: anthropic: base_url: https://api.anthropic.com api_key_env: ANTHROPIC_API_KEY # 請求頭額外字段 headers: anthropic-version: 2023-06-01 models: - id: claude-sonnet-4-20250514 alias: sonnet - id: claude-opus-4-20250514 alias: opus deepseek: base_url: https://api.deepseek.com/v1 api_key_env: DEEPSEEK_API_KEY models: - id: deepseek-chat alias: ds-chat - id: deepseek-coder alias: ds-coder glm: base_url: https://open.bigmodel.cn/api/paas/v4 api_key_env: GLM_API_KEY models: - id: glm-4-plus alias: glm4 # 使用場景配置 profiles: # 日常開發(fā)用 Claude 官方 dev: provider: anthropic model: sonnet proxy: enabled: true # 寫代碼專用用 DeepSeek Coder code: provider: deepseek model: ds-coder proxy: enabled: false # 省錢模式用 GLM budget: provider: glm model: glm4 proxy: enabled: false幾個關鍵參數(shù)說明api_key_env指定的是環(huán)境變量名不是 API Key 本身。這樣做的好處是配置文件可以安全地提交到 Git不會泄露密鑰。你只需要在 shell 里 export 對應的環(huán)境變量就行。models里的alias是給模型起短名方便在命令行里快速指定。比如openrig dev --model opus比openrig dev --model claude-opus-4-20250514好記多了。no_proxy列表里的地址不會走代理。這個在本地開發(fā)時特別有用比如你本地跑了一個模型服務肯定不希望請求繞一圈代理再回來。3.3 啟動腳本與命令行封裝配置文件寫好了接下來需要一個啟動腳本來讀取配置并啟動 Claude Code 或 Codex。我寫了一個比較完整的版本放在~/openrig/bin/openrig.js#!/usr/bin/env node const fs require(fs); const path require(path); const yaml require(js-yaml); const { spawn } require(child_process); const net require(net); const CONFIG_PATH path.join(__dirname, .., openrig.yaml); function loadConfig() { if (!fs.existsSync(CONFIG_PATH)) { console.error(配置文件不存在: ${CONFIG_PATH}); process.exit(1); } return yaml.load(fs.readFileSync(CONFIG_PATH, utf8)); } function checkPort(host, port, timeout 1500) { return new Promise((resolve) { const socket new net.Socket(); socket.setTimeout(timeout); socket.on(connect, () { socket.destroy(); resolve(true); }); socket.on(timeout, () { socket.destroy(); resolve(false); }); socket.on(error, () resolve(false)); socket.connect(port, host); }); } async function buildEnv(config, profileName) { const profile config.profiles[profileName]; if (!profile) { console.error(Profile ${profileName} 不存在); console.error(可用: ${Object.keys(config.profiles).join(, )}); process.exit(1); } const provider config.providers[profile.provider]; const env { ...process.env }; // 注入 provider 信息 env.OPENRIG_PROVIDER profile.provider; env.OPENRIG_BASE_URL provider.base_url; env.OPENRIG_MODEL profile.model || provider.models[0].id; // 注入 API Key const apiKey process.env[provider.api_key_env]; if (!apiKey) { console.warn(警告: 環(huán)境變量 ${provider.api_key_env} 未設置); } else { env.OPENRIG_API_KEY apiKey; } // 代理配置 const proxyConf { ...config.proxy, ...(profile.proxy || {}) }; if (proxyConf.enabled) { const alive await checkPort(proxyConf.host, proxyConf.port); if (alive) { const proxyUrl http://${proxyConf.host}:${proxyConf.port}; env.HTTP_PROXY proxyUrl; env.HTTPS_PROXY proxyUrl; env.NO_PROXY (proxyConf.no_proxy || []).join(,); console.log(代理已啟用: ${proxyUrl}); } else { console.warn(代理 ${proxyConf.host}:${proxyConf.port} 不可達已跳過); } } return env; } async function main() { const args process.argv.slice(2); const profileName args[0] || dev; const restArgs args.slice(1); const config loadConfig(); const env await buildEnv(config, profileName); // 決定啟動哪個工具 const tool env.OPENRIG_PROVIDER openai ? codex : claude; console.log(啟動 ${tool} [profile${profileName}, provider${env.OPENRIG_PROVIDER}]); const child spawn(tool, restArgs, { env, stdio: inherit, shell: process.platform win32 }); child.on(exit, (code) process.exit(code)); } main().catch((err) { console.error(err.message); process.exit(1); });給腳本加執(zhí)行權限并創(chuàng)建軟鏈接chmod x ~/openrig/bin/openrig.js sudo ln -s ~/openrig/bin/openrig.js /usr/local/bin/openrig現(xiàn)在你可以這樣用了# 用 dev profile 啟動 Claude Code openrig dev # 用 code profile 啟動并傳遞額外參數(shù) openrig code --resume # 查看當前配置 openrig dev --help3.4 多環(huán)境同步與版本管理配置寫好后怎么在多臺機器之間同步我的做法是把~/openrig目錄做成一個 Git 倉庫但 API Key 不放在配置文件里而是通過環(huán)境變量注入。每臺機器上單獨設置環(huán)境變量# 加到 ~/.bashrc 或 ~/.zshrc export ANTHROPIC_API_KEYsk-ant-xxxx export DEEPSEEK_API_KEYsk-xxxx export GLM_API_KEYxxxx這樣 Git 倉庫里只有配置結構沒有敏感信息。換機器的時候 clone 下來設置好環(huán)境變量就能用。如果你不想把配置提交到遠程倉庫也可以用 rsync 或者 Syncthing 在本地網(wǎng)絡同步。我試過用 Syncthing 同步~/openrig目錄效果不錯改一臺機器上的配置其他機器幾秒鐘后就更新了。提示環(huán)境變量里的 API Key 在某些 shell 下可能被其他程序讀取到。如果你對安全性要求高可以用pass或者系統(tǒng)鑰匙串來管理密鑰然后在啟動腳本里動態(tài)讀取。4. 常見問題排查與避坑指南4.1 Claude Code 與 Codex 的典型報錯處理在實際使用中我踩過的坑主要集中在幾個方面。下面整理成速查表方便對照排查。報錯信息可能原因解決方法your organization has disabled claude subscription access賬號訂閱類型不支持改用 API Key 方式或檢查訂閱狀態(tài)cc switch local proxy failed while handling codex endpoint /responses代理轉(zhuǎn)發(fā)規(guī)則不匹配檢查代理配置確認/responses路徑被正確轉(zhuǎn)發(fā)the gpt-5.6-sol model is not supported模型名稱錯誤或未授權確認模型 ID 拼寫檢查 API Key 權限error installing 24.21.0: node.js v24.21.0 is not yet releasedNode.js 版本號不存在去官網(wǎng)確認當前 LTS 版本號codex無法加載組織設置配置文件路徑或權限問題檢查~/.codex/config.yaml是否存在且可讀請求一直超時無響應代理不可達或網(wǎng)絡問題用curl測試代理端口檢查NO_PROXY設置關于cc switch local proxy failed這個報錯我專門研究過。它的本質(zhì)是代理在處理 Codex 的/responses端點時轉(zhuǎn)發(fā)規(guī)則沒有覆蓋到這個路徑。Codex 的 API 路徑和 Claude 不太一樣Claude 用的是/v1/messagesCodex 用的是/responses。如果你的代理規(guī)則只寫了/v1/*那 Codex 的請求就會漏掉。解決方法是在代理配置里顯式加上/responses路徑的轉(zhuǎn)發(fā)規(guī)則。4.2 模型接入的兼容性問題接入第三方模型時最大的問題是 API 格式兼容性。Claude Code 和 Codex 各自期望的請求格式不同而第三方模型供應商的 API 格式又各有差異。openrig 的代理層需要做格式轉(zhuǎn)換。以 DeepSeek 為例它的 API 格式和 OpenAI 兼容但和 Claude 的格式有差異。如果你直接用 Claude Code 去調(diào) DeepSeek 的接口會報格式錯誤。解決方法是在代理層做轉(zhuǎn)換// 簡化的格式轉(zhuǎn)換邏輯 function convertClaudeToOpenAI(claudeRequest) { return { model: claudeRequest.model, messages: claudeRequest.messages.map(msg ({ role: msg.role assistant ? assistant : user, content: typeof msg.content string ? msg.content : msg.content.map(c c.text).join() })), max_tokens: claudeRequest.max_tokens, temperature: claudeRequest.temperature }; }這個轉(zhuǎn)換邏輯看起來簡單但實際要處理的邊界情況很多。比如 Claude 的system字段在 OpenAI 格式里要放到 messages 數(shù)組的第一條stop_sequences要改成stop工具調(diào)用的格式也不一樣。我建議直接用現(xiàn)成的轉(zhuǎn)換庫比如anthropic-ai/sdk配合openai包做適配不要自己從頭寫。另一個坑是流式響應的處理。Claude 和 OpenAI 的流式格式不同Claude 用event: content_block_deltaOpenAI 用data: {choices:[{delta:...}]}。代理層需要把兩種格式互相轉(zhuǎn)換否則 Claude Code 會解析不了響應。4.3 性能調(diào)優(yōu)與穩(wěn)定性建議跑了一段時間之后我總結了幾條調(diào)優(yōu)經(jīng)驗第一給代理層加緩存。對于重復的請求比如相同的代碼補全請求可以在代理層做短期緩存。我用了一個簡單的內(nèi)存緩存TTL 設 60 秒命中率大概有 15% 左右響應速度明顯提升。第二設置合理的超時時間。Claude Code 默認的超時可能比較長遇到網(wǎng)絡問題時體驗很差。在 openrig 配置里把timeout設成 120 秒比較合適太短了長任務會中斷太長了卡住等得難受。第三日志分級。開發(fā)階段把log_level設成debug能看到完整的請求和響應。生產(chǎn)使用時改成warn避免日志文件膨脹。我見過有人忘了改日志級別跑了一周日志文件幾十個 G。第四定期檢查 API Key 余額。第三方模型供應商的余額不足時報錯信息往往不直觀可能表現(xiàn)為請求超時或者返回空響應。在 openrig 里加一個余額檢查的定時任務余額低于閾值時發(fā)通知。// 簡單的余額檢查 async function checkBalance(provider) { const resp await fetch(${provider.base_url}/user/balance, { headers: { Authorization: Bearer ${process.env[provider.api_key_env]} } }); const data await resp.json(); if (data.balance 10) { console.warn(${provider.name} 余額不足: ${data.balance}); } }4.4 跨平臺使用的注意事項Windows、macOS、Linux 三個平臺我都跑過 openrig各有各的坑。Windows 上最大的問題是路徑分隔符和 shell 差異。Node.js 的spawn在 Windows 上默認不通過 shell 執(zhí)行導致一些命令找不到。解決方法是在spawn參數(shù)里加shell: true但這樣又可能引入命令注入風險。我的做法是只在 Windows 平臺加shell: true并且對傳入的參數(shù)做轉(zhuǎn)義。macOS 上相對省心但要注意 Apple Silicon 和 Intel 的架構差異。有些 npm 包在 M 系列芯片上需要重新編譯如果遇到invalid ELF header之類的報錯刪掉node_modules重新npm install通常能解決。Ubuntu 上的坑主要在權限和 systemd 集成。如果你想把 openrig 做成開機自啟的服務需要寫一個 systemd unit 文件[Unit] DescriptionOpenRig Proxy Service Afternetwork.target [Service] Typesimple Useryouruser WorkingDirectory/home/youruser/openrig ExecStart/usr/bin/node /home/youruser/openrig/bin/proxy.js Restarton-failure EnvironmentNODE_ENVproduction [Install] WantedBymulti-user.target放到/etc/systemd/system/openrig.service然后systemctl enable --now openrig就能開機自啟了。5. 進階玩法把 openrig 用出花來5.1 多模型路由與自動降級openrig 的配置結構天然支持多模型路由。你可以在 profile 里定義一個模型優(yōu)先級列表當主模型不可用時自動切換到備用模型profiles: resilient: provider: anthropic model: sonnet fallback: - provider: deepseek model: ds-chat - provider: glm model: glm4啟動腳本里實現(xiàn)降級邏輯先試主模型請求失敗超時或返回錯誤碼就切到下一個。這個邏輯用 Node.js 的try/catch加循環(huán)就能實現(xiàn)但要注意區(qū)分“可重試錯誤”和“不可重試錯誤”。比如 401 認證失敗重試多少次都沒用直接報錯而 429 限流或者 503 服務不可用就值得重試。我實測下來這套降級機制在主力模型偶爾抽風的時候特別管用。有一次 Claude 的 API 返回 503openrig 自動切到 DeepSeek整個開發(fā)流程沒有中斷我甚至沒注意到切換發(fā)生了。5.2 與 VS Code 的集成Claude Code 有 VS Code 擴展openrig 可以和它配合使用。在 VS Code 的settings.json里配置{ claude-code.environment: { OPENRIG_PROFILE: dev, OPENRIG_CONFIG: /Users/yourname/openrig/openrig.yaml } }這樣在 VS Code 里啟動 Claude Code 時它會讀取 openrig 的配置。不過要注意VS Code 擴展啟動的進程可能不會繼承你 shell 里的環(huán)境變量所以 API Key 需要在 VS Code 的設置里單獨配置或者通過terminal.integrated.env注入。另一個集成點是用 VS Code 的任務系統(tǒng)跑 openrig 命令。在.vscode/tasks.json里定義一個任務{(diào) version: 2.0.0, tasks: [ { label: openrig: dev, type: shell, command: openrig dev, problemMatcher: [] } ] }按CtrlShiftP然后選Tasks: Run Task就能快速啟動。5.3 配置模板化與團隊共享如果你在團隊里推廣 openrig可以做一個配置模板倉庫。把通用的 provider 定義、代理設置、profile 結構放在模板里團隊成員 clone 之后只需要填自己的 API Key 和個性化配置。模板倉庫的結構大概是這樣openrig-template/ ├── openrig.yaml # 主配置模板 ├── profiles/ │ ├── dev.yaml # 開發(fā)環(huán)境 │ ├── staging.yaml # 預發(fā)環(huán)境 │ └── prod.yaml # 生產(chǎn)環(huán)境 ├── bin/ │ └── openrig.js # 啟動腳本 ├── package.json └── README.md # 使用說明主配置里用 YAML 的!include指令需要自定義 YAML 類型或者啟動腳本里做文件合并把 profiles 目錄下的配置合并進來。這樣每個人只需要維護自己的 profile 文件公共部分由模板統(tǒng)一管理。團隊共享時還要注意 API Key 的管理。絕對不要把 Key 寫進配置文件提交到倉庫??梢杂?env文件加.gitignore的方式或者用團隊統(tǒng)一的密鑰管理服務。我見過有人不小心把 Key 提交到公開倉庫幾分鐘內(nèi)就被掃到并盜用了損失不小。5.4 監(jiān)控與日志分析跑了一段時間后你可能會想知道哪個模型用得最多平均響應時間是多少哪些請求經(jīng)常失敗這些數(shù)據(jù)對優(yōu)化配置很有幫助。在 openrig 的代理層加一個簡單的日志記錄把每次請求的元數(shù)據(jù)寫到 JSON Lines 文件function logRequest(entry) { const line JSON.stringify({ timestamp: new Date().toISOString(), provider: entry.provider, model: entry.model, duration: entry.duration, status: entry.status, tokens: entry.tokens }); fs.appendFileSync(openrig.log, line \n); }然后用jq或者寫個小腳本做分析# 統(tǒng)計各模型使用次數(shù) cat openrig.log | jq -r .model | sort | uniq -c | sort -rn # 計算平均響應時間 cat openrig.log | jq -s map(.duration) | add / length這些數(shù)據(jù)幫我發(fā)現(xiàn)了一個問題我原以為 DeepSeek Coder 在代碼任務上更快但實際數(shù)據(jù)顯示 Claude Sonnet 的平均響應時間反而更短。后來調(diào)整了默認模型開發(fā)效率提升了不少。6. 我踩過的那些坑說幾個印象深刻的翻車經(jīng)歷希望能幫你省點時間。第一個坑是 YAML 的縮進。YAML 對縮進極其敏感用 Tab 還是空格、縮進幾個空格都有講究。我有次從網(wǎng)頁上復制了一段配置粘貼進去之后一直報解析錯誤查了半天才發(fā)現(xiàn)是混合用了 Tab 和空格。后來在編輯器里設置了tab_size: 2并且開啟render_whitespace這類問題就少多了。第二個坑是環(huán)境變量的繼承。openrig 啟動子進程時如果直接傳env對象子進程的環(huán)境變量就是完全替換而不是追加。我一開始沒注意導致 Claude Code 找不到PATH連基本命令都執(zhí)行不了。正確的做法是{ ...process.env, ...customEnv }先繼承再覆蓋。第三個坑是代理的NO_PROXY設置。我本地跑了一個模型服務在localhost:8080但請求一直走代理繞了一圈。后來發(fā)現(xiàn)NO_PROXY里寫的是localhost但實際請求用的是127.0.0.1兩者在代理規(guī)則里不等價。把兩個都加上就好了。第四個坑是 Node.js 版本升級導致的兼容性問題。有次我把 Node.js 從 20 升到 22結果js-yaml包報了個奇怪的錯誤。查了才知道是包版本太老不支持新的 Node.js API。升級js-yaml到最新版就解決了。所以升級 Node.js 大版本時記得把依賴包也更新一遍。第五個坑是 API Key 的權限范圍。有些平臺的 API Key 可以設置權限范圍比如只讀、只寫、或者限定模型。我申請了一個 Key 用來測試結果一直報 403后來發(fā)現(xiàn)是申請時沒勾選對應的模型權限。這個坑不常見但遇到了很難排查因為報錯信息不會告訴你具體缺哪個權限。這些經(jīng)驗歸結起來就是一句話配置管理這件事細節(jié)決定成敗。openrig 的思路是把所有細節(jié)顯式化、結構化讓你能一眼看到全貌而不是散落在各個 shell 配置文件和環(huán)境變量里。剛開始搭建的時候多花點時間后面用起來就省心了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天天天天天操| 丁香婷婷九月在线| 开心 五月 综合| 黄色99网| 97碰碰人人视频| 丁香五月综合激情啪啪| 婷婷五月婷婷五月| 色婷婷色五月另类综合| www.五月天色色色| 久草热久草在线视频| 色天天综合| 色六月 婷婷| 伊人五月天婷婷| 九九青草热| 亚洲第一第二网站| 色丁香五月| 综合色天天| www亚洲无码| 日本五月婷婷| 成人视频一区| 亚洲中文av| 99热精品在线播放观看| 色婷婷丁香五月天| 亚洲成Av人片乱码色第1集| 精品五月天| 麻豆123区| 婷婷色啪| 91婷婷五月丁香碰| 亚洲天堂玖玖| 老师高潮流白浆喷水的A片| 亚洲操操操| 97成人丁香婷婷| 婷婷色五月91啪啪| 精品人妻伦一二三区久久| sewuyuejiqingwang| 丁香五月综合首页| 超碰在线观看caop| 色综合久久8| av九九| 性生活视频98791| 激情婷婷丁香五月天小说| 九九热超碰| 991精品在线视频| 丁香欧美| 99热这里只有精品一区| 在线观看玖玖资源免费观看| 五月天玖玖狠狠色色| 91在线日| 欧美色色色色色色色| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 操B视频在线播放| 亚洲综合色婷婷| XX色综合| 99热精品在线观看| 91人操| 婷婷亚洲色| 99高级会所久久| 婷婷五月电影| 99热最新| 日韩三级片一区二区| AV操逼网| 五月婷婷深深的爱| 丁香五月天婷婷久久| 九色婷婷| 日韩人妻无码一区二区| 色婷婷色五月丁香| 丁香激情六月天婷婷| 色就是色婷婷五月亚洲激情| 亚洲另类婷婷五月丁香在线播放| 天天爽天天爽天天爽天天爽天天爽| 五月丁香色婷基地综合久久| 久久色天堂| 色综合色婷色基地| 久99久视频| 久久九九精彩| 狠狠干.com| 国产偷人爽久久久久久老妇APP| 激情综合五月婷婷| 大香蕉220| 中文中文在线| 丁乡久久| 五月丁香婷婷色| 9在线9在线婷婷在线国产| 成人综合视频网址| 婷婷色基地在线看 | 五月综合视频| 婷婷五月开心六月AV| 色人久久| 色婷婷丁香A片区毛片区女人区| 婷婷久久大香蕉| 国产毛片精品一区二区色欲黄A片 极品人妻VIDEOSSS人妻 | 国产乱子轮XXX农村| 色婷婷电影网| 欧美碰碰碰| 五月天天综合网色婷婷| 色九网| 思思色播| 日韩色五月| 热久精品| 中文字幕日产A片在线看| 色五月综合| 7777国产盗摄农村女人| 天堂资源欧日浪女在线播放| 婷婷五月久久| 五月丁香六月激情综合| 少妇出轨做爰高潮A片| 国产精品第一国产精品| a九九热www| 亚洲色涩视频| 色情五月婷婷| 六月丁香网| 99在线视频操999| 日本天堂免费99| 91美女被操| 66久久视频在线| 操操操AV| 婷婷丁香六月| 婷婷99热| 色五月激情婷婷| 九九热黄色| 婷婷激情六月| 色和综合网| 九色 在线| 激情五月图| 99热精品9| 欧美综合五月丁香六月婷| 狠狠综合网| 色色色色色日韩午夜激情 | 激情综合网五月激情| av大香蕉| 久热大香蕉| 99热只有精品在线观看| 91久久电影| 色色综合激情| 丁香五月激动深爱欧美| 国产精品久久..4399| 色色色在线免费视频| 五月婷亚洲精品| 色色色色色色网| 日本波多野结衣视频| 五月天丁香成人| 九九视频精品在线免费| 噜噜色婷婷| 99热精品在线| 丁香五月婷婷亚洲综合精品| 婷婷综合视频| 国产毛片精品一区二区色欲黄A片| 黄色av网站在线免费播放| www.yw尤物| 丁香五月婷综合网| 激情久久网 | 久久综合丁香激情五月| 久久伊人大香蕉| 丁香五月影院| 99视频精品| 粉嫩av懂色av蜜臀av熟妇| 五月婷天堂视频| 九月婷婷综合八月丁香在线观看| 99精品久久| 婷婷激情人妻| 精品成人久久久久久久_一二三四视| 91在线观看九区| 人妻自慰在线| 欧美色婷婷| 色色色婷婷五月| 天天干夜夜谢| 久久婷婷色情7777网站| 俺去也五月天婷婷| WWW丁香五月| a网站免费观看| 91黄址| 久久在线大香蕉| 五月花婷婷| 色噜噜狠狠色综合网| 激情五月天开心总和网| 久久99网站| 伊人99热| 九九精品免费| 天干天天干天天天天天| 色噜噜五月天| 无码人妻丰满熟妇奶水区码| 另类激情中文| 五月丁香在线国产| 婷婷射图| 淫视馆av三区| 色五月 五月婷婷| 五月丁激情| 五月丁香婷婷狠狠操| 无套内射极品大美女| 丁香五月婷婷激情小说| 亚洲123区高清入口| 久久丁香五月| 五月天欧美激情| 久热伊人9| 天天干天天干天天干天天干天天干| 99这里只有免费的精品| 精品99在线| 亚洲成人综合在线| 国产成人综合在线| 五月丁香婷婷三级| 狠色狠色狠狠色综合网| 婷婷五月天天激情| 91久久久久久| 综合色播| 久久丁香久久| 六月丁婷婷| 欧美精品狠狠色丁香婷婷| 天天干 夜夜爽| 亚洲天堂热| www.色五月| 深爱婷婷网| 快乐激情五月色婷婷| 婷婷碰碰| 精品影院| 五月综合激情网| 五月婷婷六月丁香在线视频| 思思热思在线精品视频| 99日本黄站| 国产日产亚洲系列最新| 一级性爱视频| 久九色| 天天干肏夜夜| www.激情在线| 色婷婷99| 97干免费视频| 中文字幕成人影视| 91性交在线播放| 天堂在线9| 午夜电影网VA内射| 色五月五月天| 亚洲亚洲激情| 人妻性爱av网站| 碰人人97| 操操综合网婷婷| 丁香五月婷婷啪啪| 欧美综合五月丁香六月婷| 激情综合激情五月| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 538任你爽视频不一样的| 第四色首页| 秋霞影音91人妻久久| 91丨九色丨熟女|新版| 成人婷婷五月天| 无码九九九九| 九九色院| 国产4P视频精品五区| av不卡网站| 久久这里只有精品热在99| 丁香五月欧美午夜视频| 激情小说 五月天| 国产一级婬片毛片| xx综合网| 丁香五月婷婷欧美成人色图| 二色av| 人妻熟女一区二区AV| 五月婷六月| 丁香八月综合激情| 狠狠五月激情在线| 五月丁香六月婷婷中合网| 五月Huangsewang| 激情五月综合| 99re思思热久久| 99av视频| 色情丁香五月婷婷精品| 色色免费网站| 国产亚洲在线观看| www.狠狠| 五月色天五月色| 性 色 婷婷| 欧洲亚洲免费视频9| 婷婷她六月天| 色婷婷色久综| 这里只精品热在线18| 战争与艾拉电影免费观看| 五月婷婷色播视频| 俺去啦综合网| 99综合视频| 亚洲精品国产成人AV在线| 2025天天日爽| www.久久| 婷婷99视频在线| 69人人操人人爽| 九九久久久综合| 高清成人综合| 五月激情视频| 五月天色婷婷网| 色综合色色色色色| 99re思思久久| 欧美久久一级内射wwwwww.| 国产第99页| 91窝窝| 婷婷五月天丁香花| www.思思99热| 五月天久久婷婷| 丁香久月| 女同在线9| 91色九| 天天日天天狠狠操| 九九这里是免费的视频5| 狠狠干综合网| 91九色白丝| 激情影院69| 综合婷婷| 婷婷丁香五月亚洲综合网在线视频观看| 丁香六月婷婷久久综合| 狠狠色成人影片| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 婷婷五月天伊人网| 久久婷婷五月综合色丁香花| 久久伊人大香蕉| 青草久久五月婷伊人| 五月天婷婷社区| 激情床戏| www.激情五月天.con| 操97免费超级视频| 亚洲五月色| 91久久精品无码一区二区三区| 91九色首页| 日本三级日本黄色| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 亚洲激情电影五月天色婷婷丁香一起草 | 五月天婷婷五月| 四月婷婷五月丁香| 久久久99精品免费观看| 狠狠做五月| 色婷婷五月综合在线| 色色激情五月| 丁香五月综合狠狠| 亚洲激情99| 激情丁香六月| 久热A片| 九九色video| 九九婷婷综合| 五月天婷婷综合| 99热网站| 色日本丁香婷婷| 色婷婷丁香| 午夜天堂一区人妻| 啊V视频在线观看| 亚洲丁香五月在线观看| 99热这里| 五月丁香婷婷久久| 久久五月天婷婷| 91互操| 99精品在线下载| 婷婷五月精品在线| 狠狠久久婷五月综合色| 综合网五月天123| 五月丁香久久网| 免费人人操| 久久伊人日日夜夜| 亚洲成人在线在线| 操笔无码| 99精品偷自拍| 久久老码第一| 亚洲精品无AMM毛片| 99啪| 婷婷中文字幕| 天天操夜夜爽天天操| 欧美人人操| 天天艹| 丁香六月婷婷一区二区三区| 五月四色激情| 五月丁香淫淫婷婷婷| 农村熟妇高潮精品A片| 这里只有精品,日韩视频| 五月激情婷婷丁香| 中文字幕精品在线观看| 超碰99在线| A级毛片高清免费不卡播放谢谢谢谢| 天天色色天天| 伊人久久中文网| 狠狠干综合| 一片AV片免费播放| 夜夜久久综合网| 色原狠狠综合| 久久丁香| 综合久久婷婷五月丁香| 久久色六月| 亚洲五月婷婷在线| 就爱日五月天| 五月六月伦理| 任你草| 成人无码髙潮喷水A片| 丁香九月综合| 91五月花丁香| 五月天伊人| 99热综合网| 午夜一区| 五月激情网络| 丁香婷婷性久久| 99在线69| 激情99。| 久久人视频| 伊人五月综合网| 婷婷五月激情欧美| 久草大| 婷婷五月免费观看| 九九十99视频| 综合五月婷婷| 亚洲va欧美va天堂v国产综合| 五月婷婷丁香网| 亚洲啪视频| 婷婷丁香五月亚洲欧美| 色色色色色日韩午夜激情| 99亚洲精品视频| 久久精品五月天| 亚洲国产99| 婷婷丁香五月,狠狠综合| 伊人喵咪a V| 色五月综合激情| 久久五月天色婷婷| AA丁香综合激情| 六月婷婷在线视频| 超碰久热| 超碰国产av| 丁香色婷婷| 婷婷五月18永久免费视频| 色欲色香综合网站| 色综合综合综合| 婷婷久久色| 99re熱| 色停停香蕉视频| 婷婷成人丁香色情基地30| 97色啪| 久久久激情| 99这里只有精品视频| 亚洲在线操| 午夜AV网| 深爱激情综合| 9久久久久| 五月婷婷就去色| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 激情六月天| 日本色色色| 色五月婷婷丁香国产在线| 国产特黄色精品一区二区三区精品无广告| 色婷婷狠狠| 男人的天堂五月丁香| 99re这里只有精品9| AA片在线观看视频在线播放| 色婷五月天| 超碰在线免费| 婷婷五月av| 婷婷五月天手机版视频| 99爱视频精品| 丁香五月天堂网| AV片在线观看| 20253AV| 无码操B| 超碰操网| 五月丁香综合啪啪| 久操97| 可以免费看的AV网站| 思思视频这里是精品| 中文字幕婷婷| 一区二区免费看| 超碰97久久| 久久综合婷婷激情| 96丁香婷婷九月蜜桃综合久久| 久久丁香综合| 天天插天天干| 婷婷情色五月天| 另类小说激情五月天| 丁香激情五月少妇| 日本va视频| 五月婷婷狠狠干| www久久五月com| 色欲人妻综合aaaaaaaa网| www久久久久| 婷婷丁香综合| 99ri在线观看视频| 大香蕉婷婷五月天| 精品色情一区二区三区四区| ay2区| 噜噜噜噜噜日本视频| 在线成人网站| 婷婷九月激情| 99热第一页| 夜色综合网| 久青操| 六月婷色| 国产亚洲99| 99爱视频精品| 五月四色婷婷| 凹凸操Av| 操久久网| 亚洲精品又粗又大又爽A片 | 婷婷五月欧美综合| 色婷久| 9久久精品视频| 香蕉国产2013| 玖玖资源站国产| 青青草护士中出内射-欧美电影在线天堂新版| 先锋资源91| 中文字幕在线观看视频www| 色色99色色| 亚洲精品操一操、噜一噜、摸一摸、爽 | 色色五月天激情| 国产精品18久久久| 六月激情网| 久久婷婷东京热| 久久大香蕉| www.天天干.com| 五月综合影院| 五月丁香在线| 国产欧美熟妇另类久久久| 欧美色婷婷| 成人久碰| 亚洲成人网无码| 天天草天天舔| 人人综合久| 99操| 97伊人综合婷婷| 五月天色综合| 婷婷五月天免费视频| 色色综合网站| 99riav 亚洲| 日本操片| 五月婷婷六月丁| 天天色亚洲| 成人av中文字幕| 免费91久久精品| 久久久久亚洲AV成人无码电影| 久久婷婷成人视频| 九九99香蕉在线视频播放| 国产超碰在线| 97久久五月丁香婷婷| 999婷婷综合| 婷婷丁香人妻| 五月婷婷中文字幕| www.久久99精品| 无码区婷婷五月花开| 9精品视频在线| 丁香六月av| 五月婷丁香花| 天堂爱爱| 婷婷五月天Av| 7777精品伊人久久久大香线蕉最新版| 精品色色网| 99热综合色图| 亚洲综合欧美色丁香婷婷888月图片 | 天天做天天爽| 99热精品无码| www.久久爱.com| 五月婷婷啪啪网| 成人电影在线免费试看| 婷婷丁香黄色| 色播五月丁香综合| 熟女人妻一区二区三区免费看| 五月婷婷熟女| 亚洲天天| 亚洲婷婷丁香五月| 99热这里精| www99热| 日本久久精品| 操逼巨乳91| 日韩无码性爱| 九九免费精品| 狠狠色噜噜色狠狠狠综合色 | 超碰人人在线| 色天堂97| 亚洲AV网站在线观看| 国产一区二区av免费| 综合五月天亚洲婷婷| 狠狠色色| 色五月婷婷在线| 99色色视频| 狠狠色噜噜狠狠狠777奇米| 热99这里只有精品视频| 五婷婷综合网| 婷婷五月天成人动漫| AA丁香综合激情| 欧美色久| 久9热| 色婷丁香五月| 五月激情六月丁香| 一區四區歐美日韓| 国产精产国品一二三在观看| 97成人视频| 停停五月丁香| 天天操婷婷| 婷婷综合一二三| 中文AV在线观看| 天天色五月| 色五月婷婷在线| 五月激情偷拍婷婷| 韩日另类| 五月天激情久久| 99九九视频| a久久| 亚洲色综合| 日韩成人无码人妻| 少妇日麻屄| 亚洲乱码日产精品BD| 天天色天天爱天天舔| 五月天婷婷色色| 亚洲小视频免费看| 无码人妻精品一区二区蜜桃色欲| 久久奄也去色色网站| 六月婷婷综合网2| 亚洲婷婷乱乱丁香| 91九色欧美| 亚洲碰碰碰| 色色色在线免费视频| 精品人妻在线免费观看| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 久热只有精品| 看国产探花操逼三级片| 91大操| 99在线视频精品| 欧美色骚婷婷五月天| 精品欧美一区二区三区久久久| 91色情播放| 色综合婷婷99| 亚洲AV免费在线| 色五月婷婷DVD| 五月天婷婷丁香人人操91| 超碰久热| 日操| CAOBIBI| 狠狠狠狠狠| 国产高清RV综合aVa| 玖玖婷婷色| 亚洲精品99| 俺去也在线www色官网| 亚洲午夜视频| 色婷婷精| 久久久久er热| 亚洲色热| 婷婷五六日| 香蕉婷婷色五月| 中文字幕免费高清电视剧| 激情婷婷五月社区| 天天干,天天舔| 99热99思午夜精品| 综合色99| 五月天久久婷婷| 丁香五月天人体| 玖玖激情网| 婷婷丁香人妻天天爽| 欧美色五月天| 五月色婷婷综合色| 中文字幕亚洲-区久久99婷婷| 殴美日比视频| 精品成人无码A片观看香草视频| 久久久久99精品成人网站| 五月丁香六月成人| 成 久久| 天堂中文国产| 久久久久久久久久久久久久久久一道本| 五月丁香六月婷| 色九月婷婷丁香| 成人国产欧美大片一区| 欧美黄色AA片哗啦啦啦| 五月婷婷婷| 热久久视频99| 超级碰碰91| aaaa.黄| 亚洲在线网站| 国产美女无遮挡裸体毛片A片 | 久色| 色五月婷婷中文字幕| 久九色| www.99热这里只有精品| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 91一起操| 久热伊人| 99毛片| 色九月综合| 天天狠狠综合精区| 天天干天天插| 色播五月婷婷| 婷婷综合五月| 婷香五月激情视频| 79色色免费| 激情综合网,五月| 91人妻PORNY九色大屁股| 欧美五月婷婷综合| 欧美怡红院黄站| 婷婷五月天丁香花| 图片区 小说区 区 亚洲五月 | 国产67194| 五月天婷婷色色网| 大香蕉99热| 射区导航| 伊人婷婷五月 | 九九色院| 五月婷婷AV| 99福利导航| 久久丝丝热| 婷婷伊人网| 久久草中文日韩欧美| 性一交一乱一交A片久久四色| 91精品91久久久中77777久久玖玖九九| 超碰在线播放免费观看| 9191avse| 六月99天天婷婷激情综合| 五月婷婷性爱| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 亚洲丁香五冃97色| 亚洲成人AV在线| A1片久久| www.五月婷婷.com| 99久热这里有精品| 丁香五月天婷婷久久| 色五月亚洲五月天| 日韩aaaaa| 大香蕉久久婷婷| 婷婷色五月天在线| 五月丁香综合激情| 丁香五月自拍| 六月婷婷毛片| 午夜福利8055| 五月婷婷色播| 五月综亚洲| 丁香五月天激情网| 久久久久婷| 亚洲精品久久久久AV无码| 欧美 色婷婷| 9热在线视频精品| 久久丁香五月综合六月激情红杏视频 | Av大香蕉| 中文字幕在线免费看线人| 激情五月天第四色| 色综合婷婷| 五月色丁香成人| 婷婷色操| 婷婷综合久久| 超碰在线日夜| 九九偷拍网| 欧美激情综合| 操骚货在线| 五月天久久婷婷| 香蕉久久国产AV一区二区| 97欧美在线| 久久亚洲色导航| 欧美日韩成人一区二区| WWW.国产| 丁香五月WWW| 开心深爱五月天| 亚艹艹| 久久综合中文| 超碰人人99| 色99视| 色五月婷婷成人视频| 99九九综合久久九九| 精品亚洲国产成人A片在线鸭王| 丁香久久久| 丁香婷婷色五月| 99热这里只有精品国产首页| 夜夜穞天天穞狠狠穞AV美女按摩| 玖玖爱导航| 婷色成人| 久久久激情| 成人va在线| 精品九九视频| 99精品亚洲| 第1影院之五月婷婷| 亚洲 小说 欧美 激情 另类| 中文无码婷婷| 丁香五月久久社区| 99愛国产| 曰韩少妇内射免费播放| 天堂婷婷五月在线| 五月丁香欧美综合| 大香蕉久久久久久久久| 久色五月| 农村熟妇高潮精品A片| 久久精品色| 五月天丁香综合久久国产| 综合色在线| 婷婷六月插屄激情| 99精品视频在线观看| 激情五月天丁香| 色色色网站| 欧美久久久中文字幕| 婷婷色日本| 97干在线视频| 久操大香蕉| 色色操| 大香蕉久久久| 五月丁香婷婷综合| 婷婷趴趴| 婷婷五月天色播| 五月丁香色婷基地综合久久| 五月天成人小说网| 欧美久人人| 国产成人99久久亚洲综合精品| 国产肥白大熟妇BBBB视频| 狠狠色丁香久久久婷| 99日本在线| 综合色色五月| 婷婷激情鹿城五月天| 狠狠色五月天| 噜噜狠狠色综合久| 激情婷婷综合| A片试看120分钟做受视频红杏| 97超碰99热99| 丁香五月天成人| 亚洲亚洲人成综合网络| 狠狠草婷婷| 操人妻AV| 日日激情网| 性热视频99精品| 日本3级片偷拍网站| 生活片五区| 97色色色色色色色| 成人av免费观看| 五月天婷婷久久综合| 欧美A级成人婬片免费看理论| 五月激情偷拍婷婷| 青青999| 久久久精品人妻| 成人短视频在线观看| 丁香五月色| 五月婷婷激情综合在线| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 综合色视频| 狠狠综合网| 就要去操亚洲成人精品五月天丁香婷婷| 五月天婷婷视频| 久久色五月| 婷婷六久久| www.色五月| 欧美群妇大交乱婬网| 青草视频在线观看视频| XXXX岛国| 欧美在线视频9| 色色免费网站| 翔田千里无码| 色久99| 国产精品美女| 丁香五月天激情综合网| 丁香五月天婷婷大香蕉| 99热免费| 开心五月丁香婷婷| 色婷婷av在线| 国产成人精品亚洲线观看| 都市激情小说婷婷| 免费黄色视频网址| 国产精品久久久久久喷浆| 亚洲黄色精品| 天天草天天爱| 91九色国产在线| 777精品久无码人妻蜜桃| 色狠狠综合| 在线另类| 成人五月丁香花| 天天综合久久| 亭亭五月激情亚洲在线| 色私五月婷婷| 大香蕉太香蕉视频97| 爱操人妻| 婷婷开心激情| 色综合久久五月| 丁香五月成人自拍| 国产肥白大熟妇BBBB视频| 在线只有精品| 丁香五月婷婷骚视屏| 无码人妻激情| 丁香六月激情综合网| 色五月婷婷中文字幕| 五月婷激情| 26uuuavcom| 免费婷婷| 97五月天婷婷综合激情网| 91九色网| 天天爱天天做天天操| 激情五月天无人视频在线| 91九色中文| 国产三级在线播放| 人妻久久久久久| 狠狠色综合网站久久久久| 这里只有精品免费观看网占| 成人婷婷深爱综合网| 五月停停色色丁香| 97操碰碰无码视频| 综合另类激情| 亚洲精品字幕在线观看| 热九九精品| 4399在线日本A片| 九月色婷婷综合| 99热这里只有精品一区| www激情网| 六月婷婷成人| 丁香五月六月久久综合 | 99热无码首页| 午夜丁香五月天综合| 国产在线6| ri电影在线| 超碰色综合| 色呦呦免费观看| 激情五月天色婷婷综合| 欧美VA视频| 综合九色| 六月丁香啪啪| 色五月婷婷丁香五月| 婷婷综合成人| 久久精品系列| 色偷偷综合| 超碰色色综合| 久久婷五月综合| 久久九区| 91操片| 婷婷九月| 激情五月综合网| 五月天激情综合| 丁香五月性| 热久久91| AA丁香综合激情| 日本人妻A片成人免费看片| 九九在线视频| 中文字幕人成乱码在线观看| 九九操屄| 婷婷操无码| 丁香六月青青草| 五月丁香六月婷婷综合| 五月天天综合| 久久视频婷婷视频| 激情久久丁香| 色婷婷四色| 丁香五月大香蕉AV| 啪啪激情网| 亚洲高清在线| 激情www.98com| 九九热这里只有精品一| 五月丁香婷婷免费视频| 丁香五月婷婷五月| 可以直接看的av| 久久久久久久久久8888| 熟女色色一区二区| 久草五月丁香婷婷综合| 日本欧美国产| 99热九九这里只有精品| 婷婷亚洲综合| 婷婷爱综合| 91狠狠综合网| 丁香五月综合福利视频导航| 天天干-天天日| 99综合| 色综合激情| 久久一级AV| 97成人在线视频| 97久久精品| 99色视| 久久99性爱| 五月丁香婷草| 精品国产一区二区三区四区阿崩| 久久久亚洲成人无码A片| 97色在线视频| 亚洲AV激情五月综合网| 五月天激情视频| www.99热| 99热婷婷| 99久操| 成人va在线观看视频| 激情五月天综合| 中文字幕黄色片| 超碰人人插| 第五婷婷伊人丁香色| 五月婷婷精品视频| 伊人婷婷色| 黄色片avv| 99丁香五月婷| 五月丁香花婷婷玉莉AV| 黄色五月婷婷| 丁香五月天亚洲综合| 91色婷婷综合久久中文字幕二区| 成人电影丁香六月天| 亚洲最大在线| 9久热在线视频| AA丁香综合激情| 亚洲婷婷五月天激情| 丁香五月手机在线| 五月婷婷深深爱| 婷婷黄色五月天在线视频| 激情色色| 激情国产五月| 思思热99er在线视频| site:pnnrt.com| 91狼友视频在线观看| 色色婷婷丁香| 在线观看av网站| 91919191919久久成人视频| 日日爱678| 深爱五月激情| 狠狠婷婷色| 丁香五月天欧洲在线| 五月丁香婷婷中文| 色综合久久无码| 五月丁香在线国产| 欧美婷婷| 婷婷精品免费久久| 五月在线| 日本欧美999久久久三级片| 日本的α片xxxwww| 五月丁香啪啪网| 色你久久| 色播五月综合网| 91黄色五月天视频| 无码婷婷五月天| 热久久这里只有精品| 激情综合色网| 思思热视频| 男人的天堂97| 5月婷婷五月天| 五月天啪啪网| 激情五月婷婷伊人| 内射干少妇亚洲69XXX| 九九成人精品免费视频| 99无码超碰| 五月天婷婷激情网| 婷婷丁香五月网| 特黄三级又爽又粗又大| 精品无码视频| 免费观看全黄做爰的视频| 天天摸天天爽| 亚洲综合无码| 99热偷拍| 在线资源av-超碰中文在线-成人AV | 99热这里有精品| 97色色色色色色色色色色色色色| 欧美25p| 日本本土色网第一区| 欧美成人A片AAA片在线播放| 大香蕉综合在线| 欧日韩成人| 五月丁香激情综合网| 久久多色| 日本女天天爽| 色99在线| 中出内射的人妻视频| 国产免费性爱| 国产VA亚洲VA96| 大香蕉啪啪啪| 操人妻90p| 五月丁香在线观看国产| 五月激情网综合| 丁香六月综合激| 天天天天操| 另类天堂| 婷婷丁香五月综合| 99热在线观看免费| 丁香五月婷婷高清| 国产成人+综合亚洲+天堂| 黄网在线播放| 国产精品99久久久久久久女警| 丁香五月瑟瑟| 婷婷五月欧美| 日本爆乳片手机在线播放| 五月停亭六月,六月停亭的英语 | 婷婷五月天国产在线播放| 久婷婷| 久热91| 亚洲最大五月天成人网| 大香蕉丁香| 婷婷色婷婷| 99色热视频| 99九九视频精彩在线| 色播五月| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | av在线观看网站| www.99热最新视频8| 亚洲激情四射色| 久久综合中文字幕| 九九無碼| 99热在线播放精品| 色情久久久| 色欲九区| 伊人网色婷婷五月天| 欧美婷婷综合| 99热99思午夜精品| 啪啪视频99| 婷婷久热| 99re这里只有精品在线观看| 久久99操| 少妇高潮呻吟A片免费看软件| 99精品视频免费观看| 激情综合五月| 五月丁香最新| 香蕉97碰碰碰欧美| 五月花婷婷| 热的无码综合视频| 五月婷六月| 婷婷丁香大香蕉| 99久久婷| 亚洲av骚货| 婷婷五月综合婷婷| 大香蕉大香蕉在线影院| 中文字幕无线久必| 91九色丨国产丨爆乳| 久久久久思思热| 亚洲操操| 五月丁香婷婷激情影院欧美| 天天日天天舔| 激情久久肏屄视频| 欧美另类五月激情| 99精品视频在线6| 色五月91| 天天操天天插天天射| 极品少妇XXXX精品少妇偷拍| 激情噜噜噜| 性生活视频98791| a网站免费观看| 伊人久久大香蕉网| 丁香婷婷五月人体| 亚洲国产精品二二三三区| 色五月色五天色情网| 天天爽天天干天天| www.com操| 色婷婷影院| 六月激情婷婷| 色婷婷五月在线| 沈娜娜av| 综合福利网| 亭亭玉月丁香| 日本色色色| 啪啪色激情五月天| 九九九九综合| 五月丁香久人妻中文| 色9999综合久久| 国产高清av黄色看片| 狠狠干在线| 天天干一干| 亚洲中文乱字字幕在线永久| www好屌操| 人妻久久久久久久久妻久久久久| 丁香婷婷久久 | 99A片| 夜夜夜夜夜骑撸| 停停五月丁香| 五月婷婷综合色啪首页| 婷婷五月深深的爱| 婷婷五月天最新综合你懂的 | 久久五月视频| www九九热| 免费国产视频| 五夜婷婷| 欧亚色色| 久久九色| 性色播| 九九热这里只有精品23| 婷五月天天| 亚洲激情免费久久| 丁香九月综合| 色五月丁香激情视频| 丁香五月另类小说| 久久人妻超碰一区| 黄桃AV无码免费一区二区三区| 久久色情| 五月丁香婷婷综合| 国産精品| 婷婷五月综合社区| 日本三级中文字幕| 狠狠色婷婷7| 亚洲亚洲激情| 综合色色婷婷| 热99re| 久久只有18视频| 一起草无码| 亚洲AV中文在线| 婷婷成人视频| 精品久久99| 日本综合九九| 久久久jd| 伊人五月婷婷| 亚洲 激情 中文| 丁香六月婷婷综合网| 色亚洲激情| www.zbzhongsen.com| 日屌日日操日日色| 六月丁香五月天| 久色激情| 丁香婷婷六月| 亚韩精品视频1区| 色都都狠狠色都都色综合色| 婷婷五月激情欧美| 69热91天堂| 国产av基地| 丁香亚洲婷婷五月| 日日激情网| 天天射美女| 婷婷情色开心五月天99| 丁香五月之久操视频| 91九色大屁股| 五月丁香| 午夜色丁香| 九九精品免费| 4399无码视频| 色狠狠综合网| 99综合99| 婷婷丁香五月色| 国产成人网| www.ywav| 婷婷放心五日爱| 激情开心五月天婷婷基地丁香社区| 天天摸天天舔| 在线观看免费视频| 狠狠色丁香久久婷婷综合五月| 婷婷综合色| 五月丁香激情六月| 超碰人人99| 亚洲电影在线观看| 99在线热| 伊人在线婷婷草| 婷婷在线免费| 狠狠色噜噜色狠狠狠综合色 | 五月婷婷综合色拍| 激情六月色| 久久精品一区二区三区四区| 六月婷婷色综合| 久久区区一二三av| 色天天综合色| 色婷婷五月综合| 丁香五月之久操视频| 色色无码日韩| 九九激情视频| 国产毛片欧美毛片久久久| 色一情一乱一乱一区91| 激情亚洲五月| 99综合| 日韩色色视频| 婷婷射图| 婷婷五月丁香基地| 婷婷五月天av| 五月丁香激情婷婷| 夜夜爽天天干| 99热久久这里只有精品| 久久久91| 五月天激情国产综合婷婷婷| 九九这里只有精品| 日韩影院三级| 亚洲不卡欧洲| www.丁香黄色五月天人与| 精品九九在线观看| 男女99免费视频| 久久天堂女人| 伊人婷婷五月天av| 伊人综合网站| 欧美色色色色色| 99热精品在线观看| 五月天激情久久| www,超碰| 激情五月天com| 丁香婷婷五月| 91在线日| 五月伊人网| 91在线观看www| 欧洲第一久色| 91婷婷丁香五月亚洲| 丁香五月视频在线观看| 五月激情小说| 国产xxxxx在线观看| 亚洲精品在线视频| 97综合色片| 性天堂久久| 丁香五月婷婷激情中文| 99热免| 亚洲色婷婷五月天| 久久9精品| 99免费在线| 天天搽天天射| 台湾无码A片一区二区| 内射综合网| 激情亚洲网|