
# Smart Contract Auditを実行する

Smart Contract Auditは、[AI Code Analysis](https://help.aikidogov.us/docs/docs-ja/ai-code-analysis/ai-code-analysis)内でオンチェーンのコントラクトソースを分析します。リポジトリを接続し、クレジットコストを確認して開始します。デプロイ済みのネットワークやフォークは必要ありません。

## 前提条件

* 監査を作成するには、**Manage Pentests and AI Code Analysis**の[権限](https://help.aikidogov.us/docs/docs-ja/getting-started/automated-user-management/setting-roles-and-permissions)が必要です。この権限がなくても、AI Code Analysisや既存の評価を開くことはできます。
* 少なくとも1つのリポジトリが接続されている必要があります。[セルフスキャンリポジトリ](https://help.aikidogov.us/docs/docs-ja/code-scanning/local-code-scanning)は選択肢から除外されます。選択できるリポジトリの数には上限があります。さらに必要な場合は[サポートにお問い合わせください](https://help.aikidogov.us/docs/docs-ja/miscellaneous-info/contact-support)。
* ウォレットに見積もりコスト分のクレジットがあること。[Wallet & Credits](https://help.aikidogov.us/docs/docs-ja/miscellaneous-info/wallet-and-credits)を参照してください。

分析中のソースの取り扱いについては、[Aikido Never Stores Your Code](https://help.aikidogov.us/docs/docs-ja/getting-started/setting-up-your-account/aikido-never-stores-your-code)を参照してください。

## 監査を設定する

[**AI Code Analysis**](https://app.aikido.dev/agentic-review)に移動し、**Create Audit**をクリックします。

{% stepper %}
{% step %}
### Smart Contract Auditを選択する

**Select Audit Type**で**Smart Contract Audit**を選択し、**Continue**をクリックします。

**Cancel**をクリックするとAI Code Analysisのホームに戻ります。
{% endstep %}

{% step %}
### リポジトリを選択する

1. **Repositories**を開き、この監査対象の接続済みリポジトリを選択します。少なくとも1つのリポジトリを選択するまで、**Continue**は無効のままです。
2. モノレポの対象を絞り込むには、選択したリポジトリの横にある**Exclude Paths**をクリックし、同じリポジトリ内のオフチェーンサービスなど、この監査に含まれないディレクトリを追加します。
3. **Scope**では、**Audit all selected repositories**を選択したままにするか、**Audit specific parts only**を選択してレビューするコントラクトを記述します。例：「新しいステーキングコントラクトと、それが呼び出すコントラクトを監査してください。」

{% hint style="info" %}
ドキュメントやREADMEはリポジトリに残しておいてください。エージェントはそのmarkdownを読んで、コントラクトがどのように動作することを意図しているかを把握できます。無関係なアプリケーションやサービスは除外してください。
{% endhint %}

**Additional Notes**は任意で、この監査にのみ適用されます。ソースに含まれていないコンテキストがある場合に追加してください。信頼モデルなどの恒常的なガイダンスは、リポジトリ内のmarkdownファイルに記載してください。[Guide Agents with Repository Files](https://help.aikidogov.us/docs/docs-ja/ai-and-dev-tools/guide-an-audit-with-repository-files)を参照してください。有用なメモの例：

* 対象チェーン
* 信頼された管理者またはオラクルのロール
* デプロイ済みのコントラクトアドレス
* 既知の許容済みリスク

**Cancel**をクリックすると**Audit Type**に戻ります。
{% endstep %}

{% step %}
### 料金を確認して開始する

**Pricing**ステップで**AI Smart Contract Audit**の横にクレジット合計が表示されるまで待ちます。スコープを限定した場合は、記述したスコープもこのステップに表示されます。残高はフッターに表示されます。ウォレットの残高が不足している場合は**Add Credits**をクリックしてください。


**Configure** が表示されたら、それを使用して監査の深さを設定します。

* **High risk only** は、重大な脆弱性が露呈する可能性が最も高い領域を優先します。一部の領域はカバー範囲が狭くなるか、まったくカバーされません。
* **Recommended coverage** は、選択した監査範囲のうちセキュリティ上重要な部分を調査します。
* **Deeper coverage** は、推奨カバレッジに加えて、優先度の低い領域や、あまり一般的でないコードパスまたはクラウドリソースを追加で調査します。

クレジットの合計は、開始前に更新されます。

**Start Audit**をクリックして開始します。クレジットは**Start Audit**をクリックした時点で請求されます。
{% endstep %}
{% endstepper %}

Aikidoが評価の詳細ページを開くので、進捗を確認し、検出結果を読むことができます。[Track Progress and Findings](https://help.aikidogov.us/docs/docs-ja/ai-code-analysis/ai-code-audit-overview/track-progress-and-findings)を参照してください。

## FAQ

### リポジトリ数に上限があるのはなぜですか？

監査の対象を絞り込むため、選択できるリポジトリの数には上限があります。1つの監査でさらに多くのリポジトリが必要な場合は、[サポートにお問い合わせください](https://help.aikidogov.us/docs/docs-ja/miscellaneous-info/contact-support)。

## 関連項目

{% content-ref url="./" %}
[.](https://help.aikidogov.us/docs/docs-ja/ai-code-analysis/smart-contract-audit)
{% endcontent-ref %}

{% content-ref url="what-smart-contract-audit-finds.md" %}
[what-smart-contract-audit-finds.md](https://help.aikidogov.us/docs/docs-ja/ai-code-analysis/smart-contract-audit/what-smart-contract-audit-finds)
{% endcontent-ref %}
