通用型 Revit 命令插件集,为 Copilot For Revit 框架提供开箱即用的原子化命令能力。
本仓库是 Copilot For Revit 生态的一部分:
| 仓库 | 定位 | 说明 |
|---|---|---|
| copilot-for-revit | 主框架 | AI 驱动 Revit 的核心平台,支持 MCP 协议。负责插件加载、命令调度、与 AI 对话工具(Cline、Claude、Cherry Studio 等)通信。需先安装此框架才能使用插件。 |
| copilot-addins-for-revit | 开发模板 | AI 友好的插件开发脚手架。提供项目模板、开发规范、最佳实践,帮助开发者快速创建符合框架标准的命令插件。适合想要开发自定义命令的用户。 |
| 本仓库 | 通用插件 | 提供现成的常用命令,覆盖元素查询、参数修改、标注创建、视图管理等高频场景。开箱即用,可直接安装到框架中。适合普通用户和快速上手。 |
| openclaw-bridge | OpenClaw 桥接器 | 连接 OpenClaw 和 Copilot for Revit 的 CLI 工具,支持健康检查、工具发现、命令执行。 |
| copilot-for-revit-skill | OpenClaw Skill | OpenClaw skill 包,安装后可在聊天工具中直接操作 Revit。 |
快速选择指南:
- 想用 AI 控制 Revit → 安装主框架 + 本插件
- 想开发自己的命令 → 使用开发模板
- 想直接用现成功能 → 安装本插件(你正在看的这个)
本仓库包含 4 个独立项目,每个项目对应一类功能领域:
| 命令 | 功能 |
|---|---|
RetrieveElementCommand |
按条件查询元素,支持类别、属性、参数等多维度筛选 |
SelectElementCommand |
根据元素 ID 列表在 Revit 中选中元素 |
DeleteElementCommand |
批量删除指定元素 |
ConvertSelectionToIdCommand |
获取用户当前选择的元素 ID |
RetrieveParameterCommand |
提取元素的指定参数值 |
UpdateParameterCommand |
批量修改元素参数 |
| 命令 | 功能 |
|---|---|
TagRoomCommand |
批量创建房间标记 |
TagDoorCommand |
批量创建门标记 |
TagWindowCommand |
批量创建窗标记 |
TagBeamCommand |
批量创建梁标记 |
TagMaterialCommand |
批量创建材质标记 |
TagMultiCategoryCommand |
批量创建多类别标记 |
TagSpotElevationInPlanViewCommand |
在平面视图中创建标高点 |
GenerateSheetCommand |
生成图纸并放置视图 |
| 命令 | 功能 |
|---|---|
SwitchViewCommand |
切换到指定视图 |
CopyViewCommand |
复制视图(支持三种复制模式) |
SetViewCroppingCommand |
设置视图裁剪区域 |
| 命令 | 功能 |
|---|---|
GetEnvInfoCommand |
获取 Revit 环境信息 |
GetDocResourcesCommand |
获取文档资源列表 |
PrintPDFCommand |
打印为 PDF |
所有命令遵循 面向 AI 的设计原则:
- 无界面:通过 JSON 参数传递输入,不依赖弹窗或对话框
- 无状态:每次调用独立,不依赖上下文缓存
- 单次交互:所有输入在调用时一次性传入,确保命令可完整执行
- 原子化:每个命令职责单一,可被 AI 灵活组合编排
- 已安装 Copilot For Revit 框架
- 已安装 Revit 2019 - 2024
- Windows 环境
-
克隆仓库:
git clone https://github.com/ryanchan720/general-copilot-addins-for-revit.git cd general-copilot-addins-for-revit -
打开
GeneralCopilotAddins.slnx -
执行 NuGet 包还原
-
添加 Revit API 引用(每个项目都需要):
C:\Program Files\Autodesk\Revit 2019\RevitAPI.dllC:\Program Files\Autodesk\Revit 2019\RevitAPIUI.dll
-
选择
Release | Any CPU配置编译
将编译输出的项目文件夹复制到框架插件目录:
%ProgramData%\RevitCopilot\RevitAddinPlatform\Addins\
文件夹结构示例:
Addins/
├── Copilot.ElementCRUD/
│ ├── Copilot.ElementCRUD.dll
│ ├── README.md
│ └── (其他依赖)
├── Copilot.Annotations/
│ ├── Copilot.Annotations.dll
│ ├── README.md
│ └── (其他依赖)
└── ...
框架会在启动时自动识别并注册所有命令。
通过 MCP 客户端(如 Cline、Cherry Studio、Claude)发起命令调用,框架会按名称匹配并执行。
示例对话:
用户:帮我找出所有高度小于 2.4 米的墙
AI:我来调用 RetrieveElementCommand 查询...
[执行命令,返回符合条件的墙 ID 列表]
用户:把这些墙的高度都改成 2.7 米
AI:我来调用 UpdateParameterCommand 更新参数...
[执行命令,批量修改墙高度]
每个命令的详细参数说明见各项目的 README.md。
| 项目 | 目标框架 | 额外依赖 |
|---|---|---|
| Copilot.ElementCRUD | .NET Framework 4.7 | - |
| Copilot.Annotations | .NET Framework 4.7 | - |
| Copilot.View | .NET Framework 4.7 | - |
| Copilot.GeneralUtils | .NET Framework 4.7 | - |
如需开发自定义命令,建议使用 copilot-addins-for-revit 模板,它提供了完整的开发脚手架和最佳实践指南。
MIT License - 详见 LICENSE.txt