关于 sf-soql
sf-soql 是用于 Salesforce SOQL/SOSL 编写与优化的技能,支持从自然语言生成查询,并处理关系查询、聚合和选择性分析。它强调精简字段、过滤条件和运行安全。
主要功能
- 01从自然语言生成查询
- 02编写关系查询与聚合查询
- 03分析选择性和查询性能
- 04检查语法与安全要求
- 05提供查询执行交接建议
适用场景
- 01按需求编写 SOQL 或 SOSL
- 02查询父子记录及相关字段
- 03汇总记录数量或分组数据
- 04排查低选择性过滤条件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jaganpro/ sf-skills --skill sf-soql安装后在 Claude Code 中输入/sf-soql确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
CREDITS.mdREADME.mdassets/aggregate-queries.soqlbasic-queries.soqlbulkified-query-pattern.clsoptimization-patterns.soqlrelationship-queries.soqlselector-class.clshooks/scripts/post-tool-validate.pyreferences/anti-patterns.mdcli-commands.mdfield-coverage-rules.mdquery-optimization.mdselector-patterns.mdsoql-reference.mdsoql-syntax-reference.md详细介绍
sf-soql:Salesforce SOQL 查询专家
当用户需要编写或优化 SOQL/SOSL 时使用此技能:将自然语言转换为查询、编写关系查询、聚合查询、分析查询计划,以及改进 Salesforce 查询的性能和安全性。
此技能负责的任务
在工作涉及以下内容时使用 sf-soql:
.soql文件- 根据自然语言生成查询
- 关系查询和聚合查询
- 查询优化和选择性分析
- SOQL/SOSL 语法和考虑治理限制的设计
以下情况请委派给其他技能:
首先收集所需上下文
询问或推断:
- 目标对象
- 所需字段
- 筛选条件
- 排序/限制要求
- 查询用途:展示、自动化、类似报表的分析,还是 Apex
- 性能/选择性是否已成为问题
推荐工作流
1. 生成最简单且正确的查询
优先选择:
- 仅查询所需字段
- 清晰的 WHERE 条件
- 适当时设置合理的 LIMIT
- 关系遍历深度仅达到必要程度
2. 选择合适的查询形式
| 需求 | 默认模式 |
|---|---|
| 从子记录获取父记录数据 | 子到父的关系遍历 |
| 从父记录获取子记录行 | 子查询 |
| 计数/汇总 | 聚合查询 |
| 查询存在/不存在相关记录的记录 | 半连接/反连接 |
| 跨对象文本搜索 | SOSL |
3. 优化选择性和安全性
检查:
- 筛选条件是否使用索引/具有选择性
- 是否存在不必要的字段
- 是否存在可避免的通配符或大量扫描模式
- 安全性执行要求
4. 按需验证执行路径
如果用户需要运行时验证,请将执行工作委派给:
重要规则
- 绝不采用
SELECT *的思路;只查询必需字段 - 在 Apex 上下文中,不要在循环内执行查询
- 优先在 SOQL 中筛选,而不是在 Apex 中进行后置筛选
- 计数和分组汇总应使用聚合查询,而不是加载不必要的记录
- 谨慎评估通配符的用法;前置通配符通常会使索引失效
- 将查询放入 Apex 时,考虑安全模式/字段访问要求
输出格式
完成后,按以下顺序报告:
- 查询用途
- 最终 SOQL/SOSL
- 选择此查询形式的原因
- 优化或安全性说明
- 需要时提供执行建议
建议格式:
Query goal: <summary>
Query: <soql or sosl>
Design: <relationship / aggregate / filter choices>
Notes: <selectivity, limits, security, governor awareness>
Next step: <run in sf-data or embed in Apex>
跨技能协作
| 需求 | 委派给 | 原因 |
|---|---|---|
| 对组织运行查询 | sf-data | 执行和导出 |
| 在服务/选择器中嵌入查询 | sf-apex | 实现上下文 |
| 根据日志分析慢查询问题 | sf-debug | 运行时证据 |
| 接入由查询提供数据的 UI | sf-lwc | 前端集成 |
参考资料索引
从这里开始
专项指南
- references/soql-reference.md
- references/anti-patterns.md
- references/selector-patterns.md
- references/field-coverage-rules.md
- assets/
评分指南
| 分数 | 含义 |
|---|---|
| 90+ | 针对生产环境优化的查询 |
| 80–89 | 优秀的查询,仍有少量改进空间 |
| 70–79 | 功能正常,但仍存在性能问题 |
| < 70 | 用于生产环境前需要修改 |
评论
支持 Markdown