Files
mihomo-patchbay/CONTEXT.md
T
im0o f7db96fb0e 搭起项目骨架,验证配置文件往返
核心是确认「改配置而不弄乱文件」这件事成立:新增一路入站之后,其余 52 行逐字节不变。

搬进来的改写引擎用默认输出参数时会重排整个文件——行尾注释的对齐空格消失、流式数组被加上内边距——
连根本没改动的段落也一起波及。不修的话「改一处只动一处」这个承诺直接落空,所以关掉了它的自动排版,
并在写回之后补了一步逐行还原。
2026-08-10 02:43:04 +08:00

88 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Patchbay
一个编辑 mihomo 配置文件的网页界面。核心动作是把某一路入站接到某一个出站上——名字取自录音棚的插线板。
这份文件是术语表。界面文案、代码命名、文档措辞都从这里取词,同一个概念不要有第二种叫法。
## 入站与出站
**入站**:
mihomo 上的一个监听端口,客户端连上它把流量交进来。
_Avoid_: inbound、监听器、listener、进站
**默认入站**:
由配置文件顶层端口字段声明的入站(`mixed-port`、`port`、`socks-port`、`redir-port`、`tproxy-port`)。每种类型只能有一个,且无法单独指定出站。界面上不可删除。
_Avoid_: 主端口、老式端口、默认端口
**命名入站**:
由 `listeners:` 声明的入站。数量不限,每个可以有自己的出站和附加规则。
_Avoid_: listener、新式端口、自定义端口
**出站**:
流量离开 mihomo 的去处。可以是内置出站、线路或策略组。
_Avoid_: outbound、出口、上游、落地
**内置出站**:
内核自带、不需要配置就存在的出站,包括直连和拒绝。
_Avoid_: 系统出站、特殊出站
**出站模式**:
一路入站决定其出站的四种方式之一:跟着规则走、直连、指向策略组、固定线路。
_Avoid_: 代理模式、mode、路由模式
## 线路与分组
**线路**:
一个具体的代理服务器条目。
_Avoid_: 节点、proxy、代理、服务器
**自有线路**:
写在配置文件顶层 `proxies:` 里、由用户手写的线路。可以被按名字引用。
_Avoid_: 本地节点、手写节点
**订阅线路**:
由订阅拉取而来的线路。**不能被按名字引用**,只能通过策略组整批引入。
_Avoid_: 远程节点、provider 节点、机场节点
**订阅**:
一个远程地址,mihomo 定时从它拉取一批线路。
_Avoid_: provider、机场、订阅链接、节点池
**策略组**:
一组线路加一个挑选方式(手动选、自动测速选最快等)。策略组本身也可以作为出站被引用。
_Avoid_: 分组、group、代理组、策略
**筛选组**:
Patchbay 自动创建的策略组,用筛选条件从订阅里只挑出用户指定的那几条线路。它的存在是为了让入站能固定到具体线路——因为订阅线路无法被直接引用。
_Avoid_: 隐藏组、临时组、影子组
## 名字与引用
**名字表**:
内核启动时构建的、所有可被按名字引用的出站的集合。由内置出站、自有线路和策略组构成。**订阅线路不在其中**,这是许多约束的共同来源。
_Avoid_: 代理表、proxies map、出站列表
**断引用**:
配置里出现了一个名字表中不存在的名字。内核自带的校验命令不检查这种情况,只在有流量经过时才报错,因此 Patchbay 必须自行检查。
_Avoid_: 无效引用、悬空引用、坏引用
## 规则
**分流规则**:
配置文件 `rules:` 里的有序列表,自上而下匹配,决定一条连接走哪个出站。顺序本身是语义的一部分。
_Avoid_: 路由规则、规则表
**附加规则**:
挂在某一路入站上的一组分流规则,只对从该入站进来的流量生效。
_Avoid_: sub-rules、子规则、私有规则
## 配置文件
**接管段落**:
Patchbay 负责读写的配置段落。其余段落原样保留、界面上也不呈现。
_Avoid_: 托管段落、受控段落
**默认路由**:
默认入站在界面上的呈现。它对应配置文件顶层的端口字段而非 `listeners:`,因此不可删除。
_Avoid_: 主路由、根路由