# クイックスタート {#quickstart}

Takumi プランを購入したあとに、最初の診断を実行するためのガイドです。

## 前提条件 {#prerequisites}

最初の診断を実行する前に、以下を満たしておく必要があります。

- 有効な [基本サブスクリプション](/docs/ja/t/management/subscribing.md) を契約している Shisho Cloud 組織があること
- 対象組織のメンバーであること

## 最初の診断を実行する {#first-assessment}

実施したい診断の種類を選び、以下の手順に沿ってください。

### ホワイトボックス診断 {#first-whitebox}

ホワイトボックス診断は、ソースコードと仕様を踏まえてリポジトリに対するセキュリティレビューを行います。

1. Shisho Cloud コンソールのサイドバーから **診断** を開く
2. **新規診断** をクリックし、**ホワイトボックス** を選択する
3. 診断対象のソースコードをファイルとしてアップロードする
4. **開始** をクリックする

設定画面は以下のとおりです。

![ホワイトボックス診断の開始ダイアログ](/docs/ja/_md-assets/e177f1fe7d-ui-whole.png)

ファイルアップロードのかわりに、Takumi に連携済の GitHub リポジトリを診断対象として選択することもできます。その場合は事前に [GitHub 連携](/docs/ja/t/assessment/features/integrations/github.md) を完了させておいてください。

診断はバックグラウンドで実行されるので、画面を閉じても処理は続きます。

![ホワイトボックス診断の実行中画面](/docs/ja/_md-assets/1eb0248a14-ui-pending-1.png)

クレジット消費の考え方については [ホワイトボックス診断](/docs/ja/t/assessment/features/whitebox-assessment.md) をご参照ください。

### ブラックボックス診断 {#first-blackbox}

ブラックボックス診断は、ソースコードを参照せず、診断対象 URL をクロールしながら脆弱性を検出します。

1. Shisho Cloud コンソールのサイドバーから **診断** を開く
2. **新規診断** をクリックし、**ブラックボックス** を選択する
3. 診断対象 URL や認証情報を入力する
4. **開始** をクリックする

ブラックボックス診断の設定画面は以下のとおりです。

![ブラックボックス診断の開始ダイアログ](/docs/ja/_md-assets/d853a2d4c2-ui-simple.png)

認証設定やクロール結果の手動編集については [ブラックボックス診断](/docs/ja/t/assessment/features/blackbox-assessment.md) をご参照ください。初回に診断対象 URL を指定する前に、[組織認証あるいは所有権証明](/docs/ja/t/assessment/features/assessment-authentication.md) を完了させてください。

![所有権証明が成功した状態](/docs/ja/_md-assets/af5381ce89-successful_auth_result.png)

## 診断を完了する {#completing-an-assessment}

ホワイトボックス診断・ブラックボックス診断のいずれも、現在は **リスクフォーカス型** の診断モデルを採用しています。Takumi は、リスクスコアの高いセル（リポジトリ内の関数やエンドポイントなど、診断対象を細分化した単位）から順に診断していき、設定したクレジット上限などの条件に応じて以下のように状態遷移します。

```mermaid
stateDiagram-v2
    [*] --> 実行中: 開始
    実行中 --> 診断再開待ち: クレジット上限に到達
    診断再開待ち --> 実行中: クレジット上限を引き上げて再開
    実行中 --> 完了: 全セルを診断 / 完了ボタン
    診断再開待ち --> 完了: 完了ボタン
    実行中 --> 停止: キャンセル
    診断再開待ち --> 停止: キャンセル
    完了 --> [*]
    停止 --> [*]
```

### 全セルが診断されるまで回す {#run-until-complete}

診断を開始する際には、その実行で消費するクレジットの上限を **クレジット上限** として設定できます。最初に適切な上限を設定しておくと、想定外の消費を防ぎながら、進捗を見つつ段階的にクレジットを投入できます。

クレジット上限に達して **診断再開待ち** になったら、診断詳細画面でクレジット上限を引き上げて再開してください。すべてのセルが診断されるまで、何度でも繰り返し再開できます。

### 途中で完了扱いにする {#complete-midway}

必要な情報が出揃ったと判断した場合は、診断詳細画面の **完了** ボタンから、すべてのセルを診断し終えていない状態でも診断を完了扱いにできます。完了時点までの検出結果はそのまま残り、診断の状態は **完了** に遷移します。

### 途中で停止する {#cancel-midway}

意図したよりも広いスコープに対して診断を開始してしまった場合などは、診断詳細画面の **キャンセル** から途中で停止できます。停止した時点までに診断したセルの結果はそのまま残ります。

### 途中経過をプレビューする {#preview}

**実行中** や **診断再開待ち** の状態でも、その時点までに診断したセルの結果は **プレビュー** から確認できます。完了を待たずに、早期に対応すべき問題に気付けます。

## 結果を確認する {#review-findings}

診断が完了したら、サイドバーの **診断** から該当の診断を開いて、検出内容・根拠・対策案を確認できます。

![ホワイトボックス診断の結果一覧](/docs/ja/_md-assets/936c555fb9-ui-result-1.png)

各検出結果には、影響を受けるコード／エンドポイント、深刻度、推奨される修正案などが詳細ページにまとまっています。

![ホワイトボックス診断結果の詳細](/docs/ja/_md-assets/2dea2812a3-ui-result-2.png)

深刻度の付与方法については [深刻度](/docs/ja/t/assessment/references/severity.md) をご参照ください。

Takumi に自動で修正してほしい検出結果については、[Autofix](/docs/ja/t/assessment/features/autofix.md) を利用して修正 PR を生成できます。

![検出結果から Autofix を起動するメニュー](/docs/ja/_md-assets/3b0cc328c9-select-menu.png)
