Updated 2d ago
by Nice3point
revit-skills
Agent skills for Revit add-in development
20 GitHub stars (20)
+5 in 30 days
| Period | New stars |
|---|---|
| Oct 1 | 0 |
| Oct 2 | 0 |
| Oct 3 | 0 |
| Oct 4 | 0 |
| Oct 5 | 0 |
| Oct 6 | 0 |
| Oct 7 | 0 |
| Oct 8 | 0 |
| Oct 9 | 0 |
| Oct 10 | 0 |
| Oct 11 | 0 |
| Oct 12 | 0 |
| Oct 13 | +1 |
| Oct 14 | 0 |
| Oct 15 | 0 |
| Oct 16 | 0 |
| Oct 17 | 0 |
| Oct 18 | 0 |
| Oct 19 | 0 |
| Oct 20 | 0 |
| Oct 21 | +1 |
| Oct 22 | 0 |
| Oct 23 | +1 |
| Oct 24 | 0 |
| Oct 25 | 0 |
| Oct 26 | 0 |
| Oct 27 | 0 |
| Oct 28 | 0 |
| Oct 29 | 0 |
| Oct 30 | +2 |
| Oct 31 | 0 |
- 30 skills (30 skills found in its SKILL.md files)
- 3 forks (3 forks)
- 2d ago last update (Last updated 2d ago)
Install
Skills CLI
npx skills add Nice3point/revit-skills
Asks which skills and agents to install. Just one: npx skills add Nice3point/revit-skills --skill binding-and-validating-options — add -g for every project.
Claude Code
git clone https://github.com/Nice3point/revit-skillscp -r "revit-skills/plugins/dotnet-advanced/skills/binding-and-validating-options" ~/.claude/skills/
Copies the binding-and-validating-options skill into ~/.claude/skills/ for every project (use .claude/skills/ for one project). Repeat for the other skills listed below.
Plugin
/plugin marketplace add Nice3point/revit-skills
Run inside Claude Code if the repository ships a plugin marketplace, then pick plugins from /plugin.
Skills can run code on your machine — read the SKILL.md first.
What it does
In the author's own words, from each skill's SKILL.md — showing the first 30 of 36 files.
-
binding-and-validating-options
Bind a configuration section to a typed options class and validate it at startup with the .NET options pattern. USE FOR: adding an options type, binding it from configuration, applying DataAnnotations or custom validation, and failing fast on invalid configuration with ValidateOnStart. DO NOT USE FOR: general host composition and the order of builder extensions (use configuring-dotnet-hosting).
plugins/dotnet-advanced/skills/binding-and-validating-options/SKILL.md on GitHub (opens in a new tab) -
configuring-dotnet-dependency-injection
Register and review .NET dependency-injection services and lifetimes on IServiceCollection. USE FOR: adding a registration, choosing singleton/scoped/transient, grouping registrations behind a feature extension, assembly scanning with Scrutor, or validating a service graph. DO NOT USE FOR: choosing which kind of type to declare (use designing-dotnet-types), or wiring the host builder and its life…
plugins/dotnet-advanced/skills/configuring-dotnet-dependency-injection/SKILL.md on GitHub (opens in a new tab) -
configuring-dotnet-hosting
Configure a .NET application host and its feature-registration extensions on IHostApplicationBuilder. USE FOR: composing HostApplicationBuilder/WebApplicationBuilder, writing IHostApplicationBuilder extension methods, wiring shared service defaults, and host startup and lifecycle. DO NOT USE FOR: choosing a service lifetime or a single registration (use configuring-dotnet-dependency-injection), o…
plugins/dotnet-advanced/skills/configuring-dotnet-hosting/SKILL.md on GitHub (opens in a new tab) -
designing-dotnet-types
Choose the right kind of .NET type for new behavior — static class, extension method, injected service, hosted service, options type, record, or interface. USE FOR: deciding how to shape a new unit of behavior or data before writing it, or reviewing that an existing type has the right shape for its dependencies and lifecycle. DO NOT USE FOR: registering a type or choosing its DI lifetime (use con…
plugins/dotnet-advanced/skills/designing-dotnet-types/SKILL.md on GitHub (opens in a new tab) -
dotnet-source-generated-logging
Write .NET logs with the LoggerMessage source generator for ILogger calls. USE FOR: adding or reviewing log statements built from [LoggerMessage] partial methods — message templates, log levels, event ids, exception logging, and logging scopes.
plugins/dotnet-advanced/skills/dotnet-source-generated-logging/SKILL.md on GitHub (opens in a new tab) -
organizing-dotnet-solutions
Organize a .NET solution tree: decide which solution folder each project belongs to, name the folders, and write the .slnx that maps configurations and excludes projects from a build. USE FOR: creating or restructuring the solution folder tree, placing a new project, naming a solution folder, mapping solution configurations onto project configurations, and scoping a working set with a solution fi…
plugins/dotnet-solution/skills/organizing-dotnet-solutions/SKILL.md on GitHub (opens in a new tab) -
csharp-style
Write or review C# code. USE FOR: writing or reviewing any C# code. DO NOT USE FOR: prose, markdown, or wiki text (use technical-writing), or XML doc comment content (use writing-xml-doc-comments).
plugins/dotnet/skills/csharp-style/SKILL.md on GitHub (opens in a new tab) -
technical-writing
Write or review technical prose — markdown documentation, wiki pages, README or config comments. USE FOR: explaining a contract, behavior, decision, or API in human-readable text, and reviewing that prose says something a reader cannot already infer. DO NOT USE FOR: C# code comments (use csharp-style), or C# XML documentation comments (use writing-xml-doc-comments).
plugins/dotnet/skills/technical-writing/SKILL.md on GitHub (opens in a new tab) -
writing-xml-doc-comments
Write or review C# XML documentation comments on public API surface. USE FOR: adding or reviewing XML documentation on public types, members, parameters, type parameters, and return values. DO NOT USE FOR: prose, markdown, README, or wiki text (use technical-writing), or ordinary code comments (use csharp-style).
plugins/dotnet/skills/writing-xml-doc-comments/SKILL.md on GitHub (opens in a new tab) -
revit-api-option-handlers
Supply small Autodesk Revit API callback interfaces with Nice3point.Revit.Toolkit ready-made handlers, not hand-rolled classes. USE FOR: passing IFamilyLoadOptions, IDuplicateTypeNamesHandler, or ISaveSharedCoordinatesCallback to a Revit API call. DO NOT USE FOR: constraining what a user can pick in an interactive selection, or building a dockable pane's UI element.
plugins/revit-api/skills/revit-api-option-handlers/SKILL.md on GitHub (opens in a new tab) -
revit-code-style
Structure Autodesk Revit API code — API boundaries, document and transaction ownership, thread affinity, and converting Revit objects to plain models. USE FOR: structuring Revit API code — where Revit types may live, who opens and closes a document, how to scope a transaction, thread affinity, and converting Revit objects before they cross a service or process boundary. DO NOT USE FOR: the mechan…
plugins/revit-api/skills/revit-code-style/SKILL.md on GitHub (opens in a new tab) -
revit-element-and-parameter-access
Read and write Autodesk Revit elements and parameters with the Nice3point.Revit.Extensions fluent accessors. USE FOR: finding an Element by ElementId, finding a parameter by BuiltInParameter/ParameterTypeId/Guid/name, reading its typed value, setting it, and converting internal units. DO NOT USE FOR: querying the model for a set of elements (use revit-element-collector).
plugins/revit-api/skills/revit-element-and-parameter-access/SKILL.md on GitHub (opens in a new tab) -
revit-element-collector
Query the Revit model with the Nice3point.Revit.Extensions fluent FilteredElementCollector wrappers; filter with Revit's parameter filters, not by loading elements and filtering with LINQ. USE FOR: writing or reviewing element queries that filter by class, category, or parameter value and return the first match, a count, or the full set. DO NOT USE FOR: reading or setting parameters on an element…
plugins/revit-api/skills/revit-element-collector/SKILL.md on GitHub (opens in a new tab) -
revit-extensible-storage
Persist add-in data inside the Revit document with Extensible Storage, laid out as a data class, a schema definition, and a typed context per stored subject. USE FOR: storing custom data on a document or on an element, defining or evolving a schema, choosing where the data lives, and finding the elements that carry it. DO NOT USE FOR: reading or writing values the user sees as element parameters…
plugins/revit-api/skills/revit-extensible-storage/SKILL.md on GitHub (opens in a new tab) -
revit-failure-handling
Suppress expected Autodesk Revit warnings and failures during a bounded API operation with Nice3point.Revit.Toolkit RevitApiContext. USE FOR: auto-resolving or auto-cancelling a known failure that would otherwise block opening a document, loading a family, or committing a transaction. DO NOT USE FOR: suppressing UI dialogs that are not failures (use RevitContext.BeginDialogSuppressionScope), or r…
plugins/revit-api/skills/revit-failure-handling/SKILL.md on GitHub (opens in a new tab) -
revit-utils-extensions
Replace verbose Autodesk Revit *Utils static calls, static managers, and hand-written enum/id conversions with Nice3point.Revit.Extensions fluent extensions. USE FOR: any call to a SomeUtils.Operation(…) or any other static Revit API helper, any conversion or formatting of a Revit value, and any iteration of a Revit array, set, or map. DO NOT USE FOR: querying the model for elements (use revit-el…
plugins/revit-api/skills/revit-utils-extensions/SKILL.md on GitHub (opens in a new tab) -
revit-benchmarking
Design, write, run, or review BenchmarkDotNet measurements that run inside Autodesk Revit with Nice3point.BenchmarkDotNet.Revit. USE FOR: comparing viable Revit API implementations, measuring a Revit hot path, applying the runner's WithCurrentConfiguration requirement, and handling the OnGlobalSetup/OnGlobalCleanup document lifecycle. DO NOT USE FOR: benchmarking .NET code that does not call the…
plugins/revit-benchmarking/skills/revit-benchmarking/SKILL.md on GitHub (opens in a new tab) -
revit-addin-bundle
Package a versioned Autodesk Revit add-in as an Autodesk App Store bundle with the Nice3point.Revit.Templates ModularPipelines build. USE FOR: setting the bundle vendor metadata and version, and running the build to produce a versioned .bundle with per-Revit-year contents for App Store distribution. DO NOT USE FOR: per-build deploy or publish to a local Revit (use revit-addin-publishing), or laun…
plugins/revit-solution/skills/revit-addin-bundle/SKILL.md on GitHub (opens in a new tab) -
revit-addin-debugging
Configure an Autodesk Revit add-in project's IDE launch of the matching Revit with the debugger attached, using the Nice3point.Revit.Sdk launch properties. USE FOR: setting up a project where a debug session launches the matching Revit and breaks in the add-in, overriding the Revit path or start arguments, and keeping Hot Reload responsive while debugging. DO NOT USE FOR: copying built files to t…
plugins/revit-solution/skills/revit-addin-debugging/SKILL.md on GitHub (opens in a new tab) -
revit-addin-publishing
Configure an Autodesk Revit add-in project to copy the add-in, .addin manifest to the local Revit or a `bin/publish` folder, using the Nice3point.Revit.Sdk publish targets. USE FOR: setting up a project for publishing, bundling extra content into the output, and relying on per-version manifest patching. DO NOT USE FOR: launching and debugging the add-in from the IDE (use revit-addin-debugging), d…
plugins/revit-solution/skills/revit-addin-publishing/SKILL.md on GitHub (opens in a new tab) -
revit-api-references
Reference the Autodesk Revit API assemblies using the Nice3point.Revit.Api.* or Nice3point toolkit, extensions or other NuGet packages. USE FOR: adding a Revit API assembly reference. DO NOT USE FOR: the version matrix and conditional compilation (use revit-multi-version-configuration).
plugins/revit-solution/skills/revit-api-references/SKILL.md on GitHub (opens in a new tab) -
revit-assembly-resolution
Redirect Autodesk Revit add-in assembly resolution to a plugin folder with Nice3point.Revit.Toolkit. USE FOR: fixing a FileNotFoundException when loading a WPF window or third-party dependency Revit cannot resolve, or pinning which folder a bounded load resolves from. DO NOT USE FOR: entry points derived from the Toolkit base classes (ExternalCommand, ExternalApplication, ExternalDBApplication),…
plugins/revit-solution/skills/revit-assembly-resolution/SKILL.md on GitHub (opens in a new tab) -
revit-dependency-isolation
Prevent Autodesk Revit add-in dependency conflicts with AssemblyLoadContext isolation (Revit 2027+) or ILRepack repacking (legacy). USE FOR: resolving crashes caused by two add-ins loading different versions of the same dependency, by isolating the add-in's assemblies. DO NOT USE FOR: resolving a missing dependency at load time (use revit-assembly-resolution).
plugins/revit-solution/skills/revit-dependency-isolation/SKILL.md on GitHub (opens in a new tab) -
revit-multi-version-configuration
Support multiple Autodesk Revit versions in one project with Debug.RNN/Release.RNN configurations and REVIT#### conditional compilation. USE FOR: declaring the supported-version matrix, adding or removing a version, and writing #if REVIT####_OR_GREATER branches for genuine API differences. DO NOT USE FOR: what the SDK derives per version (use revit-sdk-project-configuration), or referencing the R…
plugins/revit-solution/skills/revit-multi-version-configuration/SKILL.md on GitHub (opens in a new tab) -
revit-sdk-project-configuration
Configure the Revit project .csproj with the MSBuild Nice3point.Revit.Sdk. USE FOR: setting the project SDK, or configuring the target framework, implicit usings, language version, or add-in defaults. DO NOT USE FOR: adding or removing a supported Revit version (use revit-multi-version-configuration), referencing the Revit API assemblies (use revit-api-references), or publishing the add-in (use r…
plugins/revit-solution/skills/revit-sdk-project-configuration/SKILL.md on GitHub (opens in a new tab) -
revit-template-migration
Upgrade a Nice3point.Revit.Templates project or solution to the latest template or SDK version. USE FOR: moving a scaffolded add-in, module, benchmark, test project, or solution to a newer template or SDK version, or adding template options to an existing scaffold. DO NOT USE FOR: creating a brand-new project (use scaffolding-revit-projects), or changing only the supported Revit-year matrix (use…
plugins/revit-solution/skills/revit-template-migration/SKILL.md on GitHub (opens in a new tab) -
scaffolding-revit-projects
Scaffold an Autodesk Revit add-in, benchmark, or test project from the Nice3point.Revit.Templates. USE FOR: installing the templates and creating a new project or solution with dotnet new. DO NOT USE FOR: configuring an existing project's SDK, versions, or references (use revit-sdk-project-configuration), or upgrading a scaffolded project to a newer template version (use revit-template-migration).
plugins/revit-solution/skills/scaffolding-revit-projects/SKILL.md on GitHub (opens in a new tab) -
revit-test-fixtures
Supply Autodesk Revit API tests with the documents, services, and data cases they run against, and pick the right data source for each situation. USE FOR: seeding a fresh in-memory model per test, opening installed sample .rvt/.rfa files as fixtures, choosing between [MethodDataSource] and [InstanceMethodDataSource], running one test body across several file kinds, injecting services under test t…
plugins/revit-testing/skills/revit-test-fixtures/SKILL.md on GitHub (opens in a new tab) -
revit-testing
Write, run, or review Autodesk Revit API tests that execute inside Revit with Nice3point.TUnit.Revit. USE FOR: writing RevitApiTest classes whose bodies run on Revit's single thread, and RevitApiUiTest classes for code that needs the Revit user interface, the UIApplication, or the active UI document. DO NOT USE FOR: supplying the documents, services, or data cases a test runs against (use revit-t…
plugins/revit-testing/skills/revit-testing/SKILL.md on GitHub (opens in a new tab) -
revit-command-and-application
Build Autodesk Revit add-in entry points with Nice3point.Revit.Toolkit base classes, not raw IExternalCommand/IExternalApplication interfaces. USE FOR: authoring an external command or application with a simplified Execute()/OnStartup() override, optional OnShutdown() override, ready context properties, and automatic dependency resolution. DO NOT USE FOR: dispatching API work from code that runs…
plugins/revit-ui/skills/revit-command-and-application/SKILL.md on GitHub (opens in a new tab)
No skill matches that filter.
Review before you install
A skill is a set of instructions and scripts your agent will follow, and it can run code on your machine. Read the SKILL.md and any scripts first — this listing is not a security review.