SkillAgentSearch skills...

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/DisarmBot
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

disarmBot

Image

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

YouTube Video

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>

目次

  1. [File_Structure](#File Structure)
  2. [Installation_Method](#Installation Method)
  3. Preparation
  4. [Set_environment_variables](#Set environment variables)
  5. Troubleshooting
  6. [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

  1. Create a virtual environment.
    Create a virtual environment with the following command

    python3 -m venv .venv
    
  2. Activate the virtual environment.
    Activate the virtual environment.

    • Bash:

      source ./.venv/bin/activate
      
    • Fish:

      . ./.venv/bin/activate.fish
      
  3. Install Dependent Packages.
    Install the required packages.

    pip install -r requirements.txt
    
  4. Get the OpenAI API (GPT-4) or azure API API keys - OpenAI API

  5. 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
    
  6. 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.


Preparation

  1. 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 API

    OPENAI_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.txt is up-to-date and run pip install -r requirements.txt again.

Special Thanks!

Check out more projects built with AG2 at Build with AG2!

<p align="right">(<a href="#top">top</a>)</p>

Related Skills

View on GitHub
GitHub Stars20
CategoryDevelopment
Updated1mo ago
Forks0

Languages

Python

Security Score

75/100

Audited on Feb 26, 2026

No findings