
Hermes用のエージェント型ペンテストプロファイル:認可済み偵察、Web/アクセス制御攻撃、安全なエクスプロイト検証、およびガードゲート付きの証拠基盤型レポート作成のための31のプレイブック。
35個のプレイブック · 19個のリファレンス · 14個のテンプレート · 必須の実行ガード · Hermesネイティブ
Violinは、監督下で許可されたペネトレーションテスト向けのHermesネイティブなエージェント型ペネトレーションテストプロファイルです。偵察から安全なエクスプロイト検証、そして報告までをカバーします。Hermesに組み込まれたツールセット、7つのルーティングされたスキル、そしてターゲット実行境界で必須となるviolin_guardプラグインを使用します。スタンドアロンCLIはリリースチェック、診断、および管理上のリカバリをサポートし、ターゲットコマンドはプラグイン経由で実行されます。Violinはプロファイル固有の認証情報を追加せず、Hermesですでに設定されているプロバイダーおよびツールバックエンドを継承します。
クイックスタート · ワークフロー · ガードツール · ベンチマーク · ランディングページ · ディスカッション · 開発
Violinをフォローしていますか? リポジトリにスターを付けて 見つけやすくし、他のセキュリティエンジニアが監督型エージェント型ペネトレーションテストを発見できるようにご協力ください。
Violinは、以下を含むコミュニティがキュレーションしたコレクションに掲載されています: awesome-ai-security、 awesome-hermes-skills、 awesome-hermes-agent、および awesome-infosec。
第三者による報道: Starlogの技術分析 および 「Violin: Supervised Agentic Penetration Testing Profile for Hermes Agent」。
独立した評価には、 レビュアーキットをご利用ください。これは ベンチマークのパス、既知の制限、レビューのコンテキスト、および自律型ペネトレーションテストエージェント設計との事実に基づく比較をまとめたものです。
| 保護されたターゲット実行 | スコープ、フェーズ、PTT、スキル、仮説、履歴、同期のチェックがターゲットコマンドの開始前に実行されます。 |
| 永続的なエンゲージメント状態 | PTTタスク、仮説、コマンド履歴、チェックポイント、証拠、レポートはコンテキスト圧縮後も保持されます。 |
| 証拠に基づく発見事項 | 型付きの提出により、各検証済みの発見事項が認証済みの実行レシートに紐付けられます。 |
| ルーティングされた方法論 | ペネトレーションテストオーケストレーターが、Web、ID、API、ビジネスロジック、LLMセキュリティ、設定不備に特化したプレイブックを選択します。 |
| 制限付き実行 | 単一コマンド、コマンドバースト、バックグラウンドプロセス、バッチレビュー、ハートビートチェック、キャンセルが単一の状態モデルを共有します。 |
| 検証可能なリリース | プラグイン登録、スキーマ、スキルスナップショット、ドキュメント契約、lint、フォーマット、および完全なテストスイートがリリースゲートとして管理されます。 |
hermes profile install https://github.com/Strategic-Automation/violin
hermes -p violin plugins disable violin_guard
hermes -p violin plugins enable violin_guard --no-allow-tool-override
hermes -p violin
Guard の依存関係は plugins/violin_guard/plugin.yaml で宣言されています。プラグイン名、ディレクトリ、および有効化設定はすべて violin_guard を使用しているため、Hermes はディレクトリの回避策なしで依存関係を解決できます。開発用の .venv に依存関係をインストールしても、それらは Hermes にはインストールされません。上記の無効化/有効化のサイクルにより、プロファイル設定で既にプラグインが有効になっている場合でも依存関係の承認が強制されます。インストール後に登録を確認してください:
hermes -p violin plugins doctor ~/.hermes/profiles/violin/plugins/violin_guard --ci
hermes -p violin tools list
Plugin Doctor は 12 個のツールと 5 個のフックを報告し、violin_guard が有効なツールセットとして表示されるはずです。エンゲージメントを開始する前に、インストール後に Hermes を再起動してください。古い violin-guard インストールを移行するには、プロファイルを再インストールしてください。
次に、許可されたターゲットを指定して開始し、ターゲットとのやり取りを行う前に Violin にスコープを収集させます:
Run an authorized penetration test against example.com.
v2026.9.24 リリースコミットを固定)uvViolin はモデルやプロバイダーを選択しません。それらは Hermes で設定してください。有能なデフォルトとしては、ローカルで Qwen3.8 27B を、またはホスト型プロバイダー経由で DeepSeek V4 Flash を使用してください。
flowchart LR
S[Scope] --> R[Recon]
R --> V[Vulnerability research]
V --> E[Exploit validation]
E --> P[Reporting]
P --> X[Retrospective]
G[Violin Guard] -. validates .-> R
G -. validates .-> V
G -. validates .-> E
scope/scope.yaml を承認します。violin_record_ptt で1つのアクティブな PTT タスクと、それにルーティングされたスキルを選択します。violin_exec または violin_exec_burst でターゲットコマンドを実行します。violin_review_batch で各バウンドされたコマンドバッチをレビューします。完全なフェーズモデルは次のとおりです:
SCOPING → RECON → VULN_RESEARCH → EXPLOITATION
→ POST_EXPLOITATION / PRIVESC / FLAGS
→ REPORTING → RETROSPECTIVE
新しいフェーズで作業を開始するには、そのフェーズ配下に PTT タスクが必要です。既存のタスクはフェーズセクション間で移動されません。
プラグインは、単一の型付きレジストリから 12 個の Hermes ツールを登録します:
| ツール | 目的 |
|---|---|
violin_record_ptt | PTT タスクの作成、開始、更新、クローズ、またはキャンセル |
violin_record_hypothesis | スコープ付き仮説の作成または更新 |
violin_submit_finding | 署名済み実行レシートに紐付けられた検証済みの検出事項を送信 |
violin_exec | ガード付きコマンドを 1 つ実行 |
violin_exec_burst | 境界付きコマンドファイルを実行 |
violin_exec_status | バックグラウンド実行のステータスを読み取り |
violin_exec_cancel | 追跡中のバックグラウンド実行をキャンセル |
violin_review_batch | 完了したバッチをレビューし状態を確定 |
violin_rebind_pending_batch | 確認後に保留中のバッチを再バインド |
violin_heartbeat_done | 完了したハートビートレビューをクリア |
violin_target | 承認済みの評価対象を解決 |
violin_status | 現在のタスク、スキル、ブロッカーを説明 |
violin_exec は汎用的な対象コマンド境界です。ツール固有の実行アダプターやバイナリ許可リストはありません。インストール済みの非対話型ツールは、エンゲージメントゲートを通過した後にのみ実行できます。
生のターミナルフックはベストエフォートのセーフティネットであり、ネットワーク封じ込めではありません。terminal はホストローカルの準備と管理にのみ使用してください。
flowchart LR
A[Written authorization] --> B[Approved scope]
B --> C[Active phase task]
C --> D[Skill and hypothesis gates]
D --> E[Guarded execution]
E --> F[Evidence receipt]
F --> G[Batch review]
$ENG_DIR/evidence/<phase>/ の下に保持する。$ENG_DIR/state/ の外に保持する。詳細なポリシーは
skills/pentest/references/standards.md に記載されています。
init-engagement は標準的な作業構造を作成します:
$ENG_DIR/
├── scope/
│ └── scope.yaml
├── state/
│ ├── ptt.md
│ ├── history.md
│ └── checkpoint.json
├── hypotheses.md
├── evidence/
├── reporting/
└── retrospective/