mcpField
O
ohos-dev-graphics-stability-code-review

ohos-dev-graphics-stability-code-review

github.com/openharmonyinsightテスト・品質3542 回インストール11 週間前に更新
リポジトリ

ohos-dev-graphics-stability-code-review について

Markdown 形式のルール文書を用いて、C/C++ コードベースの安定性リスクを確認する拡張可能なフレームワークです。全体・ルール指定・分類別のスキャンに対応し、リスク経路と影響分析を含む中国語レポートを作成します。

主な機能

  1. 01ルールに基づく C/C++ 安定性レビュー
  2. 02全体・ルール指定・分類別スキャン
  3. 03ホワイトリストによる除外要件
  4. 04Markdown と CSV の構造化レポート
  5. 05リスク経路と影響分析の要件

活用シーン

  1. 01コード提出前のコードベース監査
  2. 02リソースリークや並行処理リスクの検出
  3. 03指定したルール ID や分類だけの確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/openharmonyinsight/openharmony-skills --skill ohos-dev-graphics-stability-code-review

インストール後、Claude Code で/ohos-dev-graphics-stability-code-reviewを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
config/
rules.yaml
whitelist.yaml
evals/
evals.json
README.md
references/BoundaryCondition/
StabilityCodeReview_BoundaryCondition_001.md
StabilityCodeReview_BoundaryCondition_002.md
StabilityCodeReview_BoundaryCondition_003.md
StabilityCodeReview_BoundaryCondition_004.md
StabilityCodeReview_BoundaryCondition_005.md
StabilityCodeReview_BoundaryCondition_006.md
StabilityCodeReview_BoundaryCondition_007.md
StabilityCodeReview_BoundaryCondition_008.md
StabilityCodeReview_BoundaryCondition_009.md
StabilityCodeReview_BoundaryCondition_010.md
StabilityCodeReview_BoundaryCondition_011.md
StabilityCodeReview_BoundaryCondition_012.md
StabilityCodeReview_BoundaryCondition_013.md
StabilityCodeReview_BoundaryCondition_014.md
references/ConcurrencyStability/
StabilityCodeReview_ConcurrencyStability_001.md
references/ExceptionHandling/
StabilityCodeReview_ExceptionHandling_001.md
StabilityCodeReview_ExceptionHandling_002.md
references/GraphicsStability/
StabilityCodeReview_GraphicsStability_001.md
StabilityCodeReview_GraphicsStability_002.md
StabilityCodeReview_GraphicsStability_003.md
StabilityCodeReview_GraphicsStability_004.md
StabilityCodeReview_GraphicsStability_005.md
StabilityCodeReview_GraphicsStability_006.md
StabilityCodeReview_GraphicsStability_007.md
StabilityCodeReview_GraphicsStability_008.md

詳細

OpenHarmony 安定性コードレビュー

拡張可能な安定性ルール検査フレームワークです。C/C++ コードベースに対して安定性リスクを検査し、構造化レポートを生成します。ルールは references/ ディレクトリに Markdown ドキュメントとして保存されています。AI モデルがルールドキュメントを直接読み取って検査し、中国語の検査レポートを ./report/ ディレクトリに出力します。詳細なワークフロー、主要な概念、操作方法については、references/WORKFLOW_GUIDE.md を参照してください。

トリガーとなる状況

  • 安定性に関するリポジトリ全体の集中スキャン:C/C++ コードベースに対して、安定性監査またはリスク検査を実行する
  • 指定ルールのスキャン:ユーザーがルール ID、レベル、分類を明示して、対象を絞った検査を依頼する
  • コードをリポジトリに登録する前のローカル検査:コードのコミット前に安定性検査を実行する
  • 安定性リスクを検出する(不適切な例外処理、並行処理のデッドロック、性能低下、リソースリークなど)
  • ライフサイクル管理をレビューする(オブジェクトのライフサイクル、非同期タスクの管理)
  • ユーザーがコードの安定性チェックを明示的に依頼する場合

トリガーの例:

# 全量扫描
稳定性全量扫描 ./rosen/
代码稳定性检视 ./src/

# 指定规则扫描
用 ExceptionHandling_001 规则检视 ./src/
用 ExceptionHandling_001,ExceptionHandling_002,BoundaryCondition_001 规则检视 ./rosen/

# 按级别过滤扫描
对 ./rosen/ 做稳定性扫描,只检视 HIGH 级别的规则

# 指定分类扫描
对 ./src/ 做稳定性扫描,只检视异常处理分类的规则
用BoundaryCondition和GraphicsStability分类的规则检视 ./rosen/

絶対に行わないこと

  1. スキャン対象のソースコードを変更しないでください — 作業はコードの検査と安定性リスクの特定のみです。ソースコードファイルに対する変更操作は禁止されています
  2. 不要な中間生成物を出力しないでください — 出力対象の中国語の検査レポート以外に、不要な中間ファイルや一時ファイルを出力しないでください
  3. 再現可能な RiskFlow と ImpactAnalysis がない検出結果を報告しないでください — リスクの流れと影響分析が不足している検出結果は無効です。発生源、伝播、結果を必ず説明してください
  4. ホワイトリストを適用する前に、test、mock、generated、build または protobuf ファイルを対象としてマークしないでください — ルール検査の前に、必ずホワイトリストによるフィルタリングを実行してください
  5. クラッシュ、メモリ破損、リソース枯渇、GPU リソースリークをスタイル上の問題に格下げしないでください — 重大度はコードの見た目ではなく、結果によって決まります
  6. ユーザーが指定したルール ID を黙ってスキップしないでください — 無効または存在しないルールは、検査を開始する前にユーザーに報告してください
  7. 根本となるリスク経路またはルール ID が異なる検出結果を統合しないでください — 同じ場所にある問題でも、ルールまたはリスク伝播経路が異なる場合は、別々に保持してください

