playbook/rulesets/tsl/index.md

2.7 KiB
Raw Blame History

TSL 代理规则集

本规则集定义 AI/自动化代理在处理 TSL 代码时必须遵守的核心约束。

范围与优先级

  • 作为仓库级基线规则集使用;更靠近代码目录的规则更具体并可覆盖基线。
  • 当代理规则与 docs 冲突:安全/合规优先,其次保持仓库一致性。

代理工作原则(铁律)

  1. 先理解目标与上下文,再动手改代码
  2. 修改要小而清晰;避免无关重构
  3. 发现安全问题(明文密钥/鉴权漏洞)立即标注或修复
  4. 不引入新依赖或工具,除非明确要求

TSL 核心约定(不可违反)

  • 用户已给出 .tsl / .tsf 后缀时,后缀就是判断依据;未给后缀时,再根据用户交付目标判断。
  • .tsl 是可执行脚本:语句区按顺序执行;如果需要函数/类,放在脚本语句后的函数/类声明区。
  • .tsf 是模块/函数扩展文件:部署到解释器 funcext 后,脚本可直接调用其中暴露的顶层函数。
  • 格式4 空格缩进;关键字小写;多语句用 begin/end
  • 命名:类型/函数/property PascalCase;变量/参数 snake_case;私有 snake_case_;常量 kPascalCase

agent 判断流程

  1. 用户已给出 .tsl / .tsf 后缀时,后缀就是判断依据。
  2. 用户未给后缀时,先判断交付目标是可执行代码还是通用模块;可执行代码对应 .tsl,通用模块对应 .tsf
  3. 交付目标仍不明确时向用户确认,不要替用户发明文件形态。
  4. .tsl 时,先生成顺序执行的语句区;调用本脚本内函数时,函数声明写在语句区之后。
  5. .tsf 时,只生成模块/扩展声明;顶层函数部署到解释器 funcext 后才可被脚本直接调用。
  6. 如果关键词命中业务、函数库、模块集成或项目执行信息,按 docs/tsl/index.md 分流,不把所有问题都当语法问题。
  7. 不确定时先找已验证可执行示例、反例页和对应专题页;没有文档结论时不要发明语法,改为向用户确认或记录文档缺口。

安全红线(不可触碰)

  • 不得在代码/日志/注释中写入明文密钥、密码、Token、API Key
  • 修改鉴权/权限逻辑必须说明动机与风险
  • 不确定是否敏感时按敏感信息处理

权威来源

  • TSL 总入口:docs/tsl/index.md
  • 语法手册:docs/tsl/syntax/index.md
  • 金融业务入口:docs/tsl/finance/index.md
  • 模块与集成入口:docs/tsl/modules/index.md
  • 函数检索入口:docs/tsl/reference/index.md
  • 代码风格:docs/tsl/code_style.md
  • 命名规范:docs/tsl/naming.md

Skills按需加载

  • $commit-message

与开发规范的关系

  • 规范文档:docs/tsl/docs/common/