Skip to main content

Create Custom Skills for Mira

Teach Mira your firm's workflows and conventions. Ask Mira to draft a custom skill, review it, save it — no coding or file editing required.

Mira comes with skills — short markdown documents that teach it how to handle specific tasks in Revit. Some are installed with Mira, and the Mira Skills Library adds more that Pirros publishes and keeps up to date. Custom skills let you add your own — your firm's naming conventions, drawing standards, modeling habits, or any other guidance you'd otherwise have to repeat to Mira every time.

You don't need to write anything yourself. Just tell Mira what you want it to remember, and it drafts the skill for you. You review it in the chat, ask for changes if needed, and Mira saves it when you agree. No file editing, no markdown syntax to learn.

What a skill actually is

A skill is a short instruction file. On every message, Mira sees the name and one-line description of each skill; when your request matches one, it reads the full skill and follows it. A skill can describe:

  • Conventions — "Our firm names views as [Discipline]_[Level]_[Name]. Always rename new views to match."

  • Workflows — "Before placing a new wall, check the level is set to the active design level shown in the title block."

  • Defaults — "When the user asks for a schedule, use the fields Type, Mark, Family, Comments, in that order."

  • Constraints — "Never delete a view referenced by a sheet without asking first."

  • Recipes — multi-step procedures Mira should follow for a recurring task.

Once saved, a skill applies on the very next message — no restart, no recompile.

Create a skill by asking Mira

This is the easiest way, and the one most people use.

Step 1: Tell Mira what you want it to remember

In the Mira chat panel, just describe the rule, workflow, or convention in plain English. Some prompts that work well:

  • "Write me a custom skill that tells you to follow our firm's view naming standard: [Discipline]_[Level]_[Name]."

  • "Create a skill for our sheet setup routine. Every new sheet should have the title block set to our firm template, the scale set to 1/8" = 1'-0", and the revision schedule populated from the project info."

  • "Save a skill so you remember that whenever I create a wall, you check the level matches the active design level shown in the title block."

The trigger word is "skill" — when Mira hears it, it knows you want it to draft markdown rather than just answer the question.

Step 2: Review what Mira drafts

Mira writes the skill out in the chat and checks its name and summary with you before saving anything. Read it carefully — does it actually capture what you meant? Common things to check:

  • Is the description right? The description at the top says when the skill applies, and it's the only part Mira sees until it needs the skill. "Use when the user creates a new sheet or sets up a title block" tells Mira when to use it.

  • Are the rules specific? "Be careful with deletions" is too vague. "Before deleting any view, check whether a sheet references it, and ask first if one does" is enforceable.

  • Is anything missing? If you wanted three rules and Mira drafted two, ask for the third.

If you want changes, just tell Mira: "Make it stricter about always asking before renaming" or "Add an example for SITE level". It will revise the draft.

Step 3: Save it

When the draft looks right, tell Mira to save it. Mira asks for permission to run CreateCustomSkill; click Allow. The skill is active from your next message, and Mira tells you where it saved it.

To see it, click the gear icon (Settings) in the Mira panel.

Under Advanced click Skills.

Your skill is listed with a CUSTOM label; click it to read the saved text. Open folder opens the skills folder, and your skill is in the custom folder.

A few common reasons to adjust a skill:

  • Mira isn't applying it consistently. Usually means the description is too vague. Make the "Use when…" sentence more specific, and add the phrases you actually type.

  • Mira applies it when it shouldn't. The description is too broad. Narrow it ("Only when the user is working on a sheet view, not a model view").

  • Your firm's standard changed. Update the rule, and Mira uses the new version from your next message.

To make any of these changes, see Change or remove a skill below.

Change or remove a skill

