# 使用 AI 生成模块

AI 可以根据本手册生成配置，但生成结果仍需在客户端中导入并检查。不要要求 AI 依靠其已有的 Surge、Clash 或 Quantumult X 知识推断 PopCat 语法；不同客户端支持的字段并不相同。

## 选择需要提供的文档

只提供与需求有关的文档，避免重复上下文：

| 需求 | 文档 |
|---|---|
| 模块文件结构、导入方式 | [modules.md](./modules.md) |
| 域名、IP、进程分流或策略组 | [routing.md](./routing.md) |
| HTTPS 解密、请求或响应改写、脚本 | [mitm.md](./mitm.md) |
| 需要完整配置参考 | [example.md](./example.md) |
| 分析已有配置为何不生效 | [troubleshooting.md](./troubleshooting.md) |

例如，仅为几个域名设置出口时，提供 `modules.md` 和 `routing.md` 即可；没有改写需求时无需提供 `mitm.md`。

Markdown 原文可直接访问：

```text
https://pop-cat.com/docs/modules.md
https://pop-cat.com/docs/routing.md
https://pop-cat.com/docs/mitm.md
https://pop-cat.com/docs/example.md
https://pop-cat.com/docs/troubleshooting.md
```

如果 AI 无法访问链接，请粘贴所需文档的原文。

## 提示词

将下面的文档链接和需求替换为实际内容：

```text
请根据下列 PopCat 官方文档生成一个模块:

- https://pop-cat.com/docs/modules.md
- https://pop-cat.com/docs/routing.md

要求:
- 仅使用文档明确支持的段名、字段和值;不要根据其他代理客户端的语法补充内容。
- 保持我的需求边界;不要添加未要求的 FINAL、MITM、脚本、DNS 或策略组。
- 输出完整的 .sgmodule 文本，包含 #!name 和 #!desc。
- 注释独占一行，不写行尾注释。
- 如果需求缺少会改变结果的必要信息，先提出问题，不要自行假设。
- 输出前按所引用文档检查一次；无法确认的写法应明确指出，不要生成替代语法。

我的需求:
让 Netflix 和 Disney+ 使用日本节点，其他流量保持现有行为。
```

需要修改请求或响应时，再加入 `mitm.md` 链接，并明确目标域名、匹配路径、修改内容及请求方向。

## 检查生成结果

导入前只需确认以下事项：

1. 配置只包含需求涉及的功能，没有额外的 `FINAL`、DNS、MITM 或脚本。
2. 使用的段名、规则类型和参数都能在所提供的文档中找到。
3. 域名匹配值为小写；注释独占一行。
4. 每个自定义出口均已定义，每个策略组至少包含一个有效成员或筛选条件。
5. 使用 HTTPS 改写或脚本时，`[MITM] hostname` 覆盖对应主域和所需子域。
6. AI 标记为“不确定”的名称或规则集已经人工核对。

客户端导入页面会显示部分格式问题。导入成功只表示文件可读取，不表示每条规则都符合预期；实际流量结果应在启用后验证。
