Imported from CCXXXI/index-Y (
AGENTS.md). Install upstream withnpx skills add CCXXXI/index-Y. Copyright stays with the author.
AGENTS.md
项目结构
X/:上游 index-X(粉丝校对版)的快照,上游持续更新。rules/:x2y 规则数据(严格 TSV:首行表头旧<TAB>新<TAB>注释,规则一行一条旧<TAB>新<TAB>注释,注释可空;#开头的行是非规则行(禁用规则、卷级说明),同样 3 字段;空行禁止)。_common.tsv为全卷通用段,<卷名>.tsv为分卷段(文件名 = X/ 下卷目录名,无规则的卷不建文件)。Y/:对 X 运行scripts/sync/x2y.py的产物。Y 的一切内容都由 X 派生,不直接编辑。scripts/sync/:同步并分流——x2y.py(X → Y 转换引擎,加载rules/并应用:分卷规则先于通用规则,文件内自上而下)、update_x.py(上游 zip 入仓)、run_all.py驱动的分流流水线 + 共用库。scripts/active_rules.py:报告范围内当前生效的 x2y 规则及首次生效点,供反馈上游。scripts/tag.py:发新版本(打 tag 触发 release 编译 epub)。../index-jp(同级目录,如存在):私有日文原文仓库,校对审查时读取对照,其结构与约定见该仓库 AGENTS.md(读取该目录时自动注入)。可在rules/注释中摘抄原文片段作为规则依据,但不得将其内容批量导入本仓库。
不变式:X 是上游逐字镜像,Y 是 x2y(X) 净化产物。
脚本开发
- 功能优先调用成熟库实现(如 argparse 解析命令行、colorama 输出颜色),不手写等价逻辑(如自行解析 sys.argv、拼 ANSI 转义序列)。
- 新增或修改
scripts/后,提交前必须跑通uv run ruff check .与uv run ty check .(零报告才算通过)。
任务流程
- 同步上游(上游 zip 更新入仓并分流提交):先读 docs/sync-triage.md 再动手。入口:
uv run python scripts/sync/run_all.py <下载的 zip>。 - 阅读校对(维护者阅读 Y 产物时记下的可疑词句):先读 docs/proofreading.md 再动手。
提交信息
遵循 Conventional Commits;body 附最小差异摘要(旧→新),便于日后回溯。各任务的提交命名见对应流程文档。