notis-skill-creator

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Notis Skill Creator

Notis Skill 创建指南

This skill guides the process of creating new skills from scratch or iterating on existing ones. A skill is a self-contained unit of instructions, references, and optional scripts that extend the assistant's capabilities.
本Skill指导从 scratch 创建新Skill或迭代现有Skill的流程。Skill是一个包含指令、参考资料和可选脚本的独立单元,用于扩展助手的能力。

When to Use This Skill

何时使用本Skill

  • User wants to create a new skill (e.g., "Create a skill for X", "I need a skill that does Y")
  • User is iterating on or packaging an existing skill
  • User asks how to structure, validate, or distribute a skill
  • 用户想要创建新Skill(例如:“为X创建一个Skill”、“我需要一个能完成Y的Skill”)
  • 用户正在迭代或打包现有Skill
  • 用户询问如何构建、验证或分发Skill

Skill Development Workflow

Skill开发工作流

Step 1: Define the Skill

步骤1:定义Skill

Before creating files, clarify:
  • Name — kebab-case (e.g.,
    my-skill
    ,
    api-helper
    )
  • Description — One or two sentences: what the skill does and when to use it
  • Scope — Instructions only, or instructions + scripts/references/assets
在创建文件前,明确以下内容:
  • 名称 — 使用kebab-case格式(例如:
    my-skill
    api-helper
  • 描述 — 1-2句话:说明该Skill的功能及适用场景
  • 范围 — 仅包含指令,还是指令+脚本/参考资料/资源文件

Step 2: Plan the Contents

步骤2:规划内容

  • SKILL.md — Required. Contains YAML frontmatter (
    name
    ,
    description
    ) and the main instructions.
  • scripts/ — Optional. Executable code (Python, Bash, etc.) the assistant can run.
  • references/ — Optional. Documentation or reference files loaded on demand.
  • assets/ — Optional. Templates, images, or other files used in outputs.
  • SKILL.md — 必填文件。包含YAML前置元数据(
    name
    description
    )及主要指令。
  • scripts/ — 可选目录。存放助手可运行的可执行代码(Python、Bash等)。
  • references/ — 可选目录。存放按需加载的文档或参考文件。
  • assets/ — 可选目录。存放输出中使用的模板、图片或其他文件。

Step 3: Initializing the Skill

步骤3:初始化Skill

At this point, it is time to actually create the skill.
Skip this step only if the skill being developed already exists, and iteration or packaging is needed. In this case, continue to the next step.
When creating a new skill from scratch, create the directory structure manually:
bash
mkdir -p my-skill/scripts my-skill/references my-skill/assets
Then create
my-skill/SKILL.md
with the proper YAML frontmatter:
markdown
---
name: my-skill
description: "Description of what this skill does and when to use it"
---
此时可以开始实际创建Skill。
仅当要开发的Skill已存在,且需要进行迭代或打包时,才跳过此步骤,直接进入下一步。
从零创建新Skill时,手动创建目录结构:
bash
mkdir -p my-skill/scripts my-skill/references my-skill/assets
然后创建
my-skill/SKILL.md
并添加正确的YAML前置元数据:
markdown
---
name: my-skill
description: "Description of what this skill does and when to use it"
---

My Skill

My Skill

Instructions

Instructions

(Add your skill instructions here)

Create any supporting files in the appropriate directories:

- `scripts/` for executable code (Python, Bash, etc.)
- `references/` for documentation to be loaded on demand
- `assets/` for files used in output (templates, images, etc.)
(Add your skill instructions here)

在对应目录中创建所需的支持文件:

- `scripts/` 存放可执行代码(Python、Bash等)
- `references/` 存放按需加载的文档
- `assets/` 存放输出中使用的文件(模板、图片等)

Step 4: Writing and Iterating

步骤4:编写与迭代

  • Keep instructions clear and actionable. Include when to use the skill, required inputs, and expected outputs.
  • Reference scripts or assets by path (e.g.,
    scripts/helper.py
    ,
    references/glossary.md
    ).
  • Test the skill by having the assistant follow it in a real scenario.
  • 保持指令清晰且可执行。包含Skill的适用场景、所需输入及预期输出。
  • 通过路径引用脚本或资源(例如:
    scripts/helper.py
    references/glossary.md
    )。
  • 通过让助手在真实场景中遵循指令来测试Skill。

Step 5: Save the Skill in Notis

步骤5:在Notis中保存Skill

When the user wants a Notis skill created, saved, or updated, save it directly in Notis by default. Do not make the user manually download and upload a zip unless they explicitly ask for an export.
For a simple skill that only needs a
SKILL.md
:
  1. Finish the
    SKILL.md
    content.
  2. Call
    notis_create_skill
    with:
    • name
    • description
    • skill_md
For a multi-file skill that needs
scripts/
,
references/
, or
assets/
:
  1. Build the skill folder locally.
  2. Package it into a zip:
bash
cd /path/to/parent && zip -r my-skill.zip my-skill/
  1. Wait for Notis to surface the generated file's public URL in the shell/file context.
  2. Call
    notis_create_skill
    with:
    • name
    • description
    • bundle_url
Before saving, validate your skill:
  • SKILL.md
    exists with proper YAML frontmatter (
    name
    and
    description
    fields)
  • Skill name follows kebab-case (lowercase letters, digits, and hyphens)
  • Description clearly explains what the skill does and when to use it
Only hand the zip file back to the user when they explicitly ask for the bundle itself.
当用户想要创建、保存或更新Notis Skill时,默认直接在Notis中保存。除非用户明确要求导出,否则不要让用户手动下载并上传压缩包。
对于仅需
SKILL.md
的简单Skill:
  1. 完成
    SKILL.md
    内容。
  2. 调用
    notis_create_skill
    ,传入以下参数:
    • name
    • description
    • skill_md
对于包含
scripts/
references/
assets/
的多文件Skill:
  1. 在本地构建Skill文件夹。
  2. 将其打包为zip文件:
bash
cd /path/to/parent && zip -r my-skill.zip my-skill/
  1. 等待Notis在shell/文件环境中生成文件的公共URL。
  2. 调用
    notis_create_skill
    ,传入以下参数:
    • name
    • description
    • bundle_url
保存前,验证你的Skill:
  • 存在
    SKILL.md
    且包含正确的YAML前置元数据(
    name
    description
    字段)
  • Skill名称遵循kebab-case格式(小写字母、数字和连字符)
  • 描述清晰说明Skill的功能及适用场景
仅当用户明确要求获取压缩包时,才将zip文件交给用户。

SKILL.md Frontmatter

SKILL.md前置元数据

Every skill must have a SKILL.md with at least:
yaml
---
name: skill-name
description: "Clear description of what the skill does and when to use it."
---
  • name — kebab-case identifier; used for packaging and display.
  • description — Shown in skill lists and used for triage; be specific.
每个Skill必须包含SKILL.md,且至少包含以下内容:
yaml
---
name: skill-name
description: "Clear description of what the skill does and when to use it."
---
  • name — kebab-case格式的标识符;用于打包和显示。
  • description — 显示在Skill列表中,用于分类筛选;需具体明确。

Best Practices

最佳实践

  1. One clear purpose — Each skill should do one thing well.
  2. Good description — The description is used to decide when to invoke the skill; make it searchable and precise.
  3. Stable structure — Use
    scripts/
    ,
    references/
    ,
    assets/
    consistently so users and tools know where to find things.
  4. Validate before packaging — Check frontmatter, naming, and that all referenced files exist.
  1. 单一明确用途 — 每个Skill应专注做好一件事。
  2. 优质描述 — 描述用于决定何时调用Skill;需具备可搜索性且精准。
  3. 稳定结构 — 统一使用
    scripts/
    references/
    assets/
    目录,方便用户和工具查找内容。
  4. 打包前验证 — 检查前置元数据、命名规范及所有引用文件是否存在。

Notis-Specific Notes

Notis专属说明

  • Notis should save new skills directly with
    notis_create_skill
    whenever possible.
  • Zip bundles are still valid internally, but they should usually be passed back into Notis through
    bundle_url
    , not handed to the user for manual upload.
  • The Notis repo stores only Notis-specific skills under
    skills/
    ; other skills (e.g., from Anthropic) are synced from their sources.
  • When Notis Desktop Sync is enabled in the Electron app, skills created via
    notis_create_skill
    are automatically pulled to
    ~/.agents/skills/
    and symlinked to local agents (Claude Code, Cursor, Codex). Conversely, skills created locally in
    ~/.agents/skills/
    are auto-pushed to the Notis portal. No manual sync step is needed.
  • 只要可能,Notis应使用
    notis_create_skill
    直接保存新Skill。
  • Zip压缩包在内部仍然有效,但通常应通过
    bundle_url
    传入Notis,而非交给用户手动上传。
  • Notis仓库仅在
    skills/
    目录下存储Notis专属Skill;其他Skill(例如来自Anthropic的Skill)从其源同步。
  • 当Electron应用中启用Notis Desktop Sync时,通过
    notis_create_skill
    创建的Skill会自动同步到
    ~/.agents/skills/
    并链接到本地助手(Claude Code、Cursor、Codex)。反之,在
    ~/.agents/skills/
    本地创建的Skill会自动推送到Notis门户。无需手动同步步骤。