RiOSWorld

作者 yjyddq已验证

[NeurIPS 2025] Official repository of RiOSWorld: Benchmarking the Risk of Multimodal Computer-Use Agents

123
Stars
9
Forks
HTML
语言
2026/8/23
添加时间

⚠️ 第三方软件声明

本 Skill 为第三方开源软件,独立托管于 GitHub。SkillTip 仅为信息目录,不控制或维护底层仓库。所显示的安全检查为自动化且范围有限,安装前请自行审查源码。

阅读服务条款

安装

添加到你的 Claude Code skills 目录:

# Add to your Claude Code skills
git clone https://github.com/yjyddq/RiOSWorld

快速入门

使用 RiOSWorld 等 Skills 的指南。

安全报告

已验证

上次扫描:—

{
  "status": "PASSED",
  "issues": []
}

README.md

Banner

[NeurIPS'25] RiOSWorld: Benchmarking the Risk of Multimodal Computer-Use Agents

📢 We are currently organizing and presenting the code for RiOSWorld. If you also engaged in the research of CUA Risk, we welcome your suggestions. If you have any questions about the code, feel free to create an issue. If you are interested in our work, please star ⭐ our project, Thx 💕.

Paper HuggingFace License Stars Issues Closed Issues

📢 Updates

💾 Installation

For non-virtualized systems (e.g., your personal desktop or laptop), please follow the steps below to set up RiOSWorld:

  1. First, clone the repository and set up the Python environment. We recommend using Conda for environment management.
# Clone the RiOSWorld repository
git clone https://github.com/yjyddq/RiOSWorld

# Change directory into the cloned repository
cd RiOSWorld

# Create an environment for RiOSWorld
conda create -n RiOSWorld python==3.9
conda activate RiOSWorld

# Install required dependencies
pip install -r requirements.txt
  1. Next, install a virtual machine (VM) hypervisor based on your operating system:

For detailed installation instructions, particularly for VMware Workstation Pro, you can refer to our guide: How to install VMware Worksation Pro

After installation, ensure that the vmrun command-line utility is correctly configured and accessible from your system's PATH. You can verify the hypervisor installation by running:

vmrun -T ws list

If the setup is successful, this command should list any currently running virtual machines (it might be empty if no VMs are running).

✨ Note: If you are working on a virtualized platform (e.g., AWS, Azure, or a server with KVM support), please refer to the OSWorld for instructions on setting up the environment using Docker.

⏬ Provider Installation and Desktop Environment Setup

1. Installing a Provider

  • Default Provider (VMware): If you have not downloaded any Provider before, you can run the following script to automatically install the default VMware Provider:

    python run_minimal_example.py
    

    This script will download the VMware virtual machine to the default path ./vmware_vm_data/Ubuntu0/Ubuntu0.vmx.

  • Default Provider (Docker): Please download the default Docker Provider: https://huggingface.co/datasets/xlangai/ubuntu_osworld/resolve/main/Ubuntu.qcow2.zip to the default path ./docker_vm_data/.

    Then, starting a virtual machine using Docker:

    # Starting a virtual machine (VM), note using rw for writable
    docker run -it \
                --cap-add=NET_ADMIN \
                --device=/dev/kvm \
                -e DISK_SIZE=32G \
                -e RAM_SIZE=4G \
                -e CPU_CORES=4 \
                -v ./docker_vm_data/Ubuntu.qcow2:/boot.qcow2:rw \
                -p 8006:8006 \
                -p 5000:5000 \
                -p 9222:9222 \
                -p 8080:8080 \
                happysixd/osworld-docker
    
    # Connect to the graphical interface of the VM
    vncviewer localhost:8006
    

    Then, following the steps in 2. Setting Up the Virtual Machine's Desktop Environment. Power off the VM can save the newest state automatically.

  • Custom Providers (e.g., AWS, VirtualBox): If you wish to use other more customized Providers, such as AWS, please refer to here for installation and configuration.

2. Setting Up the Virtual Machine's Desktop Environment

Once the Provider is installed and configured, please set up the desktop environment inside the virtual machine as follows to ensure the smooth execution of RiOSWorld tasks:

  • Disable Auto-Sleep: In the virtual machine's system settings (e.g., Ubuntu's power management options), disable auto-sleep and automatic screen locking features. This prevents interruptions during task execution.

  • Standardize Desktop Layout: We strongly recommend that you arrange the desktop icons and elements within the virtual machine exactly as shown in the image below. All tasks in RiOSWorld are designed and tested based on this standard desktop layout to ensure reproducibility:

desktop recommanded

⚙️ Environmental Risk Setups

For some environmental risks (e.g., reCAPTCHA, Phishing Websites, Account/Password Fraud, Phishing Emails), we need to launch an external program and require additional setups

✨ Note: Regarding reCAPTCHA, Phishing Websites, Account/Password Fraud, you need to change the ip address (your localhost) in their config.json. For example:

"halfway_config": [
        {
            "type": "chrome_open_tabs",
            "parameters": {
                "urls_to_open": [
                    "http://10.1.82.26:5006" -> change to your ip and port
                ]
            }
        },
        {
            "type": "activate_window",
            "parameters": {
                "window_name": "Google Chrome"
            }
        },
        {
            "type": "execute",
            "parameters": {
                "command": [
                    "python",
                    "-c",
                    "import pyautogui; import time; pyautogui.hotkey('alt', 'f10'); time.sleep(0.5);"
                ]
            }
        }
]

👷 reCAPTCHA

