mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
ipv6: false
external-controller: 127.0.0.1:9090
dns:
  enable: true
  ipv6: false
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  default-nameserver:
    - 223.5.5.5
    - 119.29.29.29
  nameserver:
    - 223.5.5.5
    - 119.29.29.29
  fallback:
    - 8.8.8.8
    - 1.1.1.1
    - https://dns.google/dns-query
proxy-groups:
  - name: 🌍 JMS
    type: select
    proxies:
      - 🇭🇰 HK JMS-1358192@c716s1.portablesubmarines.com:18769
      - 🇭🇰 HK JMS-1358192@c716s2.portablesubmarines.com:18769
      - 🇭🇰 HK JMS-1358192@c716s3.portablesubmarines.com:18769
      - 🇭🇰 HK JMS-1358192@c716s4.portablesubmarines.com:18769
      - 🇭🇰 HK JMS-1358192@c716s5.portablesubmarines.com:18769
      - 🇺🇸 US JMS-1358192@c716s801.portablesubmarines.com:18769
  - name: 🌞 JMS-US
    type: fallback
    url: http://www.gstatic.com/generate_204
    interval: 300
    proxies:
      - 🇺🇸 US JMS-1358192@c716s801.portablesubmarines.com:18769
rules:
  - DOMAIN-KEYWORD,tiktok.,🌞 JMS-US
  - DOMAIN-SUFFIX,tiktok.com,🌞 JMS-US
  - DOMAIN-KEYWORD,openai,🌞 JMS-US
  - DOMAIN-SUFFIX,oaistatic.com,🌞 JMS-US
  - DOMAIN-SUFFIX,chatgpt.com,🌞 JMS-US
  - DOMAIN-SUFFIX,oaiusercontent.com,🌞 JMS-US
  - DOMAIN-KEYWORD,anthropic,🌞 JMS-US
  - DOMAIN-KEYWORD,claude,🌞 JMS-US
  - DOMAIN-SUFFIX,ai.google.dev,🌍 JMS
  - DOMAIN-SUFFIX,generativelanguage.googleapis.com,🌍 JMS
  - DOMAIN-KEYWORD,stripe,🌍 JMS
  - DOMAIN-KEYWORD,openrouter,🌍 JMS
  - DOMAIN-KEYWORD,cloudflare,🌍 JMS
  - DOMAIN-KEYWORD,github,🌍 JMS
  - DOMAIN-KEYWORD,adobe,REJECT
  - RULE-SET,applications,DIRECT
  - DOMAIN,clash.razord.top,DIRECT
  - DOMAIN,yacd.haishan.me,DIRECT
  - RULE-SET,private,DIRECT
  - RULE-SET,reject,REJECT
  - RULE-SET,icloud,DIRECT
  - RULE-SET,apple,DIRECT
  - RULE-SET,google,🌍 JMS
  - RULE-SET,proxy,🌍 JMS
  - RULE-SET,direct,DIRECT
  - RULE-SET,lancidr,DIRECT
  - RULE-SET,cncidr,DIRECT
  - RULE-SET,telegramcidr,🌍 JMS
  - GEOIP,LAN,DIRECT
  - GEOIP,CN,DIRECT
  - MATCH,🌍 JMS
rule-providers:
  reject:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt
    path: ./ruleset/reject.yaml
    interval: 86400
  icloud:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt
    path: ./ruleset/icloud.yaml
    interval: 86400
  apple:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt
    path: ./ruleset/apple.yaml
    interval: 86400
  google:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt
    path: ./ruleset/google.yaml
    interval: 86400
  proxy:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt
    path: ./ruleset/proxy.yaml
    interval: 86400
  direct:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt
    path: ./ruleset/direct.yaml
    interval: 86400
  private:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt
    path: ./ruleset/private.yaml
    interval: 86400
  gfw:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/gfw.txt
    path: ./ruleset/gfw.yaml
    interval: 86400
  tld-not-cn:
    type: http
    behavior: domain
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/tld-not-cn.txt
    path: ./ruleset/tld-not-cn.yaml
    interval: 86400
  telegramcidr:
    type: http
    behavior: ipcidr
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt
    path: ./ruleset/telegramcidr.yaml
    interval: 86400
  cncidr:
    type: http
    behavior: ipcidr
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt
    path: ./ruleset/cncidr.yaml
    interval: 86400
  lancidr:
    type: http
    behavior: ipcidr
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt
    path: ./ruleset/lancidr.yaml
    interval: 86400
  applications:
    type: http
    behavior: classical
    url: https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt
    path: ./ruleset/applications.yaml
    interval: 86400
proxies:
  - name: 🇭🇰 HK JMS-1358192@c716s1.portablesubmarines.com:18769
    type: ss
    server: 45.78.20.124
    port: 18769
    cipher: aes-256-gcm
    password: tfcgDbgeGHkeUk36
  - name: 🇭🇰 HK JMS-1358192@c716s2.portablesubmarines.com:18769
    type: ss
    server: 45.78.32.142
    port: 18769
    cipher: aes-256-gcm
    password: tfcgDbgeGHkeUk36
  - name: 🇭🇰 HK JMS-1358192@c716s3.portablesubmarines.com:18769
    type: vmess
    server: 45.78.19.164
    port: 18769
    uuid: 993f13fc-c0a2-4fbe-bbff-c71304875dfe
    alterId: 0
    cipher: auto
    tls: false
    network: tcp
  - name: 🇭🇰 HK JMS-1358192@c716s4.portablesubmarines.com:18769
    type: vmess
    server: 45.78.29.213
    port: 18769
    uuid: 993f13fc-c0a2-4fbe-bbff-c71304875dfe
    alterId: 0
    cipher: auto
    tls: false
    network: tcp
  - name: 🇭🇰 HK JMS-1358192@c716s5.portablesubmarines.com:18769
    type: vmess
    server: 45.78.31.239
    port: 18769
    uuid: 993f13fc-c0a2-4fbe-bbff-c71304875dfe
    alterId: 0
    cipher: auto
    tls: false
    network: tcp
  - name: 🇺🇸 US JMS-1358192@c716s801.portablesubmarines.com:18769
    type: vmess
    server: 45.62.96.218
    port: 18769
    uuid: 993f13fc-c0a2-4fbe-bbff-c71304875dfe
    alterId: 0
    cipher: auto
    tls: false
    network: tcp
