> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 過去セッションの監査（ベータ）

> 過去のトランスクリプトで、エージェントが無駄または危険な操作を行った頻度を集計する

<Note>
  **ベータ機能。** 監査機能は早期フィードバックを収集する段階でベータとして提供されています。
  次の安定版リリース前に、検出器カタログやレポート形式が変更される可能性があります。
  問題があれば Issue を開いてください。
</Note>

監査機能は、過去のエージェント CLI トランスクリプトを failproofai のポリシーエンジンで再実行し、**`/audit` ダッシュボードページ**に共有可能なビジュアルレポートを表示します。エージェントのアーキタイプ、0〜100 のスコア、そしてどのポリシーが何を検出したかを詳細に確認できます。

## 実行方法

3 つの起動方法があり、いずれも同じ `/audit` レポートに遷移します。

<CodeGroup>
  ```bash npx (no install) theme={null}
  npx -y failproofai audit
  ```

  ```bash failproofai audit theme={null}
  failproofai audit
  ```

  ```bash failproofai (dashboard) theme={null}
  failproofai
  ```
</CodeGroup>

<CardGroup cols={3}>
  <Card title="インストール不要" icon="bolt">
    `npx -y failproofai audit` は failproofai を取得してスキャンを実行し、ダッシュボードを自動で開きます。事前インストールは不要です。
  </Card>

  <Card title="CLI から実行" icon="terminal">
    `failproofai audit` はターミナルでスキャンを実行し、完了後に自動で `localhost:8020/audit` を開きます。
  </Card>

  <Card title="ダッシュボードから実行" icon="gauge">
    `failproofai` を実行してナビゲーションバーの **Audit** をクリック（Policies と Projects の間）するか、`/audit` に直接アクセスします。
  </Card>
</CardGroup>

<Tip>
  使い方を確認するには `failproofai audit -h`（または `--help`）を実行してください。中核となる監査スキャンとレポート生成は**完全オフライン**で動作し、アカウントやネットワーク接続は不要です。オプションの認証済みアカウント機能にはネットワーク接続が必要です。`Ctrl+C` で停止するまでダッシュボードはサービスを継続します。
</Tip>

ダッシュボードはこのマシン上の過去のエージェント CLI トランスクリプト（Claude Code、Codex、Copilot、Cursor、OpenCode、Pi）をスキャンし、failproofai が防止するように設計された操作の発生頻度を報告します。対象は環境変数チェック、フォースプッシュ、冗長な `cd <cwd>` プレフィックス、スリープポーリングループ、編集直後のファイル再読み込みなどです。

各トランスクリプトについて、すべてのツール使用イベントが 39 のビルトインポリシー**および** 8 つの監査専用検出器で再実行されます（後者はランタイムポリシーでまだカバーされていないパターンを検出します）。カウントはポリシー・検出器ごとにすべてのセッションで集計されます。

## レポートの内容

`/audit` ページは 1 画面の共有可能な**ポスター**と、スクロール下の 4 つのセクションで構成されています。

1. **ポスター** — エージェントのプロフィールが一目でわかる。**アーキタイプ**（8 種類のうちの 1 つ — `optimist`、`cowboy`、`explorer`、`goldfish`、`paranoid architect`、`precision builder`、`hammer`、`ghost`）、ペルソナキーワード、そのアーキタイプのレア度、**0〜100 スコア**とティアバンド（`S` から `bottom tier` まで）。X や LinkedIn への投稿や PNG ダウンロードにも対応した共有向けデザインです。
2. **`// strengths`** — スキャン結果から得た実際の数値でエージェントが既によくできていることを表示（例：クリーンなツール呼び出しの割合、`main` へのプッシュ試行数 `0` 回）。関連ポリシーに問題がない場合のみ表示されます。
3. **`// quirks`** — 見逃された動作：failproofai が検出できたはずの動作を優先度順に並べたテーブル。*最後に発生した日時*、*何が見逃されたか*（および対応するビルトイン）、*深刻度*、発生頻度（`new` / `recurring` / `N× seen`）が表示されます。
4. **`// how to improve`** — 推奨修正リスト：コピー＆ペースト可能な `failproofai policy add <slug>` コマンドをポリシーごとに 1 行表示。すべての推奨設定を一括で有効化する **install all** ボタンと、適用した場合の**予測スコア**も確認できます。
5. **`// come back better`** — 習慣を作る：再監査メール**リマインダー**（`3d` / `7d` / `14d` / `30d`）の設定や今すぐ再監査の実行、そして**友人への招待**（failproof.ai から送信、自分に Cc）ができます。リマインダーと招待にはサインインが必要です。[`failproofai auth`](/ja/cli/auth) を参照してください。

