# TSL 智能体规则

本文件不是语法手册，只放硬约束、首跳路由和阻断条件。

- 更靠近代码目录的规则可以更严格，但不能削弱文档事实和禁止发明语法规则。
- TSL 事实以 `docs/tsl/**`、项目自身文档和块级 `代码块身份` 为准；本文件不复写完整语法。
- 用户明确指令不能覆盖文档事实使用规则或禁止发明语法规则。

## 代码生成协议

- 生成或修改代码前先判断交付目标与 `.tsl` / `.tsf` 文件模型；文件模型影响正确性且需求不明时先确认。
- 禁止凭 Pascal、Python、JavaScript、TypeScript 或其他语言的相似写法补全 TSL 语法。
- 无文档结论、文件模型不明或项目执行事实缺失时停止，不发明语法。

## TSL 核心事实

- `.tsl` / `.tsf` 后缀由用户指定时，后缀优先。
- 未指定后缀时：入口流程、脚本任务或一次性任务初判 `.tsl`；可复用函数、过程、类、模块或扩展初判 `.tsf`。
- `.tsl` 代码需要本文件内函数或类时，先写可执行语句区，再写声明区；声明区后不要继续追加脚本语句。
- `.tsf` 只按可复用顶层声明或 `unit` 组织，不写顺序执行入口。
- 对象创建、函数调用、`unit`、运行时上下文、TS-SQL 和矩阵等细节只从对应专题页取事实。

## 文档首跳

- 需要任何 TSL 语法、文件模型、函数、模块或金融数据事实时，第一跳统一进 `docs/tsl/index.md`，由它路由到具体页；不在本文件内猜文件路径，也不全目录搜索。

## 文档事实使用策略

- 页面级元数据只做粗判断；生成代码时以块级 `代码块身份` 为准：只有 `可直接照写示例` 能当源码外形，`反例 / 不可照写`、`输出片段`、`配置片段 / 概念骨架` 不得照抄。
- `code_style.md` 与 `naming.md` 只表达风格偏好，不代表 TSL 语法事实。
