mindHub Skills: teach once, benefit every time
A skill is the smallest way to customize mindHub: one folder, one file, and your best thinking captured forever. Here's how they work and how to build one that actually gets used.
Utkarsh Nanda @utkarsh
Sep 1, 2026 · 6 min read
What's a skill?
A skill is a set of instructions that teaches mindHub how to handle a specific task. It lives in a folder, and inside that folder is one file: SKILL.md. No code needed.
You know the stuff you explain over and over? "Format my reports this way." "When I ask for research, do these steps." A skill captures that once, and every future chat gets it right automatically.
Why it's useful
Consistency, mostly. Without a skill, you re-explain your process in every conversation, and results vary. With one, the same request gives the same quality every time.
mindHub is built for more than code. Skills cover writing, research, images, and organizing your saved knowledge, and most of our users never write a line of code.
How a skill loads
Skills use a two-level system:
- The name and description are always visible to the agent. That's just enough to know when each skill should be used, without loading everything into the conversation.
- The SKILL.md body loads only when the agent decides the skill is relevant to the current task. That's where the full instructions live.
Chats stay fast, and specialist knowledge sits quietly on standby until it's needed.
Plan before you write
Before writing anything, pick 2 or 3 concrete use cases your skill should handle. A good use case looks like this:
Use case: project sprint planning Trigger: someone says "help me plan this sprint" Steps: check the current project status, weigh team capacity, suggest priorities, then create the tasks with owners and estimates Result: a fully planned sprint, no follow-up questions needed
Then ask yourself:
- What does the user want to accomplish?
- What multi-step workflow does this require?
- Which mindHub tools are needed?
- What domain knowledge should be baked in?
Name it right
Two hard rules. The file must be exactly SKILL.md, case-sensitive, no variations. And the skill name uses kebab-case: lowercase words joined by hyphens.
| Do | Don't |
|---|---|
notion-project-setup | Notion Project Setup |
notion-project-setup | notion_project_setup |
notion-project-setup | NotionProjectSetup |
The frontmatter
The top of SKILL.md holds YAML frontmatter, and it's the most important part of the file. It's how the agent decides whether to load your skill.
---
name: your-skill-name
description: What it does. Use when the user asks to [specific phrases].
---
That's all you need to start. Field rules:
name: kebab-case only, no spaces or capitals, matching the folder namedescription: must say what the skill does and when to use it, under 1024 characters, no angle brackets, with the trigger phrases users would actually say
Writing the description
Structure it as: what it does, plus when to use it, plus key capabilities. Good:
description: Turns a rough topic into a ready-to-edit blog post draft.
Use when the user says "write a post about", "draft an article",
or uploads notes to turn into a blog.
Bad:
description: Helps with projects. # too vague
description: Creates sophisticated documentation systems. # no triggers
description: Implements a project entity model. # too technical
The body: instructions that get followed
After the frontmatter, write plain Markdown. A structure that works:
# Your Skill Name
## Step 1: [first major step]
What happens here, exactly, and what a good outcome looks like.
## Examples
User says: "..."
Actions: 1... 2...
Result: ...
## Troubleshooting
Error: [common failure]
Cause: [why it happens]
Solution: [how to fix]
Be specific and actionable. Compare:
- Weak: "Validate the data before proceeding."
- Strong: "Check every date is in YYYY-MM-DD format. If one fails, list the row numbers and stop."
And add error handling: tell the skill what to do when a step fails, not just what to do when everything works.
The tools your skill can use
This is the part most people miss. Your instructions can tell mindHub which tools to reach for. A skill that says "use canvas for the draft" beats one that says "produce a document."
| Tool | What it does |
|---|---|
| generate_image | Creates or edits images |
| generate_video | Creates videos |
| analyze_image / analyze_video | Answers questions about the image or video you attached |
| analyze_file | Reasons over spreadsheets and documents |
| canvas | A long draft the user can edit, save, or send |
| html_tool | One small inline widget, like a chart or calculator |
| question | Pauses and asks you a clarifying question |
| Exa search | Live web search |
| skill | Loads another saved skill into the chat |
| file tools | Reads and writes files in your workspace |
Where things live: the knowledge base
Your chats are sessions. They're read-only, and they hold today's attachments and outputs. The durable stuff lives in your knowledge base, and a good skill knows the difference.
uploaded-documents/holds files you bring in: uploads, saved replies, notesgenerated-documents/holds what mindHub makes for you: docs, images, videoswiki/holds your interlinked personal pagesindex.mdis the table of contentslog/is a monthly record of changesmemory/keeps your preferences and standing facts, quietly
Two rules worth baking in: durable saves go under knowledge_base/, never into a session folder, and links are written as kb:// paths.
Making your own
Three ways:
- Upload a SKILL.md file you already have
- Fill in a name, description, and instructions yourself
- Or hit "generate skill," describe what you want, and let mindHub draft it
Every skill tracks a run count and a save count, so you can see how many people saved yours and how often it ran.
Test it, then ship it
New skills start private, and that's the right place to iterate. Run a few queries, watch whether the agent picks your skill on its own, and judge the quality of the responses. Not happy yet? Tweak the description or instructions and run it again. Make it public only when you'd proudly show a stranger the output.
Pro tip: the best creators nail one hard task first, then write down the approach that worked. Faster signal than testing ten things at once.
The pre-publish checklist
- Description says what it does and when, in the user's own words
- Name and folder are kebab-case and identical
- Fires on most relevant queries, stays quiet on unrelated ones
- The same task without the skill takes more messages and gives worse output
- A brand-new user gets a good result on the first try
- Instructions name the tools to use and where results should be saved
Skills are living documents. Watch your run and save counts, listen to the feedback, and rewrite.