Install
$ agentstack add skill-nice3point-revit-skills-revit-selection-filter ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Revit Selection Filter
Selection.PickObject takes an ISelectionFilter to decide what the user may pick. SelectionConfiguration (from Nice3point.Revit.Toolkit) builds that filter from two lambdas; you do not hand-roll a class. It drives an interactive pick and needs the Revit UI (RevitAPIUI).
When to use
- Restricting an interactive pick to a category, type, or geometry kind.
Workflow
Step 1: Configure the allowed elements and references
Allow.Element gates which elements are pickable; Allow.Reference gates which references (faces, edges, points). Set either or both — each returns the configuration and they chain — then pass configuration.Filter to the pick call.
var configuration = new SelectionConfiguration()
.Allow.Element(element => element.Category.Id.AreEquals(BuiltInCategory.OST_Walls))
.Allow.Reference((reference, position) => false);
var picked = uiDocument.Selection.PickObject(ObjectType.Element, configuration.Filter);
Step 2: Verify
Run the command and confirm only the intended elements or references highlight and accept a pick.
Validation
- [ ] The filter uses
SelectionConfiguration, not a hand-rolledISelectionFilter. - [ ]
Allow.Element/Allow.Referenceexpress the rule with a lambda, not a new class.
Common Pitfalls
| Pitfall | Correct approach | |---------------------------------------------------|-----------------------------------------------------------| | A bespoke ISelectionFilter for a category check | Use SelectionConfiguration().Allow.Element(...). | | Filtering references with an element-only filter | Add Allow.Reference((reference, position) => ...). | | SelectionConfiguration not found | The Nice3point.Revit.Toolkit package is not referenced. |
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Nice3point
- Source: Nice3point/revit-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.