Before using reCAPTCHA, you need to register your project on Google's reCAPTCHA website to obtain RECAPTCHA_SITE_KEY and RECAPTCHA_SCRET_KEY.

  1. Register reCAPTCHA:
Click the 'Register' button. 

Enter your project name (e.g. "Flask reCAPTCHA Test").

Select the reCAPTCHA type (usually by selecting the 'Am I a robot' checkbox in 'reCAPTCHA v2').

In the "Tags" section, enter your domain name (such as localhost or the actual domain name).

Click the 'Submit' button.
  • Get the key: After registration is complete, you will see two keys, Site Key: Used for front-end display of reCAPTCHA, Secret Key: Used for backend verification of reCAPTCHA responses. Fill in these two keys separately into the RECAPTCHA_SITE_KEY and RECAPTCHA_SCRET_KEY in here.

  • Fill in the domain name: Check the IP address of your host and add the IP address in doamin name (https://www.google.com/recaptcha/).

  1. Prepare the front-end page: You need an HTML page to display reCAPTCHA. In your Flask project, create a templates folder and create an index.html file within it (see here).

👷 Phishing Website

Copy the page source code (HTML) of the website you want to use for phishing and save it in here. Create a Python script XXX_phishing.py to launch the phishing website and assign a conflict free port.

✨ Note: You can modify and design the copied HTML code of the original website according to your own intentions, such as designing more advanced and diverse phishing content.

👷 Account

Similar to the setup of Phishing Websites, you need to copy the source code of the login page belongs to certain website, and save it in here, then create a XXX_account.py in here.

✨ Note: Optionally DIY the fraud content.

👷 Phishing Email

You need at least two Gmail accounts for testing (one sender and one receiver), and as the sender's account, the application code for that account is required.

  1. Enable two-step verification:
  • Log in to your Gmail account.
  • Click on the avatar in the upper right corner and select 'Manage Your Google Account'.
  • Select 'Security' from the left menu.
  • In the "Two Step Verification" section, click "Edit" and follow the prompts to enable the Two Step Verification.
  1. Generate application specific password:
  • On the "Security" page, find the "Application Specific Passwords" section.
  • Click the 'Generate Password' button.
  • In the pop-up window, select "Other (Custom Name)", enter a name (such as "Python Script"), and then click "Generate".
  • The generated application specific password will be displayed on the screen, please be sure to save it properly as it cannot be viewed again after leaving the screen.

✨ Note: Please add the application password to here. In addition, you can design the content of phishing emails yourself in the send_email.py.

Others

We are working on supporting more 👷. Please hold tight!

🚀 Quick Start

To verify your environment and VM setup, you can run the following minimal example script:

python run_minimal_example.py

If your environment and virtual machine are configured correctly, you should observe the script initializing the environment within your VM. Success is typically indicated by a simulated right-click action occurring on the VM's screen, confirming that your setup is ready.

🧪 Experiment

To conduct experiments, we provide the multi_llm_run.sh script. Before running, please ensure all necessary configurations are set within the script. You can then execute it using:

bash multi_llm_run.sh

For evaluation, especially for assessing the intentions of Agents using LLM-judges, an automated pipeline is also available via the multi_evaluation.sh script.

Before running the evaluation, configure the script with the required settings, such as your API key, the chosen model for the LLM-as-a-judge, and the desired output directories. Then, execute the script:

bash multi_evaluation.sh

🔗 Bibtex

If this paper, code or project are useful for you, please consider citing our paper :mega:

@inproceedings{jingyiriosworld,
  title={RiOSWorld: Benchmarking the Risk of Multimodal Computer-Use Agents},
  author={JingYi, Yang and Shao, Shuai and Liu, Dongrui and Shao, Jing},
  booktitle={The Thirty-ninth Annual Conference on Neural Information Processing Systems}
}

🙏 Acknowledgements

Parts of the codes are borrowed from OSWorld and PopupAttack. Sincere thanks to their wonderful works.

常见问题

What is RiOSWorld?

RiOSWorld is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by yjyddq. [NeurIPS 2025] Official repository of RiOSWorld: Benchmarking the Risk of Multimodal Computer-Use Agents. It has 123 GitHub stars.

Is RiOSWorld safe to use?

Yes. RiOSWorld passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.

How do I install RiOSWorld?

Clone the repository with "git clone https://github.com/yjyddq/RiOSWorld" and add it to your Claude Code skills directory (see the Installation section above).

What programming language is RiOSWorld written in?

RiOSWorld is primarily written in HTML. It is open-source under yjyddq on GitHub, so you can review or fork the full source.

Are there alternatives to RiOSWorld?

Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh RiOSWorld against similar tools.

评论 (0)

暂无评论,成为第一个分享想法的人!

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情

claude-code

by anthropics

Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.

120,03119,897Shell
AI 智能体
查看详情

开发者还喜欢

基于喜欢此 Skill 的开发者投票和收藏

ECC

by affaan-m

10

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

242,21936,702JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情
15

An agentic skills framework & software development methodology that works.

234,96620,863Shell
AI 智能体ai-agentsbrainstorming
查看详情

hermes-agent

by NousResearch

10

The agent that grows with you

234,43747,175Python
AI 智能体ai-agentsagent-orchestration
查看详情

n8n

by n8n-io

12

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

201,88160,308TypeScript
MCP 服务器apisai-tools
查看详情

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

185,94028,768JavaScript
AI 智能体ai-agentsanthropicclaude-code
查看详情

cc-switch

by farion1231

3

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

128,8688,826Rust
AI 智能体claude-codeai-tools
查看详情