Skill Creator
Azure/azqr
Create new skills, modify and improve existing skills, and measure skill performance.
Turns reusable decisions, templates or workflows from the current conversation into a new workspace skill through plan, approval, draft, validation and publication.
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install agentscope-ai/QwenPaw make-skill --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .claude/skills/make-skill && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .claude/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-enType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install agentscope-ai/QwenPaw make-skill --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .agents/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .agents/skills/make-skill && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .agents/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install agentscope-ai/QwenPaw make-skill --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .cursor/skills/make-skill && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .cursor/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/agentscope-ai/QwenPaw.git --path src/qwenpaw/agents/skills/make-skill-en--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install agentscope-ai/QwenPaw make-skill --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .gemini/skills/make-skill && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .gemini/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install agentscope-ai/QwenPaw make-skillInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .github/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .github/skills/make-skill && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .github/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add agentscope-ai/QwenPaw --skill make-skill -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install agentscope-ai/QwenPaw make-skill --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/agentscope-ai/QwenPaw.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/src/qwenpaw/agents/skills/make-skill-en .opencode/skills/make-skill && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "make-skill" agent skill from https://github.com/agentscope-ai/QwenPaw/tree/main/src/qwenpaw/agents/skills/make-skill-en into .opencode/skills/make-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "make-skill", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
make-skillTurns reusable decisions, templates or workflows from the current conversation into a new workspace skill through plan, approval, draft, validation and publication.
The agent creates one skill per run from stable guidance in the conversation: contracts, templates and workflows that should change future behavior, with later corrections replacing earlier rules and one-off data, temporary paths, secrets and retry chatter left out. `/make-skill` takes a required focus argument, or the agent infers it from a natural-language request such as turning a workflow into a skill. It is not for one-off summaries or ordinary file creation.
Work moves through four Python scripts that read one JSON object and return one JSON object: `create_plan.py` creates or revises a plan and returns a `plan_id`, `init_draft.py` starts a draft after approval and returns a `draft_id` and `skill_dir`, `validate_skill.py` returns a digest, and `publish_skill.py` publishes the validated draft only when given that digest. Lifecycle artifacts live under the workspace's `.qwenpaw/make-skill/` folder and published skills under its `skills/` folder. References cover choosing a primary type and package files, behavior testing when a test mode is on, and batch workflows.
Read from SKILL.md and the folder at commit 80e412d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 4 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Make Skill loads about 2.4k tokens when it runs, and up to ~5k if it reads all its reference files. Until then it costs about 75 tokens; SKILL.md has 1,180 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from agentscope-ai/QwenPaw at commit 80e412d, republished under its Apache-2.0 licence (© agentscope-ai). 1,180 words, ~2,385 tokens.
.claude/skills/make-skill/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.Create one new workspace Skill from the current conversation through planning, user approval, draft authoring, validation, and publication.
Resolve <workspace> from the runtime directory context: use the current agent's absolute workspace path (also the working directory when no separate project is configured). Pass that same value throughout the lifecycle, independently of the task's project directory and the script cwd. Lifecycle artifacts belong under <workspace>/.qwenpaw/make-skill/; published Skills belong under <workspace>/skills/.
Run python scripts/<script> through execute_shell_command, setting cwd to this Skill's <dir> from the available-skills entry. Each script reads one JSON object from stdin (or --input <file>) and returns one JSON object. Every input includes workspace; the table lists the other top-level fields.
| Operation | Script | Other input fields | Successful result |
|---|---|---|---|
| Create a plan | create_plan.py | plan | plan_id, normalized plan |
| Revise that plan | create_plan.py | plan_id, complete new plan | Same plan_id, normalized plan |
| Initialize after approval | init_draft.py | plan_id | draft_id, skill_dir |
| Validate a draft | validate_skill.py | draft_id | digest |
| Publish a validated draft | publish_skill.py | draft_id, expected_digest from validation | Publication result |
plan_id identifies one editable plan; keep it across revisions, including renames. draft_id identifies the initialized draft for validation, testing, and publication; skill_dir is where its package files belong. Use the returned values unchanged, not IDs inferred from names or paths.
The focus in /make-skill <focus> is required. For a natural-language request, infer it from the request and current conversation. Later user corrections replace conflicting earlier rules. Preserve stable guidance, contracts, templates, and workflows that should change future behavior; exclude one-off data, temporary paths, secrets, and retry chatter.
Read primary type and package, then choose one primary type and only the files it needs. When the proposed test mode is not off, read behavior testing before defining its target.
A stored batch is a parameterized run_tool_batch program bundled with a workflow Skill. Use batch: true when a reusable region's actions, branches, and success condition can be stated before execution and one stored entrypoint saves meaningful agent-tool round trips. The region may be the whole workflow, one substantial helper, or one semantic tool-native action; action count is not the criterion. Runtime data, observations, and a final agent review do not prevent batching when the rule for handling them is already known.
Use batch: false only when execution must invent the next action or success condition at runtime, or a shared entrypoint has no practical reuse value. If the user explicitly requests Batch, apply that choice to the plan without reopening eligibility.
Only after selecting batch: true, read run batch before finalizing the workflow and file tree. When batch: false, do not read it.
Planning is read-only except for saving the plan through create_plan.py: use conversation evidence and existing artifacts, but do not execute or probe the proposed workflow, create package files, or initialize a draft. For first creation, omit plan_id and pass a complete candidate:
{
"workspace": "<workspace>",
"plan": {
"revision": 1,
"focus": "One-sentence extraction scope",
"name": "lowercase-hyphen-name",
"goal": "Outcome for a future agent",
"type": "workflow",
"batch": true,
"steps": ["A user-reviewable workflow step"],
"package": ["SKILL.md", "scripts/run.batch.json"],
"execution": "foreground",
"test": {"mode": "off", "target": ""},
"warnings": []
}
}To revise, add the returned plan_id to the top-level input above and replace plan with the complete revised candidate, not a partial patch. This updates the existing plan without creating a copy. If an update reports missing-plan, return to planning and approval instead of building. A saved plan is not evidence of user approval.
Render the normalized plan in English and show the selected value together with every available choice so the user can revise it without knowing the schema. The user-visible plan must contain this compact options table; do not replace it with prose or an approval hint. Omit the Batch row for a non-workflow:
| Option | Selected | Available |
|---|---|---|
| Type | current English label | instruction / template / workflow |
| Batch (workflow only) | enabled or disabled | enabled / disabled |
| Execution | foreground or background | foreground / background |
| Behavior test | current English label | off / smoke / eval (full behavioral evaluation) |
Also show the name, goal, workflow, complete file tree, test target when applicable, and warnings. Pass the internal values instruction/template/workflow, true/false, foreground/background, and off/smoke/eval to the script. Do not invent a full enum or any choice outside the script schema. Do not show a Batch closing reason, schema, revision, or internal enum. Ask the user to approve, modify, or cancel, then end the response without further tool calls.
Only a new user message explicitly approving the latest displayed create_plan.py result permits Build. Invoking /make-skill starts planning; earlier task discussion or a hand-written outline does not replace this plan and approval step.
revision, and update the same plan. Revise serially within the current conversation, then show the complete returned plan for approval; earlier approval does not carry over.This version creates new Skills only. Resolve a name conflict through a newly approved revision; never overwrite an existing Skill.
After approval, run init_draft.py with the saved plan_id. Initialization snapshots the current plan into a new draft; later plan edits do not update that draft. It does not accept an inline replacement. If the plan is missing or invalid, return to planning instead of proceeding to Build.
execution selects whether the current agent or a background subagent completes Skill creation. After initialization, for background, use spawn_subagent with background: true and give the generic subagent the complete approved plan, latest corrections, workspace, draft_id, and skill_dir to author the files, validate, run the approved behavior test, and publish without requesting approval again. Report the creation result when finished; running the generated Skill outside the approved behavior test requires a separate user request.
Create only approved files under the returned skill_dir. Start the generated SKILL.md with valid frontmatter:
---
name: lowercase-hyphen-name
description: Briefly state the capability and when to use it.
---Keep the body to essential procedure and constraints without repeating the description. Type metadata is unnecessary.
Before validation, read the package from the perspective of a future agent that cannot see the source conversation. Remove references to source task directories, prior outputs, temporary IDs, current-case examples, or make-skill draft/publish language unless that resource is deliberately packaged and reusable. When adapting an existing helper, generalize its paths, docstrings, and reporting, and check that its implementation still matches the final reusable rules. Keep this as one authoring pass; do not add case-specific lifecycle checks.
Before executing any draft script or batch, run validate_skill.py for the initialized draft.
Fix reported static or security errors in the draft and validate again. Testing is independent of Batch: run exactly the approved behavior test according to behavior testing, and let off perform no draft execution. When a test or Batch run fails, retain the draft, report the concrete error, revise the Skill if the correction is clear, then validate again; do not hide the failure behind a fallback.
Publish the unchanged validated draft with publish_skill.py, using the validation result's digest as expected_digest.
On success, report the package tree, validation summary, test result when one ran, and invocation /<name>. On conflict or failure, retain the draft and report the error. Publishing a Skill is already persistent; do not also write it to MEMORY.md or daily memory unless the user separately asks.
© agentscope-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (scripts, references) in src/qwenpaw/agents/skills/make-skill-en of agentscope-ai/QwenPaw.
Open the folder on GitHubat commit 80e412d
Make Skill next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Make Skill this skillagentscope-ai/QwenPaw | 35k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Skill CreatorAzure/azqr | 794 | 89 repos | ~8.2k | Automated safety check: Pass | Apache-2.0 | |
| Claude Code Skill Developer Guidediet103/claude-code-infrastructure-showcase | 10k | 10 repos | ~3.5k | Automated safety check: Pass | MIT | |
| Darwin Skill Optimizeralchaincyf/darwin-skill | 6.2k | 1 repos | ~4.7k | Automated safety check: Pass | MIT | |
| Claude Code Command Developmentanthropics/claude-plugins-official | 37k | 10 repos | ~4.8k | Automated safety check: Pass | Apache-2.0 | |
| Claude Code Plugin Structureanthropics/claude-plugins-official | 37k | 10 repos | ~3.4k | Automated safety check: Pass | Apache-2.0 |
Azure/azqr
Create new skills, modify and improve existing skills, and measure skill performance.
diet103/claude-code-infrastructure-showcase
A guide to creating and managing Claude Code skills with auto-activation: skill-rules.json triggers, hooks, enforcement levels, YAML frontmatter and progressive disclosure.
alchaincyf/darwin-skill
Scores SKILL.md files on a nine-dimension rubric, then improves them in a keep-or-revert loop with independent judge agents, test prompts, git history and human checkpoints.
anthropics/claude-plugins-official
Explains how to write Claude Code slash commands: Markdown files with YAML frontmatter, arguments, file references, bash context and interactive prompts.
anthropics/claude-plugins-official
Explains the directory layout, plugin.json manifest and component organization of a Claude Code plugin, including auto-discovery and portable paths.
rohitg00/ai-engineering-from-scratch
Evaluates an Agent Skill bundle before release for structure, trigger quality, artifact improvement, script correctness, safety, installed-tree integrity and host portability.
agentscope-ai/QwenPaw
Guidance for writing and testing Terraform and OpenTofu code: module structure, naming, test approaches, CI/CD workflows, state handling and security scanning.
agentscope-ai/QwenPaw
Creates a focused workspace skill from the current conversation in QwenPaw, moving through a planning, approval, drafting, validation and publishing script pipeline.
agentscope-ai/QwenPaw
Creates and manages scheduled or recurring jobs with the qwenpaw cron commands, always tied to an explicit agent ID and a confirmed target channel.
agentscope-ai/QwenPaw
Creates, reads and edits Word .docx files, including tracked changes and comments, using docx-js for new files and XML editing for existing ones.
agentscope-ai/QwenPaw
Connects, registers, and operates a personal mailbox, reading, searching, sending, and organizing, through a managed mail server for nine domains.
agentscope-ai/QwenPaw
Gives the allowed_tools and skills preset for each OMP sub-agent role, to apply when calling spawn_subagent.
Categories
Turns reusable decisions, templates or workflows from the current conversation into a new workspace skill through plan, approval, draft, validation and publication. The agent creates one skill per run from stable guidance in the conversation: contracts, templates and workflows that should change future behavior, with later corrections replacing earlier rules and one-off data, temporary paths, secrets and retry chatter left out. `/make-skill` takes a required focus argument, or the agent infers it from a natural-language request such as turning a workflow into a skill.
Make Skill fits situations like: saving a workflow from this conversation as a reusable skill; turning a set of agreed conventions into a workspace skill; publishing a validated skill draft after you approve the plan.
Run `npx skills add agentscope-ai/QwenPaw --skill make-skill -a claude-code`. Or copy the skill folder (src/qwenpaw/agents/skills/make-skill-en in agentscope-ai/QwenPaw) into .claude/skills/make-skill in your project. Claude Code loads it when a task matches its description.
Run `npx skills add agentscope-ai/QwenPaw --skill make-skill -a codex`. Or copy the skill folder (src/qwenpaw/agents/skills/make-skill-en in agentscope-ai/QwenPaw) into .agents/skills/make-skill in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add agentscope-ai/QwenPaw --skill make-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/make-skill, .gemini/skills/make-skill, .github/skills/make-skill and .opencode/skills/make-skill in your project.
Going by SKILL.md and its folder, Make Skill needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python, to run the lifecycle scripts; A QwenPaw agent workspace with a `skills/` folder.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Make Skill is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.6k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Make Skill: Skill Creator (Azure/azqr, 794 stars), Claude Code Skill Developer Guide (diet103/claude-code-infrastructure-showcase, 10k stars), Darwin Skill Optimizer (alchaincyf/darwin-skill, 6.2k stars) and Claude Code Command Development (anthropics/claude-plugins-official, 37k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
agentscope-ai (a GitHub organization) maintains it in agentscope-ai/QwenPaw, which has 35,464 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on September 30, 2026.
Source: agentscope-ai/QwenPaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.