关于 sonar-list-projects
用于列出当前已认证用户可访问的 SonarQube 项目,也可按名称或项目键搜索。它依赖已安装并完成认证的 `sonarqube-cli`。
主要功能
- 01列出可访问项目
- 02按名称或项目键搜索
- 03提示认证前置条件
适用场景
- 01发现后续操作所需的项目键
- 02查找特定 SonarQube 项目
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ sonarsource/ sonarqube-agent-plugins --skill sonar-list-projects安装后在 Claude Code 中输入/sonar-list-projects确认已加载。
详细介绍
SonarQube — 列出项目
列出已认证用户可访问的 SonarQube 项目。可用于在运行其他技能前查找项目密钥。
用法
sonar-list-projects # list all accessible projects
sonar-list-projects my-project # search by name or key
前置条件
此技能使用 sonarqube-cli 命令。继续操作前,必须先安装并完成 CLI 身份验证。
继续操作前,请确认 sonar 可在 PATH 中使用且已完成身份验证。如果不满足条件,请勿尝试调用其他命令或编造替代方案,并向用户显示:
无法列出项目。
可能原因:
- 尚未安装
sonarqube-cli或未完成身份验证 — 请调用 sonar-integrate 技能
然后询问用户是否要立即运行 sonar-integrate 技能(是/否)。简要说明其用途:检查用户计算机上的 SonarQube 设置 — 安装或更新 sonarqube-cli 并验证身份验证 — 并为此 Agent 重新配置集成,包括 SonarQube MCP 服务和密钥扫描钩子。如果用户确认,请自行调用 sonar-integrate 技能,并在本会话中完整执行,然后重新检查并继续;如果用户拒绝,则停止。
说明
步骤 1:从用户提供的参数中解析可选搜索词
- 如果用户提供了搜索词(而非标志),请将其作为
--query传入。
步骤 2:验证参数
如果提供了 --query 搜索词,请验证其是否匹配 ^[a-zA-Z0-9_\-\. ]+$。如果不匹配,请停止并告知用户被拒绝的内容 — 不要运行命令。
步骤 3:运行 sonar list projects
使用 shell 命令构建并运行命令:
sonar list projects [--query <search-term>]
仅当用户提供了搜索词时,才包含 --query。
步骤 4:格式化结果
如果找到项目:
## SonarQube Projects
Found **8 project(s)**:
| Project key | Name |
| ----------------- | --------------- |
| my-org_backend | Backend Service |
| my-org_frontend | Frontend App |
| my-org_shared-lib | Shared Library |
如果未找到项目:
## SonarQube Projects
No projects found. If you expected results, check your authentication with `sonar auth status`.
如果结果经过分页(返回 500 个项目),请注明:“显示前 500 个项目。使用搜索词缩小结果范围。”
步骤 5:后续操作
- 列出问题:“使用项目密钥调用 sonar-list-issues 技能,或确保
sonar.projectKey位于sonar-project.properties中 — CLI 始终需要-p。” - 检查质量门:“调用 sonar-quality-gate 技能 — 仅当未使用 MCP 集成默认值时,才添加项目密钥。”
评论
支持 Markdown