hopesy/skills · Archived

revit-api

Revit 2026 API 文档查询与参考。当用户询问 Revit API 类、方法、属性、枚举用法,查找 Revit 开发相?

First seen Feb 7, 2026

Installation

$ npx skills add hopesy/skills --skill revit-api

Summary

Revit 2026 API 文档查询与参考。当用户询问 Revit API 类、方法、属性、枚举用法,查找 Revit 开发相关 API,或需要确认 API 签名和参数时触发。覆盖场景:(1) 查询特定类/接口的成员和用法 (2) 搜索实现某功能需要的 API (3) 查看方法签名和参数说明 (4)…

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Also in this package

Other skills from hopesy/skills.

npx skills add hopesy/skills

Browse all from hopesy/skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License MIT
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.1.1
LicenseMIT
More metadata
author
hopesy
version
1.1.1

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 8,629 B
  • docs SUMMARY.md 916 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 64 installs

SKILL.md

Revit 2026 API 参考

基于 RevitAPI.dll v26.0.4.0 的完整 API 文档,覆盖 30 个命名空间2724 个类型

查询流程

第 0 步:需求预研(模糊问题必须执行)

当用户提出的问题不包含明确的类名、方法名或命名空间时(如"实现 DMU"、"链接更新阶段"、"怎么监听模型变化"、"做一个参数化族"),必须先完成预研,再进入后续查询。

判断标准:用户问题中是否包含可直接搜索的 Revit API 标识符(如 IUpdaterDocumentChangedFilteredElementCollector)。如果没有,执行以下步骤:

  1. 解析业务意图:将用户的模糊需求拆解为具体的技术概念。

- 示例:"实现 DMU" → Dynamic Model Update 机制 → 需要 IUpdater 接口、UpdaterRegistry 类 - 示例:"链接更新阶段" → Revit 链接文档的加载/更新事件 → 需要 LinkedFileStatusRevitLinkTypeTransmissionData

  1. 网络搜索验证:使用 WebSearch 搜索 Revit API + <技术概念> 确认涉及的核心类和命名空间。

`` 搜索示例:"Revit API Dynamic Model Update IUpdater" 搜索示例:"Revit API linked file update phase event" ``

  1. 提取关键词列表:从搜索结果中提取 2-5 个具体的类名/接口名/方法名,作为后续查询的输入。
  1. 进入第 1 步:带着明确的 API 标识符继续。

重要:禁止跳过预研直接凭经验回答模糊问题。即使你认为自己知道答案,也必须通过预研确认后再用本知识库验证。

第 1 步:判断问题类型

问题类型 示例 执行路径
查询特定 API "XX 类怎么用"、"XX 方法的参数" 路径 A
浏览命名空间 "XX 命名空间有什么"、"XX 模块的类" 路径 B
查找成员归属 "哪个类有 XX 方法"、"XX 属性在哪里" 路径 C
通用开发问题 "怎么创建墙"、"事务怎么用" 路径 D

第 2 步:执行对应路径

路径 A:搜索特定 API(最常用)

  1. 先搜索定位:
python scripts/search_api.py search "关键词"
  1. 查看类的成员概览:
python scripts/search_api.py class "Autodesk.Revit.DB.ClassName"
  1. 需要完整文档时(签名、Remarks、继承链):
python scripts/extract_page.py --type "Autodesk.Revit.DB.ClassName"
  1. 查看成员级详情(属性/方法签名):
python scripts/extract_page.py --id "P:Autodesk.Revit.DB.Wall.Flipped"
python scripts/extract_page.py --id "M:Autodesk.Revit.DB.Wall.Flip"
python scripts/extract_page.py --id "M:Autodesk.Revit.DB.FilteredElementCollector.#ctor(Autodesk.Revit.DB.Document)"
python scripts/extract_page.py --id "Overload:Autodesk.Revit.DB.FilteredElementCollector.#ctor"
  1. member 命令返回空结果时,优先检查是否把“类型名”当成了“成员名”:
python scripts/search_api.py member "FilteredElementCollector"  # 会提示改用 class/search
python scripts/search_api.py class "Autodesk.Revit.DB.FilteredElementCollector"

路径 B:浏览命名空间

  1. 列出所有命名空间:
python scripts/search_api.py namespaces
  1. 查看特定命名空间的类型列表:
