Clash·引擎 获取客户端
开源代理项目 · 智能分流内核 · 全平台网络管理工具

把网络路由的判断权,
交还给使用它的人

Clash 是一个以透明、高效、可控为核心理念的开源代理项目。 它不替你做决定,也不隐藏判断过程——它把复杂网络路由拆解成可定义、可复用的规则体系, 让每一条请求的去向都由配置文件说清楚。核心逻辑全本地运行,策略由你掌握, 透明与可控不是附加承诺,而是项目本身的结构。

开源可审计无商业绑定无强制上报 本地运行全平台一致社区驱动
开源核心逻辑公开可查,行为可审计
0强制数据上报,本地判断优先
4主流系统原生覆盖,内核统一
本地分流判断全程在设备上完成
Three Principles

透明、高效、可控——不是口号,是结构

这三个词经常被写在项目介绍里,但很少被落实成可验证的设计。 在 Clash 里,它们分别对应一件具体的事。

01 Transparent

透明

规则以文本呈现,判断顺序从上到下,命中即执行。 没有隐藏的优先级,没有看不见的黑盒环节。想知道某个请求为什么走了这条通道, 打开配置文件就能找到答案——规则列表本身就是判断依据。

02 Efficient

高效

引擎在配置载入阶段完成索引与预编译,运行期只做必要的比对。 数千条规则下,单次判断的耗时仍在可忽略的范围。 高效不是把功能砍掉换来的,而是把判断做得更精准的结果。

03 Controllable

可控

规则由你定义,出口由你选择,配置由你保管。 纯文本形式意味着它可以被导出、被迁移、被纳入版本管理, 也可以随时回退到上一版。控制权不依赖任何外部服务。

Position

项目选择做什么,也选择不做什么

中立不是没有立场,而是把立场写清楚。 下面两栏分别列出项目的承诺与拒绝,边界明确才不会含糊。

项目坚持的事

  • 核心逻辑开源:代码公开,行为可审计,任何人都可以检查它做了什么
  • 无商业资本绑定:没有付费版本与免费版本的区别,完整能力对所有使用者开放
  • 判断在本地完成:分流、匹配、策略选择全部在设备上运行,不经过额外中转
  • 配置完全自持:纯文本形式,可导出、可迁移、可纳入版本管理
  • 社区驱动迭代:规则库、插件、脚本由社区共同维护,缺哪一块都可以自己补上

项目拒绝的事

  • 强制数据上报:不向项目方传输使用数据,也不要求注册账号才能使用
  • 绑定特定服务:不提供节点,不推荐线路,也不限制你使用哪家订阅
  • 隐藏判断过程:没有无法查看的默认规则,也没有暗改行为的后台逻辑
  • 功能分层收费:不存在「解锁高级能力」的付费墙,能力完整交付
  • 替用户做选择:不预设「最优策略」,把判断权留给使用它的人
i

中立的另一面是「不担保」。项目不提供节点、不承诺加速、不为你的订阅质量负责。 它提供的是判断能力,而判断之后的结果取决于你选择的出口——这一点在项目介绍里必须说清楚。

Core Engine

分流内核:项目的中心,也是唯一的中心

如果说客户端是外壳,那么分流内核就是项目的实体。 所有能力都围绕「判断请求该走哪条路」这件事展开。

  • 01 多维度判断:域名、IP-CIDR、GeoIP 归属、端口、进程名、规则集引用——同一请求可以被多个角度同时审视,互相补位。
  • 02 顺序即优先级:规则自上而下逐条比对,第一条命中的说了算。越具体的判断越靠前,越宽泛的兜底越靠后。
  • 03 动作与出口分离:规则描述意图(直连、代理、拦截、中继),策略组负责实现意图。换节点时规则不必改动。
  • 04 配置热重载:保存配置后重新载入即可生效,服务进程保持在线,已有连接按新规则继续判定。
  • 05 规模与开销解耦:规则数量增长时,常驻内存与判断耗时保持平稳,不随订阅条数线性膨胀。
# 内核处理一次请求的路径 请求进入 ↓ 按顺序匹配 DOMAIN-SUFFIX internal.dev → DIRECT DOMAIN-KEYWORD ads → REJECT IP-CIDR 10.0.0.0/8 → DIRECT PROCESS-NAME git → PROXY GEOIP CN → DIRECT MATCHPROXY ↓ 命中即执行 策略组选择出口转发
i

判断先于转发。请求在离开设备之前就完成了判定,而不是先发出去再决定怎么处理。 这是本地运行带来的直接好处——没有额外的往返,也没有把判断依据交给第三方。

内核只做一件事:判断。它不关心你用什么节点,也不关心你访问什么内容, 只负责把「这个请求该走哪条路」这件事回答清楚。回答得越准确,整套配置的价值就越高。
Cross Platform

一套内核,四端一致

平台差异体现在交互方式上,不体现在判断逻辑上。同一份配置在四个系统上读取后, 分流结果保持一致——换设备不必重新适应规则行为。

Windows

托盘常驻,支持系统代理与虚拟网卡两种接管方式,长时间连接保持稳定。

macOS

贴合菜单栏交互,随系统启动静默运行,策略切换不必打开主窗口。

Android

基于系统 VPN 服务接管流量,网络切换时规则判定保持连续。

iOS

按需连接配合轻量面板,后台唤醒后自动恢复,兼顾分流与续航。

i

统一内核的意义在于可预期。你在桌面上验证过的规则,在移动端得到相同结果; 你在手机上调整过的策略组,同步到桌面后行为一致。判断逻辑不因平台而变。

Who It's For

适合愿意理解配置、希望掌握流量去向的人

它不是一个「装完就不用管」的工具。它要求使用者愿意花一点时间理解规则, 但换来的回报是——流量的每一个去向都由自己说清楚。

