select-svg-icon
Select SVG Icon
Use this skill to pick an icon that matches a pyRevit command's behavior, not just its name.
SVG-Only Policy
- Acquire source assets as
.svgonly. - Reject PNG-only sources during acquisition.
- Generate
icon.pngonly in the finalization step for pyRevit compatibility.
Workflow
- Read the target command script and capture an intent brief:
- Primary verb (
select,align,export,delete). - Primary object (
walls,views,parameters,sheets). - Risk level (
safe,warning,destructive). - User context (
single element,batch,analysis,settings).
- Build 3-6 SVG search queries from the brief.
- Start with
verb noun. - Add one domain synonym.
- Add one metaphor fallback only if literal matches are weak.
- Collect 3-5 candidate SVG icons with ordered sources.
- Keep candidate downloads and previews under
tmp/icons/<command-name>/. - Record each source URL and license note.
- Run
scripts/acquire_svgrepo_svg.py --command-id <command-name> -q "<query>" ...first. - Run
references/svgrepo_automated_acquisition.mdfirst. - If automated acquisition yields fewer than 3 valid candidates, run
references/svgfind_acquisition.mdas manual fallback.
- Run a vision pass before deciding.
- Compare candidates against the script intent and UI context.
- Score and rank with
references/icon_review_rubric.md. - Reject icons that imply the wrong action direction or risk level.
- If vision tools are unavailable, use candidate metadata as fallback and mark confidence as low.
- Finalize for pyRevit.
- Save the selected icon to the command folder as
icon.png. - Generate
icon.pngfrom the selected SVG withscripts/render_svg_icon_png.py. - Check legibility at
16px,24px, and32pxbefore finalizing. - Keep rejected candidates in
tmp/only. - Add a one-line rationale in task/review notes to preserve intent for future changes.
Use With Other Skills
- Pair with
develop-pyrevit-extensionsfor command scaffolding and workflow docs. - Pair with
pyrevit-revit-20xxskills when API behavior affects icon semantics.
Technical Reference
- Open
scripts/acquire_svgrepo_svg.pyfor deterministic automated SVG acquisition. - Open
scripts/render_svg_icon_png.pyto render finalicon.pngfrom SVG. - Open
references/svgrepo_automated_acquisition.mdfor the default automated acquisition path. - Open
references/svgfind_acquisition.mdfor the manual fallback path. - Use
references/icon_review_rubric.mdafter acquisition to rank candidates with vision.
More from oriashkenazi/ai-pyrevit-developer-template
develop-pyrevit-extensions
Build, plan, review, and document pyRevit extensions. Use when Codex needs the pyRevit development workflow, templates, prompts, checklists, or scripts for creating or updating pyRevit commands in this repo. Pair with a version-specific Revit skill (e.g., 2023/2024/2025) for API constraints.
21pyrevit-revit-2025
Revit 2025 API guidance for pyRevit development. Use when implementing or reviewing pyRevit commands that target Autodesk Revit 2025, including transaction patterns, API constraints, and version-specific best practices.
15pyrevit-revit-2023
Revit 2023 API guidance for pyRevit development. Use when implementing or reviewing pyRevit commands that target Autodesk Revit 2023, including transaction patterns, API constraints, and version-specific best practices.
1pyrevit-revit-2024
Revit 2024 API guidance for pyRevit development. Use when implementing or reviewing pyRevit commands that target Autodesk Revit 2024, including transaction patterns, API constraints, and version-specific best practices.
1