code-maturity-assessor
Trail of Bits の9カテゴリフレームワークを用いて、コードベースの成熟度を体系的に評価するスキルです。算術安全性・監査実績・アクセス制御・複雑性・分散化・ドキュメント・MEVリスク・低レベルコード・テストの各観点を分析し、根拠に基づいたスコアと改善提案を含むプロフェッショナルなスコアカードを生成します。
description の原文を見る
Systematic code maturity assessment using Trail of Bits' 9-category framework. Analyzes codebase for arithmetic safety, auditing practices, access controls, complexity, decentralization, documentation, MEV risks, low-level code, and testing. Produces professional scorecard with evidence-based ratings and actionable recommendations.
SKILL.md 本文
Code Maturity Assessor
Purpose
Trail of Bits の 9 カテゴリーフレームワークを使用してコード成熟度を体系的に評価します。エビデンスベースの評価と実行可能な推奨事項を提供します。
Framework: Building Secure Contracts - Code Maturity Evaluation v0.1.0
How This Works
Phase 1: Discovery
コードベースを探索して、以下の内容を理解します:
- プロジェクト構造とプラットフォーム
- コントラクト/モジュールファイル
- テストカバレッジ
- ドキュメンテーションの利用可能性
Phase 2: Analysis
9 つのカテゴリーごとに、以下を行います:
- コード検索 - 関連するパターンを検索
- 主要ファイルを読む - 実装を評価
- 調査結果を提示 - ファイル参照付きで
- 明確化の質問 - コードから見えないプロセスについて
- 評価を決定 - 基準に基づいて
Phase 3: Report
以下を生成します:
- エグゼクティブサマリー
- 成熟度スコアカード(9 つのカテゴリーすべての評価)
- エビデンス付きの詳細分析
- 優先度順の改善ロードマップ
Rating System
- Missing (0): 存在しない/実装されていない
- Weak (1): いくつかの重大な改善が必要
- Moderate (2): 適切だが改善の余地あり
- Satisfactory (3): 平均以上、軽微な改善のみ
- Strong (4): 例外的、ほぼ完璧
評価ロジック:
- 1 つでも「Weak」基準がある → Weak
- 「Weak」なし + 「Moderate」未達がある → Moderate
- すべて「Moderate」以上 + 「Satisfactory」達成 → Satisfactory
- すべて「Satisfactory」以上 + 例外的な実践 → Strong
The 9 Categories
コード成熟度のあらゆる側面をカバーする 9 つの包括的なカテゴリーを評価します。詳細な基準、分析アプローチ、評価閾値については、ASSESSMENT_CRITERIA.md を参照してください。
Quick Reference:
1. ARITHMETIC
- オーバーフロー保護メカニズム
- 精度処理と丸め
- 式仕様
- エッジケーステスト
2. AUDITING
- イベント定義とカバレッジ
- 監視インフラストラクチャ
- インシデント対応計画
3. AUTHENTICATION / ACCESS CONTROLS
- 権限管理
- ロール分離
- アクセス制御テスト
- 鍵侵害シナリオ
4. COMPLEXITY MANAGEMENT
- 関数スコープと明確さ
- サイクロマティック複雑性
- 継承階層
- コード重複
5. DECENTRALIZATION
- 集中化リスク
- アップグレード制御メカニズム
- ユーザーオプトアウトパス
- Timelock/マルチシグパターン
6. DOCUMENTATION
- 仕様とアーキテクチャ
- インラインコードドキュメンテーション
- ユーザーストーリー
- ドメイン用語集
7. TRANSACTION ORDERING RISKS
- MEV 脆弱性
- フロントラン保護
- スリッページ制御
- オラクル セキュリティ
8. LOW-LEVEL MANIPULATION
- Assembly 使用法
- アンセーフなコードセクション
- 低レベル呼び出し
- 正当化とテスト
9. TESTING & VERIFICATION
- テストカバレッジ
- Fuzzing とフォーマル検証
- CI/CD 統合
- テスト品質
完全な評価基準(分析内容、質問内容、詳細な評価閾値(WEAK/MODERATE/SATISFACTORY/STRONG))については、ASSESSMENT_CRITERIA.md を参照してください。
Example Output
評価が完了すると、以下を含む包括的な成熟度レポートを受け取ります:
- Executive Summary: 全体スコア、トップ 3 の強み、トップ 3 のギャップ、優先推奨事項
- Maturity Scorecard: すべての 9 カテゴリーのスコアと注記を含むテーブル
- Detailed Analysis: エビデンス(file:line 参照)を含むカテゴリー別分析
- Improvement Roadmap: 優先度順の推奨事項(CRITICAL/HIGH/MEDIUM)と工数見積
完全な評価レポート例については、EXAMPLE_REPORT.md を参照してください。
Assessment Process
呼び出されると、以下を行います:
-
コードベースを探索
- コントラクト/モジュールファイルを検出
- テストファイルを特定
- ドキュメンテーションを検索
-
各カテゴリーを分析
- 関連するコードパターンを検索
- 主要な実装を読む
- 基準に対して評価
- エビデンスを収集
-
インタラクティブな評価
- ファイル参照付きで調査結果を提示
- コードから見えないプロセスについて質問
- 境界線上のケースについて議論
- 評価を一緒に決定
-
レポートを生成
- エグゼクティブサマリー
- 成熟度スコアカードテーブル
- エビデンス付きの詳細なカテゴリー分析
- 優先度順の改善ロードマップ
Rationalizations (Do Not Skip)
| 正当化 | 何が間違っているのか | 必要なアクション |
|---|---|---|
| 「いくつかの調査結果を見つけたので評価は完了」 | 評価には 9 つのカテゴリーすべてを評価する必要がある | 各カテゴリーのエビデンス付きで 9 つすべてを完了する |
| 「イベントを見つけた、監査カテゴリーは良さそう」 | イベントだけでは監査成熟度に等しくない | ロギングの包括性、テスト、インシデント対応プロセスを確認 |
| 「コードはシンプルに見える、複雑性は低い」 | 視覚的な単純さは構成の複雑さを隠す | サイクロマティック複雑性、依存深度、ステートマシン遷移を分析 |
| 「DeFi プロトコルではない、MEV カテゴリーは該当しない」 | MEV は DeFi 以外(ガバナンス、NFT、ゲーム)にも拡張される | N/A と宣言する前にトランザクション順序分析で確認 |
| 「Assembly が見つからない、低レベルカテゴリーは N/A」 | 低レベルリスクには外部呼び出し、delegatecall、インラインアセンブリを含む | カテゴリーをスキップする前にすべての低レベルパターンを検索 |
| 「これに時間がかかりすぎている」 | 徹底的な評価にはカテゴリーごとに時間が必要 | 9 つのカテゴリーすべてを完了し、オフチェーンプロセスについて質問 |
| 「エビデンスなしでこれを評価できる」 | file:line 参照のない評価=根拠のない主張 | すべてのカテゴリー評価に具体的なコードエビデンスを収集 |
| 「ユーザーは何を改善すべきかわかるだろう」 | 曖昧なガイダンス=アクションなし | 具体的な改善と工数見積を含む優先度順のロードマップを提供 |
Report Format
詳細なレポート構造とテンプレートについては、REPORT_FORMAT.md を参照してください。
Structure:
-
Executive Summary
- プロジェクト名とプラットフォーム
- 全体成熟度(平均評価)
- トップ 3 の強み
- トップ 3 の重大なギャップ
- 優先推奨事項
-
Maturity Scorecard
- 9 つのカテゴリーをすべて含むテーブル
- 評価とスコア
- 主要な調査結果の注記
-
Detailed Analysis
- カテゴリー別分析
- file:line 参照付きエビデンス
- ギャップと改善アクション
-
Improvement Roadmap
- CRITICAL(即座)
- HIGH(1-2 ヶ月)
- MEDIUM(2-4 ヶ月)
- 工数見積と影響
Ready to Begin
推定時間: 30-40 分
必要なもの:
- フルコードベースへのアクセス
- プロセスについてのあなたの知識(監視、インシデント対応、チームプラクティス)
- プロジェクトのコンテキスト(DeFi、NFT、インフラストラクチャなど)
このコードベースを評価しましょう!
ライセンス: CC-BY-SA-4.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- trailofbits
- リポジトリ
- trailofbits/skills
- ライセンス
- CC-BY-SA-4.0
- 最終更新
- 不明
Source: https://github.com/trailofbits/skills / ライセンス: CC-BY-SA-4.0
関連スキル
nature-response
Nature系ジャーナルの原稿修正に対する査読者への回答文について、下書き、チェック、または修正を行うことができます。査読者からのコメント、編集者の決定文、修正指示、回答案の作成、または大幅修正・軽微修正の対応方法に関するご相談があれば、対応いたします。査読報告書や回答文作成のサポートが必要な場合にご利用ください。
microsoft-docs
公式のMicrosoft文書を参照して、Azure、.NET、Agent Framework、Aspire、VS Code、GitHubなど様々な分野の概念、チュートリアル、コード例を検索します。デフォルトではMicrosoft Learn MCPを使用し、learn.microsoft.com外のコンテンツについてはContext7およびAspire MCPを使用します。
API Documentation Lookup
このスキルは、ユーザーが「Effect APIを調べる」「Effectドキュメントを確認する」「Effect関数のシグネチャを探す」「Effect.Xは何をするのか」「Effect.Xの使い方」「Effect APIリファレンス」「Effectドキュメントを取得する」といった質問をした場合や、公式のEffect-TS APIドキュメントから特定の関数シグネチャ、パラメータ、使用例を調べる必要がある場合に使用します。
knowledge-base
このスキルは、ヘルプセンターのアーキテクチャ設計、サポート記事の執筆、検索とセルフサービスの最適化が必要な場合に活用できます。ナレッジベース、ヘルプセンター、サポート記事、セルフサービス、記事テンプレート、検索最適化、コンテンツ分類、ヘルプドキュメントの設計・管理に関するあらゆるタスクで動作します。
markdown
GitHub Flavored Markdown標準に従ったMarkdownファイルのフォーマットと検証ができます。自動的なlinting処理と手動による意味的なレビューを組み合わせることで、ファイルの品質を確保します。
claude-md-enhancer
CLAUDE.mdファイルをプロジェクトタイプに合わせて分析・生成・改善します。ベストプラクティス、モジュール設計対応、技術スタックのカスタマイズに対応しています。新規プロジェクトの立ち上げ、既存のCLAUDE.mdファイルの改善、またはAI支援開発の標準化を図る際にご活用ください。