# Custom_OpenClash_Rules
# YAML 配置文件（AI 專用嚴格版）
# 適用於需要 AI 分流與 DNS 洩漏保護的 OpenWrt / OpenClash 場景
# 基於 Custom_Clash.yaml 精簡：僅保留 AI 分流與基礎網路配置
# 嚴格版 AI kill-switch：
# 1. 指定 AI 規則走對應服務組
# 2. 上游 AI guard GEOSITE 命中後直落 ⛔ 拒絕
# 3. 最終 MATCH 仍然直落 ⛔ 拒絕
# GENERATED by internal/python/generate_ai_profiles.py. Do not edit manually.

# ==================== 端口配置 Port Configuration ====================
port: 7890
socks-port: 7891
mixed-port: 7893
redir-port: 7892
tproxy-port: 7895
allow-lan: true
bind-address: "*"
mode: rule
tcp-concurrent: true
unified-delay: true

# ==================== 代理提供者 Proxy Provider ====================
proxy-providers:
  provider1:
    type: http
    url: "url"
    interval: 3600
    path: ./proxy_provider/provider1.yaml
    proxy: DIRECT
    header:
    health-check:
      enable: true
      interval: 600
      url: https://cp.cloudflare.com/generate_204
    override:
      skip-cert-verify: true
      udp: true
    exclude-filter: "(?i)(剩余流量|剩餘流量|套餐到期|到期|流量[:：]|Traffic|Expire|Subscription|官网|官方|客服|Telegram|TG群|网址|網站|更新|失效|Invalid|USE|USED|TOTAL|EXPIRE|Panel|Channel|Author|公告|通知|邀请|邀請|返利|教程|使用说明|使用說明)"

# ==================== 地理数据库配置 GeoData Configuration ====================
geox-url:
  mmdb: https://testingcf.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/Country.mmdb
  geoip: https://testingcf.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geoip.dat
  geosite: https://testingcf.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/geosite.dat
  asn: https://testingcf.jsdelivr.net/gh/xishang0128/geoip@release/GeoLite2-ASN.mmdb
geo-auto-update: true
geo-update-interval: 24
geodata-mode: true

# ==================== 日志与控制 ====================
log-level: info
ipv6: true
external-controller: 0.0.0.0:9090
# WARNING: Set OPENCLASH_SECRET before deploying. Do not commit real secrets.
secret: ""

# ==================== 配置文件存储 Profile ====================
profile:
  store-selected: true
  store-fake-ip: true

# ==================== TUN 虚拟网卡配置 ====================
tun:
  enable: true
  stack: system
  dns-hijack:
    - 0.0.0.0:53
  auto-detect-interface: false
  auto-route: false
  auto-redirect: false
  strict-route: false
  endpoint-independent-nat: true

# ==================== DNS 配置 ====================
dns:
  enable: true
  listen: 0.0.0.0:7874
  ipv6: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  fake-ip-filter:
    - "*.lan"
    - localhost.ptlogin2.qq.com
  fake-ip-filter-mode: blacklist
  respect-rules: true
  default-nameserver:
    - 1.1.1.1
    - 8.8.8.8
  nameserver:
    - https://1.1.1.1/dns-query
    - https://dns.google/dns-query
    - https://dns.adguard-dns.com/dns-query
  proxy-server-nameserver:
    - https://1.1.1.1/dns-query
    - https://dns.google/dns-query
    - https://dns.adguard-dns.com/dns-query
  direct-nameserver:
    - https://127.0.0.1:5053/dns-query
  direct-nameserver-follow-policy: false
  nameserver-policy:
    "geosite:private":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:cn":
      - https://127.0.0.1:5053/dns-query
    "geosite:openai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:bing":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:category-ads-all":
      - https://dns.adguard-dns.com/dns-query
      - https://1.1.1.1/dns-query
    "+.anthropic.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.claude.ai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.perplexity.ai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "jules.google.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "jules.googleapis.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.x.ai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.poe.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.openrouter.ai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.cursor.sh":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.cursorapi.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.cursorvm.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.huggingface.co":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.mirasim.ai":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.antigravity.google":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "+.labs.google":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "cloudaicompanion.googleapis.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "cloudcode-pa.googleapis.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geminicloudassist.googleapis.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "aiplatform.googleapis.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "stitch.withgoogle.com":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:google-deepmind":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:category-ai-!cn":
      - https://1.1.1.1/dns-query
      - https://dns.google/dns-query
    "geosite:category-ai-cn":
      - https://127.0.0.1:5053/dns-query

