Skill Creator

SkillDocs & knowledge

The skill-creator is a skill for Prime Agent that helps you build new skills. A skill is a directory with a SKILL.md file holding frontmatter and instructions, plus optional scripts, references, and assets. This skill guides you through choosing between markdown and Python-backed skills, picking a location, writing a description that routes correctly, and verifying the skill loads.

Then ask your AI: use the Skill Creator

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Decide whether the skill should be markdown or Python-backed; default to markdown unless the agent should call the capability directly.

What your AI can do with it

  • Create markdown skills with a SKILL.md file and frontmatter
  • Create Python-backed skills callable from the Python kernel
  • Choose between markdown and Python-backed skill kinds
  • Pick a skill location: project, global, or package
  • Write descriptions that route tasks correctly
  • Verify that a new skill loads

Getting started

  1. Decide whether the skill should be markdown or Python-backed; default to markdown unless the agent should call the capability directly.
  2. Choose where the skill lives: a project directory, a personal global directory, or a package.
  3. Scaffold the skill directory with a SKILL.md file containing name and description frontmatter.
  4. Add optional scripts, references, and assets the instructions need.
  5. Verify the skill loads.

What this skill tells your AI

The instructions your AI receives, as published by primeintellect-ai/prime-agent in skills/skill-creator/SKILL.md and read by Ahel’s review.

A skill is a directory with a SKILL.md file (YAML frontmatter + markdown instructions). At startup Prime Agent reads only each skill's name and description into the system prompt; the full file loads on demand when a task matches. Prime Agent follows the Agent Skills standard and extends it with Python-backed skills.

KindWhat it isWhen to use
markdownSKILL.md plus optional scripts, references, and assetsWorkflows, CLI recipes, domain knowledge, multi-step instructions
pythonA markdown skill that also ships a Python package installed into the agent's persistent Python kernelCapabilities that are naturally one Python call: API wrappers, fetchers, converters, computations

Before writing a Python-backed skill, read references/python-skills.md for the package contract.

Creating a Skill

  1. Pick the kind. Default to markdown. Go Python only when the agent should call the capability (await my_skill(...)) instead of following instructions.
  2. Pick the location. Ask the user when it is not obvious from context:
    • Project skill, shared via the repo: .prime/agent/skills/<name>/
    • Personal global skill: ~/.prime/agent/skills/<name>/
    • Shipped with an npm package: a skills/ directory in the package, or pi.skills paths in its package.json
  3. Scaffold and write the directory using the layout and frontmatter rules below.
  4. Verify the skill loads (see Verification).

On a name collision the first skill found wins. Precedence: explicit --skill paths and skills settings entries, then project, then global, then package, then built-in skills.

Layout

my-skill/
├── SKILL.md              # Required: frontmatter + instructions
├── scripts/              # Optional helper scripts the instructions reference
├── references/           # Optional detailed docs, loaded only when needed
└── assets/               # Optional templates and data files

Everything except SKILL.md is freeform. Reference files with paths relative to the skill directory; the agent resolves them against the directory containing SKILL.md.

Frontmatter

---
name: my-skill
description: What this skill does and when to use it. Be specific.
---
FieldRequiredRules
nameYesMax 64 chars. Lowercase a-z, 0-9, hyphens. No leading/trailing/consecutive hyphens. Must match the parent directory name.
descriptionYesMax 1024 chars. A skill with a missing or empty description is silently not loaded.
disable-model-invocationNotrue hides the skill from the system prompt; only explicit /skill:<name> invokes it.
licenseNoLicense name or reference to a bundled file.
compatibilityNoMax 500 chars. Environment requirements.
metadataNoArbitrary key-value mapping.
allowed-toolsNoSpace-delimited pre-approved tools (experimental).

Unknown fields are ignored. Name violations produce warnings but the skill still loads.

Write the description for routing

The description is the only thing the model sees before deciding to load the skill. State what the skill does and the trigger conditions ("Use when ..."), naming the concrete tasks, tools, and phrases a request would contain.

Good: Extracts text and tables from PDF files, fills PDF forms, and merges PDFs. Use when working with PDF documents. Poor: Helps with PDFs.

Write the body for progressive disclosure

Keep SKILL.md short: the decision flow, the common commands, the contract. Push exhaustive detail (API schemas, full option lists, long examples) into references/*.md and link them, so they only enter context when actually needed. State setup steps (installs, env vars, credentials) explicitly and early.

Verification

After writing the skill:

  1. Re-read the frontmatter and check every rule in the table above, especially that name matches the directory name and the description is non-empty.
  2. In an interactive session, /reload picks up new skills without a restart; other sessions pick them up on start. Loading problems (bad name, missing description, name collisions) surface as warnings — ask the user to check, or check diagnostics yourself if you can.
  3. A loaded skill is also invocable as /skill:<name>, which the user can try directly.

For Python-backed skills, also run the checks in references/python-skills.md.

Signals

GitHub stars
22k
Forks
2k
Last commit
Oct 2026
Hacker News mentions
1

Questions

How do I write a SKILL.md?
A SKILL.md file has YAML frontmatter with a name and description, followed by markdown instructions. The name must be lowercase letters, digits, and hyphens, at most 64 characters, and match the parent directory name. The description is at most 1024 characters.
Where do skills live?
A skill can live in a project directory shared through the repo, a personal global directory, or shipped with a package.
Advanced
Item type
skill
Key
skill-creator-primeintellect-ai
Source
github.com/primeintellect-ai/prime-agent