python scripts/search_api.py namespace "Autodesk.Revit.DB"
  1. 或直接读取 [references/namespace-overview.md](references/namespace-overview.md) 获取完整导航。

路径 C:查找成员归属

  1. 跨类搜索成员名称:
python scripts/search_api.py member "GetParameters"
  1. 从结果中定位目标类后,按路径 A 的第 2-4 步获取详情。

路径 D:开发模式速查

  1. 直接读取 [references/core-patterns.md](references/core-patterns.md),包含 11 个核心模式的 C# 代码示例。
  2. 若需进一步查看模式中涉及的 API 细节,按路径 A 继续查询。

第 3 步:组织回答

  1. 优先展示与用户问题直接相关的 API 签名和用法。
  2. 附带简要的代码示例(参考 core-patterns.md 中的模式)。
  3. 如有相关联的类或方法,补充提示。

核心类速查

命名空间 用途
Document DB 当前 Revit 文档,所有操作的入口
Element DB 所有模型元素的基类
ElementId DB 元素的唯一标识符
FilteredElementCollector DB 元素查询/过滤器(必学)
Transaction DB 模型修改的事务管理
Wall DB 墙体元素
Floor DB 楼板元素
FamilyInstance DB 族实例(门窗等)
FamilySymbol DB 族类型定义
Parameter DB 元素参数读写
XYZ DB 三维坐标点
Line / Arc / CurveLoop DB 几何曲线
Solid / Face / Edge DB 几何实体
Level DB 标高
View / ViewPlan / View3D DB 视图
UIApplication UI UI 层应用对象
UIDocument UI UI 层文档(选择交互)
ExternalCommandData UI Command 执行上下文
TaskDialog UI 消息对话框
Selection UI.Selection 用户选择交互

命名空间导航

核心(每天用):

  • Autodesk.Revit.DB — 数据库核心:元素、几何、参数、事务
  • Autodesk.Revit.UI — 用户界面:Ribbon、对话框、选择
  • Autodesk.Revit.ApplicationServices — 应用服务:Application、ControlledApplication
  • Autodesk.Revit.Creation — 工厂方法:创建文档、几何对象
  • Autodesk.Revit.Attributes — 特性标记:Transaction、Regeneration

专业领域:

  • DB.Architecture — 建筑:房间、楼梯、栏杆
  • DB.Structure — 结构:梁、柱、基础
  • DB.Mechanical — 暖通:风管、设备
  • DB.Electrical — 电气:线路、配电盘
  • DB.Plumbing — 给排水:管道、卫浴

高级:

  • DB.ExtensibleStorage — 自定义数据存储
  • DB.ExternalService — 外部服务框架
  • DB.Events / UI.Events — 事件系统
  • DB.DirectContext3D — 自定义 3D 渲染
  • DB.Visual — 材质与渲染外观
  • Autodesk.Revit.Exceptions — 异常类型

禁止事项

  • 禁止对模糊问题跳过第 0 步预研,直接凭记忆回答 API 细节
  • 禁止在未经搜索验证的情况下猜测 API 名称或签名,必须通过预研 + 脚本查询确认
  • 禁止直接编辑 data/ 目录下的 JSON 数据文件
  • 禁止向用户提供未在文档中出现的 API 用法,若文档不足应明确说明
  • 禁止混淆不同 Revit 版本的 API,本文档仅覆盖 Revit 2026(v26.0.4.0)

注意事项

  • 所有脚本基于 Python 标准库,无需额外安装依赖
  • 脚本路径相对于此 skill 目录,使用 scripts/ 前缀
  • 数据已预提取为按命名空间的 JSON 文件(data/pages/*.json),无需原始 HTML
  • 索引文件 data/apiindex.jsonbuildindex.py 生成
  • extract_page.py 支持 --id 参数直接查询成员级文档(前缀:T=类型, P=属性, M=方法, E=事件)

脚本增强(v1.1.1)

  • extract_page.py 支持 Overload: 前缀,能自动展开到一个可渲染重载并列出全部重载 ID。
  • lookup 缺失或不完整时,extractpage.py 会尝试从 Help ID 推断命名空间并直查 data/pages/<namespace>.json
  • extract_page.py 查询失败时会输出同命名空间的候选 ID,便于快速修正拼写/参数签名。
  • search_api.py member 在无成员命中时,会提示可能的类型候选和替代命令(class/search)。