# ==================== 代理策略组 Proxy Groups ====================
proxy-groups:
  - name: "🚀 手動選擇"
    type: select
    proxies:
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇸🇬 新加坡節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
    filter: "(?i)^(?!.*(?:🇭🇰|香港|Hong Kong|Hong-Kong|\bHKG\b|\bHK\b|剩余流量|剩餘流量|套餐到期|到期|流量[:：]|Traffic|Expire|Subscription|官网|官方|客服|Telegram|TG群|网址|網站|更新|失效|Invalid|USE|USED|TOTAL|EXPIRE|Panel|Channel|Author|公告|通知|邀请|邀請|返利|教程|使用说明|使用說明)).*$"
    use:
      - provider1
  - name: "♻️ 自動選擇"
    type: url-test
    filter: "(?i)^(?!.*(?:🇭🇰|香港|Hong Kong|Hong-Kong|\bHKG\b|\bHK\b|剩余流量|剩餘流量|套餐到期|到期|流量[:：]|Traffic|Expire|Subscription|官网|官方|客服|Telegram|TG群|网址|網站|更新|失效|Invalid|USE|USED|TOTAL|EXPIRE|Panel|Channel|Author|公告|通知|邀请|邀請|返利|教程|使用说明|使用說明)).*$"
    tolerance: 50
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    use:
      - provider1
  - name: "🤖 ChatGPT"
    type: select
    proxies:
      - "🤖 ChatGPT · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 ChatGPT · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Copilot"
    type: select
    proxies:
      - "🤖 Copilot · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Copilot · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Claude"
    type: select
    proxies:
      - "🤖 Claude · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Claude · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Gemini"
    type: select
    proxies:
      - "🤖 Gemini · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Gemini · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 NotebookLM"
    type: select
    proxies:
      - "🤖 NotebookLM · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 NotebookLM · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Jules"
    type: select
    proxies:
      - "🤖 Jules · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Jules · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Perplexity"
    type: select
    proxies:
      - "🤖 Perplexity · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Perplexity · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Grok"
    type: select
    proxies:
      - "🤖 Grok · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Grok · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Poe"
    type: select
    proxies:
      - "🤖 Poe · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Poe · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 OpenRouter"
    type: select
    proxies:
      - "🤖 OpenRouter · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 OpenRouter · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Cursor"
    type: select
    proxies:
      - "🤖 Cursor · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Cursor · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Hugging Face"
    type: select
    proxies:
      - "🤖 Hugging Face · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Hugging Face · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Mirasim"
    type: select
    proxies:
      - "🤖 Mirasim · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Mirasim · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Antigravity"
    type: select
    proxies:
      - "🤖 Antigravity · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Antigravity · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Google Labs"
    type: select
    proxies:
      - "🤖 Google Labs · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Google Labs · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Stitch"
    type: select
    proxies:
      - "🤖 Stitch · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Stitch · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇺🇸 美國節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Android Studio AI"
    type: select
    proxies:
      - "🤖 Android Studio AI · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Android Studio AI · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Gemini Cloud"
    type: select
    proxies:
      - "🤖 Gemini Cloud · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Gemini Cloud · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Vertex AI"
    type: select
    proxies:
      - "🤖 Vertex AI · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 Vertex AI · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 AI Other"
    type: select
    proxies:
      - "🤖 AI Other · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 AI Other · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇺🇸 美國節點"
      - "🇸🇬 新加坡節點"
      - "🇯🇵 日本節點"
      - "🇹🇼 台灣節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 AI CN Other"
    type: select
    proxies:
      - "🤖 AI CN Other · 自動"
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "🇸🇬 新加坡節點"
      - "🇹🇼 台灣節點"
      - "🇯🇵 日本節點"
      - "🇺🇸 美國節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "🤖 AI CN Other · 自動"
    type: fallback
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    proxies:
      - "🇸🇬 新加坡節點"
      - "🇹🇼 台灣節點"
      - "🇯🇵 日本節點"
      - "🇺🇸 美國節點"
      - "🇰🇷 韓國節點"
      - "🌐 其他／未識別節點"
      - "⛔ 拒絕"
  - name: "⛔ 拒絕"
    type: select
    proxies:
      - REJECT
  - name: "🐟 漏網之魚"
    type: select
    proxies:
      - "🚀 手動選擇"
      - "♻️ 自動選擇"
      - "⛔ 拒絕"
  - name: "🇺🇸 美國節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: '(?i)(?:🇺🇸|美國|美国|波特蘭|波特兰|達拉斯|达拉斯|俄勒岡|俄勒冈|鳳凰城|凤凰城|費利蒙|费利蒙|硅谷|拉斯維加斯|拉斯维加斯|洛杉磯|洛杉矶|聖何塞|圣何塞|聖克拉拉|圣克拉拉|西雅圖|西雅图|芝加哥|紐約|纽约|亞特蘭大|亚特兰大|邁阿密|迈阿密|華盛頓|华盛顿|\bUS(?:[-_ ]?\d+(?:[-_ ]?[A-Za-z]{2,})?)?\b|United States|UnitedStates|USA|America|JFK|EWR|IAD|ATL|ORD|MIA|NYC|LAX|SFO|SEA|DFW|SJC)'
    use:
      - provider1
  - name: "🇯🇵 日本節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: '(?i)(?:🇯🇵|日本|東京|东京|大阪|關西|关西|埼玉|川日|泉日|滬日|沪日|深日|\bJP(?:[-_ ]?\d+(?:[-_ ]?[A-Za-z]{2,})?)?\b|Japan|JPN|NRT|HND|KIX|TYO|OSA|Kansai)'
    use:
      - provider1
  - name: "🇸🇬 新加坡節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: '(?i)(?:🇸🇬|新加坡|獅城|狮城|\bSG(?:[-_ ]?\d+(?:[-_ ]?[A-Za-z]{2,})?)?\b|Singapore|SIN)'
    use:
      - provider1
  - name: "🇹🇼 台灣節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: '(?i)(?:🇹🇼|台灣|臺灣|台湾|台北|臺北|新北|台中|臺中|高雄|彰化|\bTW(?:[-_ ]?\d+(?:[-_ ]?[A-Za-z]{2,})?)?\b|Taiwan|TWN|TPE|ROC)'
    use:
      - provider1
  - name: "🇰🇷 韓國節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: '(?i)(?:🇰🇷|韓國|韩国|首爾|首尔|春川|\bKR(?:[-_ ]?\d+(?:[-_ ]?[A-Za-z]{2,})?)?\b|Korea|KOR|Chuncheon|ICN)'
    use:
      - provider1
  - name: "🌐 其他／未識別節點"
    type: url-test
    url: "https://cp.cloudflare.com/generate_204"
    interval: 300
    tolerance: 50
    filter: "(?i)^(?!.*(?:🇭🇰|香港|Hong Kong|Hong-Kong|\\bHKG\\b|\\bHK\\b|剩余流量|剩餘流量|套餐到期|到期|流量[:：]|Traffic|Expire|Subscription|官网|官方|客服|Telegram|TG群|网址|網站|更新|失效|Invalid|USE|USED|TOTAL|EXPIRE|Panel|Channel|Author|公告|通知|邀请|邀請|返利|教程|使用说明|使用說明)).*$"
    exclude-filter: "(?i)(?:(?:🇺🇸|美國|美国|波特蘭|波特兰|達拉斯|达拉斯|俄勒岡|俄勒冈|鳳凰城|凤凰城|費利蒙|费利蒙|硅谷|拉斯維加斯|拉斯维加斯|洛杉磯|洛杉矶|聖何塞|圣何塞|聖克拉拉|圣克拉拉|西雅圖|西雅图|芝加哥|紐約|纽约|亞特蘭大|亚特兰大|邁阿密|迈阿密|華盛頓|华盛顿|\\bUS(?:[-_ ]?\\d+(?:[-_ ]?[A-Za-z]{2,})?)?\\b|United States|UnitedStates|USA|America|JFK|EWR|IAD|ATL|ORD|MIA|NYC|LAX|SFO|SEA|DFW|SJC)|(?:🇯🇵|日本|東京|东京|大阪|關西|关西|埼玉|川日|泉日|滬日|沪日|深日|\\bJP(?:[-_ ]?\\d+(?:[-_ ]?[A-Za-z]{2,})?)?\\b|Japan|JPN|NRT|HND|KIX|TYO|OSA|Kansai)|(?:🇸🇬|新加坡|獅城|狮城|\\bSG(?:[-_ ]?\\d+(?:[-_ ]?[A-Za-z]{2,})?)?\\b|Singapore|SIN)|(?:🇹🇼|台灣|臺灣|台湾|台北|臺北|新北|台中|臺中|高雄|彰化|\\bTW(?:[-_ ]?\\d+(?:[-_ ]?[A-Za-z]{2,})?)?\\b|Taiwan|TWN|TPE|ROC)|(?:🇰🇷|韓國|韩国|首爾|首尔|春川|\\bKR(?:[-_ ]?\\d+(?:[-_ ]?[A-Za-z]{2,})?)?\\b|Korea|KOR|Chuncheon|ICN))"
    use:
      - provider1
  - name: "🎯 全球直連"
    type: select
    proxies:
      - DIRECT