个人用户

按自己的使用习惯制定规则,把常用服务、内网访问、广告拦截分别安排清楚。

  • 日常浏览与海外访问分流
  • 开发调试时区分不同工具链
  • 按地区与用途组织策略组

家庭场景

让多台设备共享一份配置基线,规则统一维护,各端读取后行为一致。

  • 台式机、笔记本、手机、平板统一配置
  • 公共基线放订阅,个性化条目留本地
  • 新增设备导入即可回到熟悉状态

轻量团队

把配置纳入版本管理,统一维护标准化的分流方案,减少重复沟通。

  • 配置以文本形式入库,改动可追溯
  • 规则集集中维护,成员各自取用
  • 环境切换时按分支或标签区分
它不适合所有人。如果你希望的是「装完就不用管」, 或者不愿意理解规则的基本结构,那么它可能不是最省心的选择。 但如果你希望流量去向可解释、可调整、可追溯,它提供的正是这套能力。
Project Principles

几条写在项目里的原则

这些原则不是宣传语,而是日常决策时被反复援引的判断依据。

P1

能力完整交付,不做功能分层

客户端的全部能力对所有使用者开放,不存在「付费解锁」的进阶功能。 规则引擎、策略编排、配置管理,都是完整提供的。

P2

判断在本地,不引入额外中转

分流判断全程在设备上完成。请求该走哪条路,由本机的规则引擎决定, 不需要向任何外部服务查询「这个域名该怎么处理」。

P3

配置可迁移,不锁定用户

配置是纯文本,导出即保存,导入即恢复。任何时候都可以把配置带走, 也可以把它纳入自己的版本管理,不存在只能留在客户端里的状态。

P4

保持中立,不推荐也不限制

项目不提供节点,不推荐订阅,也不限制你使用哪家服务。 出口的选择权完全在使用者手上,项目只负责把判断做准确。

P5

社区共同维护,允许自行补全

规则库、插件、脚本、面板由社区共同维护。项目本身不试图覆盖所有需求, 缺哪一块都可以由使用者自己补上,或由他人分享的成果补齐。

P6

透明优先于便利

当「更省事」和「更透明」发生冲突时,项目选择后者。 判断过程可以被查看、被理解、被修改,这比藏起复杂度换取省心更重要。

Boundaries

把边界说明白,比堆砌形容词更重要

下面这几件事,项目不做,也不打算做。提前说清楚,能避免很多误解。

不提供节点与线路

项目只做判断与调度,节点来自使用者自行获取的订阅或自建服务。 这是中立性的前提——不绑定任何服务方,也不为线路质量背书。

不承诺加速效果

分流能减少无效中转,但不能凭空提升带宽。 实际速度取决于出口线路的质量与距离,而不是客户端本身。

不替使用者做选择

没有预设的「最优策略」,也没有默认开启的规则。 配置写成什么样,它就跑成什么样——判断权始终在使用者手上。

i

能力边界清楚,使用预期才准确。如果你需要的是开箱即用的完整服务, 那么 Clash 提供的是判断能力,而完整的网络方案还需要配合你自己选择的出口。

Q & A

关于项目本身,常被问到的几件事

Clash 是一个商业产品吗?

不是。项目以开源方式发布,没有商业资本绑定,也没有付费版本与免费版本的区别。客户端的完整能力对所有使用者开放,不存在被功能阉割的入口。

使用过程中会上传我的数据吗?

不会强制上报。分流判断、规则匹配、策略选择全部在本机完成,客户端不主动向项目方传输使用数据。你引入的订阅与规则集来自你自己选择的来源,那部分的数据路径由对应服务方决定。

「可控」具体体现在哪里?

体现在三个方面:规则由你定义,判断逻辑写在配置文件里;出口由你选择,节点来自你的订阅或自建;配置由你保管,纯文本形式可随时导出、迁移、版本化。三者都不依赖项目方。

为什么强调「全本地运行」?

因为分流本质上是一个本地判断问题:请求从你的设备发出,判断也应该在请求离开设备之前完成。本地运行意味着没有额外的中转环节,也没有把判断依据交给第三方的必要。

项目适合什么样的人使用?

适合愿意理解配置、希望掌握流量去向的人。个人用户可以按自己的习惯制定规则;家庭场景可以让多台设备共享一份配置;轻量团队可以把配置纳入版本管理,统一维护标准化的分流方案。

Clash 提供节点或线路吗?

不提供。项目本身只做「判断」与「调度」,节点与线路来自你自行获取的订阅或自建服务。这是中立性的前提——不绑定任何服务方,也不替用户做选择。

Next

了解项目之后,可以接着看这些

这一页讲的是项目本身。想知道它具体怎么工作、怎么配置、怎么维护,下面几页更实用。

想搞懂它怎么判断流量

去「核心能力」页。那里把域名、IP、端口、应用几个判断维度摊开讲了一遍, 也解释了命中之后直连、代理、拦截、中继各自的含义。

想自己动手改规则

去「分流规则」页。YAML 的三段式写法、常见匹配类型、注释与分组维护的思路都在那里, 新手参照模板就能改出第一条属于自己的规则。

想让几台设备保持一致

去「多端同步」页。云端推送与本地迁移两条路径的区别, 以及同步后哪些内容一致、哪些由本地决定,都在那里说清楚了。

想找现成的规则和工具

去「社区生态」页。规则集、订阅模板、插件脚本、界面面板, 以及怎么判断一份资源是否还在维护,都整理好了。

项目的价值在使用中体现。了解它是什么、选择做什么、拒绝做什么之后, 接下来就是装上它、导入配置、让它开始工作。

透明、高效、可控,从装上它开始

开源代理项目,智能分流内核,全平台网络管理工具。判断权在你手上。