# PopCat 配置写法手册

面向人与 AI。生产环境由静态托管，可直接取原文：

```bash
curl https://pop-cat.com/docs/README.md
curl https://pop-cat.com/docs/routing.md
```

## 目录

| 文件 | 内容 |
|---|---|
| [modules.md](./modules.md) | 模块文件的整体形态：元数据头、段落清单、注释与续行、格式与扩展名、优先级、占位符 |
| [routing.md](./routing.md) | `[Rule]` 全部规则类型与取值、出口(策略)怎么写、`[Proxy Group]` 分组与正则筛选、`[Host]` 与自定义 DNS、GeoIP/GeoSite 规则集、外部规则集 |
| [mitm.md](./mitm.md) | `[MITM]` 解密范围、`[URL Rewrite]`、`[Header Rewrite]`、`[Body Rewrite]`、`[Map Local]`、`[Script]` 与脚本运行时 |
| [example.md](./example.md) | 一份完整可用的示例模块，以及若干可直接复用的配置片段 |
| [troubleshooting.md](./troubleshooting.md) | 常见错误、写了不生效的原因、排查顺序 |
| [ai.md](./ai.md) | 向 AI 提供本手册时使用的提示词，以及常见的生成错误 |

## 一句话说明

一个「模块」就是一份使用 Surge 系列语法编写的纯文本配置。文本按 `[段名]` 分成若干部分：`[Rule]` 决定流量使用哪个出口，`[Proxy Group]` 定义出口的组织方式，`[MITM]` 及相关配置段处理解密后的请求和响应改写。

写好后存成 `.sgmodule` 文件，在客户端里从文件导入；或者放到任意可公开访问的链接上，从链接导入。

初次使用时可基于 [example.md](./example.md) 修改；语法细节见 [routing.md](./routing.md) 与 [mitm.md](./mitm.md)。