# ==================== 分流规则 Rules ====================
rules:
    - "GEOSITE,private,🎯 全球直連"
    - "GEOIP,private,🎯 全球直連,no-resolve"
    - "GEOSITE,openai,🤖 ChatGPT"
    - "RULE-SET,AI_Copilot_Classical,🤖 Copilot"
    - "GEOSITE,github-copilot,🤖 Copilot"
    - "GEOSITE,anthropic,🤖 Claude"
    - "RULE-SET,AI_Gemini_Classical,🤖 Gemini"
    - "RULE-SET,AI_NotebookLM_Classical,🤖 NotebookLM"
    - "RULE-SET,AI_Jules_Classical,🤖 Jules"
    - "GEOSITE,perplexity,🤖 Perplexity"
    - "GEOSITE,xai,🤖 Grok"
    - "GEOSITE,poe,🤖 Poe"
    - "RULE-SET,AI_OpenRouter_Classical,🤖 OpenRouter"
    - "RULE-SET,AI_Cursor_Classical,🤖 Cursor"
    - "RULE-SET,AI_HuggingFace_Classical,🤖 Hugging Face"
    - "RULE-SET,AI_Mirasim_Classical,🤖 Mirasim"
    - "RULE-SET,AI_Antigravity_Classical,🤖 Antigravity"
    - "RULE-SET,AI_GoogleLabs_Classical,🤖 Google Labs"
    - "RULE-SET,AI_Stitch_Classical,🤖 Stitch"
    - "RULE-SET,AI_AndroidStudioAI_Classical,🤖 Android Studio AI"
    - "RULE-SET,AI_GeminiCloud_Classical,🤖 Gemini Cloud"
    - "RULE-SET,AI_VertexAI_Classical,🤖 Vertex AI"
    - "GEOSITE,google-deepmind,🤖 AI Other"
    - "GEOSITE,category-ai-!cn,🤖 AI Other"
    - "GEOSITE,category-ai-cn,🤖 AI CN Other"
    - "MATCH,⛔ 拒絕"

