Join our LLM AgentBot Discord Community !!

disarmBot is a bot that uses AG2 (Formerly AutoGen), an OSS AI agent framework to create multiple AI Agents , automatically generate arguments about false information based on MITRE ATT&CK strategies drawn from RAG technology, and then return conclusions to the user. The bot automatically generates arguments about disinformation based on the MITRE ATT&CK strategy drawn from RAG technology and returns conclusions to the user.
Japanese, English, and Chinese are supported.
The framework for countermeasures against disinformation, the DISARM Disinformation TTP Framework ,which is a framework for countermeasures against disinformation.

[JSAC 2025 LT] Introduction to MITRE ATT&CK utilization tools by multiple LLM agents and RAG
disarmBot is a bot that can be deployed on Discord. Multiple LLM agents (GPT-4) are automatically launched and respond when a user enters a command. It is also based on the DISARM (Disinformation Analysis and Response Measures) TTP Frameworks, and DISARM is based on MITRE ATT&CK, the “theory” of CTI. In other words, these are measures for practical CTI utilization by LLM from theory to public assistance.
LLM agents, who have learned several different tactics, cooperate with each other and work together to develop a tactical and technical dialogue based on the disinformation framework from the perspective of an attacker_assistant, defender_assistant, user, skeptics, solution architect, and OSINT Specialist. Tactical and technical dialogues based on the disinformation framework will be conducted. Through the dialogues, agents discuss and deepen information with each other. disarmBot fulfills these requirements and provides an information environment that allows users to be exposed to a variety of opinions. This allows users to think for themselves and enhance their critical ability to digest information. Even if the assumed users' requirements are different positions and levels of abstraction, it is possible to optimize them individually and provide high-quality intelligence that meets the 4A (Accurate, Audience Focused, Actionable, and Adequate Timing) conditions in a proactive manner by breaking free from a defensive mindset. The 4As (Accurate, Audience Focused, Actionable, Adequate Timing) and can be provided in a proactive manner.
【Image of 5 AI Agents】

【Image of Group Chat in AutoGen】

- [Operating_Environment](#Operating Environment)
- [File_Structure](#File Structure)
- [Installation_Method](#Installation Method)
- Preparation
- [Set_environment_variables](#Set environment variables)
- Troubleshooting
- [Special_Thanks!](#Special Thanks!)
Software | version |
---|---|
Python | 3.12.7 |
autogen | 0.7.3 |
Project File Structure
.
├── README.md
├── bot.py # Japanese version of disarm bot program
├── bot_en.py # English version of disarm bot program
├── bot_ch.py # China version of disarm bot program
├── extract.py # data processing script
└── generated_pages # DISARM Frameworksのデータ
├── actortypes
├── counters
├── detections_index.md
├── disarm_blue_framework.md
├── others...
10 directories, 33 files
-
Create a virtual environment.
Create a virtual environment with the following commandpython3 -m venv .venv
-
Activate the virtual environment.
Activate the virtual environment.-
Bash:
source ./.venv/bin/activate
-
Fish:
. ./.venv/bin/activate.fish
-
-
Install Dependent Packages.
Install the required packages.pip install -r requirements.txt
-
Get the OpenAI API (GPT-4) or azure API API keys - OpenAI API
-
Run it. Choose Japanese, English or Chinese version and run it.
dotenv run python3 bot_en.py
-
Confirm that it works on Discord.
On Discord, type/discuss msg
command and type your message in msg. Check if a thread is automatically created and the bot starts a conversation.
-
Create an environment variable file (.env).
Create a.env
file in the project folder and describe it as follows (for details, see [Setting Environment Variables](#Environment Variables)). When using OpenAI's APIOPENAI_API_KEY=xxxxxxx DISCORD_TOKEN=xxxxxxx BASE_URL=https://xxxxxxxx.openai.azure.com/ DEPLOYMENT= MODEL=gpt-4o-mini VERSION=2024-08-01-preview api_type=openai AUTOGEN_USE_DOCKER=0
---``
Environment variable name | Description | How to get it |
---|---|---|
OPENAI_API_KEY | API key for Azure Open AI | Azure Open AI Studio |
DISCORD_TOKEN | Bot Token for Discord | Discord Developer Portal |
BASE_URL | Azure endpoint URL | Develop tab of Azure Open AI |
If the .env
file does not exist, please create a file by referring to “[Set Environment Variables](#set environment variables)” above.
- Virtual environment does not start: Please check if the virtual environment is created correctly and recheck the path.
- Dependent package installation error: Please check if
requirements.txt
is up-to-date and runpip install -r requirements.txt
again.
Check out more projects built with AG2 at Build with AG2!
(top)