umbraco-skill-code-analyzer

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Umbraco Skill Code Analyzer

Umbraco Skill 代码分析器

Static analysis tool that validates code examples in SKILL.md files.
一款用于验证SKILL.md文件中代码示例的静态分析工具。

What It Checks

检查内容

  • Import paths - Validates
    @umbraco-cms/backoffice/*
    imports against known modules
  • Extension types - Checks
    type:
    values against known Umbraco extension types
  • Deprecated patterns - Flags outdated code patterns
  • TypeScript compilation - Optional syntax/type checking
  • 导入路径 - 验证
    @umbraco-cms/backoffice/*
    导入是否符合已知模块
  • 扩展类型 - 检查
    type:
    值是否属于已知的Umbraco扩展类型
  • 已弃用模式 - 标记过时的代码模式
  • TypeScript编译 - 可选的语法/类型检查

Usage

使用方法

bash
cd .claude/skills/umbraco-skill-code-analyzer/scripts
npm install --silent
npx tsx analyze-code.ts
bash
cd .claude/skills/umbraco-skill-code-analyzer/scripts
npm install --silent
npx tsx analyze-code.ts

Environment Variables

环境变量

VariableDefaultDescription
CHECK_TYPESCRIPT
true
Set to
false
to skip TypeScript compilation
变量默认值描述
CHECK_TYPESCRIPT
true
设置为
false
可跳过TypeScript编译

Output

输出结果

Produces
code-analysis-report.json
in project root with structure:
json
{
  "timestamp": "...",
  "skillsScanned": 69,
  "codeBlocksAnalyzed": 473,
  "issuesFound": 34,
  "skills": [
    {
      "skillPath": "...",
      "skillName": "...",
      "codeBlocks": 5,
      "issues": [
        {
          "line": 33,
          "type": "invalid-import",
          "value": "@umbraco-cms/backoffice/unknown",
          "message": "Unknown import path",
          "severity": "warning"
        }
      ]
    }
  ],
  "statistics": {
    "totalCodeBlocks": 473,
    "typescriptBlocks": 368,
    "importIssues": 16,
    "extensionTypeIssues": 21,
    "compilationErrors": 0,
    "deprecatedPatterns": 15
  }
}
会在项目根目录生成
code-analysis-report.json
,结构如下:
json
{
  "timestamp": "...",
  "skillsScanned": 69,
  "codeBlocksAnalyzed": 473,
  "issuesFound": 34,
  "skills": [
    {
      "skillPath": "...",
      "skillName": "...",
      "codeBlocks": 5,
      "issues": [
        {
          "line": 33,
          "type": "invalid-import",
          "value": "@umbraco-cms/backoffice/unknown",
          "message": "Unknown import path",
          "severity": "warning"
        }
      ]
    }
  ],
  "statistics": {
    "totalCodeBlocks": 473,
    "typescriptBlocks": 368,
    "importIssues": 16,
    "extensionTypeIssues": 21,
    "compilationErrors": 0,
    "deprecatedPatterns": 15
  }
}

Issue Types

问题类型

TypeSeverityDescription
invalid-import
warningUnknown
@umbraco-cms/backoffice/*
module
unknown-extension-type
warningUnrecognized extension
type:
value
deprecated-pattern
warningOutdated code pattern detected
typescript-error
errorTypeScript compilation failed
类型严重程度描述
invalid-import
警告未知的
@umbraco-cms/backoffice/*
模块
unknown-extension-type
警告无法识别的扩展
type:
deprecated-pattern
警告检测到过时的代码模式
typescript-error
错误TypeScript编译失败

Updating Known Values

更新已知值

The script maintains lists of known modules and extension types. To update:
  1. Edit
    analyze-code.ts
  2. Add to
    KNOWN_BACKOFFICE_MODULES
    set
  3. Add to
    KNOWN_EXTENSION_TYPES
    set
该脚本维护着已知模块和扩展类型的列表。如需更新:
  1. 编辑
    analyze-code.ts
  2. 添加到
    KNOWN_BACKOFFICE_MODULES
    集合
  3. 添加到
    KNOWN_EXTENSION_TYPES
    集合