# ==================== 规则提供者 Rule Providers ====================
rule-providers:
  AI_Copilot_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Copilot_Classical.yaml"
    format: yaml

  AI_Gemini_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Gemini_Classical.yaml"
    format: yaml

  AI_NotebookLM_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_NotebookLM_Classical.yaml"
    format: yaml

  AI_Jules_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Jules_Classical.yaml"
    format: yaml

  AI_OpenRouter_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_OpenRouter_Classical.yaml"
    format: yaml

  AI_Cursor_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Cursor_Classical.yaml"
    format: yaml

  AI_HuggingFace_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_HuggingFace_Classical.yaml"
    format: yaml

  AI_Mirasim_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Mirasim_Classical.yaml"
    format: yaml

  AI_Antigravity_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Antigravity_Classical.yaml"
    format: yaml

  AI_GoogleLabs_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_GoogleLabs_Classical.yaml"
    format: yaml

  AI_Stitch_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_Stitch_Classical.yaml"
    format: yaml

  AI_AndroidStudioAI_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_AndroidStudioAI_Classical.yaml"
    format: yaml

  AI_GeminiCloud_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_GeminiCloud_Classical.yaml"
    format: yaml

  AI_VertexAI_Classical:
    behavior: classical
    interval: 10800
    type: http
    url: "https://testingcf.jsdelivr.net/gh/mythic3011/rules@main/rule/AI_VertexAI_Classical.yaml"
    format: yaml
