# リファレンス

すべてのLockpick API操作について、その権限、入力、応答を示します。APIから自動生成しています。バージョン1、ベータ版です。

{/* Generated by scripts/docs-generate.mts. Do not edit; run `pnpm docs:generate`. */}

バージョン1、ベータ版です。すべてのパスは `/api/cli/v1` から始まります。すべてのリクエストは、キーをベアラートークンとして送ります。すべての応答は `{ data, error }` です。説明全体は [OpenAPI 3.1](/openapi.json) でも公開しています。

## エージェントAPI

ホスト型MCPツールの裏で動くサーバーの操作です。新しい連携では、これらを使ってください。`lockpick_wait_for_scan` は `GET /agent/scans/{scanId}` を繰り返し呼び出します。`lockpick_evaluate_scan` は同じスキャンを読み取り、クライアント側で評価ポリシーを適用します。この2つの組み合わせツールには、個別のHTTPエンドポイントはありません。スクリプトでは、スキャンの状態を確認し続け、完了時刻、カバレッジ、未解決の検出事項の数をお使いのポリシーで評価できます。

### GET /agent/me

このキーのユーザー、ワークスペース、スコープ、期限、そして開始できる操作です。

* 権限: `read`
* MCPツール: [`lockpick_whoami`](/ja/docs/mcp/tools#lockpick_whoami)

**data**

| 項目             | 型      | 必ず含まれる |
| -------------- | ------ | ------ |
| `user`         | オブジェクト | はい     |
| `workspace`    | オブジェクト | はい     |
| `credential`   | オブジェクト | はい     |
| `capabilities` | オブジェクト | はい     |

### GET /agent/allowance

今月の無料スキャンの残り、その再設定日、クレジットです。

* 権限: `read`
* MCPツール: [`lockpick_get_allowance`](/ja/docs/mcp/tools#lockpick_get_allowance)

**data**

| 項目                  | 型                                                 | 必ず含まれる |
| ------------------- | ------------------------------------------------- | ------ |
| `accessSource`      | `community`、`stripe`（旧請求の値）、`pilot`（旧、内部用）、`none` | はい     |
| `accountingMode`    | `pilot`（旧、内部用）、`credits`（旧、内部用）、`unmetered`       | はい     |
| `pulse`             | オブジェクト                                            | はい     |
| `deep`              | オブジェクト                                            | はい     |
| `creditBalance`     | 整数または null                                        | はい     |
| `freeSiteId`        | 文字列または null                                       | はい     |
| `freeSiteVisible`   | 真偽値                                               | はい     |
| `canSwitchFreeSite` | 真偽値                                               | はい     |

### GET /agent/monitor

最新のセキュリティ情報を確認し、許可されたサイトとの一致を説明します。

* 権限: `read`
* MCPツール: [`lockpick_monitor`](/ja/docs/mcp/tools#lockpick_monitor)

**クエリ**

| 項目           | 型                                                | 必須  |
| ------------ | ------------------------------------------------ | --- |
| `view`       | `latest`、`sites`、`exploited`、`following`         | いいえ |
| `kind`       | `all`、`vulnerability`、`malicious_package`        | いいえ |
| `q`          | 文字列                                              | いいえ |
| `ecosystem`  | `all`、`npm`、`pypi`、`composer`、`wordpress`        | いいえ |
| `severity`   | `all`、`critical`、`high`、`medium`、`low`、`unknown` | いいえ |
| `days`       | 数値                                               | いいえ |
| `cursor`     | 文字列                                              | いいえ |
| `limit`      | 整数                                               | いいえ |
| `siteId`     | 文字列                                              | いいえ |
| `advisoryId` | 文字列                                              | いいえ |

**data**

| 項目            | 型           | 必ず含まれる |
| ------------- | ----------- | ------ |
| `items`       | オブジェクトのリスト  | はい     |
| `nextCursor`  | 文字列または null | はい     |
| `limitations` | 文字列のリスト     | はい     |

**各項目**

| 項目            | 型                                          | 必ず含まれる |
| ------------- | ------------------------------------------ | ------ |
| `id`          | 文字列                                        | はい     |
| `title`       | 文字列                                        | はい     |
| `source`      | 文字列                                        | はい     |
| `kind`        | `vulnerability`、`malicious_package`        | はい     |
| `severity`    | `critical`、`high`、`medium`、`low`、`unknown` | はい     |
| `provenance`  | オブジェクトのリスト                                 | はい     |
| `withdrawnAt` | 文字列または null                                | いいえ    |
| `publishedAt` | 文字列                                        | はい     |
| `exploited`   | 真偽値                                        | はい     |
| `ids`         | 文字列のリスト                                    | はい     |
| `tech`        | オブジェクトのリスト                                 | はい     |
| `epss`        | オブジェクトまたは null                             | いいえ    |
| `cvss`        | オブジェクトまたは null                             | いいえ    |
| `attribution` | 文字列または null                                | はい     |
| `references`  | 文字列のリスト                                    | はい     |
| `packages`    | オブジェクトのリスト                                 | はい     |
| `sites`       | オブジェクトのリスト                                 | はい     |

### GET /agent/sites

最新のスキャンとともに、サイトのページを返します。

* 権限: `read`
* MCPツール: [`lockpick_list_sites`](/ja/docs/mcp/tools#lockpick_list_sites)

**クエリ**

| 項目       | 型   | 必須  |
| -------- | --- | --- |
| `limit`  | 整数  | いいえ |
| `cursor` | 文字列 | いいえ |

**data**

| 項目           | 型           | 必ず含まれる |
| ------------ | ----------- | ------ |
| `items`      | オブジェクトのリスト  | はい     |
| `nextCursor` | 文字列または null | はい     |

**各項目**

| 項目            | 型              | 必ず含まれる |
| ------------- | -------------- | ------ |
| `id`          | 文字列            | はい     |
| `name`        | 文字列            | はい     |
| `status`      | 文字列            | はい     |
| `baseDomain`  | 文字列または null    | はい     |
| `latestPulse` | オブジェクトまたは null | はい     |
| `latestDeep`  | オブジェクトまたは null | はい     |
| `latestBox`   | オブジェクトまたは null | はい     |
| `webPath`     | 文字列            | はい     |
| `webUrl`      | 文字列            | はい     |

### POST /agent/sites

サイトを追加します。同じアドレスのサイトがあれば、それを返します。

* 権限: `sites`
* MCPツール: [`lockpick_add_site`](/ja/docs/mcp/tools#lockpick_add_site)

**本文**

| 項目               | 型   | 必須  |
| ---------------- | --- | --- |
| `url`            | 文字列 | はい  |
| `name`           | 文字列 | いいえ |
| `idempotencyKey` | 文字列 | はい  |

**data**

| 項目        | 型      | 必ず含まれる |
| --------- | ------ | ------ |
| `site`    | オブジェクト | はい     |
| `created` | 真偽値    | はい     |

### GET /agent/sites/\{siteId}/status

1つのサイトの状態です。最新のスキャンと、次に行うべきことを含みます。

* 権限: `read`
* MCPツール: [`lockpick_site_status`](/ja/docs/mcp/tools#lockpick_site_status)

**data**

| 項目               | 型              | 必ず含まれる |
| ---------------- | -------------- | ------ |
| `site`           | オブジェクト         | はい     |
| `latestPulse`    | オブジェクトまたは null | はい     |
| `latestDeep`     | オブジェクトまたは null | はい     |
| `latestBox`      | オブジェクトまたは null | はい     |
| `lastComparison` | オブジェクトまたは null | はい     |
| `caveats`        | 文字列のリスト        | はい     |
| `relevant`       | オブジェクトのリスト     | いいえ    |
| `relevantTotal`  | 整数             | いいえ    |

### POST /agent/sites/\{siteId}/dependencies

サイトが使うパッケージ名と正確なバージョンを送ります。コードは送りません。それらに影響するアドバイザリを読み取ります。

* 権限: `sites`
* MCPツール: [`lockpick_send_dependencies`](/ja/docs/mcp/tools#lockpick_send_dependencies)

**本文**

| 項目               | 型                                                                                                            | 必須  |
| ---------------- | ------------------------------------------------------------------------------------------------------------ | --- |
| `inventory`      | オブジェクト                                                                                                       | いいえ |
| `packages`       | オブジェクトのリスト                                                                                                   | はい  |
| `sources`        | `package-lock.json`、`npm-shrinkwrap.json`、`pnpm-lock.yaml`、`yarn.lock`、`requirements.txt`、`poetry.lock` のリスト | はい  |
| `idempotencyKey` | 文字列                                                                                                          | はい  |

**data**

| 項目                | 型                                                                                                            | 必ず含まれる |
| ----------------- | ------------------------------------------------------------------------------------------------------------ | ------ |
| `siteId`          | 文字列                                                                                                          | はい     |
| `receivedAt`      | 文字列または null                                                                                                  | はい     |
| `sources`         | `package-lock.json`、`npm-shrinkwrap.json`、`pnpm-lock.yaml`、`yarn.lock`、`requirements.txt`、`poetry.lock` のリスト | はい     |
| `packageCount`    | 整数                                                                                                           | はい     |
| `affectsYouCount` | 整数                                                                                                           | はい     |
| `affectsYou`      | オブジェクトのリスト                                                                                                   | はい     |
| `webUrl`          | 文字列                                                                                                          | はい     |

### POST /agent/sites/\{siteId}/pulse

サイトでPulseを開始します。

* 権限: `pulse`
* MCPツール: [`lockpick_start_pulse`](/ja/docs/mcp/tools#lockpick_start_pulse)

**本文**

| 項目               | 型   | 必須  |
| ---------------- | --- | --- |
| `idempotencyKey` | 文字列 | はい  |
| `baselineScanId` | 文字列 | いいえ |

**data**

| 項目          | 型      | 必ず含まれる |
| ----------- | ------ | ------ |
| `scan`      | オブジェクト | はい     |
| `charged`   | オブジェクト | はい     |
| `allowance` | オブジェクト | はい     |
| `replayed`  | 真偽値    | はい     |

### POST /agent/sites/\{siteId}/deep-verifications

Deepスキャンの前に、DNSまたはファイルによる所有証明を発行します。

* 権限: `deep`
* MCPツール: [`lockpick_start_deep_verification`](/ja/docs/mcp/tools#lockpick_start_deep_verification)

**本文**

| 項目               | 型                   | 必須 |
| ---------------- | ------------------- | -- |
| `method`         | `dns`、`file`、`meta` | はい |
| `idempotencyKey` | 文字列                 | はい |

**data**

| 項目                  | 型                                                    | 必ず含まれる |
| ------------------- | ---------------------------------------------------- | ------ |
| `verificationId`    | 文字列                                                  | はい     |
| `siteId`            | 文字列                                                  | はい     |
| `origin`            | 文字列                                                  | はい     |
| `method`            | `dns`、`file`、`meta`                                  | はい     |
| `state`             | `pending`、`verified`、`expired`、`exhausted`、`revoked` | はい     |
| `expiresAt`         | 文字列                                                  | はい     |
| `verifiedUntil`     | 文字列または null                                          | はい     |
| `attemptsRemaining` | 整数                                                   | はい     |
| `retryAfterSeconds` | 整数または null                                           | はい     |
| `value`             | 文字列                                                  | はい     |
| `location`          | 文字列                                                  | はい     |

### POST /agent/sites/\{siteId}/deep-verifications/\{verificationId}/verify

公開された所有証明を確認します。確認するたびに、証明の試行回数を1回使います。

* 権限: `deep`
* MCPツール: [`lockpick_check_deep_verification`](/ja/docs/mcp/tools#lockpick_check_deep_verification)

**data**

| 項目                  | 型                                                    | 必ず含まれる |
| ------------------- | ---------------------------------------------------- | ------ |
| `verificationId`    | 文字列                                                  | はい     |
| `siteId`            | 文字列                                                  | はい     |
| `origin`            | 文字列                                                  | はい     |
| `method`            | `dns`、`file`、`meta`                                  | はい     |
| `state`             | `pending`、`verified`、`expired`、`exhausted`、`revoked` | はい     |
| `expiresAt`         | 文字列                                                  | はい     |
| `verifiedUntil`     | 文字列または null                                          | はい     |
| `attemptsRemaining` | 整数                                                   | はい     |
| `retryAfterSeconds` | 整数または null                                           | はい     |

### POST /agent/sites/\{siteId}/deep-operations

Deepスキャンを準備し、本人が承認するためのリンクを取得します。

* 権限: `deep`
* MCPツール: [`lockpick_prepare_deep`](/ja/docs/mcp/tools#lockpick_prepare_deep)

**本文**

| 項目               | 型   | 必須 |
| ---------------- | --- | -- |
| `verificationId` | 文字列 | はい |
| `idempotencyKey` | 文字列 | はい |

**data**

| 項目                | 型                                       | 必ず含まれる |
| ----------------- | --------------------------------------- | ------ |
| `operationId`     | 文字列                                     | はい     |
| `siteId`          | 文字列                                     | はい     |
| `origin`          | 文字列                                     | はい     |
| `assessmentLevel` | 文字列                                     | はい     |
| `verificationId`  | 文字列                                     | はい     |
| `cost`            | オブジェクト                                  | はい     |
| `allowance`       | オブジェクト                                  | はい     |
| `approvalState`   | `pending`、`approved`、`expired`、`denied` | はい     |
| `approvalUrl`     | 文字列                                     | はい     |
| `expiresAt`       | 文字列                                     | はい     |

### POST /agent/deep-operations/\{operationId}/start

本人が承認したDeepスキャンを開始します。

* 権限: `deep`
* MCPツール: [`lockpick_start_deep`](/ja/docs/mcp/tools#lockpick_start_deep)

**data**

| 項目          | 型      | 必ず含まれる |
| ----------- | ------ | ------ |
| `scan`      | オブジェクト | はい     |
| `charged`   | オブジェクト | はい     |
| `allowance` | オブジェクト | はい     |
| `replayed`  | 真偽値    | はい     |

### POST /agent/free-site-switch

今月の無料Pulseを別のサイトに移すため、サイトを1つ削除します。

* 権限: `sites` と `pulse`
* MCPツール: [`lockpick_switch_free_site`](/ja/docs/mcp/tools#lockpick_switch_free_site)

**本文**

| 項目               | 型   | 必須  |
| ---------------- | --- | --- |
| `removeSiteId`   | 文字列 | はい  |
| `checkId`        | 文字列 | いいえ |
| `idempotencyKey` | 文字列 | はい  |
| `confirmRemoval` | 真偽値 | はい  |

**data**

| 項目                  | 型           | 必ず含まれる |
| ------------------- | ----------- | ------ |
| `removedSiteId`     | 文字列         | はい     |
| `removedSiteHost`   | 文字列         | はい     |
| `replacementSiteId` | 文字列または null | はい     |
| `allowance`         | オブジェクト      | はい     |
| `restoreUrl`        | 文字列         | はい     |
| `startedScanId`     | 文字列または null | はい     |
| `charged`           | オブジェクト      | はい     |
| `replayed`          | 真偽値         | はい     |

### GET /agent/scans

スキャンのページを、新しい順にフィルターして返します。

* 権限: `read`
* MCPツール: [`lockpick_list_scans`](/ja/docs/mcp/tools#lockpick_list_scans)

**クエリ**

| 項目                | 型                                                                             | 必須  |
| ----------------- | ----------------------------------------------------------------------------- | --- |
| `siteId`          | 文字列                                                                           | いいえ |
| `kind`            | `pulse`、`box`（Deep、旧名称）                                                       | いいえ |
| `assessmentLevel` | `pulse`、`standard`、`deep`                                                     | いいえ |
| `status`          | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | いいえ |
| `limit`           | 整数                                                                            | いいえ |
| `cursor`          | 文字列                                                                           | いいえ |

**data**

| 項目           | 型           | 必ず含まれる |
| ------------ | ----------- | ------ |
| `items`      | オブジェクトのリスト  | はい     |
| `nextCursor` | 文字列または null | はい     |

**各項目**

| 項目                          | 型                                                                             | 必ず含まれる |
| --------------------------- | ----------------------------------------------------------------------------- | ------ |
| `id`                        | 文字列                                                                           | はい     |
| `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
| `projectId`                 | 文字列                                                                           | はい     |
| `target`                    | 文字列                                                                           | はい     |
| `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
| `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
| `createdAt`                 | 文字列または null                                                                   | はい     |
| `finishedAt`                | 文字列または null                                                                   | はい     |
| `webPath`                   | 文字列                                                                           | はい     |
| `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | はい     |
| `headline`                  | オブジェクト                                                                        | はい     |
| `webUrl`                    | 文字列                                                                           | はい     |
| `suggestedPollAfterSeconds` | 整数または null                                                                    | はい     |

### GET /agent/scans/\{scanId}

1つのスキャンを、その状態と見出しとともに返します。

* 権限: `read`
* MCPツール: [`lockpick_get_scan`](/ja/docs/mcp/tools#lockpick_get_scan)

**data**

| 項目                          | 型                                                                             | 必ず含まれる |
| --------------------------- | ----------------------------------------------------------------------------- | ------ |
| `id`                        | 文字列                                                                           | はい     |
| `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
| `projectId`                 | 文字列                                                                           | はい     |
| `target`                    | 文字列                                                                           | はい     |
| `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
| `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
| `createdAt`                 | 文字列または null                                                                   | はい     |
| `finishedAt`                | 文字列または null                                                                   | はい     |
| `webPath`                   | 文字列                                                                           | はい     |
| `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | はい     |
| `headline`                  | オブジェクト                                                                        | はい     |
| `webUrl`                    | 文字列                                                                           | はい     |
| `suggestedPollAfterSeconds` | 整数または null                                                                    | はい     |
| `baselineRunId`             | 文字列または null                                                                   | はい     |
| `open`                      | オブジェクト                                                                        | はい     |
| `findingCount`              | 整数                                                                            | はい     |
| `progress`                  | オブジェクトまたは null                                                                | はい     |
| `coverage`                  | オブジェクト                                                                        | はい     |
| `caveats`                   | 文字列のリスト                                                                       | はい     |
| `outcome`                   | オブジェクトまたは null                                                                | はい     |
| `exposureCheck`             | オブジェクト                                                                        | いいえ    |

### GET /agent/scans/\{scanId}/findings

スキャンの検出事項のページです。

* 権限: `read`
* MCPツール: [`lockpick_list_findings`](/ja/docs/mcp/tools#lockpick_list_findings)
* `x-lockpick-agent-features: finding-code` を送ると、各検出結果の `code`（`LP-` と 6 文字、Web レポートの表示と同じ）を受け取れます。このヘッダーがない場合、回答に `code` は含まれず、古いクライアントが想定する形のままです。

**クエリ**

| 項目         | 型                                          | 必須  |
| ---------- | ------------------------------------------ | --- |
| `state`    | `attention`、`information`、`unknown`、`pass` | いいえ |
| `severity` | `critical`、`high`、`medium`、`low`、`info`    | いいえ |
| `all`      | 真偽値、または `true`、`false`                     | いいえ |
| `limit`    | 整数                                         | いいえ |
| `cursor`   | 文字列                                        | いいえ |

**data**

| 項目           | 型           | 必ず含まれる |
| ------------ | ----------- | ------ |
| `items`      | オブジェクトのリスト  | はい     |
| `nextCursor` | 文字列または null | はい     |

**各項目**

| 項目                  | 型                                                    | 必ず含まれる |
| ------------------- | ---------------------------------------------------- | ------ |
| `id`                | 文字列                                                  | はい     |
| `code`              | 文字列                                                  | いいえ    |
| `runId`             | 文字列                                                  | はい     |
| `kind`              | `pulse`、`box`（Deep、旧名称）                              | はい     |
| `severity`          | `critical`、`high`、`medium`、`low`、`info`              | はい     |
| `state`             | `attention`、`information`、`unknown`、`pass`           | はい     |
| `category`          | 文字列                                                  | はい     |
| `title`             | 文字列                                                  | はい     |
| `meaning`           | 文字列                                                  | はい     |
| `fix`               | 文字列または null                                          | はい     |
| `confidence`        | 文字列                                                  | はい     |
| `evidence`          | 文字列のリスト                                              | はい     |
| `sources`           | 文字列のリスト                                              | はい     |
| `steps`             | 文字列のリスト                                              | はい     |
| `webPath`           | 文字列                                                  | はい     |
| `webUrl`            | 文字列                                                  | はい     |
| `evidenceTrust`     | 文字列                                                  | はい     |
| `evidenceTruncated` | 真偽値                                                  | はい     |
| `verdict`           | `confirmed`、`needs_review`、`not_actionable`、または null | いいえ    |
| `certainty`         | `high`、`medium`、`low`、または null                       | いいえ    |
| `exploitability`    | `direct`、`conditional`、`hygiene`、`none`、または null     | いいえ    |
| `proof`             | オブジェクトまたは null                                       | いいえ    |
| `proofGap`          | 文字列または null                                          | いいえ    |
| `urgency`           | `now`、`week`、`later`、`none`                          | いいえ    |
| `howSure`           | `confirmed`、`likely`、`possible`、または null             | いいえ    |

### GET /agent/scans/\{scanId}/findings/\{findingId}

1つの検出事項を、秘匿された証拠とともに返します。

* 権限: `read`
* MCPツール: [`lockpick_get_finding`](/ja/docs/mcp/tools#lockpick_get_finding)
* `x-lockpick-agent-features: finding-code` を送ると、各検出結果の `code`（`LP-` と 6 文字、Web レポートの表示と同じ）を受け取れます。このヘッダーがない場合、回答に `code` は含まれず、古いクライアントが想定する形のままです。

**data**

| 項目                  | 型                                                    | 必ず含まれる |
| ------------------- | ---------------------------------------------------- | ------ |
| `id`                | 文字列                                                  | はい     |
| `code`              | 文字列                                                  | いいえ    |
| `runId`             | 文字列                                                  | はい     |
| `kind`              | `pulse`、`box`（Deep、旧名称）                              | はい     |
| `severity`          | `critical`、`high`、`medium`、`low`、`info`              | はい     |
| `state`             | `attention`、`information`、`unknown`、`pass`           | はい     |
| `category`          | 文字列                                                  | はい     |
| `title`             | 文字列                                                  | はい     |
| `meaning`           | 文字列                                                  | はい     |
| `fix`               | 文字列または null                                          | はい     |
| `confidence`        | 文字列                                                  | はい     |
| `evidence`          | 文字列のリスト                                              | はい     |
| `sources`           | 文字列のリスト                                              | はい     |
| `steps`             | 文字列のリスト                                              | はい     |
| `webPath`           | 文字列                                                  | はい     |
| `webUrl`            | 文字列                                                  | はい     |
| `evidenceTrust`     | 文字列                                                  | はい     |
| `evidenceTruncated` | 真偽値                                                  | はい     |
| `verdict`           | `confirmed`、`needs_review`、`not_actionable`、または null | いいえ    |
| `certainty`         | `high`、`medium`、`low`、または null                       | いいえ    |
| `exploitability`    | `direct`、`conditional`、`hygiene`、`none`、または null     | いいえ    |
| `proof`             | オブジェクトまたは null                                       | いいえ    |
| `proofGap`          | 文字列または null                                          | いいえ    |
| `urgency`           | `now`、`week`、`later`、`none`                          | いいえ    |
| `howSure`           | `confirmed`、`likely`、`possible`、または null             | いいえ    |

### GET /agent/scans/\{scanId}/repair-brief

スキャンの修正ブリーフの一部です。

* 権限: `read`
* MCPツール: [`lockpick_get_repair_brief`](/ja/docs/mcp/tools#lockpick_get_repair_brief)

**クエリ**

| 項目          | 型                                                                                 | 必須  |
| ----------- | --------------------------------------------------------------------------------- | --- |
| `findingId` | 文字列                                                                               | いいえ |
| `agent`     | `claude-code`、`codex`、`cursor`、`vscode`、`opencode`、`lovable`、`bolt`、`replit`、`v0` | いいえ |
| `cursor`    | 文字列                                                                               | いいえ |

**data**

| 項目           | 型           | 必ず含まれる |
| ------------ | ----------- | ------ |
| `scanId`     | 文字列         | はい     |
| `findingIds` | 文字列のリスト     | はい     |
| `saved`      | 真偽値         | はい     |
| `markdown`   | 文字列         | はい     |
| `nextCursor` | 文字列または null | はい     |
| `complete`   | 真偽値         | はい     |
| `webUrl`     | 文字列         | はい     |

### GET /agent/scans/\{scanId}/comparison

スキャンと、それが再チェックする元のスキャンとの違いです。

* 権限: `read`
* MCPツール: [`lockpick_compare_scans`](/ja/docs/mcp/tools#lockpick_compare_scans)
* `x-lockpick-agent-features: finding-code` を送ると、各検出結果の `code`（`LP-` と 6 文字、Web レポートの表示と同じ）を受け取れます。このヘッダーがない場合、回答に `code` は含まれず、古いクライアントが想定する形のままです。

**data**

| 項目              | 型           | 必ず含まれる |
| --------------- | ----------- | ------ |
| `runId`         | 文字列         | はい     |
| `baselineRunId` | 文字列         | はい     |
| `error`         | 文字列または null | はい     |
| `changes`       | オブジェクトのリスト  | はい     |
| `webUrl`        | 文字列         | はい     |

### POST /agent/scans/\{scanId}/dns-rechecks

スキャンのDNSを無料で再チェックします。サイトには何も送りません。

* 権限: `pulse`
* MCPツール: [`lockpick_recheck_dns`](/ja/docs/mcp/tools#lockpick_recheck_dns)

**本文**

| 項目               | 型   | 必須 |
| ---------------- | --- | -- |
| `findingId`      | 文字列 | はい |
| `idempotencyKey` | 文字列 | はい |

**data**

| 項目                       | 型              | 必ず含まれる |
| ------------------------ | -------------- | ------ |
| `scanId`                 | 文字列            | はい     |
| `findingIds`             | 文字列のリスト        | はい     |
| `pending`                | オブジェクトまたは null | はい     |
| `checkedAt`              | 文字列または null    | はい     |
| `outcomes`               | オブジェクトのリスト     | はい     |
| `nextAllowedAt`          | 文字列または null    | はい     |
| `failedAt`               | 文字列または null    | はい     |
| `originalGradeUnchanged` | 真偽値            | はい     |

### GET /agent/scans/\{scanId}/dns-rechecks/latest

スキャンの最新のDNS再チェックです。

* 権限: `read`
* MCPツール: [`lockpick_get_dns_recheck`](/ja/docs/mcp/tools#lockpick_get_dns_recheck)

**data**

| 項目                       | 型              | 必ず含まれる |
| ------------------------ | -------------- | ------ |
| `scanId`                 | 文字列            | はい     |
| `findingIds`             | 文字列のリスト        | はい     |
| `pending`                | オブジェクトまたは null | はい     |
| `checkedAt`              | 文字列または null    | はい     |
| `outcomes`               | オブジェクトのリスト     | はい     |
| `nextAllowedAt`          | 文字列または null    | はい     |
| `failedAt`               | 文字列または null    | はい     |
| `originalGradeUnchanged` | 真偽値            | はい     |

### POST /agent/quick-checks

ホームページのクイックチェックを無料で開始します。

* 権限: `pulse`
* MCPツール: [`lockpick_quick_check`](/ja/docs/mcp/tools#lockpick_quick_check)

**本文**

| 項目               | 型   | 必須 |
| ---------------- | --- | -- |
| `url`            | 文字列 | はい |
| `idempotencyKey` | 文字列 | はい |

**data**

| 項目                          | 型                                       | 必ず含まれる |
| --------------------------- | --------------------------------------- | ------ |
| `checkId`                   | 文字列                                     | はい     |
| `status`                    | `queued`、`running`、`succeeded`、`failed` | はい     |
| `reused`                    | 真偽値                                     | はい     |
| `headline`                  | オブジェクト                                  | はい     |
| `summary`                   | 文字列または null                             | はい     |
| `checks`                    | オブジェクトのリスト                              | はい     |
| `webUrl`                    | 文字列                                     | はい     |
| `suggestedPollAfterSeconds` | 整数または null                              | はい     |

### POST /agent/repository-checks

インストール前に、公開 GitHub リポジトリ（スキル、プラグイン、MCP サーバー、アプリ）をチェックします。

* 権限: `pulse`
* MCPツール: [`lockpick_check_repository`](/ja/docs/mcp/tools#lockpick_check_repository)

**本文**

| 項目               | 型              | 必須  |
| ---------------- | -------------- | --- |
| `url`            | 文字列            | はい  |
| `mode`           | `skill`、`app`  | いいえ |
| `depth`          | `free`, `deep` | いいえ |
| `idempotencyKey` | 文字列            | はい  |

**data**

| 項目                          | 型                                                                                                              | 必ず含まれる |
| --------------------------- | -------------------------------------------------------------------------------------------------------------- | ------ |
| `checkId`                   | 文字列                                                                                                            | はい     |
| `status`                    | `queued`、`running`、`succeeded`、`failed`                                                                        | はい     |
| `reused`                    | 真偽値                                                                                                            | はい     |
| `repository`                | オブジェクト                                                                                                         | はい     |
| `mode`                      | `skill`、`app`、または null                                                                                         | はい     |
| `kind`                      | 文字列、または null                                                                                                   | はい     |
| `verdict`                   | `safe`、`caution`、`do_not_install`、または null                                                                     | はい     |
| `appRisk`                   | `low`、`elevated`、`high`、または null                                                                               | はい     |
| `score`                     | 整数、または null                                                                                                    | はい     |
| `summary`                   | 文字列または null                                                                                                    | はい     |
| `plainSummary`              | 文字列、または null                                                                                                   | はい     |
| `findings`                  | オブジェクトのリスト                                                                                                     | はい     |
| `moreFindings`              | 整数                                                                                                             | はい     |
| `coverage`                  | オブジェクト、または null                                                                                                | はい     |
| `failure`                   | `not-found`、`ref-not-found`、`empty`、`too-large`、`rate-limited`、`unavailable`、`timeout`、`engine-error`、または null | はい     |
| `webUrl`                    | 文字列                                                                                                            | はい     |
| `suggestedPollAfterSeconds` | 整数または null                                                                                                     | はい     |

### GET /agent/repository-checks/\{checkId}

リポジトリチェックとその指摘です。

* 権限: `read`
* MCPツール: [`lockpick_get_repository_check`](/ja/docs/mcp/tools#lockpick_get_repository_check)

**data**

| 項目                          | 型                                                                                                              | 必ず含まれる |
| --------------------------- | -------------------------------------------------------------------------------------------------------------- | ------ |
| `checkId`                   | 文字列                                                                                                            | はい     |
| `status`                    | `queued`、`running`、`succeeded`、`failed`                                                                        | はい     |
| `reused`                    | 真偽値                                                                                                            | はい     |
| `repository`                | オブジェクト                                                                                                         | はい     |
| `mode`                      | `skill`、`app`、または null                                                                                         | はい     |
| `kind`                      | 文字列、または null                                                                                                   | はい     |
| `verdict`                   | `safe`、`caution`、`do_not_install`、または null                                                                     | はい     |
| `appRisk`                   | `low`、`elevated`、`high`、または null                                                                               | はい     |
| `score`                     | 整数、または null                                                                                                    | はい     |
| `summary`                   | 文字列または null                                                                                                    | はい     |
| `plainSummary`              | 文字列、または null                                                                                                   | はい     |
| `findings`                  | オブジェクトのリスト                                                                                                     | はい     |
| `moreFindings`              | 整数                                                                                                             | はい     |
| `coverage`                  | オブジェクト、または null                                                                                                | はい     |
| `failure`                   | `not-found`、`ref-not-found`、`empty`、`too-large`、`rate-limited`、`unavailable`、`timeout`、`engine-error`、または null | はい     |
| `webUrl`                    | 文字列                                                                                                            | はい     |
| `suggestedPollAfterSeconds` | 整数または null                                                                                                     | はい     |

### GET /agent/quick-checks/\{checkId}

クイックチェックとその結果です。

* 権限: `read`
* MCPツール: [`lockpick_get_quick_check`](/ja/docs/mcp/tools#lockpick_get_quick_check)

**data**

| 項目                          | 型                                       | 必ず含まれる |
| --------------------------- | --------------------------------------- | ------ |
| `checkId`                   | 文字列                                     | はい     |
| `status`                    | `queued`、`running`、`succeeded`、`failed` | はい     |
| `reused`                    | 真偽値                                     | はい     |
| `headline`                  | オブジェクト                                  | はい     |
| `summary`                   | 文字列または null                             | はい     |
| `checks`                    | オブジェクトのリスト                              | はい     |
| `webUrl`                    | 文字列                                     | はい     |
| `suggestedPollAfterSeconds` | 整数または null                              | はい     |

### GET /agent/docs/search

Lockpickの公開ドキュメントを検索します。

* 権限: `read`
* MCPツール: [`lockpick_search_docs`](/ja/docs/mcp/tools#lockpick_search_docs)

**クエリ**

| 項目      | 型   | 必須  |
| ------- | --- | --- |
| `query` | 文字列 | はい  |
| `limit` | 整数  | いいえ |

**data**

| 項目        | 型          | 必ず含まれる |
| --------- | ---------- | ------ |
| `query`   | 文字列        | はい     |
| `results` | オブジェクトのリスト | はい     |

### GET /agent/docs/page

公開ドキュメントの1ページをMarkdownで返します。長い場合は分けて返します。

* 権限: `read`
* MCPツール: [`lockpick_read_doc`](/ja/docs/mcp/tools#lockpick_read_doc)

**クエリ**

| 項目       | 型   | 必須  |
| -------- | --- | --- |
| `path`   | 文字列 | いいえ |
| `cursor` | 文字列 | いいえ |

**data**

| 項目            | 型           | 必ず含まれる |
| ------------- | ----------- | ------ |
| `path`        | 文字列         | はい     |
| `title`       | 文字列         | はい     |
| `description` | 文字列または null | はい     |
| `url`         | 文字列         | はい     |
| `markdownUrl` | 文字列         | はい     |
| `markdown`    | 文字列         | はい     |
| `nextCursor`  | 文字列または null | はい     |
| `complete`    | 真偽値         | はい     |

## デバイスでのサインイン

`lockpick login` がキーを取得する仕組みです。コードを取得し、本人がブラウザーで承認すると、ポーリングでキーが返ります。

### POST /device/code

デバイスでのサインインを開始し、本人がブラウザーで承認するためのコードを取得します。

* 権限: なし（サインインの一部）

**本文**

| 項目           | 型                                    | 必須  |
| ------------ | ------------------------------------ | --- |
| `clientName` | 文字列                                  | いいえ |
| `hostname`   | 文字列                                  | いいえ |
| `platform`   | 文字列                                  | いいえ |
| `version`    | 文字列                                  | いいえ |
| `scopes`     | `pulse`、`sites`、`deep`, `local` のリスト | いいえ |

**data**

| 項目                        | 型   | 必ず含まれる |
| ------------------------- | --- | ------ |
| `deviceCode`              | 文字列 | はい     |
| `userCode`                | 文字列 | はい     |
| `verificationUri`         | 文字列 | はい     |
| `verificationUriComplete` | 文字列 | はい     |
| `expiresIn`               | 整数  | はい     |
| `interval`                | 整数  | はい     |

### POST /device/token

本人が承認するまでデバイスでのサインインをポーリングし、承認されたらキーを受け取ります。

* 権限: なし（サインインの一部）

**本文**

| 項目           | 型   | 必須 |
| ------------ | --- | -- |
| `deviceCode` | 文字列 | はい |

## 旧API

CLI 0.2 が使っている元のCLIのルートです。そのまま残しています。新しい連携では、上のエージェントAPIを使ってください。

<details>
  <summary>
    元のCLIのルート
  </summary>

  **POST /projects/\{projectId}/local-assessments/authorize**

  リポジトリを検査する前にローカル評価を承認します。ソースや結果はアップロードされません。

  * 権限: `local`

  **本文**

  | 項目                    | 型                           | 必須 |
  | --------------------- | --------------------------- | -- |
  | `cliVersion`          | 文字列                         | はい |
  | `scannerVersion`      | 文字列                         | はい |
  | `rulesetVersion`      | 文字列                         | はい |
  | `reportSchemaVersion` | 文字列                         | はい |
  | `checks`              | `pulse`、`sites`、`deep` のリスト | はい |

  **data**

  | 項目              | 型          | 必ず含まれる |
  | --------------- | ---------- | ------ |
  | `admissionId`   | 文字列        | はい     |
  | `projectId`     | 文字列        | はい     |
  | `workspaceId`   | 文字列        | はい     |
  | `policyVersion` | 文字列        | はい     |
  | `startBy`       | 文字列        | はい     |
  | `checks`        | オブジェクトのリスト | はい     |

  **GET /me**

  このキーの背後にあるユーザー、ワークスペース、キーです。

  * 権限: `read`

  **data**

  | 項目          | 型      | 必ず含まれる |
  | ----------- | ------ | ------ |
  | `user`      | オブジェクト | はい     |
  | `workspace` | オブジェクト | はい     |
  | `key`       | オブジェクト | はい     |

  **DELETE /me**

  提示されたキーを取り消します。

  * 権限: 有効なキーであれば何でもよい

  **data**

  | 項目        | 型   | 必ず含まれる |
  | --------- | --- | ------ |
  | `revoked` | 真偽値 | はい     |

  **GET /projects**

  サイト（プロジェクト）と、それぞれの最新のPulseとDeepスキャンです。

  * 権限: `read`

  **data内の各項目**

  | 項目            | 型              | 必ず含まれる |
  | ------------- | -------------- | ------ |
  | `id`          | 文字列            | はい     |
  | `name`        | 文字列            | はい     |
  | `status`      | 文字列            | はい     |
  | `baseDomain`  | 文字列または null    | はい     |
  | `latestPulse` | オブジェクトまたは null | はい     |
  | `latestDeep`  | オブジェクトまたは null | いいえ    |
  | `latestBox`   | オブジェクトまたは null | はい     |
  | `webPath`     | 文字列            | はい     |
  | `webUrl`      | 文字列            | いいえ    |

  **GET /projects/\{projectId}/status**

  1つのサイトの最新の結果と、変更された内容です。

  * 権限: `read`

  **data**

  | 項目               | 型              | 必ず含まれる |
  | ---------------- | -------------- | ------ |
  | `project`        | オブジェクト         | はい     |
  | `latestPulse`    | オブジェクトまたは null | はい     |
  | `latestDeep`     | オブジェクトまたは null | いいえ    |
  | `latestBox`      | オブジェクトまたは null | はい     |
  | `lastComparison` | オブジェクトまたは null | はい     |
  | `caveats`        | 文字列のリスト        | はい     |

  **POST /projects/\{projectId}/pulse**

  サイトでPulseを開始します。または、最新のPulseを再チェックします。

  * 権限: `pulse`
  * 成功時は 201 を返します

  **本文**

  | 項目               | 型   | 必須 |
  | ---------------- | --- | -- |
  | `idempotencyKey` | 文字列 | はい |

  **data**

  | 項目                          | 型                                                                             | 必ず含まれる |
  | --------------------------- | ----------------------------------------------------------------------------- | ------ |
  | `id`                        | 文字列                                                                           | はい     |
  | `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
  | `projectId`                 | 文字列                                                                           | はい     |
  | `target`                    | 文字列                                                                           | はい     |
  | `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
  | `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
  | `createdAt`                 | 文字列または null                                                                   | はい     |
  | `finishedAt`                | 文字列または null                                                                   | はい     |
  | `webPath`                   | 文字列                                                                           | はい     |
  | `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | いいえ    |
  | `headline`                  | オブジェクト                                                                        | いいえ    |
  | `webUrl`                    | 文字列                                                                           | いいえ    |
  | `suggestedPollAfterSeconds` | 整数または null                                                                    | いいえ    |
  | `baselineRunId`             | 文字列または null                                                                   | はい     |
  | `open`                      | オブジェクト                                                                        | はい     |
  | `findingCount`              | 整数                                                                            | はい     |
  | `progress`                  | オブジェクトまたは null                                                                | はい     |
  | `coverage`                  | オブジェクト                                                                        | はい     |
  | `caveats`                   | 文字列のリスト                                                                       | はい     |
  | `outcome`                   | オブジェクトまたは null                                                                | いいえ    |
  | `exposureCheck`             | オブジェクトまたは null                                                                | いいえ    |

  **POST /projects/\{projectId}/deep**

  このサイト向けにDeepを許可したCIキーを使って、リリースのDeepスキャンを開始します。

  * 権限: `deep`
  * 成功時は 201 を返します

  **本文**

  | 項目               | 型   | 必須 |
  | ---------------- | --- | -- |
  | `idempotencyKey` | 文字列 | はい |

  **data**

  | 項目                          | 型                                                                             | 必ず含まれる |
  | --------------------------- | ----------------------------------------------------------------------------- | ------ |
  | `id`                        | 文字列                                                                           | はい     |
  | `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
  | `projectId`                 | 文字列                                                                           | はい     |
  | `target`                    | 文字列                                                                           | はい     |
  | `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
  | `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
  | `createdAt`                 | 文字列または null                                                                   | はい     |
  | `finishedAt`                | 文字列または null                                                                   | はい     |
  | `webPath`                   | 文字列                                                                           | はい     |
  | `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | いいえ    |
  | `headline`                  | オブジェクト                                                                        | いいえ    |
  | `webUrl`                    | 文字列                                                                           | いいえ    |
  | `suggestedPollAfterSeconds` | 整数または null                                                                    | いいえ    |
  | `baselineRunId`             | 文字列または null                                                                   | はい     |
  | `open`                      | オブジェクト                                                                        | はい     |
  | `findingCount`              | 整数                                                                            | はい     |
  | `progress`                  | オブジェクトまたは null                                                                | はい     |
  | `coverage`                  | オブジェクト                                                                        | はい     |
  | `caveats`                   | 文字列のリスト                                                                       | はい     |
  | `outcome`                   | オブジェクトまたは null                                                                | いいえ    |
  | `exposureCheck`             | オブジェクトまたは null                                                                | いいえ    |

  **GET /runs**

  PulseとDeepのスキャンを、新しい順に返します。

  * 権限: `read`

  **クエリ**

  | 項目                | 型                                                                             | 必須  |
  | ----------------- | ----------------------------------------------------------------------------- | --- |
  | `projectId`       | 文字列                                                                           | いいえ |
  | `kind`            | `pulse`、`box`（Deep、旧名称）                                                       | いいえ |
  | `assessmentLevel` | `pulse`、`standard`、`deep`                                                     | いいえ |
  | `status`          | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | いいえ |
  | `limit`           | 整数                                                                            | いいえ |

  **data内の各項目**

  | 項目                          | 型                                                                             | 必ず含まれる |
  | --------------------------- | ----------------------------------------------------------------------------- | ------ |
  | `id`                        | 文字列                                                                           | はい     |
  | `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
  | `projectId`                 | 文字列                                                                           | はい     |
  | `target`                    | 文字列                                                                           | はい     |
  | `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
  | `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
  | `createdAt`                 | 文字列または null                                                                   | はい     |
  | `finishedAt`                | 文字列または null                                                                   | はい     |
  | `webPath`                   | 文字列                                                                           | はい     |
  | `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | いいえ    |
  | `headline`                  | オブジェクト                                                                        | いいえ    |
  | `webUrl`                    | 文字列                                                                           | いいえ    |
  | `suggestedPollAfterSeconds` | 整数または null                                                                    | いいえ    |

  **GET /runs/\{runId}**

  1つのランを、見出しと件数とともに返します。

  * 権限: `read`

  **data**

  | 項目                          | 型                                                                             | 必ず含まれる |
  | --------------------------- | ----------------------------------------------------------------------------- | ------ |
  | `id`                        | 文字列                                                                           | はい     |
  | `kind`                      | `pulse`、`box`（Deep、旧名称）                                                       | はい     |
  | `projectId`                 | 文字列                                                                           | はい     |
  | `target`                    | 文字列                                                                           | はい     |
  | `status`                    | `queued`、`running`、`cancelling`、`succeeded`、`incomplete`、`failed`、`cancelled` | はい     |
  | `mode`                      | `autonomous`、`authenticated`、`active`、または null                                | はい     |
  | `createdAt`                 | 文字列または null                                                                   | はい     |
  | `finishedAt`                | 文字列または null                                                                   | はい     |
  | `webPath`                   | 文字列                                                                           | はい     |
  | `assessmentLevel`           | `pulse`、`standard`、`deep`、または null                                            | いいえ    |
  | `headline`                  | オブジェクト                                                                        | いいえ    |
  | `webUrl`                    | 文字列                                                                           | いいえ    |
  | `suggestedPollAfterSeconds` | 整数または null                                                                    | いいえ    |
  | `baselineRunId`             | 文字列または null                                                                   | はい     |
  | `open`                      | オブジェクト                                                                        | はい     |
  | `findingCount`              | 整数                                                                            | はい     |
  | `progress`                  | オブジェクトまたは null                                                                | はい     |
  | `coverage`                  | オブジェクト                                                                        | はい     |
  | `caveats`                   | 文字列のリスト                                                                       | はい     |
  | `outcome`                   | オブジェクトまたは null                                                                | いいえ    |
  | `exposureCheck`             | オブジェクトまたは null                                                                | いいえ    |

  **GET /runs/\{runId}/findings**

  ランの検出事項です。

  * 権限: `read`

  **クエリ**

  | 項目         | 型                                          | 必須  |
  | ---------- | ------------------------------------------ | --- |
  | `severity` | `critical`、`high`、`medium`、`low`、`info`    | いいえ |
  | `state`    | `attention`、`information`、`unknown`、`pass` | いいえ |
  | `all`      | `true`、`false`                             | いいえ |

  **data内の各項目**

  | 項目               | 型                                                    | 必ず含まれる |
  | ---------------- | ---------------------------------------------------- | ------ |
  | `id`             | 文字列                                                  | はい     |
  | `code`           | 文字列                                                  | いいえ    |
  | `runId`          | 文字列                                                  | はい     |
  | `kind`           | `pulse`、`box`（Deep、旧名称）                              | はい     |
  | `severity`       | `critical`、`high`、`medium`、`low`、`info`              | はい     |
  | `state`          | `attention`、`information`、`unknown`、`pass`           | はい     |
  | `category`       | 文字列                                                  | はい     |
  | `title`          | 文字列                                                  | はい     |
  | `meaning`        | 文字列                                                  | はい     |
  | `fix`            | 文字列または null                                          | はい     |
  | `confidence`     | 文字列                                                  | はい     |
  | `evidence`       | 文字列のリスト                                              | はい     |
  | `sources`        | 文字列のリスト                                              | はい     |
  | `steps`          | 文字列のリスト                                              | はい     |
  | `webPath`        | 文字列                                                  | はい     |
  | `webUrl`         | 文字列                                                  | いいえ    |
  | `verdict`        | `confirmed`、`needs_review`、`not_actionable`、または null | いいえ    |
  | `certainty`      | `high`、`medium`、`low`、または null                       | いいえ    |
  | `exploitability` | `direct`、`conditional`、`hygiene`、`none`、または null     | いいえ    |
  | `proof`          | オブジェクトまたは null                                       | いいえ    |
  | `proofGap`       | 文字列または null                                          | いいえ    |
  | `urgency`        | `now`、`week`、`later`、`none`                          | いいえ    |
  | `howSure`        | `confirmed`、`likely`、`possible`、または null             | いいえ    |

  **GET /runs/\{runId}/findings/\{findingId}**

  1つの検出事項を、秘匿された証拠とともに返します。

  * 権限: `read`

  **data**

  | 項目               | 型                                                    | 必ず含まれる |
  | ---------------- | ---------------------------------------------------- | ------ |
  | `id`             | 文字列                                                  | はい     |
  | `code`           | 文字列                                                  | いいえ    |
  | `runId`          | 文字列                                                  | はい     |
  | `kind`           | `pulse`、`box`（Deep、旧名称）                              | はい     |
  | `severity`       | `critical`、`high`、`medium`、`low`、`info`              | はい     |
  | `state`          | `attention`、`information`、`unknown`、`pass`           | はい     |
  | `category`       | 文字列                                                  | はい     |
  | `title`          | 文字列                                                  | はい     |
  | `meaning`        | 文字列                                                  | はい     |
  | `fix`            | 文字列または null                                          | はい     |
  | `confidence`     | 文字列                                                  | はい     |
  | `evidence`       | 文字列のリスト                                              | はい     |
  | `sources`        | 文字列のリスト                                              | はい     |
  | `steps`          | 文字列のリスト                                              | はい     |
  | `webPath`        | 文字列                                                  | はい     |
  | `webUrl`         | 文字列                                                  | いいえ    |
  | `verdict`        | `confirmed`、`needs_review`、`not_actionable`、または null | いいえ    |
  | `certainty`      | `high`、`medium`、`low`、または null                       | いいえ    |
  | `exploitability` | `direct`、`conditional`、`hygiene`、`none`、または null     | いいえ    |
  | `proof`          | オブジェクトまたは null                                       | いいえ    |
  | `proofGap`       | 文字列または null                                          | いいえ    |
  | `urgency`        | `now`、`week`、`later`、`none`                          | いいえ    |
  | `howSure`        | `confirmed`、`likely`、`possible`、または null             | いいえ    |

  **GET /runs/\{runId}/repair-brief**

  ランの修正内容を、1つのMarkdownブリーフとして返します。

  * 権限: `read`

  **クエリ**

  | 項目          | 型                                                                                 | 必須  |
  | ----------- | --------------------------------------------------------------------------------- | --- |
  | `findingId` | 文字列                                                                               | いいえ |
  | `agent`     | `claude-code`、`codex`、`cursor`、`vscode`、`opencode`、`lovable`、`bolt`、`replit`、`v0` | いいえ |

  **data**

  | 項目           | 型       | 必ず含まれる |
  | ------------ | ------- | ------ |
  | `runId`      | 文字列     | はい     |
  | `findingIds` | 文字列のリスト | はい     |
  | `saved`      | 真偽値     | はい     |
  | `markdown`   | 文字列     | はい     |
  | `webUrl`     | 文字列     | いいえ    |

  **GET /runs/\{runId}/comparison**

  ランと、その1つ前のランとの違いです。

  * 権限: `read`

  **data**

  | 項目              | 型           | 必ず含まれる |
  | --------------- | ----------- | ------ |
  | `runId`         | 文字列         | はい     |
  | `baselineRunId` | 文字列         | はい     |
  | `error`         | 文字列または null | はい     |
  | `changes`       | オブジェクトのリスト  | はい     |
  | `webUrl`        | 文字列         | いいえ    |
</details>