用途:当一个项目已有既定代码风格(写在标准文档、维基页或资深开发者脑中),需要让工具自动检查时使用。核心流程为 Learn → Ask:先从 schema 推导,再就比较结果向开发者提问,最后写配置。
主要能力:用 pythia conventions --scan 对每个对象名分词并按类型提出命名模式;读取开发者文档,提取正则无法表达的规则(如调用层依赖的参数前缀、必须过滤的列、事务提交位置、规范的日期或金额表示);生成 .pythia/conventions.json(机器可检查的模式与 lint 规则)和 .pythia/conventions.md(散文规则)。lint 块支持规则严重级别 off/info/warning/error,可配置 required_columns、param_prefix、forbid 等,并影响 pythia lint、apply 预览和 autopilot。
使用方式:用 --init 可先写出空白骨架;用 --check 验证覆盖率,命令包括 pythia conventions --scan、pythia conventions --init、pythia conventions --check、pythia lint --json。核心原则是:模式必须在 schema 认可后才写入;覆盖率约 90% 以上为真实例外,低于 90% 应修正或拆分模式;无对应对象类型的规则为未测试规则。
适用场景:为新项目继承旧基础系统的规范、给成熟 schema 建立可检查的 house style、把标准文档转成工具配置。限制:不适用于在既有风格下只写单个对象(应用 pythia-write),也不适用于记录带步骤和门禁的工作流(应用 pythia-skill-author);文档与 schema 冲突时不应静默选择。具体收费与平台支持暂未提供。