What a skill looks like
A skill is a SKILL.md file written in Markdown. It contains step-by-step instructions the AI platform follows when a relevant situation comes up in a conversation. A skill might describe:- How to triage a support ticket and assign it to the right team.
- How to walk a user through an onboarding checklist.
- How to pull data from an MCP server and format it as a summary.
Add a skill
- GitHub
- Inline
- Open the Novu dashboard and go to your managed agent’s detail page.
- Open the Skills section in the agent settings.
- Select GitHub URL as the source.
- Paste the public repository URL. You can point to:
- The root of a repo (Novu looks for SKILL.md at the top level).
- A specific branch or subfolder (e.g.
https://github.com/org/repo/tree/main/skills/triage).
- Click Upload.
Versioning
If you upload a skill with the same display title as an existing one, the platform creates a new version automatically. The agent always uses the latest version.Remove a skill
To remove a skill, go to the Skills section and delete it from the list. The agent stops using the skill on the next conversation turn.Novu HITL skill
Managed agents can pause and ask a human using thenovu_human platform tool — ask, approve, choose, or tell. That is the same set of verbs custom-code agents use with ctx.ask, ctx.approve, ctx.choose, and ctx.tell.
Novu attaches a Novu HITL skill on every managed agent that supports skills. The skill tells the model when to escalate (risky or irreversible actions, real multi-way choices) and when to just reply in the thread.
Anthropic can only load skills when the Read built-in is enabled. Attaching this skill therefore turns Read on if it was off. If skill upload fails, the novu_human tool is still attached and the agent continues without the skill.
novu_human is not MCP tool approval. When an MCP or provider tool is already parked on an Approve/Deny card, the model should not call novu_human to re-gate that same call. Do not invent trust-tool or trust-server extra buttons — those are injected by Novu on parked tool cards.
Pass a card with card.title. Optional chrome: subtitle and body on every channel; icon is Slack-only (MCP catalog id like stripe / github, or an https 32×32 URL). Approve extras (approveLabel, denyLabel, extraActions) also live on card. choose needs card.options (2–10). Do not pass top-level prompt or options.
Tips for writing good skills
- Be specific: describe the exact steps the agent should follow, not just the goal.
- Include examples: show sample inputs and expected outputs when possible.
- Keep it focused: one skill per task. A skill that tries to cover too many scenarios becomes harder for the model to apply correctly.
- Test with real conversations: send messages that should trigger the skill and check whether the agent follows the instructions.
Related
Configure MCP servers
Enable external tools for your managed agent.
Concepts
Learn about connectors, MCP servers, skills, and how conversations work.
Connect Claude
Anthropic Claude managed agent + Slack.