Editing SonarQube Documentation for SonarJS
SkillDev toolsUse this skill when editing the SonarQube product documentation for JavaScript/TypeScript/CSS analysis. The documentation lives in a separate repo and must be updated across multiple product versions.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Editing SonarQube Documentation for SonarJS skill
About this capability
SonarSource Static Analyzer for JavaScript and TypeScript
What this skill tells your AI
The instructions your AI receives, as published by sonarsource/sonarjs in .claude/skills/sonar-docs/SKILL.md and read by ahel’s review.
Use this skill when editing the SonarQube product documentation for JavaScript/TypeScript/CSS analysis. The documentation lives in a separate repo and must be updated across multiple product versions.
Repository
- Repo:
SonarSource/sonarqube-documentation(cloned at../sonarqube-documentation) - Git config: set
core.autocrlf=input(repo uses LF, Windows creates CRLF)
JS/TS/CSS Doc Locations
The JS/TS/CSS page exists in multiple places:
- Cloud:
content-output/cloud/default/advanced-setup/languages/javascript-typescript-css.md - Community:
content-output/community/default/analyzing-source-code/languages/javascript-typescript-css.md - Server (versioned):
content-output/server/<version>/analyzing-source-code/languages/javascript-typescript-css.md- Not all server versions have the same sections. Use
grepto find which versions contain the section you need to edit. - As of Feb 2026, versions 10.7+ have the "TypeScript configuration" and "Troubleshooting" sections.
- Older versions (9.8, 9.9, 10.0–10.6) have a different doc structure.
- Not all server versions have the same sections. Use
Doc Format
- Markdown with GitBook conventions
- Headings use anchor tags:
#### Title <a href="#slug" id="slug"></a> - Code blocks use
css-79elbklanguage tag in server/community versions,jsonorlogin cloud - Bullet lists use
* - Properties referenced with backtick-wrapped inline code
Reusable Content
The repo supports reusable content via {% include "<relative-path>" %} directives:
- Reusable files live in
content-output/reusable-content/.gitbook/include/ - Naming convention:
global-(all products),sqs-x.x(specific server version),sqcs(cloud+server),sqscb(server+community) - Example:
global-languages-jsts-<topic>.md - The cloud folder has an extra
default/folder that affects relative paths - Currently the JS/TS/CSS page does NOT use reusable content includes
Commit Messages
Format: <Jira-ticket-ID> <short description> (e.g., JS-1374 Add troubleshooting docs for pure JS projects)
Use No-Jira if there's no ticket.
Pull Requests
- All PRs must be reviewed by the Documentation squad
- If you're in the Product Division, assign the tech writer for your department/squad
- Use
unset GITHUB_TOKENbeforeghcommands (the PAT env var doesn't have access to this repo; thegho_token fromgh authdoes)
Cloud vs Server/Community Feature Parity
Some SonarJS features are only deployed on Cloud first. When documenting:
- Check if the feature/property exists on all products before adding it everywhere
- Cloud may have sections that server/community don't (e.g., "Orphan files" with
createTSProgramForOrphanFiles) - Always
git fetch origin mainbefore starting — local main can be stale
Workflow
cd ../sonarqube-documentation && git fetch origin main && git checkout -b <branch> origin/main- Identify which files need changes (grep for the section across all versions)
- Edit all relevant files — match each file's existing style (code block language tags may differ)
git add <specific files>(avoidgit add -A— there are.idea/files to exclude)- Commit with Jira ticket format
unset GITHUB_TOKEN && git push -u origin <branch>unset GITHUB_TOKEN && gh pr create ...
Signals
- GitHub stars
- 1k
- Forks
- 192
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
sonar-docs- Source
- github.com/sonarsource/sonarjs