IDE 管理是一个 AstrBot 插件,为 LLM 提供隔离沙盒里的文件管理、代码编辑、命令执行、任务记录和 WebUI 管理能力。它适合让机器人在群聊或私聊里辅助写脚本、查看项目文件、运行受限命令,并让管理员在 AstrBot Dashboard 里实时查看沙盒状态。
- 群聊和私聊独立沙盒,文件默认限制在
data/astrbot_plugin_ide_sandbox/sandboxes/{sandbox_id}/。 - 35 个 LLM 工具:有界批量读取、版本观察/CAS 写入、精确编辑、安全移动、递归 Glob/搜索、命令与后台任务、测试、GitHub 克隆、群文件和待办事项。
- WebUI 页面:总览全部沙盒、查看文件树、编辑文本文件、查看工具活动、查看任务和待办。
- 权限分级:主人、沙盒管理员、文件管理员、命令管理员、群管理员、普通成员。
- 安全限制:完整 Pydantic JSON Schema、未知参数拒绝、文件版本观察/CAS、命令白名单与黑名单、敏感路径保护、配额、超时、输出截断和进程树回收。
- 网络代理:可统一配置 v2rayN、Clash 等 HTTP/Mixed 代理,自动应用于命令、测试、Git、pip/npm/curl 和远程文件下载。
- 群文件互通:可列出、下载和上传群文件,适合把群友发来的项目文件放进沙盒处理。
把仓库放到 AstrBot 的插件目录:
cd AstrBot/data/plugins
git clone https://github.com/sdfsfsk/astrbot_plugin_ide_sandbox.git安装依赖:
pip install -r AstrBot/data/plugins/astrbot_plugin_ide_sandbox/requirements.txt然后重启 AstrBot,并在插件配置里设置主人 QQ、管理员和需要开启的能力。
| 命令 | 说明 |
|---|---|
ide / ide帮助 |
查看插件帮助和当前沙盒状态 |
ide列表 / 沙盒列表 |
列出当前沙盒文件 |
ide清空 / 清空沙盒 |
预览清空当前沙盒,确认后才删除 |
ide权限 |
查看自己的沙盒权限 |
ide添加管理员 |
添加沙盒管理员 |
ide删除管理员 |
删除沙盒管理员 |
插件提供 ide-dashboard 页面入口。开启方式:
- 在插件配置中启用
ide_sandbox_webui_enabled。 - 在
ide_sandbox_webui_allowed_users填入允许访问的 AstrBot Dashboard 用户名。 - 回到 AstrBot 插件卡片,点击打开插件 UI 页面。
WebUI 可以查看全部沙盒总览、当前沙盒文件、工具活动记录、任务记录和待办事项。默认不会向未授权 Dashboard 用户开放。
重要配置项:
| 配置 | 说明 |
|---|---|
master_qq |
机器人主人 QQ,拥有最高权限 |
ide_sandbox_admins |
沙盒管理员,拥有完整文件和命令权限 |
ide_sandbox_terminal_admins |
文件管理员,仅文件操作最高权限 |
ide_sandbox_cmd_admins |
命令管理员,可绕过命令白名单,但仍受基础黑名单保护 |
ide_sandbox_allow_members |
是否允许普通群成员使用 AI IDE 沙盒工具 |
ide_sandbox_allow_execution |
是否允许 LLM 执行命令 |
ide_sandbox_allow_test |
是否允许 LLM 运行 pytest/unittest |
ide_sandbox_allow_git_clone |
是否允许 LLM 克隆 GitHub 仓库 |
ide_sandbox_network_proxy |
v2rayN/Clash HTTP 或 Mixed 代理,例如 http://127.0.0.1:10808 |
ide_sandbox_proxy_bypass |
保持直连的地址,默认 127.0.0.1,localhost,::1 |
ide_sandbox_command_approval_mode |
命令批准模式:all、elevated 或 off |
ide_sandbox_quota_mb / ide_sandbox_global_quota_mb |
单沙盒与全局存储配额 |
ide_sandbox_cover_only_mode |
仅翻唱联动模式,会关闭写入、删除、命令执行等高风险能力 |
ide_sandbox_admins_can_bypass |
高危开关,允许管理员绕过沙盒路径和命令白名单限制 |
建议先保持命令执行、测试运行、Git 克隆和管理员绕过关闭,只在可信群聊中按需开启。插件提供的是路径与权限隔离,不是操作系统容器;获准执行解释器或构建脚本的用户实质上拥有 AstrBot 系统账号权限。
在配置中填写 ide_sandbox_network_proxy=http://127.0.0.1:10808 即可使用常见 Mixed/HTTP 端口。插件会注入大小写 HTTP_PROXY、HTTPS_PROXY、ALL_PROXY 与 NO_PROXY;代理 URL 不允许携带账号密码、路径、query 或 fragment。发送 /ide 可查看当前代理状态。
发布包默认不包含内部测试目录。修改源码后可以先做语法检查:
python -m py_compile base.py command_tools.py events.py file_tools.py git_tools.py group_files.py main.py security.py tool_models.py web_api.py workflow_tools.py当前版本:1.9.1
MIT