SuperAPI AI 工具集

conventions

智能体与模型

查看项目

更新于 10-15 22:41

技能介绍

用途:为在 Surge 代码库中工作的代理提供统一的代码风格、命名和工作流偏好,确保输出与改动符合既有规范。

主要能力与约定:

  • 输出与写作:不使用 – 或 —,改用 -;不用 copy 指代界面文本,应说 text、labels 或 wording;聊天输出最外层用 ~~~,嵌套才用 ```。
  • 编辑文件:改完不要运行 mix format;不得用 cat、echo、sed、python 等终端命令读写文件,须用原生代理文件工具;发现不明改动不要动,若影响当前工作应停下告知用户。
  • Git:this branch 指分支上全部改动(已提交、暂存、未暂存),current/working 指未提交改动。查看分支改动用 git diff --name-status "$(git merge-base HEAD origin/main)"...HEAD,工作区用 git status --short。
  • 工具:跑 linter 或 credo 时用 mix credo --strict;高级 GitHub 任务用 gh;未经指示不往项目写脚本,一次性脚本可在终端运行。
  • 代码风格:极简、避免防御性代码与向后兼容代码,不留冗余兜底;边缘情况应提示用户而非绕过;只创建必要模块和复用的辅助函数。
  • 命名与控制流:变量名描述清晰;避免内置否定命名;if 尽量单行,成功路径在前;优先显式控制流;可读性优先于简洁。
  • Elixir:模式匹配未用值命名 _var;遵循 get/fetch 惯用法;避免函数守卫;优先管道;用 params["key"] 而非 Map.get;优先 !、||、== nil、in;with 不用 else;别名与导入放文件顶部;新函数加 @spec 和 @doc。
  • 按文件类别:context 模块读操作默认 ReadRepo(约 20ms 延迟),读写一致性场景用主 Repo;schema 承担主要校验;Oban worker 不放业务逻辑,缺数据返回 {:cancel, reason};测试文件不定义私有函数、不用 @tag :capture_log;脚本用 Repo.cursor_stream/2。

适用场景:在 Surge 代码库中使用 AI 代理进行编码、重构、审查与测试。

限制:该规范与 Surge 代码库强绑定,部分约定依赖具体技术栈(Elixir、Ecto、Oban、OpenAPI);未提供安装命令、收费、平台或效果信息。