DisarmBot
disarmBot is a bot that uses the AG2 framework to automatically create multiple LLM Agents, discuss about disinformation, and respond to users.
Install / Use
/learn @ultra-supara/DisarmBotREADME
disarmBot
Join our LLM AgentBot Discord Community !!
<img width="861" alt="Image" src="https://github.com/user-attachments/assets/3ade408b-aa5d-4216-8b1c-6ec69e985838" />Abstract
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.
<img width="1166" alt="Image" src="https://github.com/user-attachments/assets/4401a4ce-1148-4045-bea5-0c92d1591986" />Demonstration Movie
Presentation
[JSAC 2025 LT] Introduction to MITRE ATT&CK utilization tools by multiple LLM agents and RAG
<div id="top"></div>what is aim for?
disarmBot is a bot that can be deployed on Discord. Multiple LLM agents (mainly 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, defender, searchTheInternet, user, skeptics, solution architect, OSINT Specialist ,detective, clown and TheGeniusOfReasoning. 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.
【Image of 5+ AI Agents】
<img width="1092" height="621" alt="Image" src="https://github.com/user-attachments/assets/c4562564-1849-4869-ac32-44ba3f876b48" />【Image of Group Chat in AG2】
<img width="1092" height="621" alt="Image" src="https://github.com/user-attachments/assets/255adff6-96a2-414d-b74b-e673abdf4a59" />使用技術
<!-- シールド一覧 --> <!-- 該当するプロジェクトの中から任意のものを選ぶ--> <p style="display: inline"> <!-- バックエンドの言語一覧 --> <img src="https://img.shields.io/badge/-Python-F2C63C.svg?logo=python&style=for-the-badge"> </p>目次
- [File_Structure](#File Structure)
- [Installation_Method](#Installation Method)
- Preparation
- [Set_environment_variables](#Set environment variables)
- Troubleshooting
- [Special_Thanks!](#Special Thanks!)
File Structure
Project File Structure
.
├── README.md
├── bot.py # disarm bot program
├── bot_ui_template.json # bot ui template
└── generated_pages # DISARM Frameworksのデータ
├── actortypes
├── counters
├── detections_index.md
├── disarm_blue_framework.md
├── others...
Installation Method
-
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.py ja # japanese version of disarm bot program dotenv run python3 bot.py en # english version of disarm bot program dotenv run python3 bot.py ch # chinese version of disarm bot program -
Confirm that it works on Discord.
On Discord, type/discuss msgcommand and type your message in msg. Check if a thread is automatically created and the bot starts a conversation.
Preparation
-
Create an environment variable file (.env).
Create a.envfile 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
---``
Set environment variables
| 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 |
Troubleshooting
.env file not found error
If the .env file does not exist, please create a file by referring to “[Set Environment Variables](#set environment variables)” above.
Other problems
- 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.txtis up-to-date and runpip install -r requirements.txtagain.
Special Thanks!
Check out more projects built with AG2 at Build with AG2!
<p align="right">(<a href="#top">top</a>)</p>Related Skills
node-connect
354.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
112.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
354.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
354.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。

