Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
forcedotcom avatar

Querying Soql

  • 494 installs
  • 787 repo stars
  • Updated August 5, 2026
  • forcedotcom/afv-library

This is a copy of querying-soql by forcedotcom - installs and ranking accrue to the original listing.

querying-soql is a Claude Code skill that generates, optimizes, and scores Salesforce SOQL and SOSL queries from natural language with a 100-point performance rubric.

About

querying-soql is an agent skill that turns natural language requests into optimized SOQL and SOSL queries for Salesforce. It handles relationship queries, aggregate functions, query plan analysis, selectivity scoring on a 100-point scale, and governor-limit-aware design. The skill reads.soql files, suggests performance improvements, and flags safety issues so developers can ship reliable Salesforce data access code without guesswork. It is purpose-built for teams and developers who regularly work with Salesforce and want consistent, high-quality queries without deep SOQL memorization.

  • Natural language to SOQL/SOSL query generation
  • Relationship queries, aggregates, and governor limit awareness
  • Query plan analysis with 100-point performance and safety scoring
  • Selectivity optimization and syntax validation for .soql files
  • Delegates bulk data tasks to handling-sf-data and Apex logic to generating-apex

Querying Soql by the numbers

  • 494 all-time installs (skills.sh)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/forcedotcom/afv-library --skill querying-soql

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs494
repo stars787
Last updatedAugust 5, 2026
Repositoryforcedotcom/afv-library

How do you optimize slow Salesforce SOQL relationship queries?

Generate, optimize, and score SOQL and SOSL queries for Salesforce using natural language prompts.

Who is it for?

Salesforce developers writing or reviewing SOQL who want natural-language generation plus a 100-point performance score.

Skip if: Bulk data loads, Apex DML logic, or report and dashboard configuration covered by other AFV skills.

When should I use this skill?

A developer writes, optimizes, or debugs SOQL/SOSL, opens a .soql file, or asks about relationship queries and aggregates.

What you get

Scored SOQL or SOSL statements, query-plan feedback, and optimized relationship or aggregate queries ready for Salesforce execution.

  • optimized SOQL queries
  • SOSL search statements
  • query performance scores

By the numbers

  • Uses a 100-point SOQL/SOSL scoring rubric
  • Skill metadata version 1.1

Files

SKILL.mdMarkdownGitHub ↗

querying-soql: Salesforce SOQL Query Expert

Use this skill when the user needs SOQL/SOSL authoring or optimization: natural-language-to-query generation, relationship queries, aggregates, query-plan analysis, and performance/safety improvements for Salesforce queries.

When This Skill Owns the Task

Use querying-soql when the work involves:

  • .soql files
  • query generation from natural language
  • relationship queries and aggregate queries
  • query optimization and selectivity analysis
  • SOQL/SOSL syntax and governor-aware design

Delegate elsewhere when the user is:

  • performing bulk data operations → handling-sf-data
  • embedding query logic inside broader Apex implementation → generating-apex
  • debugging via logs rather than query shape → debugging-apex-logs

---

Required Context to Gather First

Ask for or infer:

  • target object(s)
  • fields needed
  • filter criteria
  • sort / limit requirements
  • whether the query is for display, automation, reporting-like analysis, or Apex usage
  • whether performance / selectivity is already a concern

---

Recommended Workflow

1. Generate the simplest correct query

Prefer:

  • only needed fields
  • clear WHERE criteria
  • reasonable LIMIT when appropriate
  • relationship depth only as deep as necessary

2. Choose the right query shape

NeedDefault pattern
parent data from childchild-to-parent traversal
child rows from parentsubquery
counts / rollupsaggregate query
records with / without related rowssemi-join / anti-join
text search across objectsSOSL

3. Optimize for selectivity and safety

Check:

  • indexed / selective filters
  • no unnecessary fields
  • no avoidable wildcard or scan-heavy patterns
  • security enforcement expectations

4. Validate execution path if needed

If the user wants runtime verification, hand off execution to:

  • handling-sf-data

---

High-Signal Rules

  • never use SELECT * style thinking; query only required fields
  • do not query inside loops in Apex contexts
  • prefer filtering in SOQL rather than post-filtering in Apex
  • use aggregates for counts and grouped summaries instead of loading unnecessary records
  • evaluate wildcard usage carefully; leading wildcards often defeat indexes
  • account for security mode / field access requirements when queries move into Apex

---

Output Format

When finishing, report in this order: 1. Query purpose 2. Final SOQL/SOSL 3. Why this shape was chosen 4. Optimization or security notes 5. Execution suggestion if needed

Suggested shape — use references/soql-syntax-reference.md for exact syntax:

Query goal: <summary>
Query: <soql or sosl>
Design: <relationship / aggregate / filter choices>
Notes: <selectivity, limits, security, governor awareness>
Next step: <run in handling-sf-data or embed in Apex>

---

Cross-Skill Integration

NeedDelegate toReason
run the query against an orghandling-sf-dataexecution and export
embed the query in services/selectorsgenerating-apeximplementation context
analyze slow-query symptoms from logsdebugging-apex-logsruntime evidence
wire query-backed UIgenerating-lwc-componentsfrontend integration

---

Score Guide

ScoreMeaning
90+production-optimized query
80–89good query with minor improvements possible
70–79functional but performance concerns remain
< 70needs revision before production use

---

Reference File Index

FileWhen to read
references/soql-syntax-reference.mdSyntax, operators, date literals, relationship query patterns
references/query-optimization.mdSelectivity rules, indexing strategy, governor limits, security patterns
references/soql-reference.mdQuick reference — operators, date functions, aggregate functions, WITH clauses
references/anti-patterns.mdCommon SOQL mistakes and their fixes — read before finalizing any query
references/selector-patterns.mdApex selector layer patterns — read when embedding queries in Apex classes
references/field-coverage-rules.mdField coverage validation — read when generating SOQL used inside Apex code
references/cli-commands.mdsf CLI query execution, bulk export, query plan commands
assets/basic-queries.soqlStarter query examples for common objects
assets/relationship-queries.soqlParent-to-child and child-to-parent relationship query patterns
assets/aggregate-queries.soqlCOUNT, SUM, GROUP BY, ROLLUP query patterns
assets/optimization-patterns.soqlSelective filter and index-aware query patterns
assets/bulkified-query-pattern.clsApex Map-based bulk query pattern for trigger contexts
assets/selector-class.clsFull selector class implementation template
scripts/post-tool-validate.pyPost-write hook — runs static SOQL validation and live query plan analysis after .soql file edits

Related skills

How it compares

Use querying-soql for SOQL/SOSL authoring and scoring; switch to handling-sf-data for bulk operations or generating-apex for DML code.

FAQ

What does querying-soql's 100-point scoring measure?

querying-soql applies a 100-point scoring rubric to generated or revised SOQL and SOSL, evaluating performance, safety, and query-plan characteristics so developers can compare iterations before running against Salesforce org data.

When should querying-soql not be used?

querying-soql should not handle bulk data operations, Apex DML logic, or report and dashboard queries. Those flows belong to sibling AFV skills such as handling-sf-data and generating-apex.

Backend & APIsbackendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.