tidb-query-tuning SKILL.md skillA

tidb-query-tuning from pingcap/agent-rules is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add pingcap/agent-rules/tidb-query-tuning@git:20260421.9414702

Pins git:20260421.9414702 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
pingcap/agent-rules
Path
skills/tidb-query-tuning/SKILL.md
Versions recorded
5
Latest version
git:20260421.9414702, committed Apr 21, 2026
First version recorded
Mar 17, 2026
Size
12,560 bytes
Repository stars
27
License
none declared

Diagnose and optimize slow TiDB queries using optimizer hints, session variables, join strategy selection, subquery optimization, and index tuning. Use when a query is slow, produces a bad plan, or needs performance guidance on TiDB.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# TiDB Query Tuning

Use this skill to diagnose and resolve TiDB query performance issues. It follows a rigorous workflow from symptom identification to verified solution.

---

## Workflow

1. **Capture the current plan & clues:**
   - Run `EXPLAIN ANALYZE <query>` to get actual execution stats.
   - Compare `estRows` vs `actRows` — large divergence means stale or missing statistics.
   - Note the most expensive operators (wall time, memory, rows processed).
   - **Use PLAN REPLAYER**: Run `PLAN REPLAYER DUMP EXPLAIN [ANALYZE] <query>;` to export comprehensive on-site information (version, config, stats, plan) to a ZIP file.
   - **Use Debug API**: Use TiDB HTTP API (port 10080) to pull runtime info: `/debug/pprof`, `/stats/dump/{db}/{table}`, or `/schema/{db}/{table}`.
   - **Check Bindings**: Run `SHOW GLOBAL BINDINGS;` to see if existing plan baselines are affecting the query.

2. **Check statistics health:**
   - `SHOW STATS_HEALTHY WHERE Db_name = '<db>' AND Table_name = '<table>';`
   - If health < 80 or `actRows` diverges significantly from `estRows`, run `ANALYZE TABLE <table>;` (or with `ALL COLUMNS` if `@@tidb_analyze_column_options` is not `ALL`) and re-check the plan.
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add pingcap/agent-rules/tidb-query-tuning@sha256:35941bb4f0289496

The line at the top of this page pins the label git:20260421.9414702, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_3jg4hhc6i2qrunsc.svg)](https://markdownregistry.com/a/art_3jg4hhc6i2qrunsc)

2 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 5 versions of this file, between Mar 17, 2026 and Apr 21, 2026, about one every 9 days.

versioncommittedcommitsizeaudit
git:20260421.9414702 latest2026-04-21 9414702 12,560 BA view · diff
git:20260414.4ab4f6c2026-04-14 4ab4f6c 9,709 BA view · diff
git:20260410.256724c2026-04-10 256724c 8,529 BA view · diff
git:20260320.095e46b2026-03-20 095e46b 7,571 BA view · diff
git:20260317.fc370112026-03-17 fc37011 7,441 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (12560 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

pingcap/agent-rules · 27 stars · license none declared · pushed 2026-11-02 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_3jg4hhc6i2qrunsc
GET https://markdownregistry.com/api/v1/resolve?ref=pingcap/agent-rules/tidb-query-tuning
GET https://markdownregistry.com/api/v1/blob/35941bb4f02894968504275c33b66add1cd791c81797c65ec05ea49a213f93ea

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from pingcap/agent-rules

AGENTS.md AGENTS.md file
pingcap/agent-rules · AGENTS.md
git:20260402.b298d60 · audit A · 27 stars
mount-tidb-cloud-fs SKILL.md skill
pingcap/agent-rules · skills/mount-tidb-cloud-fs/SKILL.md · Mount an existing TiDB Cloud Filesystem to a local directory with the ti CLI in a clean or ephemeral environment, using…
git:20260818.ad6ce7a · audit A · 27 stars
mysql SKILL.md skill
pingcap/agent-rules · skills/mysql/SKILL.md · MySQL usage guardrails for writing/reviewing SQL and connection patterns, avoiding common pitfalls (prepared…
git:20260306.2e36860 · audit A · 27 stars
pytidb SKILL.md skill
pingcap/agent-rules · skills/pytidb/SKILL.md · PyTiDB (pytidb) setup and usage for TiDB from Python. Covers connecting, table modeling (TableModel), CRUD, raw SQL…
git:20260105.674a3ae · audit A · 27 stars
tidb-cloud-zero SKILL.md skill
pingcap/agent-rules · skills/tidb-cloud-zero/SKILL.md · Provision a disposable MySQL-compatible database instantly with no auth required. Includes a claim URL to convert Zero…
v1.3.1 · audit A · 27 stars
AGENTS.md@skills/tidb-query-tuning AGENTS.md file
pingcap/agent-rules · skills/tidb-query-tuning/AGENTS.md
git:20260402.b298d60 · audit A · 27 stars
tidb-sql SKILL.md skill
pingcap/agent-rules · skills/tidb-sql/SKILL.md · Write, review, and adapt SQL for TiDB with correct handling of TiDB-vs-MySQL differences (VECTOR type + vector…
git:20260109.6d85a34 · audit A · 27 stars
tidbx-javascript-mysql2 SKILL.md skill
pingcap/agent-rules · skills/tidbx-javascript-mysql2/SKILL.md · Connect to TiDB from JavaScript/Node.js using the mysql2 driver (mysql2/promise). Use for TiDB connection setup (TCP)…
git:20260306.2c75692 · audit A · 27 stars
tidbx-javascript-mysqljs SKILL.md skill
pingcap/agent-rules · skills/tidbx-javascript-mysqljs/SKILL.md · Connect to TiDB from JavaScript/Node.js using the mysqljs/mysql driver (npm package: mysql). Use for TiDB connection…
git:20260306.2c75692 · audit A · 27 stars
tidbx-kysely SKILL.md skill
pingcap/agent-rules · skills/tidbx-kysely/SKILL.md · Set up Kysely with TiDB Cloud (TiDB X), including @tidbcloud/kysely over the TiDB Cloud serverless HTTP driver for…
git:20251226.fa0ecbd · audit A · 27 stars
tidbx-nextjs SKILL.md skill
pingcap/agent-rules · skills/tidbx-nextjs/SKILL.md · Build and deploy Next.js (App Router) apps that connect to TiDB. Covers Route Handlers (app/api/*/route.ts), Node vs…
git:20260306.2c75692 · audit A · 27 stars
tidbx-prisma SKILL.md skill
pingcap/agent-rules · skills/tidbx-prisma/SKILL.md · Prisma ORM setup and usage for TiDB from Node.js/TypeScript. Covers configuring prisma/schema.prisma (MySQL provider)…
git:20260306.2c75692 · audit A · 27 stars

Every file in pingcap/agent-rules

Browse by kind, by grade A, or by owner.