## 監査専用検出器

これらはリアルタイムで強制されていない（まだ）「非効率な動作」パターンを検出します。監査時のみ実行され、ライブのツール呼び出しをブロックすることはありません。

| 検出器                         | カウント対象                                                             |
| --------------------------- | ------------------------------------------------------------------ |
| `redundant-cd-cwd`          | コマンドはすでに `cwd` で実行されているにもかかわらず、`cd <cwd> && …` で始まる Bash コマンド。     |
| `prefer-edit-over-read-cat` | 単一のソースファイルへの `cat`/`head`/`tail`/`less`/`more` — `Read` ツールを使用すべき。 |
| `prefer-edit-over-sed-awk`  | `sed -i` / `awk … > file` によるインプレース編集 — `Edit` ツールを使用すべき。          |
| `prefer-write-over-heredoc` | ヒアドキュメント / 複数行の `echo > file` によるファイル書き込み — `Write` ツールを使用すべき。     |
| `sleep-polling-loop`        | 長い `sleep N`（≥ 30 秒）や `while …; sleep …; done` のポーリングループ。          |
| `find-from-root`            | `find /`、`find /home`、`find /usr` など — `cwd` にスコープを絞るべき。           |
| `git-commit-no-verify`      | `git commit … --no-verify` / `-n` によるフックのスキップ。                     |
| `reread-after-edit`         | 同一セッション内で `Edit`/`Write` した直後のファイルへの `Read`。                       |

## キャッシュ

* **トランスクリプトごとのキャッシュ** は `~/.failproofai/cache/audit/<sha1>.json` に保存され、`(mtime, size, engineVersion, detectorVersion)` をキーとしています。トランスクリプトやポリシー・検出器コードが変更されると自動的に無効化されます。各エントリには `cachedAt` タイムスタンプが **TTL メタデータ**として保存されます（キャッシュキーには含まれません）。**7 日**以上経過したエントリは読み込み時に拒否されるため、長期間のキャッシュが検出器の意図の変化に追いつけないという問題を防ぎます。
* **結果全体のキャッシュ** は `~/.failproofai/audit-dashboard.json`（モード 0600）に保存されます。再実行なしでダッシュボードを即座に表示できます。こちらも **7 日 TTL** を超えると読み込み時に拒否されます。その場合 `/audit` は空の状態に戻り、新しい実行を促します。レポート下部の `[ re-audit now ]` をクリックすると更新できます。再監査は `noCache: true` を送信するため、トランスクリプトごとのキャッシュをバイパスしてすべてのトランスクリプトを再スキャンします（キャッシュ結果は返しません）。実行中はページ上部のスティッキーストリップに進捗が表示され、成功時にはページリロードなしで結果がその場で更新されます（再監査に失敗した場合は以前のレポートが維持されます）。

## 注意事項

* **変更なし。** 監査は読み取り専用モードで再実行されます。`warn-repeated-tool-calls` はセッションごとのサイドカーが変更されてしまうためスキップされます。
* **ワークフローポリシーのスキップ。** `require-*-before-stop` ポリシーは `Stop` イベント時にのみ発火し、ライブの git 状態に対して `execSync` を実行します。「2025 年に何が起きたか」という文脈では意味のある解釈ができないため、監査カウントには含まれません。
* **カスタムポリシーのスキップ。** ユーザーが定義したカスタムフックは再実行されません（元のセッション以降に変更された可能性があるため）。
