# Check Spelling

> Check and fix spelling in project source files using cSpell.

- Skill: `azure-azure-sdk-for-rust/check-spelling` (Agent Skill)
- Install (CLI): `npx skillmds@latest add azure-azure-sdk-for-rust/check-spelling`
- Raw SKILL.md: https://api.skillmd.com/api/skills/azure-azure-sdk-for-rust/check-spelling/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Azure (https://skillmd.com/u/azure-azure-sdk-for-rust)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/azure-azure-sdk-for-rust/check-spelling

---


# Spell checking

## Usage

Get all staged and unstaged non-deleted files, then pipe them to the spell check script:

```bash
{ git diff --staged --name-only --diff-filter=d; git diff --name-only --diff-filter=d; } | sort -u | ./eng/common/spelling/Invoke-Cspell.ps1
```

## Configuration

The root configuration is `.vscode/cspell.json`, and CI runs cSpell with this config via `eng/common/spelling/Invoke-Cspell.ps1`.

Each service directory (e.g., `sdk/{service-directory}`) or crate directory (e.g., `sdk/{service-directory}/{crate-directory}`) can have a `.cspell.json` that should `import` either a parent `.cspell.json` or `.vscode/cspell.json` from the root of the repo. Per-directory configs are loaded based on the paths of files being checked.

## Fix spelling

Show a summary of the misspellings to the user. Prompt the user for which words should be replaced and which should be ignored.

For words that should be replaced, fix the misspellings directly in the source files. If you cannot confidently determine the correct spelling, ask the user.

For words that should be ignored, add them to the `ignoreWords` array in a `.cspell.json` file under `sdk/{service-directory}` or lower. If the file doesn't exist, create it with an `import` of either a parent `.cspell.json` or `../../.vscode/cspell.json` from the root of the repo.

Example `sdk/keyvault/.cspell.json`:

```json
{
  "import": [
    "../../.vscode/cspell.json"
  ],
  "ignoreWords": [
    "ciphertext",
    "purgeable"
  ]
}
```

Seldom used words can be ignored within the file they are used by adding an appropriate comment e.g.:

```js
// cspell:ignore {word}
```

To disable cSpell for just the next line, use `cspell:disable-next-line`.

## Testing

Run the same command again used to check spelling. All misspellings should be fixed.

