Official agent skill

Verify And Test Tsql Syntax

by microsoft in microsoft/SqlScriptDOM

Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines.

OfficialMITAuto-check passedTesting & QA

Install Verify And Test Tsql Syntax

skills CLI
$ npx skills add microsoft/SqlScriptDOM --skill verify-and-test-tsql-syntax -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install microsoft/SqlScriptDOM verify-and-test-tsql-syntax --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/microsoft/SqlScriptDOM.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/verify-and-test-tsql-syntax .claude/skills/verify-and-test-tsql-syntax && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
verify-and-test-tsql-syntax
GitHub stars
279
Token cost
~1.3k tokens
SKILL.md length
531 words
Files
1
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines.

  • Works in 5 steps: Gather the minimum inputs → Verify the exact script first → Classify the gap if verification fails → …
  • A user asks if syntax already works
  • SKILL.md covers Overview, Core Rules, Workflow and File Targets, plus 1 more section
  • Calls dotnet

What it does

Verify And Test Tsql Syntax is an agent skill from microsoft/SqlScriptDOM, published by the product's own GitHub organization. Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines. Use when a user asks if syntax already works, or when adding regression coverage for a specific script.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA. It works with SQL, Microsoft SQL Server, .NET and GitHub. The repository describes itself as: ScriptDOM/SqlDOM is a .NET library for parsing T-SQL statements and interacting with its abstract syntax tree. The licence is MIT.

When your agent uses it

  • A user asks if syntax already works
  • Adding regression coverage for a specific script

Example prompts

  • “/verify-and-test-tsql-syntax”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Gather the minimum inputs
  2. Verify the exact script first
  3. Classify the gap if verification fails
  4. Add comprehensive coverage
  5. Validate the testing slice

What it can do on your machine

Read from SKILL.md and the folder at commit eaf3a6e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • dotnet

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Verify And Test Tsql Syntax loads about 1.3k tokens when it runs. Until then it costs about 66 tokens; SKILL.md has 531 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~66
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from microsoft/SqlScriptDOM at commit eaf3a6e, republished under its MIT licence (© microsoft). 531 words, ~1,259 tokens.

Download SKILL.mdSave it as .claude/skills/verify-and-test-tsql-syntax/SKILL.md (or your agent's skills folder).
name
verify-and-test-tsql-syntax
description
Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines. Use when a user asks if syntax already works, or when adding regression coverage for a specific script.
argument-hint
Exact T-SQL script or syntax to verify
user-invocable
true

Overview

This skill determines whether a specific T-SQL script is already supported and then guides the follow-up testing work.

Use it for:

  • verifying whether a script already parses
  • confirming which parser version should support the syntax
  • adding or updating regression coverage in the existing ScriptDOM test framework

Do not use it for broad feature design. If the verification shows missing parser support, route the implementation work to the appropriate repo instruction:

Core Rules

  • Always verify the exact T-SQL text first, character for character.
  • For first-pass verification, add a debug unit test method to an existing test file such as Only180SyntaxTests.cs when the syntax targets vNext or the latest parser.
  • Do not create standalone console apps, ad hoc parsers, or extra test projects.
  • After verification, add proper test coverage through TestScripts, baselines, and the existing syntax test classes.
  • Remove any temporary debug-only test methods once the result is confirmed.

Workflow

1. Gather the minimum inputs

Ask for:

  • the exact T-SQL script to verify
  • the SQL Server version or parser version expected to support it
  • the current behavior and the expected behavior

If the user has not supplied the exact script yet, stop and request it before continuing.

2. Verify the exact script first

Add a temporary debug unit test method to the appropriate existing test class and test the exact script as provided.

Use this sequence:

bash
dotnet build SqlScriptDom/Microsoft.SqlServer.TransactSql.ScriptDom.csproj -c Debug
dotnet test --filter "DebugExactScriptTest" Test/SqlDom/UTSqlScriptDom.csproj -c Debug

Verification expectations:

  • If parsing succeeds, move directly to comprehensive test coverage.
  • If parsing fails, capture the exact parse errors and classify the failure.
3. Classify the gap if verification fails

Use the failure mode to route the next step:

  • Grammar issue: parser does not recognize the syntax at all.
  • Validation issue: syntax parses but is rejected as unsupported or invalid in context.
  • Predicate recognition issue: identifier-based predicate fails in parentheses.

When similar syntax already works in another context, prefer validation analysis before changing grammar.

Show full SKILL.md (218 more words)Show less
4. Add comprehensive coverage

After verification, create or update the proper permanent tests using the existing framework:

  • Add the input script under Test/SqlDom/TestScripts/.
  • Add the matching baseline under Test/SqlDom/Baselines<version>/.
  • Add the ParserTest entry or permanent test method in the correct Only<version>SyntaxTests.cs file.
  • Preserve the exact user syntax in the test script before adding broader coverage.

Determine the parser version using the repo mapping:

  • SQL Server 2014 -> TSql120
  • SQL Server 2016 -> TSql130
  • SQL Server 2017 -> TSql140
  • SQL Server 2019 -> TSql150
  • SQL Server 2022 -> TSql160
  • SQL Server 2025 -> TSql170
  • SQL Server vNext/latest -> TSql180
5. Validate the testing slice

Run validation in this order:

bash
dotnet test --filter "FullyQualifiedName~YourFeatureTest" Test/SqlDom/UTSqlScriptDom.csproj -c Debug
dotnet test Test/SqlDom/UTSqlScriptDom.csproj -c Debug

If the targeted test fails because of a baseline mismatch:

  • use the generated output from the failure log to update the baseline
  • rerun the same targeted test
  • only then run the full suite

File Targets

Use these repo paths when doing the work:

  • Grammar files: SqlScriptDom/Parser/TSql/TSql*.g
  • AST definition: SqlScriptDom/Parser/TSql/Ast.xml
  • Validation code: SqlScriptDom/Parser/TSql/TSql80ParserBaseInternal.cs
  • Test scripts: Test/SqlDom/TestScripts/
  • Baselines: Test/SqlDom/Baselines<version>/
  • Syntax tests: Test/SqlDom/Only<version>SyntaxTests.cs

Completion Checklist

  • Verified the exact script first in an existing test file
  • Classified the result as already supported or missing support
  • Added or updated permanent test coverage in the standard test framework
  • Preserved the exact user syntax in the new test script
  • Ran targeted validation for the touched test slice
  • Ran the full UTSqlScriptDom suite before finishing

© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/verify-and-test-tsql-syntax of microsoft/SqlScriptDOM.

Open the folder on GitHubat commit eaf3a6e

Compare with similar skills

Verify And Test Tsql Syntax next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Verify And Test Tsql Syntax compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Verify And Test Tsql Syntax this skillmicrosoft/SqlScriptDOM279—~1.3kAutomated safety check: PassMIT
Azure Resource Manager SQL Dotnetmicrosoft/skills3.1k6 repos~2.6kAutomated safety check: PassMIT
Fix Random CI Test Failuredotnet/macios2.9k—~1.3kAutomated safety check: PassCustom licence
MAUI CI Investigatordotnet/maui23k—~2kAutomated safety check: PassMIT
Macios CI Postmortemdotnet/macios2.9k—~7.8kAutomated safety check: PassCustom licence
Close Flaky IssuesClickHouse/ClickHouse50k—~1.9kAutomated safety check: NotesApache-2.0

Similar skills

  • Official

    Azure Resource Manager SDK for Azure SQL in .NET. An agent skill from microsoft/skills.

    3.1k GitHub starsUsed in 6 repos~2.6k tokens
    DevOps & CloudAuto-check passed
  • Official

    Investigate and fix flaky/random CI test failures in dotnet/macios.

    2.9k GitHub stars~1.3k tokensUpdated today
    Testing & QAAuto-check passed
  • Official

    Adds dotnet/maui-specific context for investigating failing PR checks and broken nightly builds: pipelines, Helix logs, binlogs and merge-readiness verdicts.

    23k GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • Official

    Post-mortem analysis of CI failures across recent PRs in dotnet/macios.

    2.9k GitHub stars~7.8k tokensUpdated today
    Testing & QAAuto-check passed
  • Close Flaky Issues

    ClickHouse/ClickHouse

    Audit open "flaky test" GitHub issues and close those whose tests are no longer failing on master.

    50k GitHub stars~1.9k tokensUpdated today
    Testing & QAAuto-check: notes
  • Official

    Writes UI tests that reproduce a GitHub issue in .NET MAUI and keeps iterating until the tests actually fail, proving they catch the bug.

    23k GitHub stars~3k tokensUpdated today
    Testing & QAAuto-check passed

More from microsoft/SqlScriptDOM

  • Add Feature

    microsoft/SqlScriptDOM

    Official

    Add new T-SQL features to ScriptDOM parser. An agent skill from microsoft/SqlScriptDOM.

    279 GitHub stars~2.8k tokensUpdated 8 days ago
    Auto-check passed

Categories

Questions about Verify And Test Tsql Syntax

What does Verify And Test Tsql Syntax do?

Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines. Verify And Test Tsql Syntax is an agent skill from microsoft/SqlScriptDOM, published by the product's own GitHub organization. Verify whether an exact T-SQL script is already supported by SqlScriptDOM, then add or update the correct parser tests and baselines.

When should I use Verify And Test Tsql Syntax?

Verify And Test Tsql Syntax fits situations like: A user asks if syntax already works; adding regression coverage for a specific script.

How do I install Verify And Test Tsql Syntax in Claude Code?

Run `npx skills add microsoft/SqlScriptDOM --skill verify-and-test-tsql-syntax -a claude-code`. Or copy the skill folder (.agents/skills/verify-and-test-tsql-syntax in microsoft/SqlScriptDOM) into .claude/skills/verify-and-test-tsql-syntax in your project. Claude Code loads it when a task matches its description.

How do I install Verify And Test Tsql Syntax in Codex?

Run `npx skills add microsoft/SqlScriptDOM --skill verify-and-test-tsql-syntax -a codex`. Or copy the skill folder (.agents/skills/verify-and-test-tsql-syntax in microsoft/SqlScriptDOM) into .agents/skills/verify-and-test-tsql-syntax in your project. Codex loads it when a task matches its description.

Can I use Verify And Test Tsql Syntax in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/SqlScriptDOM --skill verify-and-test-tsql-syntax -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/verify-and-test-tsql-syntax, .gemini/skills/verify-and-test-tsql-syntax, .github/skills/verify-and-test-tsql-syntax and .opencode/skills/verify-and-test-tsql-syntax in your project.

What does Verify And Test Tsql Syntax need to run?

Going by SKILL.md and its folder, Verify And Test Tsql Syntax needs the command-line tools its instructions call (dotnet).

Does Verify And Test Tsql Syntax access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Verify And Test Tsql Syntax safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Verify And Test Tsql Syntax use?

Verify And Test Tsql Syntax is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Verify And Test Tsql Syntax use?

About 1.3k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Verify And Test Tsql Syntax?

Skills that share tags, products or a category with Verify And Test Tsql Syntax: Azure Resource Manager SQL Dotnet (microsoft/skills, 3.1k stars), Fix Random CI Test Failure (dotnet/macios, 2.9k stars), MAUI CI Investigator (dotnet/maui, 23k stars) and Macios CI Postmortem (dotnet/macios, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Verify And Test Tsql Syntax?

microsoft (a GitHub organization, an official publisher) maintains it in microsoft/SqlScriptDOM, which has 279 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 30, 2026.

Source: microsoft/SqlScriptDOM on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.