Token导航 LogoToken导航

Agent Skill · 研究检索

skill-creator(技能创建器)

skill-creator 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

skill-creator 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为操作浏览器;许可证信息还不明确,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 65,896。

总安装 272周安装 11GitHub Stars 4,817下载 85核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:skill-creator(技能创建器)
来源仓库:https://github.com/dtyq/magic
仓库路径:skills/skill-creator
安装命令:
npx skills add https://github.com/dtyq/magic --skill skill-creator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dtyq/magic --skill skill-creator

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

skill-creator 协助设计、构建与评估自定义技能,引导完成从需求分析到打包的全流程。适用于 Codex、Claude、Cursor、Gemini CLI 中希望定制专属工作流的开发者。采用访谈式交互逐步明确需求,生成 SKILL.md 模板供后续迭代使用。

输出内容保持英文为主,但支持多语言描述以满足本地化部署需求。适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

来源仓库内路径:skills/skill-creator

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/dtyq/magic --skill skill-creator;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

skill-creator 怎么安装?

在终端执行 npx skills add https://github.com/dtyq/magic --skill skill-creator。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

skill-creator 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

skill-creator 需要什么权限?

权限级别是操作浏览器。该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

skill-creator 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

skill-creator 用的人多吗?

公开数据是累计安装 272 次,近一周安装 11 次,下载 85 次,GitHub 4,817 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

skill-creator 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 来源仓库有 4,817 星,维护活跃度相对可查。

先想清楚的地方

  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
skill-creator

技能创建器 · 本页

2724,817操作浏览器未明确有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Skill Creator

Helps users design, build, evaluate, and persist Skills. Your core job is not "doing the task" but "teaching AI how to do a class of tasks".

High-level workflow: Capture Intent → Interview → Plan (write <skill>_plan.md + show in chat, wait for confirm) → Check Conflicts → Write SKILL.md → Test → Iterate → Optimize → Package. Assess where the user is and jump in from there.


  • description 字段建议保持英文(触发机制依赖英文语义),可附带 description-cn 字段 -->

Language Awareness

  • Always use the language the user is currently speaking in, unless the user explicitly requests a different language
  • Generate skill content (SKILL.md body, comments, examples) in the same language as the current conversation
  • For bilingual, use project conventions: <!--zh:...--> inline, <!--zh... --> block
  • Keep description in English (triggering relies on English semantics); optionally add description-cn

Tool Call Format in SKILL.md

Tools in SKILL.md fall into two categories with different formats:

  1. Tools listed in references/super-magic-tools.md: These run inside Python code snippets (via run_sdk_snippet) and must be shown as Python code:
from sdk.tool import tool

result = tool.call('tool_name', {
    "param1": "value1",
    "param2": "value2"
})

if result.ok and result.data:
    output = result.data['field_name']
  1. Basic tools (e.g. read_files, read_skills, skill_list, shell_exec, run_python_snippet): Call them directly, no need to wrap in Python code:
read_files(files=[{"file_path": "path/to/file.md"}])

Before specifying tools in the skill, read the reference file references/super-magic-tools.md for the full list of available tools and usage examples.

Common tool categories — quick reference (see references/super-magic-tools.md for details and examples):

  • Web search & fetch: web_search, read_webpages_as_markdown, download_from_url, download_from_urls
  • Vision: visual_understanding, visual_understanding_webpage
  • Code execution: shell_exec, run_python_snippet
  • Image generation & search: generate_image, image_search

Full Skill Creation Workflow

Phase 1: Capture Intent

Understand what the user wants. If the conversation already contains a workflow (e.g., "turn this into a skill"), extract from history: tools used, step sequence, corrections made, input/output formats.

Then confirm:

  1. What should this skill enable AI to do?
  2. When should it trigger? (what user phrases/contexts)
  3. What is the final output form? (see "Output Form Decision" below — must be decided here)
  4. Should we set up test cases?

Output Form Decision (Required in Capture Intent Phase)

This is critical for high-quality skills. Determine the output form and write it explicitly into the generated SKILL.md.

ScenarioRecommended Output Form
Multi-section content: itineraries, reports, analysisWrite file (Markdown / HTML)
Charts, visualizationsWrite HTML file (ECharts)
Multiple generated resourcesWrite files to a dedicated directory
Short reply, status confirmationDirect conversation output
User explicitly says "just tell me"Direct conversation output

Example: a "travel planning skill" should clearly produce an HTML itinerary report, not dump text into the chat. Ask and confirm during the interview, then write an explicit "Output Spec" section in the generated SKILL.md.

## Output Spec

<!--zh: 本 skill 的最终产物是一份 HTML 格式的行程报告,保存到 `.workspace/<project_name>/itinerary.html`。不要将内容直接输出到对话中。-->
The final output of this skill is an HTML itinerary report saved to `.workspace/<project_name>/itinerary.html`.
Do not output content directly into the conversation, even if it is short.