Mira can create skills, but it can't change or delete one once it's saved, so no conversation can quietly rewrite Mira's own instructions. You make those changes yourself:

  • Change a skill. In Settings, under Advanced, click Skills, then Open folder. Open custom, then the skill's folder, and edit SKILL.md in a text editor such as Notepad. Save the file, and Mira uses the new version from your next message.

  • Have Mira rewrite it. Ask Mira for an updated version, remove the old skill, then tell Mira to save the new one. Mira won't save a skill under a name you already use.

  • Remove a skill. Open the skills folder the same way, open custom, and delete the skill's folder. It stops applying from your next message.

Skills labeled DEFAULT or SERVER can't be changed or removed. Mira puts them back every time Revit starts.

What makes a good skill

When you review Mira's draft (or write one from scratch), check it against these:

Start with a clear name and description

Every skill starts with a short header holding its name and description. The description is the only part Mira sees until the skill is needed, so it decides whether the skill gets used. Make it a specific "Use when…" sentence with a few phrases you'd actually type. Mira reads the first 200 characters.

---

name: sheet-setup-routine

description: Use when the user creates a new sheet or sets up the title block on an existing one. Examples: "set up a new sheet", "new sheet for Level 2".

---

Names use lowercase letters, numbers and dashes, up to 64 characters.

Skills written before Mira 2.0 often start with a # heading instead of this header. Mira then sees only the heading, which is rarely enough to pick the skill. Add a header like the one above (see Change or remove a skill).

Keep it focused

Only the description is part of every message, so a long skill doesn't slow down conversations that don't need it. When Mira does read a skill, the whole file becomes part of that conversation, so cut anything Mira doesn't need. If a skill is covering several jobs, split it into separate skills with narrower descriptions.

Be specific, not aspirational

❌ Vague

✅ Specific

Be careful with deletions

Before deleting any view, check whether a sheet references it. If one does, ask before deleting.

Follow our naming standard

View names follow [Discipline]_[Level]_[Name]. Disciplines: A, S, M, P, E. Levels: L01–L99, ROOF, SITE

Use the right schedule fields

When asked for a schedule, use the fields Type, Mark, Family, Comments, in that order

Use numbered lists for workflows

When you want Mira to follow a sequence, write it as a numbered list. Mira parses the structure and tends to follow steps in order.

Show examples — especially the bad ones

A two-column "Bad / Good" table is the highest-signal pattern in any skill. If Mira's draft doesn't include one and the skill has a "do it like this, not like that" flavor, ask Mira to add the examples.

A complete example — Sheet Setup Routine

Here's the full lifecycle of one custom skill, end to end.

The prompt:

"Write me a custom skill called Sheet Setup Routine. Every time I create a new sheet, you should set the title block to our firm template, make the scale 1/8" = 1'-0" unless I tell you otherwise, populate the revision schedule from project info, and ask me whether to add the sheet to the active sheet list."

What Mira drafts:

---

name: sheet-setup-routine

description: Use when the user creates a new sheet or duplicates an existing one. Examples: "new sheet", "set up a sheet for Level 2", "duplicate this sheet".

---

# Sheet Setup Routine

## Steps

1. Set the title block to the firm's standard template. If unsure which template, use the one assigned to the active project; surface the choice if more than one matches.

2. Default scale: 1/8" = 1'-0". Don't change unless the user specifies otherwise.

3. Populate the revision schedule from the project's Project Information parameters.

4. After setup, ask the user: "Should I add this sheet to the active sheet list?" Only add if they confirm.

## Rules

- Don't apply a title block from another firm's project — always use the active firm's template.

- Don't auto-populate the sheet number; the user picks the sheet number when they create the sheet.

What you might tweak:

  • Maybe your firm uses 1/4" = 1'-0" more often than 1/8" — change the default.

  • Maybe step 4 should be "always add to the sheet list" instead of asking — remove the question.

  • Maybe you want an additional rule: "If the sheet is part of a structural set, use the S- prefix sheet template instead."

Ask Mira for those changes before you save, and the next sheet you create will follow the updated routine. To change the skill after it's saved, see Change or remove a skill.

Tips for getting the most out of skills

  • One concern per skill. If a skill covers naming, geometry, AND scheduling, split it into three. Smaller skills are easier for Mira to apply at the right moments.

  • Let Mira help you refine. When you correct Mira the same way twice in a conversation, ask: "Can you update the [skill name] skill so you remember this?" It will draft an updated version.

  • Test by replaying a real task. After saving a skill, ask Mira to do the thing you wrote the skill for. If it gets it wrong, the skill needs sharper language.

  • Keep descriptions distinct. Every skill's description is part of every message. Two skills that claim the same requests make it harder for Mira to choose, so prune skills you're no longer using.

  • Mind the token budget. Every skill is in the prompt for every message. If you have 20 skills totaling 5,000 lines, each turn pays for that overhead. Prune skills you're no longer using.

  • Share skills across your firm. Skills live on the machine that created them, but the folder is just files — see "Advanced" below.

Advanced: Edit and sync skills as files

If you'd rather work in a text editor, or want to share skills across your team:

  1. In Mira, click the gear icon (Settings), then under Advanced click Skills and Open folder. File Explorer opens at %APPDATA%\PirrosChatbot\skills\.

  2. The custom\ subfolder contains your skills — one folder per skill, each with a single SKILL.md file.

  3. Edit the markdown directly. Save. Mira picks up the change on your next message.

Don't edit anything in default\ or server\. Mira replaces those files every time Revit starts: default\ holds the skills installed with Mira, and server\ holds the Skills Library skills. To change how one of them behaves for your firm, create a custom skill with a different name that says "instead of [skill], do X."

Sync across team machines:

  • Copy a skill's folder into the custom\ folder on each team member's machine. Mira picks it up on their next message.

  • To keep everyone current, keep your firm's skill folders in a shared location such as OneDrive or SharePoint, and copy updates into custom\ when they change.

  • Or make custom\ a clone of a git repository that holds your firm's skills, and git pull on each machine. Keep README files out of the top level: Mira treats any .md file there as a skill.

When you onboard a new team member, copy the same folders onto their machine and they start with every skill your firm has authored.

Frequently Asked Questions

Q: Do custom skills sync across machines automatically?

A: No. A skill lives on the machine where it was saved. To share it, copy its folder into the custom\ folder on each machine (see the Advanced section above).

Q: Can a custom skill have the same name as a default skill?

A: No. Mira won't save a custom skill with the same name as a skill installed with Mira, or as one of your existing custom skills — it asks you to pick a different name. Avoid the names of Skills Library skills too: while a library skill is published, Mira uses it instead of a custom skill with the same name. If you want to extend a built-in behavior, name your skill something like sheet-setup-firm-extensions and reference the original by name in the content.

Q: Do skills cost extra credits?

A: There's no per-skill charge. Each skill's one-line description is part of every message, which adds a little to each one; Mira reads a skill's full text only when a request needs it.

Q: Where can I see what Mira is actually reading from my skills?

A: In Settings, under Advanced, click Skills. Every skill Mira can use is listed, labeled DEFAULT, SERVER or CUSTOM to show where it came from. Click one to see its full text.

Q: Does Mira always follow a skill?

A: Mira uses a skill when your request matches its description, and treats the skill's content as guidance, not absolute rules. If your skill says "always rename new views" but the user explicitly says "don't rename this one," Mira will follow the user. Phrase your skills as conventions Mira can apply unless overridden.

Q: What if my skill contradicts a default skill?

A: Mira can load both, and more specific instructions generally win. If you want to override a default behavior, write the override explicitly — e.g. "Default skill X says to do Y, but in this firm we do Z instead, because [reason]."

Q: Mira says it can't change or delete my skill.

A: That's expected — Mira can only create skills. You change or remove them yourself; see Change or remove a skill above.

Q: I'm getting an error when I save a skill.

A: Mira tells you why it couldn't save. The most common reasons are a name that's already used by a skill installed with Mira or by one of your custom skills, a name longer than 64 characters or with no letters or numbers, or a name Windows reserves, such as con or nul. Ask Mira to use a different name. If you're hitting something else, email [email protected].

Did this answer your question?