段階的読み込みのトリガー

スキャンの状況に応じて読み込む内容を正確に制御し、過剰または不十分な読み込みを防いでください。

全量スキャン

必ず読み込むもの:config/rules.yaml、config/whitelist.yaml、references/RULE_INDEX.md、有効なすべてのルールドキュメント、references/PROBLEM_TEMPLATE.md、references/REPORT_TEMPLATE.md、references/REPORT_TEMPLATE.csv

読み込まないもの:references/RULE_DEVELOPMENT_GUIDE.md、references/RULE_TEMPLATE.md、references/WORKFLOW_GUIDE.md(手順に疑問がある場合を除く)

指定ルールのスキャン

必ず読み込むもの:config/rules.yaml、config/whitelist.yaml、ユーザーが指定したルールドキュメント、references/PROBLEM_TEMPLATE.md、references/REPORT_TEMPLATE.md、references/REPORT_TEMPLATE.csv

読み込まないもの:指定されていないルールドキュメント、references/RULE_DEVELOPMENT_GUIDE.md、references/RULE_TEMPLATE.md

分類別スキャン

必ず読み込むもの:references/RULE_INDEX.md、config/whitelist.yaml、該当する分類のルールドキュメント、references/PROBLEM_TEMPLATE.md、references/REPORT_TEMPLATE.md、references/REPORT_TEMPLATE.csv

読み込まないもの:その他の分類のルールドキュメント、references/RULE_DEVELOPMENT_GUIDE.md、references/RULE_TEMPLATE.md

ルールの追加/変更

必ず読み込むもの:references/RULE_DEVELOPMENT_GUIDE.md、references/RULE_TEMPLATE.md、config/rules.yaml

読み込まないもの:ルール検査ドキュメントとレポートテンプレート(検査も同時に行う場合を除く)

ワークフローの判断ツリー

用户输入
  │
  ├─ 指定规则 ID? ──→ 解析 ID 列表,验证有效性 → 加载对应规则文档
  ├─ 指定级别? ──→ 从 rules.yaml 筛选匹配级别 → 加载对应规则文档
  ├─ 指定分类? ──→ 从 RULE_INDEX.md 筛选匹配分类 → 加载对应规则文档
  └─ 未指定? ──→ 加载 rules.yaml 所有启用规则 → 加载全部规则文档
  │
  ▼
加载 config/whitelist.yaml,初始化白名单过滤
  │
  ▼
按稳定性分类启动 5 个 Subagent 并行检视
每个 Subagent:白名单过滤 → 遍历规则 → RISK_PATTERN → CONTEXT → IMPACT → 安全写法排除 → 按 PROBLEM_TEMPLATE.md 格式输出
  │
  ▼
主 Agent 汇总:收集 → 格式验证 → 去重合并 → 按严重程度分组排序(CRITICAL→HIGH→MEDIUM→LOW)
  │
  ▼
输出报告到 ./report/ 目录
  ├── report_{target}_{timestamp}.md  (按 REPORT_TEMPLATE.md)
  └── report_{target}_{timestamp}.csv (按 REPORT_TEMPLATE.csv)

詳細なワークフロー図、主要な概念の定義、操作方法については、references/WORKFLOW_GUIDE.md を参照してください。

出力要件

項目要件
問題の形式references/PROBLEM_TEMPLATE.md に厳密に従い、タイトル、分類、ルール、位置、関数、重大度、主要なソースコード、問題の説明、RiskFlow、ImpactAnalysis、修正案を必ず含めること
レポート形式Markdown レポートは references/REPORT_TEMPLATE.md に、CSV レポートは references/REPORT_TEMPLATE.csv に従うこと
出力先デフォルトは ./report/。ユーザーは別のパスを指定できます。ディレクトリが存在しない場合は、先に作成してください
重複排除ルール同じ場所、同じルールの問題は統合し、異なるルールまたはリスク経路の問題は個別に保持すること
ルールの網羅性指定または有効化されたすべてのルールを漏れなく確認すること。無効なルール ID は検査前に報告すること

プロジェクト構成

├── SKILL.md                       # 技能说明(本文件,紧凑路由)
├── README.md                      # 项目说明
├── config/
│   ├── rules.yaml                 # 规则配置
│   └── whitelist.yaml             # 白名单配置
├── references/
│   ├── RULE_INDEX.md              # 规则总索引
│   ├── WORKFLOW_GUIDE.md          # 工作流详细指南
│   ├── RULE_DEVELOPMENT_GUIDE.md  # 规则开发指南(仅规则开发时加载)
│   ├── RULE_TEMPLATE.md           # 规则文档模板(仅规则开发时加载)
│   ├── PROBLEM_TEMPLATE.md        # 检出问题格式模板
│   ├── REPORT_TEMPLATE.md         # 报告格式模板(Markdown)
│   ├── REPORT_TEMPLATE.csv        # 报告格式模板(CSV)
│   ├── ExceptionHandling/         # 异常处理(2条)
│   ├── ConcurrencyStability/      # 并发稳定性(1条)
│   ├── ResourceManagement/        # 资源管理(5条)
│   ├── BoundaryCondition/         # 边界条件(14条)
│   └── GraphicsStability/         # 图形稳定性(12条)
└── scripts/
    └── add-rule.py                # 规则脚手架工具

コメント