
サイバーセキュリティAI (CAI)、AIセキュリティのフレームワーク
CAI)Professional Edition、無制限のalias1トークン付き | 📊 ベンチマークを見る | 🚀 詳細を見る
🔓 コミュニティエディション 研究と学習・研究者や学生に最適 pip install cai-framework
✅ 研究に無料 🤖 300以上のAIモデル 🌍 コミュニティ主導 📚 オープンソース 🔧 拡張可能なフレームワーク
🚀 プロフェッショナルエディション エンタープライズ&プロダクション · €350/月 · 無制限のalias1トークン
→ PROにアップグレード
⚡ alias1モデル - ∞ 無制限トークン 🚫 拒否ゼロ - 無制限AI 🏆 CTFベンチマークでGPT-5を凌駕 🛡️ プロフェッショナルサポート付き 🇪🇺 欧州データ主権
CAI PRO(alias1モデル搭載)は、AI vs AIサイバーセキュリティベンチマークでGPT-5を上回る | 完全なベンチマークを見る →
-->
Cybersecurity AI(CAI)は、軽量でオープンソースのフレームワークであり、セキュリティ専門家がAIを活用した攻撃・防御の自動化を構築・展開できるようにします。CAIはAIセキュリティにおける事実上のフレームワークであり、すでに数千人の個人ユーザーと数百の組織で使用されています。セキュリティ研究者、倫理的ハッカー、IT専門家、またはセキュリティ体制を強化したい組織のいずれであっても、CAIは緩和、脆弱性発見、悪用、セキュリティ評価を支援する特殊なAIエージェントを作成するための構成要素を提供します。
CAI_LICENSE_OFF)CAIは、環境変数**CAI_LICENSE_OFF=1を設定することで、ALIAS_API_KEYなしで**(つまりAlias Roboticsのライセンスなしで)実行できます。
CAI_LICENSE_OFFが1、true、またはyesに設定されている場合:
ALIAS_API_KEYは不要です。cai-frameworkパッケージを対象とします。CAI_MODELと対応するプロバイダーのAPIキーを設定することで使用できます。ライセンスなしのクイックスタート:```bash export CAI_LICENSE_OFF=1 cai
またはインライン:
CAI_LICENSE_OFF=1 cai
```
> 注: `alias1` モデルを使用するには、依然として有効な `ALIAS_API_KEY` が必要です。`CAI_LICENSE_OFF` は、フレームワークのライセンスゲートのみをバイパスします。Alias がホストするモデルへのアクセスを許可するものではありません。
**主な特徴:**
- 🤖 **300以上のAIモデル**: OpenAI、Anthropic、DeepSeek、Ollamaなどをサポート
- 🔧 **内蔵セキュリティツール**: 偵察、エクスプロイト、権限昇格のためのすぐに使えるツール
- 🏆 **実戦で検証済み**: HackTheBox CTF、バグ報奨金プログラム、実際のセキュリティ[ケーススタディ](https://aliasrobotics.com/case-studies-robot-cybersecurity.php)で実証済み
- 🎯 **エージェントベースのアーキテクチャ**: さまざまなセキュリティタスク向けの特殊エージェントを構築するためのモジュラーフレームワーク設計
- 🛡️ **ガードレールによる保護**: プロンプトインジェクションや危険なコマンド実行に対する組み込みの防御機能
- 📚 **研究指向**: コミュニティ向けにサイバーセキュリティAIを民主化するための研究基盤
> [!NOTE]
> テクニカルレポートを読む: [CAI: An Open, Bug Bounty-Ready Cybersecurity AI](https://arxiv.org/pdf/2504.06017)
> 図と参考文献を含む[HTMLリーディング版](https://cybersecurityrobotics.com/research/cai-bug-bounty-cybersecurity-ai/)は、Robot Cybersecurity Lab によって管理されています。
>
> さらなる読み物については、[インパクト](#-impact)と[CAI引用](#citation)のセクションを参照してください。
| [`ロボティクス` - CAIとalias1 on: Unitree G1 ヒューマノイドロボット](https://aliasrobotics.com/case-study-humanoid-robot-g1.php) | [`OT` - CAIとalias1 on: Dragos OT CTF 2025](https://aliasrobotics.com/case-study-dragos-CTF.php) |
|------------------------------------------------|---------------------------------|
| CAIは、Unitree G1ヒューマノイドロボットの脆弱性とプライバシー侵害を明らかにします。これには、中国関連サーバーへの不正なテレメトリ送信、ワールド書き込み可能な権限で露出したRSA鍵、GDPRや国際プライバシー法に違反する可能性のある監視機能などが含まれます。 | CAIはalias1を搭載し、Dragos OT CTF 2025でトップ10のランキングを達成し、運用技術サイバーセキュリティにおいて卓越したパフォーマンスを示しました。AIエージェントは競技時間7〜8時間目にランク1に到達し、34のチャレンジ中32を完了し、トップの人間チームを上回る37%の速度優位性を維持しました。 |
| [](https://aliasrobotics.com/case-study-humanoid-robot-g1.php) | [](https://aliasrobotics.com/case-study-dragos-CTF.php) |
| [`IT` (バグ報奨金) - CAI on: HackerOne プラットフォーム](https://aliasrobotics.com/case-study-hackerone.php) | [`OT` - CAIとalias0 on: Ecoforest ヒートポンプ](https://aliasrobotics.com/case-study-ecoforest.php) |
|------------------------------------------------|---------------------------------|
| HackerOneのトップエンジニアは、CAIを活用して次世代のエージェンティックAIアーキテクチャを探求し、自社のセキュリティ製品を構築しています。CAIのRetesterエージェントは、HackerOneのAI搭載重複排除エージェントに直接影響を与え、現在は本番環境で数百万件の脆弱性レポートを大規模に処理しています。 | CAIはEcoforestヒートポンプの重大な脆弱性を発見し、不正なリモートアクセスや潜在的な壊滅的な障害を可能にします。AI駆動のセキュリティテストにより、露出した認証情報とDES暗号化の弱点が明らかになり、ヨーロッパ全体の全設置ユニットに影響を与えています。 |
| [](https://aliasrobotics.com/case-study-hackerone.php) | [](https://aliasrobotics.com/case-study-ecoforest.php) |
| [`ロボティクス` - CAIとalias0 on: Mobile Industrial Robots (MiR)](https://aliasrobotics.com/case-study-cai-mir.php) | [`IT` (Web) - CAIとalias0 on: Mercado Libre のeコマース](https://aliasrobotics.com/case-study-mercado-libre.php) |
|------------------------------------------------|---------------------------------|
| CAIを搭載したセキュリティテストは、自動化されたROSメッセージインジェクション攻撃を通じて、MiR(Mobile Industrial Robot)プラットフォームを対象としています。この研究は、AI駆動の脆弱性発見がロボット制御システムやアラームトリガーへの不正アクセスをどのように暴露できるかを示しています。 | CAIを搭載したAPI脆弱性発見は、自動化された列挙攻撃を通じてMercado Libreで実施されました。この研究は、AI駆動のセキュリティテストがeコマースプラットフォームでユーザーデータの露出リスクを大規模に暴露する方法を示しています。 |
| [](https://aliasrobotics.com/case-study-cai-mir.php) | [](https://aliasrobotics.com/case-study-mercado-libre.php) |
| [`OT` - CAIとalias0 on: MQTT ブローカー](https://aliasrobotics.com/case-study-cai-mqtt-broker.php) | [`IT` (Web) - CAIとalias0 on: PortSwigger Web セキュリティアカデミー](https://aliasrobotics.com/case-study-portswigger-1.php) |
|------------------------------------------------|---------------------------------|
| CAIを搭載したテストは、Docker化されたOTネットワーク内のMQTTブローカーの重大な欠陥を露呈しました。認証なしで、CAIは温度と湿度のトピックにサブスクライブし、偽の値を注入して、Grafanaダッシュボードに表示されるデータを破損しました。 | CAIを搭載したレースコンディションの悪用は、ファイルアップロードの脆弱性において行われました。この研究は、AI駆動のセキュリティテストがWebアプリケーションのタイミングウィンドウを識別して悪用し、自動化された並行リクエストを通じてWebシェルをアップロードおよび実行することに成功する方法を示しています。 |
| [](https://aliasrobotics.com/case-study-cai-mqtt-broker.php) | [](https://aliasrobotics.com/case-study-portswigger-1.php) |
> [!WARNING]
> :warning: CAIは活発に開発中ですので、完璧に動作することを期待しないでください。代わりに、Issueを報告するか、[PRを送信](https://github.com/aliasrobotics/cai/pulls)して貢献してください。
>
> このライブラリへのアクセス、および情報や資料(またはその一部)の使用は、該当する法律や規制に違反する場合、**意図されておらず、禁止されています**。著者は、実行中のシステムへの無許可の改ざんを決して奨励または促進するものではありません。これは深刻な人的被害と物的損害を引き起こす可能性があります。
>
> *CAIの著者は、コンピュータシステムへの無許可の改ざんを決して奨励または促進するものではありません。ここにあるソースコードをサイバー犯罪に使用しないでください。代わりに、善のためにペネトレーションテストを行ってください*。このソースコードをダウンロード、使用、または変更することにより、[`LICENSE`](https://github.com/aliasrobotics/cai/blob/HEAD/LICENSE)の条項と[`DISCLAIMER`](https://github.com/aliasrobotics/cai/blob/HEAD/DISCLAIMER)ファイルに記載された制限に同意したものとみなされます。
## :bookmark: 目次
- [サイバーセキュリティAI (`CAI`)](#cybersecurity-ai-cai)
- [:bookmark: 目次](#bookmark-table-of-contents)
- [🎯 インパクト](#-impact)
- [🏆 コンペティションとチャレンジ](#-competitions-and-challenges)
- [📊 研究インパクト](#-research-impact)
- [📚 研究成果: `Cybersecurity AI`](#-research-products-cybersecurity-ai)
- [PoCs](#pocs)
- [動機](#motivation)
- [:bust\_in\_silhouette: なぜCAIなのか?](#bust_in_silhouette-why-cai)
- [CAIの背後にある倫理的原則](#ethical-principles-behind-cai)
- [クローズドソースの代替手段](#closed-source-alternatives)
- [学ぶ - `CAI` Fluency](#learn---cai-fluency)
- [:nut\_and\_bolt: インストール](#nut_and_bolt-install)
- [OS X](#os-x)
- [Ubuntu 24.04](#ubuntu-2404)
- [Ubuntu 20.04](#ubuntu-2004)
- [Windows WSL](#windows-wsl)
- [Android](#android)
- [:nut\_and\_bolt: `.env`ファイルのセットアップ](#nut_and_bolt-setup-env-file)
- [🔹 カスタムOpenAIベースURLサポート](#-custom-openai-base-url-support)
- [:triangular\_ruler: アーキテクチャ:](#triangular_ruler-architecture)
- [🔹 エージェント](#-agent)
- [🔹 ツール](#-tools)
- [🔹 ハンドオフ](#-handoffs)
- [🔹 パターン](#-patterns)
- [🔹 ターンとインタラクション](#-turns-and-interactions)
- [🔹 トレーシング](#-tracing)
- [🔹 ガードレール](#-guardrails)
- [🔹 ヒューマン・イン・ザ・ループ (HITL)](#-human-in-the-loop-hitl)
- [:rocket: クイックスタート](#rocket-quickstart)
- [環境変数](#environment-variables)
- [OpenRouter統合](#openrouter-integration)
- [Azure OpenAI](#azure-openai)
- [MCP](#mcp)
- [開発](#development)
- [コントリビューション](#contributions)
- [オプション要件: caiextensions](#optional-requirements-caiextensions)
- [:information\_source: 使用データの収集](#information_source-usage-data-collection)
- [CIセットアップをローカルで再現する](#reproduce-ci-setup-locally)
- [FAQ](#faq)
- [引用](#citation)
- [謝辞](#acknowledgements)
- [学術協力](#academic-collaborations)
## 🎯 インパクト
### 🏆 コンペティションとチャレンジ
[-red.svg)](https://app.hackthebox.com/users/2268644)
[-red.svg)](https://app.hackthebox.com/users/2268644)
[-red.svg)](https://app.hackthebox.com/users/2268644)
[-red.svg)](https://app.hackthebox.com/users/2268644)
[_world-red.svg)](https://ctf.hackthebox.com/event/2000/scoreboard)
[](https://ctf.hackthebox.com/event/2000/scoreboard)
[](https://ctf.hackthebox.com/event/2000/scoreboard)
[](https://ctf.hackthebox.com/event/2000/scoreboard)
[](https://lu.ma/roboticshack?tk=RuryKF)
### 📊 研究インパクト
- PentestGPTを用いたLLM駆動型AIセキュリティの先駆けとなり、`Cybersecurity AI`研究領域の基盤を確立 [](https://arxiv.org/pdf/2308.06782)
- **8件の論文とテクニカルレポート**からなる`Cybersecurity AI`研究ラインを確立し、活発な研究協力を実施 [](https://arxiv.org/pdf/2504.06017) [](https://arxiv.org/abs/2506.23592) [](https://arxiv.org/abs/2508.13588) [](https://arxiv.org/abs/2508.21669) [](https://arxiv.org/abs/2509.14096) [](https://arxiv.org/abs/2509.14139) [](https://arxiv.org/abs/2510.17521) [](https://arxiv.org/abs/2510.24317)
- 標準化されたCTFベンチマーク評価において、人間のペネトレーションテスターと比較して**3,600倍のパフォーマンス向上**を実証 [](https://arxiv.org/pdf/2504.06017)
- 自動化されたセキュリティ評価により、本番システムで**CVSS 4.3〜7.5の深刻度の脆弱性**を特定 [](https://arxiv.org/pdf/2504.06017)
- **AIを活用した脆弱性研究の民主化**: CAIは、セキュリティ以外の分野の専門家から経験豊富な研究者まで、より効率的な脆弱性発見を可能にし、セキュリティ研究コミュニティを拡大するとともに、中小企業が自律的なセキュリティ評価を実施できるようにする [](https://arxiv.org/pdf/2504.06017)
- プロプライエタリとオープンウェイトの両方のアーキテクチャにわたる**大規模言語モデルの体系的な評価**を実施し、ベンダーが報告する能力と実証的なサイバーセキュリティパフォーマンス指標との間に大きなギャップがあることを明らかに [](https://arxiv.org/pdf/2504.06017)
- **サイバーセキュリティにおける自律性のレベル**を確立し、この分野における自律性と自動化について議論 [](https://arxiv.org/abs/2506.23592)
- 国際的な学術機関との**共同研究イニシアチブ**を実施し、サイバーセキュリティ教育カリキュラムとトレーニング手法の開発に重点を置く [](https://arxiv.org/abs/2508.13588)
- **AIセキュリティエージェントにおけるプロンプトインジェクションに対する包括的な防御フレームワークを提供**: 特定されたプロンプトインジェクション問題に対処する多層防御システムを開発し、実証的に検証 [](https://arxiv.org/abs/2508.21669)
- CAIを用いたヒューマノイドロボットのサイバーセキュリティを探求し、新しい攻撃ベクトルを特定。これにより、`(a)` 隠蔽監視ノードとして同時に動作し、`(b)` アクティブなサイバー作戦プラットフォームとして利用できることを示す [](https://arxiv.org/abs/2509.14096) [](https://arxiv.org/abs/2509.14139)
### 📚 研究成果: `Cybersecurity AI`
| CAI, An Open, Bug Bounty-Ready Cybersecurity AI [](https://arxiv.org/pdf/2504.06017) | The Dangerous Gap Between Automation and Autonomy [](https://arxiv.org/abs/2506.23592) | CAI Fluency, A Framework for Cybersecurity AI Fluency [](https://arxiv.org/abs/2508.13588) | Hacking the AI Hackers via Prompt Injection [](https://arxiv.org/abs/2508.21669) |
|---|---|---|---|
| [](https://arxiv.org/pdf/2504.06017) | [](https://www.arxiv.org/pdf/2506.23592) | [](https://arxiv.org/pdf/2508.13588) | [](https://arxiv.org/pdf/2508.21669) |
| Humanoid Robots as Attack Vectors [](https://arxiv.org/abs/2509.14139) | The Cybersecurity of a Humanoid Robot [](https://arxiv.org/abs/2509.14096) | Evaluating Agentic Cybersecurity in Attack/Defense CTFs [](https://arxiv.org/abs/2510.17521) | CAIBench: A Meta-Benchmark for Evaluating Cybersecurity AI Agents [](https://arxiv.org/abs/2510.24317) |
|---|---|---|---|
| [](https://arxiv.org/pdf/2509.14139) | [](https://arxiv.org/pdf/2509.14096) | [](https://arxiv.org/pdf/2510.17521) | [](https://arxiv.org/pdf/2510.24317) |
**拡張HTMLリーディング版:** [CAI](https://cybersecurityrobotics.com/research/cai-bug-bounty-cybersecurity-ai/) · [CAIBench](https://cybersecurityrobotics.com/research/caibench-cybersecurity-ai-benchmark/) · [Humanoid robots as attack vectors](https://cybersecurityrobotics.com/research/humanoids-as-attack-vectors/) · [The cybersecurity of a humanoid robot](https://cybersecurityrobotics.com/research/cybersecurity-of-a-humanoid-robot/) · [Hacking consumer robots in the AI era](https://cybersecurityrobotics.com/research/hacking-consumer-robots-ai-era/)
## PoCs
| CAIと`alias0`によるMiR-100ロボットへのROSメッセージインジェクション攻撃 | CAIと`alias0`によるMercado LibreでのAPI脆弱性発見 |
|-----------------------------------------------|---------------------------------|
| [](https://asciinema.org/a/dNv705hZel2Rzrw0cju9HBGPh) | [](https://asciinema.org/a/9Hc9z1uFcdNjqP3bY5y7wO1Ww) |
| CAI on JWT@PortSwigger CTF — サイバーセキュリティAI | CAI on HackableII Boot2Root CTF — サイバーセキュリティAI |
|-----------------------------------------------|---------------------------------|
| [](https://asciinema.org/a/713487) | [](https://asciinema.org/a/713485) |
さらなるケーススタディとPoCは、[https://aliasrobotics.com/case-studies-robot-cybersecurity.php](https://aliasrobotics.com/case-studies-robot-cybersecurity.php)で入手できます。
## 動機
### :bust_in_silhouette: なぜCAIなのか?
サイバーセキュリティの状況は、AIがセキュリティ運用にますます統合されるにつれて、劇的な変革を遂げています。**我々は、2028年までに、AIを搭載したセキュリティテストツールが人間のペネトレーションテスターの数を上回ると予測しています**。この変化は、サイバーセキュリティの課題への取り組み方における根本的な変化を表しています。*AIは単なる別のツールではありません。複雑なセキュリティ脆弱性に対処し、高度な脅威に先んじるためには不可欠なものになりつつあります。組織がより高度なサイバー攻撃に直面するにつれて、AI強化型セキュリティテストは強固な防御を維持するために重要になります。*
この研究は、以前の取り組み[^4]に基づいており、同様に、高度なサイバーセキュリティAIツールへのアクセスを民主化することが、セキュリティコミュニティ全体にとって極めて重要であると信じています。そのため、サイバーセキュリティAI (`CAI`) をオープンソースフレームワークとしてリリースしています。私たちの目標は、セキュリティ研究者、倫理的ハッカー、組織が強力なAI駆動型セキュリティツールを構築および展開できるようにすることです。これらの機能をオープンに利用可能にすることで、競争条件を平等にし、最先端のセキュリティAI技術が資金力のある民間企業や国家主体に限定されないようにすることを目指しています。
バグ報奨金プログラムは、最新のサイバーセキュリティの基盤となっており、組織が悪用される前にシステムの脆弱性を特定して修正するための重要なメカニズムを提供しています。これらのプログラムは、公共および民間のインフラストラクチャの両方を保護する上で非常に効果的であることが証明されており、研究者は見過ごされていた可能性のある重大な脆弱性を発見しています。CAIは、これらの取り組みを強化するために特別に設計されており、バグ報奨金ハンティングのさまざまな側面(初期偵察から脆弱性の検証と報告まで)を支援する特殊なAIエージェントを構築するための軽量で人間工学に基づいたフレームワークを提供します。私たちのフレームワークは、人間の専門知識をAI機能で補完し、研究者がデジタルシステムの安全性を高めるために、より効率的かつ徹底的に作業できるようにすることを目指しています。
### CAIの背後にある倫理的原則
CAIの能力とセキュリティへの影響を考慮して、CAIを*野に放つ*ことが倫理的かどうか疑問に思われるかもしれません。このフレームワークをオープンソース化するという私たちの決定は、2つの中核的な倫理原則に基づいています。
1. **サイバーセキュリティAIの民主化**: 高度なサイバーセキュリティAIツールは、資金力のある民間企業や国家主体だけでなく、セキュリティコミュニティ全体がアクセスできるべきだと私たちは信じています。CAIをオープンソースフレームワークとしてリリースすることで、セキュリティ研究者、倫理的ハッカー、組織が強力なAI駆動型セキュリティツールを構築および展開できるようにし、サイバーセキュリティにおける競争条件を平等にすることを目指しています。
2. **AIセキュリティ機能における透明性**: 私たちの研究結果、技術の理解、そしてトップテクニカルレポートの分析に基づいて、現在のLLMベンダーは自社のサイバーセキュリティ機能を過小評価していると主張します。これは非常に危険で誤解を招くものです。CAIをオープンに開発することにより、AIシステムがサイバーセキュリティの文脈で実際に何ができるかについて透明性のあるベンチマークを提供し、セキュリティ態勢に関するより情報に基づいた意思決定を可能にします。CAIは以下のコア原則に基づいて構築されています:
- **サイバーセキュリティ志向のAIフレームワーク**: CAIは特にサイバーセキュリティのユースケース向けに設計されており、攻撃的および防御的なセキュリティタスクを半自動化・完全自動化することを目指しています。
- **オープンソース、研究目的では無料**: CAIはオープンソースであり、研究目的では無料で利用できます。AIとサイバーセキュリティへのアクセスを民主化することを目指しています。業務用または商用利用(オンプレミス展開を含む)の場合は、専用の技術サポートとカスタム拡張機能について、[こちら](mailto:[email protected])までご連絡の上、ライセンスを取得してください。
- **軽量**: CAIは高速で使いやすいように設計されています。
- **モジュール式でエージェント中心の設計**: CAIはエージェントとエージェントパターンに基づいて動作し、柔軟性と拡張性を実現します。サイバーセキュリティの対象ケースに最適なエージェントとパターンを容易に追加できます。
- **ツール統合**: CAIはすでに組み込みのツールを統合しており、ユーザーは独自のロジックでツールを簡単に統合できます。
- **ログ記録とトレーシングの統合**: LLM向けのオープンソースのトレーシング・ログ記録ツールである[`phoenix`](https://github.com/Arize-ai/phoenix)を使用しています。これにより、エージェントとその実行に関する詳細なトレーサビリティを提供します。
- **マルチモデルサポート**: 300以上のモデルをサポートし、[LiteLLM](https://github.com/BerriAI/litellm)によって強化されています。最も人気のあるプロバイダー:
- **Anthropic**: `Claude 3.7`、`Claude 3.5`、`Claude 3`、`Claude 3 Opus`
- **OpenAI**: `O1`、`O1 Mini`、`O3 Mini`、`GPT-4o`、`GPT-4.5 Preview`
- **DeepSeek**: `DeepSeek V3`、`DeepSeek R1`
- **Ollama**: `Qwen2.5 72B`、`Qwen2.5 14B` など
### クローズドソースの代替品
サイバーセキュリティAIは重要な分野ですが、多くのグループは純粋な経済的利益のためにクローズドソースの手法で誤った方向に進んでおり、同様の技術を活用し、既存のクローズドソース(*多くの場合サードパーティ所有*)モデルを基盤に構築しています。このアプローチは貴重なエンジニアリングリソースを浪費するだけでなく、経済的な損失であり、しばしば車輪の再発明に終わる重複した努力をもたらします。以下は、私たちが追跡しており、genAIとエージェンティックフレームワークをサイバーセキュリティAIで活用しようとしているクローズドソースの取り組みの一部です:
- [Autonomous Cyber](https://www.acyber.co/)
- [CrackenAGI](https://cracken.ai/)
- [ETHIACK](https://ethiack.com/)
- [Horizon3](https://horizon3.ai/)
- [Irregular](https://www.irregular.com/)
- [Kindo](https://www.kindo.ai/)
- [Lakera](https://lakera.ai)
- [Mindfort](https://github.com/aliasrobotics/cai/blob/HEAD/www.mindfort.ai)
- [Mindgard](https://mindgard.ai/)
- [NDAY Security](https://ndaysecurity.com/)
- [Penligent](https://penligent.ai/)
- [Runsybil](https://www.runsybil.com)
- [Selfhack](https://www.selfhack.fi)
- [Sola Security](https://sola.security/)
- [SQUR](https://squr.ai/)
- [Staris](https://staris.tech/)
- [Sxipher](https://www.sxipher.com/)(廃止された模様)
- [Terra Security](https://www.terra.security)
- [Vibeproxy](https://vibeproxy.app/)
- [Xint](https://xint.io/)
- [XBOW](https://www.xbow.com)
- [ZeroPath](https://www.zeropath.com)
- [Zynap](https://www.zynap.com)
- [7ai](https://7ai.com)
## 学習 - `CAI` フルエンシー
> [!NOTE]
>
> CAIフルエンシー技術レポート([arXiv:2508.13588](https://arxiv.org/pdf/2508.13588))は、サイバーセキュリティAIリテラシーのための正式な教育フレームワークを確立しています。
| | 説明 | 英語 | スペイン語 |
|-------|----------------|---------|---------|
| **エピソード0:CAIとは?** | サイバーセキュリティAI(`CAI`)の解説 | [](https://www.youtube.com/watch?v=nBdTxbKM4oo) | [](https://www.youtube.com/watch?v=FaUL9HXrQ5k) |
| **エピソード1:`CAI` フレームワーク** | ビジョンと倫理 - CAIの背後にある核となる動機を探り、その開発を導く重要な倫理原則を深く掘り下げます。CAIの動機と、サイバーセキュリティとCAIフレームワークの未来に積極的に貢献する方法を理解します。 | [](https://www.youtube.com/watch?v=QEiGdsMf29M&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=3) | |
| **エピソード2:ゼロからサイバーヒーローへ** | AIでサイバーセキュリティに飛び込む - 完全な初心者がCAIとAIツールを使ってサイバーセキュリティ実践者になるための包括的なガイド。人工知能を活用してサイバーセキュリティの学習 journey を加速し、基本的なセキュリティ概念の理解から実際のセキュリティ評価の実行まで、事前のサイバーセキュリティ経験を必要とせずに行う方法を学びます。 | [](https://www.youtube.com/watch?v=hSTLHOOcQoY&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=14) | |
| **エピソード3:Vibe-Hacking チュートリアル** | 「初めてのハック」 - 初心者向けVibe-Hackingガイド。デフォルトエージェントを使った簡単なWebセキュリティハックを実演し、ツールの活用方法やCAI Python APIを使ってCAI出力を解釈する方法を紹介します。また、ハッキングの取り組みに最適なLLMモデルを見つけるために、異なるLLMモデルを比較する方法も学びます。 | [](https://www.youtube.com/watch?v=9vZ_Iyex7uI&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=1) | [](https://www.youtube.com/watch?v=iAOMaI1ftiA&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=2) |
| **エピソード4:ReAct 入門** | LLMの進化 - LLMが基本的な言語モデルから高度なマルチエージェントAIシステムへとどのように進化したかを学びます。基本的なLLMからChain-of-ThoughtやReasoning LLM、ReActやマルチエージェントアーキテクチャへ。基本的な用語を理解しましょう。 | [](https://www.youtube.com/watch?v=tLdFO1flj_o&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=13) | |
| **エピソード5:CTFチャレンジでのCAI** | CAIを使ったCapture The Flag(CTF)競技に飛び込みましょう。AIエージェントを活用して、Webエクスプロイト、暗号、リバースエンジニアリング、フォレンジックなど、さまざまなサイバーセキュリティチャレンジを解決する方法を学びます。競技ハッキングのシナリオでCAIを構成し、インテリジェントな自動化でCTFパフォーマンスを最大化する方法を発見します。 | [](https://www.youtube.com/watch?v=MrXTQ0e2to4&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=13) | [](https://www.youtube.com/watch?v=r9US_JZa9_c&list=PLLc16OUiZWd4RuFdN5_Wx9xwjCVVbopzr&index=12) |
| | | | |
| **付録1:`CAI` 0.5.x リリース** | `CAI` バージョン0.5の紹介。新しいマルチエージェント機能、`/history`、`/compact`、`/graph`、`/memory` などの新しいコマンド、および `CAI` が世界中に広がるOTヒートポンプの重大なセキュリティ欠陥を発見したケーススタディを含みます。 | [](https://www.youtube.com/watch?v=OPFH0ANUMMw) | [](https://www.youtube.com/watch?v=Q8AI4E4gH8k) |
| **付録2:`CAI` 0.4.x リリースと `alias0`** | `CAI` バージョン0.4の紹介。*ストリーミング* と改善されたMCPサポートを備えています。また、プライバシーファーストのサイバーセキュリティAIである `alias0` を紹介します。これはプライバシーバイデザインアーキテクチャを実装し、サイバーセキュリティベンチマークで最先端の結果を達成するモデル・オブ・モデルズ・インテリジェンスです。 | [](https://www.youtube.com/watch?v=NZjzfnvAZcc) | |
| **付録3:サイバーセキュリティAIコミュニティミーティング #1** | 第1回サイバーセキュリティAI(`CAI`)コミュニティミーティング。学界、産業界、防衛界から40名以上の参加者が集まり、CAIの背後にあるオープンソースの足場について議論しました。このプロジェクトは、オープンでモジュール式、かつBug Bounty対応のサイバーセキュリティ向けエージェントAIシステムを構築するために設計されています。 | [](https://www.youtube.com/watch?v=4JqaTiVlgsw) | |
| **付録4:`CAI PRO` PoC** | [CAI PRO](https://aliasrobotics.com/cybersecurityai.php) 機能の短い概念実証デモ。無制限の `alias1` トークン、制限のないAI、エンタープライズグレードのセキュリティテスト機能を備えたプロフェッショナルエディションを紹介します。 |  | |
| **付録5:`CAI` PoC** | CAIコミュニティエディションの短い概念実証デモ。AIを活用したセキュリティテストと脆弱性発見のためのオープンソースフレームワークのコア機能を紹介します。 |  | |
| **付録6:`Jaula del N00B` でのCAI** | CAI(CIBERSEGURIDAD CON IA)LUIJAIT EN LA JAULA DEL N00B - 人気のスペイン語サイバーセキュリティポッドキャスト/番組でのCAIフレームワーク機能のデモと議論。 | | [](https://www.youtube.com/watch?v=KD2_xzIOkWg) |
## :nut_and_bolt: インストール
> [!NOTE]
> **CAI Professional Edition ユーザーへ**:アクティブなCAI Proサブスクリプションをお持ちの場合、バージョン0.5および0.6用の専用インストールガイドを提供しています。公式サポートはUbuntu 24.04(x86_64)で利用可能です。他のオペレーティングシステム向けのインストール手順は、公式サポートなしで現状のまま提供されます。
> - [CAI Pro v0.6 インストールガイド](https://github.com/aliasrobotics/cai/blob/HEAD/docs/Installation_Guide_for_CAI_Pro_v0.6.md)
> - [CAI Pro v0.5 インストールガイド](https://github.com/aliasrobotics/cai/blob/HEAD/docs/Installation_Guide_for_CAI_Pro_v0.5.md)
### コミュニティエディションのインストール```bash
pip install cai-framework
```
Always create a new virtual environment to ensure proper dependency installation when updating CAI.
The following subsections provide a more detailed walkthrough on selected popular Operating Systems. Refer to the [Development](#development) section for developer-related install instructions.
For API Keys env syntax check litellm Documentation. [LiteLLM Documentation](https://docs.litellm.ai/docs/tutorials/installation)
### OS X```bash
brew update && \
brew install git [email protected]
# Create virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
```
### Ubuntu 24.04```bash
sudo apt-get update && \
sudo apt-get install -y git python3-pip python3.12-venv
# Create the virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
```
### Ubuntu 20.04```bash
sudo apt-get update && \
sudo apt-get install -y software-properties-common
# Fetch Python 3.12
sudo add-apt-repository ppa:deadsnakes/ppa && sudo apt update
sudo apt install python3.12 python3.12-venv python3.12-dev -y
# Create the virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
```
### Windows WSL
Microsoft のページにアクセスしてください: https://learn.microsoft.com/en-us/windows/wsl/install。ここでは、WSL をインストールするためのすべての手順を見つけることができます。
Powershell から次のように入力します: wsl --install```bash
sudo apt-get update && \
sudo apt-get install -y git python3-pip python3-venv
# Create the virtual environment
python3 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip install cai-framework
# Generate a .env file and set up with defaults. If Ollama runs on your windows host, wsl needs to use your host IP for it to become reachable
echo -e 'OPENAI_API_KEY="sk-1234"\nANTHROPIC_API_KEY=""\nOLLAMA=""\nOLLAMA_API_BASE="http://Your.Host.Ip.Here:11434"\nPROMPT_TOOLKIT_NO_CPR=1\nCAI_STREAM=false' > .env
# Launch CAI
cai # first launch it can take up to 30 seconds
```
Ubuntu上でcaiを実行すると、一部のエージェントがKaliインスタンス上で動作していることを前提として、必要なツールを見つけられないため問題が発生する場合があります。
そのため、代替としてdockerizedフォルダ内のdocker composeファイルを使用できます。これもDockerがインストールされていればWSL内から動作します。
その場合、dockerizedフォルダを取得し(リポジトリ全体は不要)、その中から実行してください。
APIキーの環境構文については、litellmのドキュメントを確認してください。[LiteLLM Documentation](https://docs.litellm.ai/docs/tutorials/installation)```bash
#build and run docker compose Build takes around 20 min.
docker compose build && docker compose up -d
#access cai
docker compose exec cai cai
```
### Android
少なくとも8GBのRAMを推奨します:
1. まず、userlandをインストールします https://play.google.com/store/apps/details?id=tech.ula&hl=es
2. 基本オプションでKali minimalをインストールします(無料)。[または好みの他のkaliオプション]
3. 以下の例のようにaptキーを更新します: https://superuser.com/questions/1644520/apt-get-update-issue-in-kali, UserLandのKaliターミナル内で実行してください```bash
# Get new apt keys
wget http://http.kali.org/kali/pool/main/k/kali-archive-keyring/kali-archive-keyring_2024.1_all.deb
# Install new apt keys
sudo dpkg -i kali-archive-keyring_2024.1_all.deb && rm kali-archive-keyring_2024.1_all.deb
# Update APT repository
sudo apt-get update
# CAI requieres python 3.12, lets install it (CAI for kali in Android)
sudo apt-get update && sudo apt-get install -y git python3-pip build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev pkg-config
wget https://www.python.org/ftp/python/3.12.4/Python-3.12.4.tar.xz
tar xf Python-3.12.4.tar.xz
cd ./configure --enable-optimizations
sudo make altinstall # This command takes long to execute
# Clone CAI's source code
git clone https://github.com/aliasrobotics/cai && cd cai
# Create virtual environment
python3.12 -m venv cai_env
# Install the package from the local directory
source cai_env/bin/activate && pip3 install -e .
# Generate a .env file and set up
cp .env.example .env # edit here your keys/models
# Launch CAI
cai
```
### :nut_and_bolt: `.env` ファイルのセットアップ
CAIは起動時に設定を読み込むために `.env` ファイルを利用します。セットアップを容易にするために、リポジトリには [`.env.example`](https://github.com/aliasrobotics/cai/blob/HEAD/.env.example) ファイルが用意されており、CAIの設定とLLM APIキーを目的のLLMモデルで動作するように構成するためのテンプレートを提供します。
:warning: 重要:
CAIはデフォルトではどのモデルに対してもAPIキーを提供しません。キーの提供を要求しないでください。ご自身のキーを使用するか、ご自身でモデルをホストしてください。
:warning: 注意:
OPENAI_API_KEY は空白のままにしてはいけません。"sk-123" (プレースホルダー) または実際のAPIキーを入力する必要があります。詳細は https://github.com/aliasrobotics/cai/issues/27 を参照してください。
:warning: 注意:
alias1 モデルを使用している場合、CAIがバージョン 0.4.0 より新しいことを確認し、ここに使用可能な .env の例を示します。```bash
OPENAI_API_KEY="sk-1234"
OLLAMA=""
ALIAS_API_KEY="<sk-your-key>" # note, add yours
CAI_STREAM=False
CAI_MODEL="alias1"
```
### 🔹 カスタムOpenAIベースURLのサポート
CAIは、`OPENAI_BASE_URL`環境変数を使用してカスタムOpenAI APIベースURLを設定することをサポートしています。これにより、ユーザーはAPI呼び出しをプロキシやセルフホストのOpenAI互換サービスなどのカスタムエンドポイントにリダイレクトできます。
`.env`エントリ設定の例:```
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1"
```
またはコマンドラインから直接:```bash
OLLAMA_API_BASE="https://custom-openai-proxy.com/v1" cai
```
## :triangular_ruler: アーキテクチャ:
CAIは、サイバーセキュリティエージェントの**調整**と**実行**を軽量で高度に制御可能、かつ人間にとって有用なものにすることに重点を置いています。そのために、`Agents`、`Tools`、`Handoffs`、`Patterns`、`Turns`、`Tracing`、`Guardrails`、`HITL`の8つの柱に基づいています。```
┌───────────────┐ ┌───────────┐
│ HITL │◀─────-───▶│ Turns │
└───────┬───────┘ └───────────┘
│
▼
┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
│ Patterns │◀──-──▶│ Handoffs │◀──-─▶ │ Agents │◀──-─▶│ LLMs │
└───────────┘ └─────┬─────┘ └─────┬─────┘ └───────────┘
│ │
│ ▼
┌────────────┐ ┌────┴──────┐ ┌───────────┐ ┌────────────┐
│ Extensions │◀────▶ │ Tracing │ │ Tools │◀──▶ │ Guardrails │
└────────────┘ └───────────┘ └───────────┘ └────────────┘
│
┌─────────────┬─────┴────┬─────────────┐
▼ ▼ ▼ ▼
┌───────────┐┌───────────┐┌────────────┐┌───────────┐
│ LinuxCmd ││ WebSearch ││ Code ││ SSHTunnel │
└───────────┘└───────────┘└────────────┘└───────────┘
```
コードをさらに深く調べたい場合は、CAIの使用を開始するための以下のファイルを確認してください:
* [__init__.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/__init__.py)
* [cli.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/cli.py) - コマンドラインインターフェースのエントリポイント
* [util.py](https://github.com/aliasrobotics/cai/blob/main/src/cai/util.py) - ユーティリティ関数
* [agents](https://github.com/aliasrobotics/cai/blob/main/src/cai/agents) - エージェントの実装
* [internal](https://github.com/aliasrobotics/cai/blob/main/src/cai/internal) - CAI内部関数(エンドポイント、メトリクス、ロギングなど)
* [prompts](https://github.com/aliasrobotics/cai/blob/main/src/cai/prompts) - エージェントプロンプトデータベース
* [repl](https://github.com/aliasrobotics/cai/blob/main/src/cai/repl) - CLIの外観とコマンド
* [sdk](https://github.com/aliasrobotics/cai/blob/main/src/cai/sdk) - CAIコマンドSDK
* [tools](https://github.com/aliasrobotics/cai/tree/main/src/cai/tools) - エージェントツール
### 🔹 エージェント
CAIはその中核として、`エージェント`とエージェント的な`パターン`を介してサイバーセキュリティの振る舞いを抽象化します。エージェントとは、*何らかの環境と相互作用するインテリジェントシステム*です。より技術的には、CAIではロボティクス中心の定義を採用しており、エージェントとはセンサーを通じて環境を知覚し、目標について推論し、それに応じてアクチュエーターを通じて環境に作用するシステムと見なすことができるものすべてです(Russel & Norvig, AI: A Modern Approach より*改変*)。サイバーセキュリティにおいて、`エージェント`はシステムやネットワークと相互作用し、周辺機器やネットワークインターフェースをセンサーとして使用し、それに応じて推論し、あたかもアクチュエーターであるかのようにネットワークアクションを実行します。同様に、CAIでは、`エージェント`は`ReACT`(推論と行動)エージェントモデル[^3]を実装しています。詳細については、[こちらの例](https://github.com/aliasrobotics/cai/blob/main/examples/basic/hello_world.py)で完全な実行コードを参照し、使用方法のチュートリアルとして[このjupyter notebook](https://github.com/aliasrobotics/cai/blob/main/fluency/my-first-hack/my_first_hack.ipynb)を参照してください。```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
agent = Agent(
name="Custom Agent",
instructions="""You are a Cybersecurity expert Leader""",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "openai/gpt-4o"),
openai_client=AsyncOpenAI(),
)
)
message = "Tell me about recursion in programming."
result = await Runner.run(agent, message)
```
### 🔹 Tools
`Tools`は、サイバーセキュリティエージェントがシステムコマンドの実行、セキュリティスキャンの実施、脆弱性の分析、ターゲットシステムやAPIとのインタラクションを行うためのインターフェースを提供することでアクションを実行できるようにします - これらはCAIエージェントがセキュリティタスクを効果的に実行するための核となる機能です。CAIでは、ツールには組み込みのサイバーセキュリティユーティリティ(コマンド実行用の`LinuxCmd`、OSINT収集用の`WebSearch`、動的スクリプト実行用の`Code`、安全なリモートアクセス用の`SSHTunnel`など)、任意のPython関数をセキュリティツールとして統合できる関数呼び出しメカニズム、および他のエージェントが使用できる特殊なセキュリティエージェント(偵察やエクスプロイトエージェントなど)を作成するエージェント・アズ・ツール機能が含まれており、エージェント間の正式なハンドオフを必要とせずに強力な協調セキュリティワークフローを実現します。詳細については、カスタム関数の完全な設定については[こちらの例](https://github.com/aliasrobotics/cai/blob/main/examples/basic/tools.py)を参照してください。```python
from cai.sdk.agents import Agent, Runner, OpenAIChatCompletionsModel
from cai.tools.reconnaissance.exec_code import execute_code
from cai.tools.reconnaissance.generic_linux_command import generic_linux_command
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
agent = Agent(
name="Custom Agent",
instructions="""You are a Cybersecurity expert Leader""",
tools= [
generic_linux_command,
execute_code
],
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "openai/gpt-4o"),
openai_client=AsyncOpenAI(),
)
)
message = "Tell me about recursion in programming."
result = await Runner.run(agent, message)
```
You may find different [tools](https://github.com/aliasrobotics/cai/blob/HEAD/tools). They are grouped in 6 major categories inspired by the security kill chain [^2]:
1. 偵察と武器化 - *reconnaissance* (crypto, listing, etc)
2. エクスプロイト - *exploitation*
3. 特権昇格 - *escalation*
4. 横移動 - *lateral*
5. データ外部流出 - *exfiltration*
6. 指揮統制 - *control*
### 🔹 Handoffs
`Handoffs`を使用すると、`Agent`は他のエージェントにタスクを委任できます。これは、エンゲージメントのさまざまなフェーズに専門知識が必要なサイバーセキュリティ業務において重要です。このフレームワークでは、`Handoffs`はLLMのツールとして実装されており、`transfer_to_flag_discriminator`のような **handoff/transfer function** により、`ctf_agent`はフラグを見つけたと判断したら`flag_discriminator_agent`に制御を渡すことができます。これにより、最初のエージェントがエクスプロイトとフラグ発見を担当し、2番目のエージェントがフラグ検証を専門に行うセキュリティ検証チェーンが作成され、適切な職務分離が確保され、異なるセキュリティタスクに対して異なるモデルの専門機能が活用されます。詳細については、完全な実行コードは[こちら](https://github.com/aliasrobotics/cai/blob/main/examples/cai/agent_patterns/handoffs.py)の例を参照してください。```python
from cai.sdk.agents import function_tool
from cai.tools.common import run_command
from cai.sdk.agents import Agent, OpenAIChatCompletionsModel, HandoffInputData, Runner, function_tool, handoff, trace
from cai.sdk.agents.extensions import handoff_filters
import os
from openai import AsyncOpenAI
from dotenv import load_dotenv
load_dotenv()
@function_tool
def execute_cli_command(command: str) -> str:
return run_command(command)
flag_discriminator = Agent(
name="Flag discriminator",
description="Agent focused on extracting the flag from the output",
instructions="You are an agent tailored to extract the flag from a given output.",
model=OpenAIChatCompletionsModel(
model=os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
)
)
ctf_agent = Agent(
name="CTF agent",
description="Agent focused on conquering security challenges",
instructions="You are a Cybersecurity expert Leader facing a CTF",
tools=[
execute_cli_command,
],
model=OpenAIChatCompletionsModel(
model= os.getenv('CAI_MODEL', "qwen2.5:14b"),
openai_client=AsyncOpenAI(),
),
handoffs = [flag_discriminator]
)
```
### 🔹 パターン
エージェンティック `Pattern` は、人工知能システムにおける *構造化された設計パラダイム* であり、自律または半自律エージェントが定義された *相互作用フレームワーク* (パターン) 内で動作し、目標を達成するものです。これらの `Pattern` は、エージェント間の組織化、調整、通信方法を指定し、意思決定、タスク実行、委任を導きます。
エージェンティックパターン (`AP`) は、タプルとして形式的に定義できます:
\\[
AP = (A, H, D, C, E)
\\]
ここで:
- **\\(A\\) (エージェント):** 自律エンティティの集合 \\( A = \\{a_1, a_2, ..., a_n\\} \\)。それぞれが定義された役割、能力、内部状態を持ちます。
- **\\(H\\) (ハンドオフ):** 事前定義されたロジック(例:ルール、交渉、入札)に基づいて、タスク \\( T \\) がエージェント間でどのように転送されるかを管理する関数 \\( H: A \\times T \\to A \\)。
- **\\(D\\) (決定メカニズム):** \\( S \\) をシステム状態とし、任意の時点でどのエージェントがアクションを実行するかを決定する関数 \\( D: S \\to A \\)。
- **\\(C\\) (通信プロトコル):** メッセージ空間 \\( M \\) におけるメッセージ関数 \\( C: A \\times A \\to M \\)。エージェントが情報を共有する方法を定義します。
- **\\(E\\) (実行モデル):** 入力空間 \\( I \\)、出力空間 \\( O \\) における関数 \\( E: A \\times I \\to O \\)。エージェントがタスクを実行する方法を定義します。
`Patterns` を構築する際、これらは一般的に以下のカテゴリのいずれかに分類されます(他にも存在します):
| **エージェンティック** `Pattern` **カテゴリ** | **説明** |
|--------------------|------------------------|
| `Swarm` (非集中型) | エージェントはタスクを共有し、中央のオーケストレータなしで責任を自己割り当てする。ハンドオフは動的に発生する。*ピアツーピアのエージェンティックパターンの例として、`CTF Agentic Pattern` がある。これは、エージェントのチームが協力して動的なハンドオフでCTFチャレンジを解決するものである。* |
| `Hierarchical` | トップレベルのエージェント(例:"PlannerAgent")が構造化されたハンドオフを介して専門のサブエージェントにタスクを割り当てる。あるいは、エージェントの構造は事前定義されたハンドオフでエージェンティックパターンにハードコードされている。 |
| `Chain-of-Thought` (逐次ワークフロー) | Agent Aが出力を生成し、それをAgent Bに再利用または洗練のために渡す、といった構造化パイプライン。ハンドオフは線形シーケンスに従う。*チェーン・オブ・ソートのエージェンティックパターンの例として、`ReasonerAgent` がある。これは、推論型LLMを使用し、メインエージェントにコンテキストを提供してCTFチャレンジを線形シーケンスで解決するものである。*[^1] |
| `Auction-Based` (競争的割り当て) | エージェントは優先度、能力、コストに基づいてタスクに「入札」する。決定エージェントが入札を評価し、最適なエージェントにタスクをハンドオフする。 |
| `Recursive` | 単一のエージェントが自身の出力を継続的に洗練し、自身を実行者兼評価者として扱い、自身へのハンドオフ(内部または外部)を行う。*再帰的エージェンティックパターンの例として、`CodeAgent`(再帰的エージェントとして使用される場合)がある。これは、コードを実行し自身の指示を更新することで出力を継続的に洗練するものである。* |
一般的なエージェンティックパターンの詳細と例については、[examples フォルダ](https://github.com/aliasrobotics/cai/blob/main/examples/agent_patterns/README.md) を参照してください。
### 🔹 ターンとインタラクション
エージェンティックフロー(会話)では、**interactions** と **turns** を区別します。
- **Interactions** は、1つまたは複数のエージェント間の逐次的なやり取りです。各エージェントがそのロジックを実行することは、1つの *interaction* に対応します。CAIの `Agent` は一般的に `ReACT` エージェントモデル[^3]を実装しているため、各 *interaction* は、1) LLM推論による推論ステップと、2) 0からn個の `Tools` を呼び出すアクションで構成されます。これは [core.py](https://github.com/aliasrobotics/cai/blob/HEAD/cai/core.py) の `process_interaction()` で定義されています。
- **Turns**: ターンは1つ以上の **interactions** のサイクルを表し、実行中の `Agent`(または `Pattern`)が `None` を返すと終了します。これは、これ以上実行すべきアクションがないと判断したことを意味します。これは `run()` で定義されており、[core.py](https://github.com/aliasrobotics/cai/blob/HEAD/cai/core.py) を参照してください。
> [!NOTE]
> CAIエージェントは、Assistants APIのAssistantsとは関連がありません。便宜上同様の名前が付けられていますが、それ以外はまったく無関係です。CAIはChat Completions APIによって完全に動作し、そのため呼び出し間でステートレスです。
### 🔹 トレーシング
CAIは、OpenTelemetry標準を採用することでAIの可観測性を実装しており、そのために [Phoenix](https://github.com/Arize-ai/phoenix) を活用しています。PhoenixはOpenTelemetryベースの計装を通じて包括的なトレーシング機能を提供し、セキュリティオペレーションをリアルタイムで監視・分析することを可能にします。この統合により、エージェントの相互作用、ツールの使用、および侵入テストワークフロー全体の攻撃ベクトルに対する詳細な可視性が実現され、複雑なエクスプロイトチェーンのデバッグ、脆弱性発見プロセスの追跡、より効果的なセキュリティ評価のためのエージェントパフォーマンスの最適化が容易になります。

### 🔹 ガードレール
`Guardrails` はCAIエージェントに重要なセキュリティ層を提供し、プロンプトインジェクション攻撃を防ぎ、危険なコマンドの実行を防止します。これらのガードレールはエージェントと並行して動作し、入出力の両方を検証して安全な運用を確保します。フレームワークには以下が含まれます:
- **入力ガードレール**: パターンマッチング、Unicodeホモグラフ検出、AI駆動分析を使用して、プロンプトインジェクションの試みをエージェントに到達する前に検出・ブロックします。
- **出力ガードレール**: エージェントの出力を実行前に検証し、リバースシェル、フォーク爆弾、データ抜き取りなどの危険なコマンドを防止します。
- **多層防御**: ツールレベルの検証により、入力、処理、実行の各段階で保護します。
- **Base64/Base32対応**: エンコードされたペイロードを自動的にデコード・分析し、隠れた悪意のあるコマンドを検出します。
- **設定可能**: `CAI_GUARDRAILS` 環境変数で有効/無効を切り替えられます。
詳細な実装については、[docs/guardrails.md](https://github.com/aliasrobotics/cai/blob/HEAD/docs/guardrails.md) および [docs/cai_prompt_injection.md](https://github.com/aliasrobotics/cai/blob/HEAD/docs/cai_prompt_injection.md) を参照してください。
### 🔹 Human-In-The-Loop (HITL)```
┌─────────────────────────────────┐
│ │
│ Cybersecurity AI (CAI) │
│ │
│ ┌─────────────────┐ │
│ │ Autonomous AI │ │
│ └────────┬────────┘ │
│ │ │
│ │ │
│ ┌────────▼─────────┐ │
│ │ HITL Interaction │ │
│ └────────┬─────────┘ │
│ │ │
└────────────────┼────────────────┘
│
│ Ctrl+C (cli.py)
│
┌───────────▼───────────┐
│ Human Operator(s) │
│ Expertise | Judgment │
│ Teleoperation │
└───────────────────────┘
```
CAIは、*半自律*運用を重視したサイバーセキュリティAI構築のためのフレームワークを提供します。現実には、**完全自律**型のサイバーセキュリティシステムは未だ未熟であり、複雑なタスクに取り組む際に大きな課題に直面しています。CAIは自律機能を探求する一方で、効果的なセキュリティ運用には、セキュリティプロセスにおける専門知識、判断、監視を提供する人間による遠隔操作が依然として必要であることを認識しています。
したがって、Human-In-The-Loop(`HITL`)モジュールはCAIの中核的な設計原則であり、責任あるセキュリティテストには人間の介入と遠隔操作が不可欠な要素であることを認識しています。`cli.py`インターフェースを通じて、ユーザーは実行中いつでも`Ctrl+C`を押すだけでエージェントとシームレスにやり取りできます。これは[core.py](https://github.com/aliasrobotics/cai/blob/HEAD/cai/core.py)およびREPL抽象化[REPL](https://github.com/aliasrobotics/cai/blob/HEAD/cai/repl)全体で実装されています。
## :rocket: クイックスタート
CAIをインストールした後、開始するにはCLIで`cai`と入力してください:```bash
└─# cai
CCCCCCCCCCCCC ++++++++ ++++++++ IIIIIIIIII
CCC::::::::::::C ++++++++++ ++++++++++ I::::::::I
CC:::::::::::::::C ++++++++++ ++++++++++ I::::::::I
C:::::CCCCCCCC::::C +++++++++ ++ +++++++++ II::::::II
C:::::C CCCCCC +++++++ +++++ +++++++ I::::I
C:::::C +++++ +++++++ +++++ I::::I
C:::::C ++++ ++++ I::::I
C:::::C ++ ++ I::::I
C:::::C + +++++++++++++++ + I::::I
C:::::C +++++++++++++++++++ I::::I
C:::::C +++++++++++++++++ I::::I
C:::::C CCCCCC +++++++++++++++ I::::I
C:::::CCCCCCCC::::C +++++++++++++ II::::::II
CC:::::::::::::::C +++++++++ I::::::::I
CCC::::::::::::C +++++ I::::::::I
CCCCCCCCCCCCC ++ IIIIIIIIII
Cybersecurity AI (CAI), vX.Y.Z
Bug bounty-ready AI
CAI>
```
CAIを初期化すると、実行したいセキュリティタスクのためのプロンプトが表示されます。下部のナビゲーションバーには重要なシステム情報が表示され、CAIを使用しながら環境を把握するのに役立ちます。
CAIを使い始めるためのクイック[デモビデオ](https://asciinema.org/a/zm7wS5DA2o0S9pu1Tb44pnlvy)をご覧ください。ツールの起動からターミナルで最初のAI駆動タスクを実行するまでの基本的な手順を説明します。初心者でも、興味があるだけでも、このガイドでCAIの使い方を簡単に学べます。
ここからは、`CAI`と入力してセキュリティ演習を開始してください。学ぶには実際の例が一番です。
### 環境変数
プライベートモデルを使用するために、[`.env.example`](https://github.com/aliasrobotics/cai/blob/HEAD/.env.example)ファイルが用意されています。これをコピーして`.env`にリネームし、対応するAPIキーを入力すれば、CAIを使用する準備が整います。
環境変数の一覧
| 変数 | 説明 |
|----------|-------------|
| CTF_NAME | 実行するCTFチャレンジの名前(例:"picoctf_static_flag") |
| CTF_CHALLENGE | CTF内でテストする特定のチャレンジ名 |
| CTF_SUBNET | CTFコンテナのネットワークサブネット |
| CTF_IP | CTFコンテナのIPアドレス |
| CTF_INSIDE | コンテナ内からCTFを攻略するかどうか |
| CAI_MODEL | エージェントに使用するモデル |
| CAI_DEBUG | デバッグ出力レベルを設定(0:ツール出力のみ、1:詳細デバッグ出力、2:CLIデバッグ出力) |
| CAI_BRIEF | 簡潔出力モードの有効/無効 |
| CAI_MAX_TURNS | エージェント相互作用の最大ターン数 |
| CAI_TRACING | OpenTelemetryトレーシングの有効/無効 |
| CAI_AGENT_TYPE | 使用するエージェントを指定(boot2root、one_tool...) |
| CAI_STATE | ステートフルモードの有効/無効 |
| CAI_MEMORY | メモリモードの有効/無効(episodic、semantic、all) |
| CAI_MEMORY_ONLINE | オンラインメモリモードの有効/無効 |
| CAI_MEMORY_OFFLINE | オフラインメモリの有効/無効 |
| CAI_ENV_CONTEXT | ディレクトリと現在の環境をLLMコンテキストに追加 |
| CAI_MEMORY_ONLINE_INTERVAL | オンラインメモリ更新間のターン数 |
| CAI_PRICE_LIMIT | 会話の価格制限(ドル単位) |
| CAI_REPORT | レポーターモードの有効/無効(ctf、nis2、pentesting) |
| CAI_SUPPORT_MODEL | サポートエージェントに使用するモデル |
| CAI_SUPPORT_INTERVAL | サポートエージェント実行間のターン数 |
| CAI_WORKSPACE | ワークスペースの名前を定義 |
| CAI_WORKSPACE_DIR | ワークスペースが配置されているディレクトリパスを指定 |
| CAI_GUARDRAILS | プロンプトインジェクション保護のためのガードレールの有効/無効(デフォルト:true) |
### OpenRouter統合
Cybersecurity AI (CAI) プラットフォームは、大規模言語モデル (LLM) のための統一インターフェースであるOpenRouterとのシームレスな統合を提供します。この統合は、高度なAI機能をサイバーセキュリティタスクで活用したいユーザーにとって重要です。OpenRouterはブリッジとして機能し、CAIがさまざまなLLMと通信できるようにし、CAI内で使用されるAIエージェントの柔軟性と能力を高めます。
CAIでOpenRouterサポートを有効にするには、`.env`ファイルに特定のエントリを追加して環境を設定する必要があります。この設定により、CAIがOpenRouter APIとやり取りし、Meta-LLaMAのような洗練されたモデルを使用できるようになります。設定方法は次のとおりです。```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=openrouter/meta-llama/llama-4-maverick
OPENROUTER_API_KEY=<sk-your-key> # note, add yours
OPENROUTER_API_BASE=https://openrouter.ai/api/v1
```
### Azure OpenAI
Cybersecurity AI(CAI)プラットフォームはAzure OpenAIとシームレスに統合し、組織がエンタープライズホスト型モデル(例:gpt-4o)上でCAIを実行できるようにします。この経路は、Azureのガバナンス内で運用しながら高度なモデル機能を活用する必要があるチームに最適です。
CAIでAzure OpenAIのサポートを有効にするには、環境を構成し、以下のエントリを`.env`に追加します。これにより、CAIがAzureのデプロイメントエンドポイントに到達し、正しく認証できるようになります。```bash
CAI_AGENT_TYPE=redteam_agent
CAI_MODEL=azure/<model-name-deployed>
# Required: keep non-empty even when using Azure
OPENAI_API_KEY=dummy
# Azure credentials and endpoint
AZURE_API_KEY=<your-azure-openai-key>
AZURE_API_BASE=https://<resource>.openai.azure.com/openai/deployments/<deployment-name>/chat/completions?api-version=2025-01-01-preview
```
### MCP
CAIは、外部ツールやサービスをAIエージェントと統合するためのModel Context Protocol (MCP)をサポートしています。MCPは2つのトランスポートメカニズムを介してサポートされています:
1. **SSE(サーバー送信イベント)** - HTTP接続を介して更新をプッシュするWebベースのサーバー向け:```bash
CAI>/mcp load http://localhost:9876/sse burp
```
2. **STDIO(標準入力/標準出力)** - ローカルなプロセス間通信のために:```bash
CAI>/mcp load stdio myserver python mcp_server.py
```
接続後、MCPツールを任意のエージェントに追加できます:```bash
CAI>/mcp add burp redteam_agent
Adding tools from MCP server 'burp' to agent 'Red Team Agent'...
Adding tools to Red Team Agent
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Tool ┃ Status ┃ Details ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ send_http_request │ Added │ Available as: send_http_request │
│ create_repeater_tab │ Added │ Available as: create_repeater_tab │
│ send_to_intruder │ Added │ Available as: send_to_intruder │
│ url_encode │ Added │ Available as: url_encode │
│ url_decode │ Added │ Available as: url_decode │
│ base64encode │ Added │ Available as: base64encode │
│ base64decode │ Added │ Available as: base64decode │
│ generate_random_string │ Added │ Available as: generate_random_string │
│ output_project_options │ Added │ Available as: output_project_options │
│ output_user_options │ Added │ Available as: output_user_options │
│ set_project_options │ Added │ Available as: set_project_options │
│ set_user_options │ Added │ Available as: set_user_options │
│ get_proxy_http_history │ Added │ Available as: get_proxy_http_history │
│ get_proxy_http_history_regex │ Added │ Available as: get_proxy_http_history_regex │
│ get_proxy_websocket_history │ Added │ Available as: get_proxy_websocket_history │
│ get_proxy_websocket_history_regex │ Added │ Available as: get_proxy_websocket_history_regex │
│ set_task_execution_engine_state │ Added │ Available as: set_task_execution_engine_state │
│ set_proxy_intercept_state │ Added │ Available as: set_proxy_intercept_state │
│ get_active_editor_contents │ Added │ Available as: get_active_editor_contents │
│ set_active_editor_contents │ Added │ Available as: set_active_editor_contents │
└───────────────────────────────────┴────────┴─────────────────────────────────────────────────┘
Added 20 tools from server 'burp' to agent 'Red Team Agent'.
CAI>/agent 13
CAI>Create a repeater tab
```
アクティブなMCP接続とそのトランスポートタイプを一覧表示できます:```bash
CAI>/mcp list
```
https://github.com/user-attachments/assets/386a1fd3-3469-4f84-9396-2a5236febe1f
## 開発
開発はVS Codeの開発環境を介して容易になります。開発環境を試すには、リポジトリをクローンし、VS Codeを開いて開発コンテナモードに入ってください:

### コントリビューション
このプロジェクトに貢献したい場合は、MRの前に[**Pre-commit**](https://pre-commit.com/)を使用してください。```bash
pip install pre-commit
pre-commit # files staged
pre-commit run --all-files # all files
```
### オプション要件: caiextensions
現在、これらの拡張機能は一般公開されていません。維持するためのエンジニアリングの取り組みが多大であるためです。代わりに、厳選されたカスタムcaiextensionsをパートナー企業に対してコラボレーションを通じて提供しています。
### :information_source: 使用データの収集
CAIは研究者に無料で提供されています。CAIの検出精度を向上させ、オープンセキュリティ研究を進め、将来のモデルを開発・訓練するために、使用データの収集を許可することでCAIコミュニティに貢献していただくようお願いしています。このデータは、改善すべき領域の特定、フレームワークの使用方法の理解、新機能の優先順位付け、モデルのトレーニングおよび評価の取り組みのサポートに役立ちます。
データ収集の法的根拠は、GDPR第6条1項(f) — セキュリティツールおよび研究の維持、改善、発展に対するCAIの正当な利益 — に基づき、研究目的には第89条の保護措置が適用されます。
収集されるデータには以下が含まれます:
- 基本システム情報(OSタイプ、Pythonバージョン)
- ユーザー名とIP情報
- ツールの使用パターンとパフォーマンス指標
- モデルインタラクションとトークン使用統計
私たちはお客様のプライバシーを真剣に考慮し、CAIの改善、研究のサポート、責任あるモデルのトレーニングと評価に必要なもののみを収集します。詳細については、research@aliasrobotics.comまでお問い合わせください。`CAI_TELEMETRY` 環境変数を使用していくつかのデータ収集機能を無効にすることもできますが、継続的な研究とモデル開発に貢献するために、有効のままにすることをお勧めします:```bash
CAI_TELEMETRY=False cai
```
### ローカルでCI-Setupを再現する
CI/CDパイプラインをシミュレートするには、GitLab Runner マシンで以下を実行します。```bash
docker run --rm -it \
--privileged \
--network=exploitflow_net \
--add-host="host.docker.internal:host-gateway" \
-v /cache:/cache \
-v /var/run/docker.sock:/var/run/docker.sock:rw \
registry.gitlab.com/aliasrobotics/alias_research/cai:latest bash
```
## FAQ
OLLAMAが404エラーを返す場合
OllamaのOpenAIモードのAPIは`/v1/chat/completions`を使用しますが、`openai`ライブラリは`base_url` + `/chat/completions`を使用します。
当プロジェクトでは、生成AIコミュニティ全体との整合性を優先して後者を採用し、ユーザーが自ら`v1`を追加できるようにすることで前者も利用可能にしています。方法:```bash
OLLAMA_API_BASE=http://IP:PORT/v1
```
以下の問題でこのトピックについてより詳細に扱っています:
- https://github.com/aliasrobotics/cai/issues/76
- https://github.com/aliasrobotics/cai/issues/83
- https://github.com/aliasrobotics/cai/issues/82
caiextensionsはすべてどこにありますか?
[すべてのcaiextensionsを見る](https://gitlab.com/aliasrobotics/alias_research/caiextensions)
report caiextensionのインストール方法は?
[こちらを参照](#optional-requirements-caiextensions)
GitlabのSSHアクセスを設定するにはどうすればいいですか?
新しいSSHキーを生成する```bash
ssh-keygen -t ed25519
```
SSHエージェントに鍵を追加する```bash
ssh-add ~/.ssh/id_ed25519
```
公開鍵をGitlabに追加してください
キーをコピーして、https://gitlab.com/-/user_settings/ssh_keys のGitlabに追加してください```bash
cat ~/.ssh/id_ed25519.pub
```
確認するには:```bash
ssh -T [email protected]
Welcome to GitLab, @vmayoral!
```
Pythonのキャッシュをクリアするには?```bash
find . -name "*.pyc" -delete && find . -name "__pycache__" -delete
```
ホストネットワーキングがollamaで動作しない場合は、Dockerでサインインしていないために無効になっていないか確認してください。
OS X上のDockerは時々おかしな動作をします。次のメッセージが表示されていないか確認してください。
*Host networking has been disabled because you are not signed in. Please sign in to enable it*.
この問題が対処されていること、またDev Containerが8000ポートを転送していないことを確認してください(必要に応じてポートセクションのxをクリック)。
接続を確認するには、VSCode devcontainer内から:```bash
curl -v http://host.docker.internal:8000/api/version
```
任意のターゲットに対してCAIを実行する
cai-004-first-message
この場合の最初のユーザープロンプトは: `Target IP: 192.168.3.10, perform a full network scan`。
エージェントはnmapスキャンを開始しました。エージェントと対話して追加の指示を与えることも、そのまま実行させて次に何を探索するかを見ることもできます。
エージェントと対話するにはどうすればいいですか? Ctrl + C を2回押してください
cai-005-ctrl-c
HITLモードを使用したい場合は、```Ctrl + C``` を2回押すことで実行できます。
これにより、いつでもエージェントと対話(プロンプト)できるようになります。エージェントは以前のコンテキストを失うことはありません。それは `history` 変数に保存されており、そのエージェントおよび呼び出される任意のエージェントに渡されます。これにより、どのエージェントも以前の情報を利用して、より正確かつ効率的に動作できます。
CAIの実行中にモデルを変更できますか? /model
```/model```を使用してモデルを変更します。
cai-007-model-change
利用可能なすべてのエージェントを一覧表示するには? /agent
```/agent```を使用して利用可能なすべてのエージェントを一覧表示します。
cai-010-agents-menu
すべての環境変数を一覧表示するには? /env
cai-008-config
トークンの使用量とコストを監視するには?
REPLで**`/cost`**を使用してセッションの支出とトークン統計を確認し、会話が長くなったら**`/compact`**を使用します。(**TUI**モードでは)UI内の端末ごとのコストとモデルインジケーターも利用できます。```bash
CAI> /cost
```
CLI コマンドリファレンスについては、[CLI commands reference](https://github.com/aliasrobotics/cai/blob/HEAD/docs/cli/commands_reference.md) をご覧ください。
CLI について詳しく知るには? /help
cai-006-help
実行全体をトレースするには?
環境変数 `CAI_TRACING` を使用すると、`CAI_TRACING=true` でトレースを有効にしたり、`CAI_TRACING=false` で無効にしたりできます。
CAI が初めて起動されたとき、ユーザーには実行ログとトレースログの 2 つのパスが提供されます。
cai-009-logs
以前の実行ログを使用して CAI の機能を拡張できますか?
はい。現在 CAI は、インコンテキスト学習 (In‑Context Learning, ICL) に依存することで最も優れたパフォーマンスを発揮します。長期保存を行う代わりに、推奨されるワークフローは、関連する過去のログを現在のセッションに直接ロードし、モデルがコンテキスト内でそれらを推論できるようにすることです。
`/load` コマンドを使用して JSONL ログを CAI のコンテキストに取り込みます(これはレガシーのメモリロードツールを置き換えます):```bash
CAI>/load logs/cai_20250408_111856.jsonl # Load into current agent
CAI>/load <file> agent <name> # Load into a specific agent
CAI>/load <file> all # Distribute across all agents
CAI>/load <file> parallel # Match to configured parallel agents
# Tip: if you omit <file>, /load uses `logs/last`. Alias: /l
```
CAIは起動時に、現在の実行のJSONLログへのパスを(オレンジ色で強調表示されて)表示します。これを `/load` に渡すことができます。
cai-009-logs
レガシーノート:以前の「メモリ拡張」メカニズム(エピソード的/意味的ストアおよびオフライン取り込み)は、参考のためにのみ保持されています。背景とレガシーの詳細については、[src/cai/agents/memory.py](https://github.com/aliasrobotics/cai/blob/HEAD/src/cai/agents/memory.py) を参照してください。現在の方向性は、永続メモリよりもICLを優先しています。
スクリプトや追加情報を使用してCAIの機能を拡張できますか?
現在、CAIはテキストベースの情報をサポートしています。対処しているターゲットに関する追加情報は、システムまたはユーザープロンプトに直接コピー&ペーストすることで追加できます。
**方法は?** システム ([`system_master_template.md`](https://github.com/aliasrobotics/cai/blob/HEAD/cai/repl/templates/system_master_template.md)) またはユーザープロンプト ([`user_master_template.md`](https://github.com/aliasrobotics/cai/blob/HEAD/cai/repl/templates/user_master_template.md)) に追加します。モデルへのパスを直接プロンプトに入力することもでき、モデルは ```cat``` でその内容を表示します。
CAIのライセンスはどのように機能しますか?
CAIの現在のライセンスは、研究目的での使用を制限していません。現地の法律に従う限り、セキュリティ評価(ペンテスト)のため、追加機能の開発のため、そして研究活動への統合のためにCAIを自由に使用できます。
もしあなたやあなたの組織がCAIから商業的に利益を得始めた場合(例:CAIを利用したペンテストサービスの提供)、プロジェクトを維持するために商用ライセンスが必要になります。
CAI自体は利益追求型のイニシアチブではありません。私たちの目標は持続可能なオープンソースプロジェクトを構築することです。CAIから利益を得る方には、貢献して私たちの継続的な開発を支援していただくようお願いしています。
Debianベースのシステムで前提条件をインストールする際に `Unable to locate package python3.12-venv` が表示されます!
最も簡単な回避方法は、[`python3.12`](https://www.python.org/downloads/release/python-3120/) をソースからインストールすることです。
## 引用
私たちの研究を引用したい場合は、以下を使用してください(公開日順):```bibtex
@article{mayoral2025cai,
title={CAI: An Open, Bug Bounty-Ready Cybersecurity AI},
author={Mayoral-Vilches, V{\'\i}ctor and Navarrete-Lozano, Luis Javier and Sanz-G{\'o}mez, Mar{\'\i}a and Espejo, Lidia Salas and Crespo-{\'A}lvarez, Marti{\~n}o and Oca-Gonzalez, Francisco and Balassone, Francesco and Glera-Pic{\'o}n, Alfonso and Ayucar-Carbajo, Unai and Ruiz-Alcalde, Jon Ander and Rass, Stefan and Pinzger, Martin and Gil-Uriarte, Endika},
journal={arXiv preprint arXiv:2504.06017},
year={2025}
}
@article{mayoral2025automation,
title={Cybersecurity AI: The Dangerous Gap Between Automation and Autonomy},
author={Mayoral-Vilches, V{\'\i}ctor},
journal={arXiv preprint arXiv:2506.23592},
year={2025}
}
@article{mayoral2025fluency,
title={CAI Fluency: A Framework for Cybersecurity AI Fluency},
author={Mayoral-Vilches, V{\'\i}ctor and Wachter, Jasmin and Chavez, Crist{\'o}bal RJ and Schachner, Cathrin and Navarrete-Lozano, Luis Javier and Sanz-G{\'o}mez, Mar{\'\i}a},
journal={arXiv preprint arXiv:2508.13588},
year={2025}
}
@article{mayoral2025hacking,
title={Cybersecurity AI: Hacking the AI Hackers via Prompt Injection},
author={Mayoral-Vilches, V{\'\i}ctor and Rynning, Per Mannermaa},
journal={arXiv preprint arXiv:2508.21669},
year={2025}
}
@article{mayoral2025humanoid,
title={Cybersecurity AI: Humanoid Robots as Attack Vectors},
author={Mayoral-Vilches, V{\'\i}ctor},
journal={arXiv preprint arXiv:2509.14139},
year={2025}
}
@article{balassone2025evaluation,
title={Cybersecurity AI: Evaluating Agentic Cybersecurity in Attack/Defense CTFs},
author={Balassone, Francesco and Mayoral-Vilches, V{\'\i}ctor and Rass, Stefan and Pinzger, Martin and Perrone, Gaetano and Romano, Simon Pietro and Schartner, Peter},
journal={arXiv preprint arXiv:2510.17521},
year={2025}
}
@article{mayoral2025caibench,
title={CAIBench: A Meta-Benchmark for Evaluating Cybersecurity AI Agents},
author={Mayoral-Vilches, V{\'\i}ctor and Balassone, Francesco and Navarrete-Lozano, Luis Javier and Sanz-G{\'o}mez, Mar{\'\i}a and Crespo-{\'A}lvarez, Marti{\~n}o and Rass, Stefan and Pinzger, Martin},
journal={arXiv preprint arXiv:2510.24317},
year={2025}
}
```
## 謝辞
CAIは当初[Alias Robotics](https://aliasrobotics.com)によって開発され、欧州EICアクセラレータープロジェクトRIS(助成金契約番号101161136)- HORIZON-EIC-2023-ACCELERATOR-01の共同資金提供を受けています。元のエージェント原理はOpenAIの[`swarm`](https://github.com/openai/swarm)ライブラリに触発され、新しいプロトタイプに翻訳されました。このプロジェクトはまた、[`LiteLLM`](https://github.com/BerriAI/litellm)や[`phoenix`](https://github.com/Arize-ai/phoenix)などの関連するオープンソースの構成要素も利用しています。
### 学術的協力
CAIは学術機関との継続的な研究協力の恩恵を受けています。共同プロジェクト、データセットへのアクセス、または学術ライセンスに関心のある研究者は、[email protected]までご連絡ください。以下の分野に対して特別なサポートを提供しています:
- 博士研究プロジェクト
- 学術ベンチマーク研究
- セキュリティ教育イニシアチブ
- 研究ラボからのオープンソース貢献
[^1]: https://raw.githubusercontent.com/aliasrobotics/cai/HEAD/%E3%81%8A%E3%81%9D%E3%82%89%E3%81%8F%E3%80%81Chain-of-Thought%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E3%81%AF%E9%9A%8E%E5%B1%A4%E7%9A%84%E3%82%A8%E3%83%BC%E3%82%B8%E3%82%A7%E3%83%B3%E3%83%88%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E3%81%AE%E7%89%B9%E6%AE%8A%E3%82%B1%E3%83%BC%E3%82%B9%E3%81%A7%E3%81%99%E3%80%82
[^2]: Kamhoua, C. A., Leslie, N. O., & Weisman, M. J. (2018). Game theoretic modeling of advanced persistent threat in internet of things. Journal of Cyber Security and Information Systems.
[^3]: Yao, S., Zhao, J., Yu, D., Du, N., Shafran, I., Narasimhan, K., & Cao, Y. (2023, January). React: Synergizing reasoning and acting in language models. In International Conference on Learning Representations (ICLR).
[^4]: Deng, G., Liu, Y., Mayoral-Vilches, V., Liu, P., Li, Y., Xu, Y., ... & Rass, S. (2024). {PentestGPT}: Evaluating and harnessing large language models for automated penetration testing. In 33rd USENIX Security Symposium (USENIX Security 24) (pp. 847-864).