SuperAPI AI 工具集

python-development

编程与开发

查看项目

更新于 10-16 00:30

技能介绍

用途:这是微软 Agent Framework 仓库的 Python 开发规范,用于在编写或修改该仓库 Python 源码时统一代码风格与约定。

主要能力与规则: 文件头:每个 .py 文件必须以 # Copyright (c) Microsoft. All rights reserved. 开头。 类型注解:始终标注返回类型与参数类型;用 Type | None 代替 Optional[Type];使用 from future import annotations;TypeVar 名称加 T 后缀;只读输入参数用 Mapping 而非 MutableMapping;优先使用针对 mypy 和 pyright 的具体 # type: ignore[...],而非多余的类型转换或 isinstance 检查;跨 agent_framework* 模块使用内部私有辅助函数时,用 # pyright: ignore[reportPrivateUsage];不要仅为满足类型检查而添加无意义的透传或单行辅助函数。 函数参数:位置参数最多 3 个完全预期的参数;可选参数放在 * 之后作为仅关键字参数;提供字符串形式的覆盖以避免额外导入;避免遮蔽内置名称;除非子类扩展需要,避免 **kwargs。 文档字符串:所有公共 API 使用 Google 风格 docstring,需记录 Args、Returns、Raises,并记录 Agent Framework 特有异常。 导入结构:核心、组件、连接器(延迟加载)分层导入。 公共 API 与导出:在定义包级公共 API 的 init.py 中使用直接再导出加显式 all,避免身份别名和 import *;内部非 init.py 模块不定义 all,除非有意作为公共导入面;根 init.py 使用延迟运行时导出,需同步 _LAZY_MODULE_EXPORTS、all 与 .pyi 存根。 性能:缓存昂贵计算(如 JSON schema 生成);热路径优先对 .type 使用 match/case;避免重复序列化。 风格:行宽 120 字符;只格式化改动过的文件;参数大多相同时优先组合而非继承;默认异步。 连接器命名:prepare<object>for<purpose> 与 parse<object>from<source>。

限制:资料未提供安装命令、版本要求、收费或平台信息。