Phase 2: Interview & Research

Proactively ask about edge cases, input/output formats, example files, success criteria, dependencies. Use web_search and read_webpages_as_markdown to research best practices and API docs. Wait until the interview is done before writing test cases.

Note: This environment has no browser, but web_search and read_webpages_as_markdown are available. Use them to research best practices, tool docs, and description patterns for similar skills.


Phase 3: Output Plan Document

After the interview, write the plan to <workspace-skills-dir>/<skill-name>_plan.md (at the root of <workspace-skills-dir>/, not inside the skill subdirectory — this avoids pre-creating the skill directory). Also present the plan in chat for the user to read.

Plan document contents:

  • Skill scope and boundaries (what it can/cannot do)
  • Tool list with selection rationale (with code format examples)
  • Expected SKILL.md structure outline
  • Whether scripts/, references/, assets/ subdirectories are needed
  • Final output form (from Phase 1 decision)
  • Evaluation plan (test prompts, expected outputs)

Wait for user confirmation before proceeding to Phase 4.


Phase 4: Check Conflicts and Write Files

After user confirms the plan, check for name conflicts first, then create files.

Conflict check — call the skill_list tool directly (it is always available, no Python wrapper needed):

tool: skill_list
params: { "source": "all" }

Check the returned list for a skill with the same name. Do not run any shell command for this step.

Conflict rules:

  • Same name is a built-in skill (system level, can_override: false): Cannot overwrite.

- Ask the user to pick a new name, re-confirm, then write to skills/<new-name>/.

  • Same name already exists at <workspace-skills-dir>/<name>/: Ask user for confirmation.

- If confirmed: delete the entire directory first, then recreate from scratch (do not edit in place).

  • No conflict: proceed to write files directly.

Writing SKILL.md:

SKILL.md must start with YAML frontmatter — the packaging validator rejects files without it.

---
name: skill_name
description: "One sentence on what this skill does. Use when [specific trigger conditions — what the user is trying to accomplish]. Also use when user says [example phrases like 'do X', 'help me with Y', 'turn this into Z']."
description-cn: "中文描述(可选)"
---

# Skill Name

...body content...

Frontmatter fields:

  • name (required): lowercase letters/digits/underscores only; must not be empty; must start with a letter; no trailing underscore; no consecutive underscores (__); length 2–64 chars; must exactly match the directory name
  • description (required): English, max 1024 chars, no angle brackets < >. Must contain two parts:

1. Capability summary: what this skill does (one sentence) 2. Trigger conditions: when the AI should load it ("Use when...") and example user phrases ("Also use when user says...") The more specific the trigger conditions, the more accurately the AI will recognize when to load this skill. A description with no trigger guidance causes the skill to either never load or trigger on the wrong requests.

  • description-cn (optional): Chinese description
  • Other common optional keys: license, allowed-tools, metadata, compatibility; you may add any extra YAML keys as needed (e.g. description-cn)

Note: Packaging validation only requires name and description in frontmatter; there is no fixed whitelist of keys.

Directory structure (paths relative to .workspace/, i.e. use <workspace-skills-dir>/<skill-name>/... with file tools):

<workspace-skills-dir>/<skill-name>/
├── SKILL.md          (required)
├── (no plan.md here — plan file lives at <workspace-skills-dir>/<skill-name>_plan.md)
├── evals/
│   └── evals.json    (test cases)
├── scripts/          (executable scripts, optional)
├── references/       (reference docs loaded on demand, optional)
└── assets/           (templates, icons, fonts, optional)

Progressive loading principle:

  1. Metadata (name + description): always in context (~100 words)
  2. SKILL.md body: loaded when triggered (ideally < 500 lines)
  3. Subdirectory resources: loaded on demand (no size limit)

Keep SKILL.md concise. Move complex content to references/, with clear pointers in the body about when to read them.

Write skill_config.yaml:

After all skill files are written, immediately write (overwrite if exists) <workspace-skills-dir>/skill_config.yaml with YAML content.

Only write the dir field — this file tracks which skill directory was most recently created:

skill:
  dir: "my-skill"

Phase 5: Test

Write 2-3 realistic test prompts — the kind a real user would actually say. Share with the user first.

Save test cases to <workspace-skills-dir>/<skill-name>/evals/evals.json (relative to .workspace/):

{
  "skill_name": "my-skill",
  "evals": [
    {
      "id": 1,
      "prompt": "User's task prompt",
      "expected_output": "Description of expected result",
      "assertions": []
    }
  ]
}

Running tests (using using-llm to simulate with_skill / baseline):

This environment has no sub-agents. Use using-llm to call an LLM programmatically:

  1. Load using-llm skill and read the SKILL.md content
  2. For each test case, make two LLM calls:

- with_skill: system prompt includes the full SKILL.md content - baseline: system prompt is a generic task description only, no SKILL.md

  1. Write results to <workspace-skills-dir>/<skill-name>/evals/iteration-N/case-N-with_skill.json and case-N-baseline.json
  2. Grade outputs against assertions, write grading.json

Results directory: <workspace-skills-dir>/<skill-name>/evals/iteration-N/ (relative to .workspace/)

Grading and aggregation:

# <workspace-eval-path>: 工作区该轮评测目录的绝对路径
#   例如 /app/.workspace/<workspace-skills-dir>/<skill-name>/evals/iteration-N
shell_exec(
    command='python scripts/aggregate_benchmark.py <workspace-eval-path> --skill-name <skill-name>'
)

Generating eval report (no browser — output static HTML): This environment has no browser. Use --static mode to output a standalone HTML file.

# 路径均为工作区绝对路径
shell_exec(
    command='python eval-viewer/generate_review.py <workspace-eval-path> --skill-name <skill-name> --benchmark <workspace-eval-path>/benchmark.json --static <workspace-reports-path>/<skill-name>-eval-iteration-N.html'
)

After generation, tell the user the report path so they can open it in the frontend file manager.


Phase 6: Iterate

Improve the skill based on user feedback:

  1. Apply improvements to SKILL.md
  2. Put new test results in iteration-N+1/ directory
  3. Regenerate the report, pass --previous-workspace pointing at the previous iteration

Continue until: user is satisfied, all feedback is empty, or no meaningful progress.

When improving, keep in mind:

  • Generalize from feedback — the skill must work for a million future prompts, not just your test cases
  • Keep SKILL.md lean — remove things not pulling their weight
  • Explain the "why" — LLMs respond better to reasoning than rigid rules

Phase 7: Description Optimization

After creating or improving a skill, offer to optimize the description field for better triggering accuracy.

This project uses the using-llm skill for description evaluation:

  1. Generate 20 test queries (mix of should-trigger / should-not-trigger); have user confirm
  2. Load using-llm skill; use LLM to simulate "would AI load this skill given this description?"
  3. Test different description versions, compare trigger rates
  4. Update SKILL.md frontmatter with the best-performing description

See references/super-magic-tools.md for the detailed procedure.


Optional: Security Review

If the user wants to verify the security of the newly created skill before packaging or sharing — for example, to confirm it contains no dangerous patterns — load skill-vetter to run a review:

read_skills(skill_names=["skill-vetter"])

Phase 8: Ask About Packaging and Upload

After the skill is done and user-confirmed, always ask:

"Would you like to package this skill and upload it to your skill library? Or just package without uploading?"

Important: If the user only asks to "package", "pack only", or "build the.zip file" without clearly requesting upload to the skill library, you must use the package-only command (do not pass --upload). Only use --upload when the user explicitly agrees to upload or uses phrasing like "package and upload" / "upload to my skill library".

package_skill.py automatically runs quick_validate.py before packaging. Checks include:

  1. Directory name and name field must contain only English letters, digits, and underscores — no hyphens, Chinese characters, spaces, or other special characters
  2. name field must exactly match the directory name

If validation fails, fix the issues and retry.

Package only (default CLI; use when user asks only to package):

# <workspace-skill-path>: 工作区 skills 目录下该 skill 的绝对路径
#   例如 /app/.workspace/<workspace-skills-dir>/<skill-name>
# 不传 output_dir,默认输出到 skill 目录的父目录,即 <workspace-skills-dir>/<skill-name>-v1.0.0.zip
# 可省略 --no-upload(与默认等价)
shell_exec(
    command='python scripts/package_skill.py <workspace-skill-path> --version 1.0.0'
)

Package and upload to skill library (only when user explicitly wants upload; requires --upload; this runs package_skill.py then upload_skill.py in sequence):

# 可选参数: --name-zh "中文名称" --name-en "English Name"(传给 upload_skill.py)
shell_exec(
    command='python scripts/package_skill.py <workspace-skill-path> --version 1.0.0 --upload'
)

Package first, upload later (two separate steps): Run packaging only first; when the user wants to upload, call upload_skill.py with the path to the generated .zip file.

shell_exec(
    command='python scripts/upload_skill.py <absolute-path-to-.zip-file>'
)

Optional: python scripts/upload_skill.py <path> --name-zh "..." --name-en "..."

  • --version is optional but recommended for first release
  • --name-zh / --name-en are optional i18n name overrides when uploading (--upload or standalone upload_skill.py); if omitted the name from SKILL.md frontmatter is used
  • Do not package by default. Do not skip this step.



Reference Files

  • references/super-magic-tools.md — Detailed descriptions and Python call examples for all available project tools
  • references/schemas.md — JSON schemas for evals.json, grading.json, etc.

平台分布

Codex

36.35%
按下载量换算31

Claude

29.57%
按下载量换算25

Cursor

18.47%
按下载量换算16

Gemini CLI

8.72%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills