skillify
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chinese/skillify — Create, adapt, or update a skill
/skillify — 创建、适配或更新技能
One skill, three modes. Routes automatically to the right one based on input signal.
Consolidates and replaces the prior , , and (all merged as of v0.2.0 for vocabulary-moat consistency with the trifecta).
create-skilladapt-skillupdate-skill-ify一个技能,三种模式。会根据输入信号自动路由到正确的模式。
整合并替换了之前的、和(从v0.2.0版本开始合并,以与-ify三部曲保持词汇一致性)。
create-skilladapt-skillupdate-skillStep 0 — Detect mode
步骤0 — 检测模式
Route by signal:
| Signal | Mode |
|---|---|
| Invoked mid-conversation with substantive recent workflow discussion | CREATE / from-chat (default) |
| CREATE / from-video |
| CREATE / from-dump |
| CREATE / from-scratch |
| ADAPT |
| UPDATE / targeted |
| UPDATE / from-chat — scan recent chat for learnings |
| UPDATE / usage — review recent runs, suggest improvements |
If ambiguous, ask before proceeding. Never guess between CREATE and ADAPT if there's an external URL involved.
根据信号路由:
| 信号 | 模式 |
|---|---|
| 在包含实质性近期工作流讨论的对话中途调用 | CREATE / from-chat(默认) |
| CREATE / from-video |
| CREATE / from-dump |
| CREATE / from-scratch |
| ADAPT |
| UPDATE / 定向更新 |
| UPDATE / from-chat — 扫描近期对话获取经验 |
| UPDATE / 使用记录 — 查看近期运行情况,提出改进建议 |
如果存在歧义,请先询问再继续。如果涉及外部URL,切勿在CREATE和ADAPT模式之间猜测。
Mode: CREATE
模式:CREATE
Build a new skill from chat / video / dump / scratch.
从对话/视频/转储内容/从零开始构建新技能。
Step 1 — Confirm the input source
步骤1 — 确认输入来源
| Sub-mode | What |
|---|---|
| from-chat (default) | Extract the skill from the workflow discussed in this conversation. Most common case. |
| from-video | User recorded a Loom / Zoom / screen-share. Calls |
| from-dump | User pastes a brief, prior conversation transcript, exported chat, or notes. |
| from-scratch | Fresh idea with no source material — interactive Q&A. |
| 子模式 | 说明 |
|---|---|
| from-chat(默认) | 从本次对话中讨论的工作流提取技能。最常见的情况。 |
| from-video | 用户录制了Loom/Zoom/屏幕共享视频。在可视化模式下调用 |
| from-dump | 用户粘贴了简报、先前对话的转录稿、导出的聊天记录或笔记。 |
| from-scratch | 无素材的全新想法 — 交互式问答。 |
Step 2 — Defer to Anthropic guidance for the schema
步骤2 — 遵循Anthropic的Schema指导
Don't reinvent SKILL.md format rules. For frontmatter, description-writing, references/ structure, and skill best practices:
- (agent) — expert guidance for creating + editing Claude Code skills
compound-engineering:create-agent-skill - (skill) — deeper guide for effective skills
compound-engineering:skill-creator - (skill) — for fixing existing skills
compound-engineering:heal-skill - anthropics/skills — official Anthropic examples
- agentskills.io — open Agent Skills spec
Call those directly when in doubt about format. orchestrates your workflow — which repo, which conventions, which cross-references. Format expertise lives upstream.
skillify不要重新发明SKILL.md格式规则。对于前置元数据、描述撰写、参考/结构以及技能最佳实践:
- (Agent) — 创建和编辑Claude Code技能的专家指导
compound-engineering:create-agent-skill - (Skill) — 有效技能的深度指南
compound-engineering:skill-creator - (Skill) — 修复现有技能的指南
compound-engineering:heal-skill - anthropics/skills — Anthropic官方示例
- agentskills.io — 开放Agent Skills规范
当对格式有疑问时直接调用上述资源。负责编排你的工作流 — 选择哪个仓库、遵循哪些约定、添加哪些交叉引用。格式相关的专业知识来自上游。
skillifyStep 3 — Pick target repo
步骤3 — 选择目标仓库
Load the user's sibling repo list from if present. Otherwise default to (this repo). Example format:
${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/skillify/repos.yamlmakerskillsyaml
undefined如果存在配置文件,则从加载用户的兄弟仓库列表。否则默认使用(本仓库)。示例格式:
${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/skillify/repos.yamlmakerskillsyaml
undefined~/.config/makerskills/skillify/repos.yaml
~/.config/makerskills/skillify/repos.yaml
repos:
- name: makerskills domain: Personal cross-cutting operator work path: ~/code/makerskills
- name: marketingskills domain: Generic marketing tactics path: ~/code/marketingskills
Infer target if obvious from the skill's domain; ask if ambiguous.repos:
- name: makerskills domain: Personal cross-cutting operator work path: ~/code/makerskills
- name: marketingskills domain: Generic marketing tactics path: ~/code/marketingskills
如果从技能领域可以明显推断出目标仓库,则自动选择;如果存在歧义,则询问用户。Step 4 — Synthesize per sub-mode
步骤4 — 按子模式合成技能
from-chat:
- Read backward through this conversation. Look for a workflow repeated multiple times, a process re-explained, opinions restated, tooling/voice/output decisions.
- Identify the load-bearing pieces: trigger, steps, references, success shape, voice.
- Surface gaps that need clarification before scaffolding — ask 2–4 tight questions.
- Draft SKILL.md, citing chat moments inline ("Per your message about X…") so the user can verify.
from-dump:
- Parse the dump (Notion page, Slack thread, Loom transcript, teammate brief, exported ChatGPT conversation).
- Same synthesis logic as from-chat.
- Cite where in the dump each rule came from.
from-video:
- Take the URL or local path.
- Call — get transcript + key visual moments + summary.
watch-video <url> visual - Read outputs: ,
<workdir>/transcript.txt,<workdir>/moments.md.<workdir>/summary.md - Synthesize: trigger (first 30s), steps (visual moments + matching transcript), tools used, decision points ("if X do Y" moments), success shape (last few seconds), voice cadence.
- Surface gaps — ambiguous moments needing clarification.
- Draft SKILL.md citing video moments by timestamp.
- Optionally save the source to as
second-brainorcall-<slug>.md.note-<slug>.md
Heuristic: recording >10 minutes = process probably too big for one skill. Suggest splitting before drafting.
from-scratch:
Interactive Q&A:
- Name (kebab-case, verb-noun preferred — matches ,
watch-video,read-book)paste - One-line purpose
- Trigger phrases (4–8)
- Initial reference files?
- Composes with which other skills?
from-chat:
- 逆向阅读本次对话。寻找重复多次的工作流、重新解释的流程、重申的观点、工具/语气/输出决策。
- 识别核心要素:触发条件、步骤、参考资料、成功标准、语气。
- 指出在搭建技能前需要澄清的空白点 — 提出2-4个精准问题。
- 起草SKILL.md,在文中引用对话片段(“根据你关于X的消息……”)以便用户验证。
from-dump:
- 解析转储内容(Notion页面、Slack线程、Loom转录稿、同事简报、导出的ChatGPT对话)。
- 使用与from-chat相同的合成逻辑。
- 注明每条规则来自转储内容的哪个位置。
from-video:
- 获取URL或本地路径。
- 调用— 获取转录稿 + 关键视觉时刻 + 摘要。
watch-video <url> visual - 读取输出:、
<workdir>/transcript.txt、<workdir>/moments.md。<workdir>/summary.md - 合成内容:触发条件(前30秒)、步骤(视觉时刻 + 匹配的转录内容)、使用的工具、决策点(“如果X则执行Y”的时刻)、成功标准(最后几秒)、语气节奏。
- 指出空白点 — 需要澄清的模糊时刻。
- 起草SKILL.md,按时间戳引用视频片段。
- 可选:将源内容保存到,命名为
second-brain或call-<slug>.md。note-<slug>.md
启发式规则:时长超过10分钟的录制内容 → 流程可能太大,不适合单个技能。建议在起草前拆分。
from-scratch:
交互式问答:
- 名称(短横线分隔,优先使用动词-名词格式 — 与、
watch-video、read-book匹配)paste - 一行描述的用途
- 触发短语(4-8个)
- 初始参考文件?
- 与哪些其他技能组合使用?
Step 5 — Generate frontmatter
步骤5 — 生成前置元数据
yaml
---
name: <kebab-case>
description: <rich, trigger-rich, ~2–4 sentences. Lead with "When you want to..." Include 4–8 trigger phrases in quotes. Differentiate from adjacent skills.>
metadata:
version: 0.1.0
---Description rules (load-bearing — Claude routes by description match):
- Lead with the use case ("When you want to X…")
- Include explicit trigger phrases
- Differentiate from sibling skills
- Mention key references the skill loads
- Keep under ~500 characters
For deeper description-writing guidance, consult .
compound-engineering:skill-creatoryaml
---
name: <kebab-case>
description: <丰富、包含触发词的描述,约2-4句话。以“When you want to...”开头。包含4-8个带引号的触发短语。与同类技能区分开。>
metadata:
version: 0.1.0
---描述规则(核心要求 — Claude会根据描述匹配进行路由):
- 以使用场景开头(“当你想要X时……”)
- 包含明确的触发短语
- 与同类技能区分开
- 提及技能加载的关键参考资料
- 保持在约500字符以内
如需更深入的描述撰写指导,请参考。
compound-engineering:skill-creatorStep 6 — Scaffold the directory
步骤6 — 搭建目录结构
<target-repo>/skills/<name>/
├── SKILL.md
└── references/
└── ...Body follows existing skills' pattern (, , ):
pmdecidesecond-brain# /<name> — <one-line purpose>- Numbered sections
## Step N — <phase> - Composes-with cross-references
- Quality notes at the end
<target-repo>/skills/<name>/
├── SKILL.md
└── references/
└── ...正文遵循现有技能的模式(、、):
pmdecidesecond-brain# /<name> — <一行用途描述>- 编号的部分
## 步骤N — <阶段> - 组合使用的交叉引用
- 末尾的质量说明
Step 7 — Update README, commit, push
步骤7 — 更新README、提交并推送
Append to target repo's README skill table:
markdown
| [`<name>`](./skills/<name>/SKILL.md) | <one-line purpose> |Commit + push. Report new skill path, commit hash, and reminder that or symlink may need a refresh.
/plugin install将技能添加到目标仓库的README技能表格中:
markdown
| [`<name>`](./skills/<name>/SKILL.md) | <一行用途描述> |提交并推送。报告新技能路径、提交哈希值,并提醒可能需要刷新或符号链接。
/plugin installStep 8 — Offer follow-ups
步骤8 — 提供后续操作选项
- "Flesh out a specific Step now, or come back to it?"
- "Run through for a quality pass?"
compound-engineering:heal-skill - "Should this compose with [adjacent skill]?"
- “现在完善某个具体步骤,还是以后再处理?”
- “运行进行质量检查?”
compound-engineering:heal-skill - “是否要让这个技能与[同类技能]组合使用?”
Mode: ADAPT
模式:ADAPT
Port an external skill (GitHub URL, agentskills.io, local disk, or pasted SKILL.md) into your namespace.
将外部技能(GitHub URL、agentskills.io、本地磁盘或粘贴的SKILL.md内容)移植到你的命名空间。
Step 1 — Fetch the source
步骤1 — 获取源技能
Accept:
- GitHub URL to a SKILL.md or repo (or full path to SKILL.md)
https://github.com/<owner>/<repo> - agentskills.io URL or skills.sh URL
- Local path to an existing skill on disk (other plugins in )
~/.claude/plugins/ - Pasted SKILL.md content
bash
undefined接受以下来源:
- GitHub URL指向SKILL.md或仓库(或SKILL.md的完整路径)
https://github.com/<owner>/<repo> - agentskills.io URL或skills.sh URL
- 本地路径指向磁盘上的现有技能(中的其他插件)
~/.claude/plugins/ - 粘贴的SKILL.md内容
bash
undefinedGitHub repo: clone shallow
GitHub仓库:浅克隆
git clone --depth 1 <url> /tmp/skillify-adapt-<short-id>/
git clone --depth 1 <url> /tmp/skillify-adapt-<short-id>/
OR fetch a single file
或获取单个文件
gh api -H "Accept: application/vnd.github.raw" repos/<owner>/<repo>/contents/SKILL.md > /tmp/adapt-source.md
Capture the commit SHA so attribution can point at a stable revision.gh api -H "Accept: application/vnd.github.raw" repos/<owner>/<repo>/contents/SKILL.md > /tmp/adapt-source.md
捕获提交SHA,以便署名指向稳定的版本。Step 2 — Analyze + classify
步骤2 — 分析与分类
Read source SKILL.md + any it ships. Classify into three buckets per :
references/references/adapt-buckets.md| Bucket | What | Example |
|---|---|---|
| Keep verbatim | Format, schema, mechanic, scripts, frameworks | Question banks, ffmpeg flags, regex patterns, JSON schemas |
| Adapt | Tool defaults, paths, voice, naming, opinions | Their video tool → your |
| Add | Cross-references to your existing skills, composition notes, your conventions | "Composes with |
Output classification as a table for approval before writing anything. Don't silently rewrite — surface the changes.
读取源SKILL.md及其附带的内容。根据分为三类:
references/references/adapt-buckets.md| 分类 | 说明 | 示例 |
|---|---|---|
| 完全保留 | 格式、Schema、机制、脚本、框架 | 题库、ffmpeg参数、正则表达式、JSON Schema |
| 需要适配 | 工具默认值、路径、语气、命名、观点 | 他们的视频工具 → 你的 |
| 需要添加 | 与你现有技能的交叉引用、组合说明、你的约定 | "与 |
在开始编写前,将分类结果以表格形式输出供用户批准。不要静默重写 — 要明确展示更改内容。
Step 3 — License check
步骤3 — 许可证检查
Read the source's LICENSE. Per :
references/adapt-license-check.md| License | Action |
|---|---|
| MIT / Apache-2.0 / BSD / ISC / CC0 | ✅ Green — proceed |
| MPL-2.0 / LGPL | 🟡 Yellow — adapt OK; warn about file-level reciprocity |
| GPL-2.0 / GPL-3.0 / AGPL | ❌ Red — contagion risk. Surface before proceeding. |
| Proprietary / no license | ❌ Red — stop. No legal basis to copy. |
| Unclear | 🟡 Yellow — ask, default to skip if uncertain |
For permissive licenses, attribution is the only requirement — handled in Step 6.
读取源技能的LICENSE文件。根据:
references/adapt-license-check.md| 许可证 | 操作 |
|---|---|
| MIT / Apache-2.0 / BSD / ISC / CC0 | ✅ 绿色 — 继续 |
| MPL-2.0 / LGPL | 🟡 黄色 — 可适配;提醒文件级互惠要求 |
| GPL-2.0 / GPL-3.0 / AGPL | ❌ 红色 — 存在传染风险。继续前需告知用户。 |
| 专有/无许可证 | ❌ 红色 — 停止。无复制的法律依据。 |
| 不明确 | 🟡 黄色 — 询问用户,不确定时默认跳过 |
对于宽松许可证,仅需署名即可 — 在步骤6中处理。
Step 4 — Pick target repo
步骤4 — 选择目标仓库
Same table as CREATE Step 3.
与CREATE模式步骤3相同。
Step 5 — Rewrite
步骤5 — 重写
Keep verbatim: copy as-is; add marker if helpful.
<!-- from <source> -->Adapt:
- Naming: rename to verb-noun if not (matches ,
watch-video,read-book)paste - Tool swaps: their generic kanban → , their video tool →
pm, their note system →watch-video, their decision framework →second-braindecide - Voice: apply your voice rules — direct, conviction-coded. For social-adjacent skills, apply link-placement rule.
- Paths: their → your
~/outputs/convention; their config → your~/Documents/<skill>-<...>/patternreferences/ - Names + context: generic examples → your portfolio context where the skill needs it
Add:
- Cross-references to existing sibling skills
- Composition notes (which other skills this calls or feeds)
- Your conventions (frontmatter version, references/ subdir structure, BACKLOG entry if it spawns sub-ideas)
完全保留:原样复制;如有帮助可添加标记。
<!-- from <source> -->需要适配:
- 命名:如果不是动词-名词格式则重命名(与、
watch-video、read-book匹配)paste - 工具替换:他们的通用看板 → ,他们的视频工具 →
pm,他们的笔记系统 →watch-video,他们的决策框架 →second-braindecide - 语气:应用你的语气规则 — 直接、明确。对于社交相关技能,应用链接放置规则。
- 路径:他们的→ 你的
~/outputs/约定;他们的配置 → 你的~/Documents/<skill>-<...>/模式references/ - 名称与上下文:通用示例 → 你的作品集上下文(技能需要的地方)
需要添加:
- 与现有同类技能的交叉引用
- 组合说明(该技能调用或提供数据给哪些其他技能)
- 你的约定(前置元数据版本、references/子目录结构、如果产生子想法则添加BACKLOG条目)
Step 6 — Attribution file
步骤6 — 署名文件
Write :
references/attribution.mdmarkdown
undefined编写:
references/attribution.mdmarkdown
undefinedAttribution
署名
- Source: <original SKILL.md URL>
- Repository: <repo URL>
- Author: <name + handle>
- Commit SHA: <SHA at time of adapt>
- License: <license name + URL>
- Adapted: <YYYY-MM-DD>
- 来源: <原始SKILL.md URL>
- 仓库: <仓库URL>
- 作者: <姓名 + 用户名>
- 提交SHA: <适配时的SHA>
- 许可证: <许可证名称 + URL>
- 适配日期: <YYYY-MM-DD>
What was kept verbatim
完全保留的内容
- ...
- ...
What was adapted
适配的内容
- <old> → <new>
- <旧内容> → <新内容>
What was added
添加的内容
- ...
- ...
License compliance
许可证合规性
<upstream LICENSE text if MIT/BSD/Apache requires it, OR reference where in this repo it lives>
<如果是MIT/BSD/Apache许可证则复制上游LICENSE文本,或引用其在本仓库中的位置>
Upgrade path
升级路径
Run . If SHA differs from above, re-run for a 3-way merge.
git ls-remote <repo-url> HEAD/skillify <same-url>
For MIT / Apache / BSD, LICENSE text either gets copied into this file or the source LICENSE file gets copied to the skill dir.运行。如果SHA与上述不同,重新运行进行三方合并。
git ls-remote <repo-url> HEAD/skillify <same-url>
对于MIT/Apache/BSD许可证,LICENSE文本要么复制到本文件中,要么将源LICENSE文件复制到技能目录中。Step 7 — Scaffold + commit
步骤7 — 搭建目录并提交
Same as CREATE Steps 6–7. Commit message: .
"Adapt <name> skill from <source-name>"与CREATE模式步骤6-7相同。提交信息:。
"Adapt <name> skill from <source-name>"Step 8 — Report + offer follow-ups
步骤8 — 报告并提供后续操作选项
- Commit hash + new skill path
- Show three-bucket classification one more time so the diff is clear
- Offer:
- "Flesh out the adaptations? Some defaults may still need your touch."
- "Run for a QA pass?"
compound-engineering:heal-skill - "Set up an upstream-check reminder via ?"
loopify
- 提交哈希值 + 新技能路径
- 再次展示三类分类结果,以便清晰查看差异
- 提供选项:
- “完善适配内容?一些默认值可能仍需你调整。”
- “运行进行QA检查?”
compound-engineering:heal-skill - “通过设置上游检查提醒?”
loopify
Mode: UPDATE
模式:UPDATE
Improve existing skill(s) from learnings.
基于经验改进现有技能。
Step 1 — Confirm sub-mode
步骤1 — 确认子模式
| Sub-mode | When |
|---|---|
| from-chat (default) | Scan recent conversation for learnings, identify affected skill(s) |
| from-dump | User provides a brief, feedback, transcript, postmortem |
| targeted | User names the skill + change directly. Skip discovery. |
| usage | Review recent runs of the named skill, identify gaps |
Default when invoked mid-conversation with substantive recent activity: from-chat.
| 子模式 | 适用场景 |
|---|---|
| from-chat(默认) | 扫描近期对话获取经验,识别受影响的技能 |
| from-dump | 用户提供简报、反馈、转录稿、事后分析 |
| 定向更新 | 用户直接指定技能和更改内容。跳过发现阶段。 |
| 使用记录 | 查看指定技能的近期运行情况,识别空白点 |
当在包含实质性近期活动的对话中途调用时,默认使用from-chat模式。
Step 2 — Extract learning(s)
步骤2 — 提取经验
For from-chat / from-dump / usage: look for change-worthy signals (full taxonomy in ):
references/update-change-types.md- Corrections — "no, don't do that anymore"
- Validations — "yes that worked — bake it in"
- New patterns — user just did an undocumented workflow; encode it
- Voice / tone updates — like the spoken-aloud rule for slide-deck
- Tool changes — switched defaults
- Architectural decisions — naming conventions, file layout, frontmatter
- Gaps — something the skill should have handled but didn't
Output: a clear list of N learnings, each phrased as a single change.
For targeted: skip extraction — user already named the change.
对于from-chat/from-dump/使用记录模式:寻找值得更改的信号(完整分类见):
references/update-change-types.md- 修正 — “不,不要再那样做了”
- 验证 — “是的,那样有效 — 把它固化下来”
- 新模式 — 用户刚刚执行了未记录的工作流;将其编码
- 语气/语调更新 — 比如幻灯片的“口语化”规则
- 工具更改 — 切换默认值
- 架构决策 — 命名约定、文件布局、前置元数据
- 空白点 — 技能本应处理但未处理的内容
输出:清晰的N条经验列表,每条描述为一个单一更改。
对于定向更新:跳过提取阶段 — 用户已指定更改内容。
Step 3 — Identify affected skills
步骤3 — 识别受影响的技能
For each learning, search across all SKILL.md + references/ in the current repo (and optionally all sibling repos from your with ):
repos.yaml--cross-repobash
grep -rln "<key terms>" ~/code/makerskills/skills/ --include="*.md"对于每条经验,在当前仓库的所有SKILL.md + references/中搜索(如果使用,则可选在中的所有兄弟仓库中搜索):
--cross-reporepos.yamlbash
grep -rln "<关键词>" ~/code/makerskills/skills/ --include="*.md"Across all sibling repos (list yours in $MAKERSKILLS_CONFIG/skillify/repos.yaml):
在所有兄弟仓库中搜索(在$MAKERSKILLS_CONFIG/skillify/repos.yaml中列出你的仓库):
config="${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/skillify/repos.yaml"
for raw in $(yq -r '.repos[].path' "$config"); do
repo="${raw/#~/$HOME}" # expand leading ~ to $HOME so grep resolves the real path
grep -rln "<terms>" "$repo/skills/" --include="*.md" 2>/dev/null
done
Classify by confidence:
| Confidence | What | Action |
|---|---|---|
| **High** | Direct keyword match + clearly same topic | Propose change |
| **Medium** | Adjacent topic — rule *might* apply | Surface for explicit approval |
| **Low** | Tangential — rule could be stretched | Mention but don't propose |
See `references/update-propagation.md` for the cross-skill propagation playbook.config="${MAKERSKILLS_CONFIG:-$HOME/.config/makerskills}/skillify/repos.yaml"
for raw in $(yq -r '.repos[].path' "$config"); do
repo="${raw/#~/$HOME}" # 将开头的~扩展为$HOME以便grep解析真实路径
grep -rln "<关键词>" "$repo/skills/" --include="*.md" 2>/dev/null
done
按置信度分类:
| 置信度 | 说明 | 操作 |
|---|---|---|
| **高** | 直接关键词匹配 + 主题明显相同 | 提出更改建议 |
| **中** | 主题相关 — 规则*可能*适用 | 列出供用户明确批准 |
| **低** | 主题间接相关 — 规则可能牵强 | 提及但不提出建议 |
跨技能传播指南见`references/update-propagation.md`。Step 4 — Memory-vs-skill check
步骤4 — 记忆与技能检查
For each learning: is this skill-specific or a broader principle?
| Type | Where it goes |
|---|---|
| Skill-specific rule | Edit the SKILL.md / references file directly |
| Cross-cutting principle | |
| Both | Write the memory file AND update the skill(s) that immediately apply |
Example: "links go in first comments, not body" → applies to AND is a broader social principle → both update jab-hook AND save .
jab-hookfeedback_social_link_placement.mdOffer the memory write explicitly: "This looks like a principle, not just a skill rule. Save to memory as ?"
feedback_<slug>.md对于每条经验:这是特定技能的规则还是更广泛的原则?
| 类型 | 存储位置 |
|---|---|
| 特定技能规则 | 直接编辑SKILL.md / 参考文件 |
| 跨领域原则 | |
| 两者皆是 | 写入记忆文件并更新立即适用的技能 |
示例:“链接放在第一条评论中,不要放在正文中” → 适用于且是更广泛的社交原则 → 同时更新jab-hook并保存。
jab-hookfeedback_social_link_placement.md明确询问是否写入记忆:“这看起来是一个原则,而不仅仅是技能规则。是否要保存到记忆中为?”
feedback_<slug>.mdStep 5 — Propose diffs per file
步骤5 — 按文件提出差异建议
For each affected file, show change as before/after or unified diff:
markdown
undefined对于每个受影响的文件,以前后对比或统一差异格式展示更改:
markdown
undefinedskills/<skill>/SKILL.md
— proposed change
skills/<skill>/SKILL.mdskills/<skill>/SKILL.md
— 建议更改
skills/<skill>/SKILL.mdBefore (lines NN–NN):
<existing text>
After:
<new text>
Why: <one-line rationale>
Version bump: 0.2.0 → 0.2.1 (PATCH — clarification)
Approve / edit / skip?
Per-file approval. Don't batch — small changes are easy to OK; bundling forces all-or-nothing.
See `references/update-versioning.md` for semver rules.更改前(第NN–NN行):
<现有文本>
更改后:
<新文本>
原因:<一行理由>
版本升级:0.2.0 → 0.2.1(PATCH — 澄清说明)
批准/编辑/跳过?
按文件单独批准。不要批量处理 — 小更改容易批准;捆绑处理会迫使用户全选或全不选。
语义化版本规则见`references/update-versioning.md`。Step 6 — Apply approved changes
步骤6 — 应用批准的更改
- Use to apply the exact change
Edit - Bump per the suggested level
metadata.version - If the change involves a rename, follow the cross-reference update pattern (grep all files, update all references)
Batch multiple file changes within one skill into a single commit.
- 使用应用确切更改
Edit - 根据建议的版本级别更新
metadata.version - 如果更改涉及重命名,遵循交叉引用更新模式(搜索所有文件,更新所有引用)
将单个技能中的多个文件更改批量提交为一次提交。
Step 7 — Commit + push
步骤7 — 提交并推送
Group by skill. Examples:
- One-skill update:
"slide-deck: emphasize spoken-aloud voice (write for the ear, not the page)" - Multi-skill propagation:
"jab-hook, marketingskills:social: link placement (no inline URLs)" - Cross-repo: one commit per repo. Don't atomic-commit across repos.
按技能分组。示例:
- 单技能更新:
"slide-deck: 强调口语化语气(为耳朵写作,而非为页面)" - 多技能传播:
"jab-hook, marketingskills:social: 链接放置(不使用内联URL)" - 跨仓库:每个仓库一次提交。不要跨仓库原子提交。
Step 8 — Report
步骤8 — 报告
Show:
- Learnings extracted
- Skill(s) updated (with version bumps)
- Memory files written
- Whether would be a useful QA pass
compound-engineering:heal-skill - Anything flagged but skipped
展示:
- 提取的经验
- 更新的技能(含版本升级)
- 写入的记忆文件
- 是否适合作为QA检查
compound-engineering:heal-skill - 标记为跳过的内容
When NOT to use UPDATE mode
何时不使用UPDATE模式
Don't add ceremony to surgical edits. If the user says "add this one bullet to X.md," just Edit. UPDATE mode earns its keep when:
- Multiple skills are affected by one learning (cross-skill propagation)
- Bulk extraction from a long session
- Memory-vs-skill decision is unclear (need explicit triage)
- Version discipline matters (about to commit and want sane semver)
For one-line updates with no cross-skill implications: just Edit.
不要为小修改增加流程。如果用户说“给X.md添加这个项目符号”,直接编辑即可。UPDATE模式的价值体现在:
- 一个经验影响多个技能(跨技能传播)
- 从长会话中批量提取经验
- 记忆与技能的决策不明确(需要明确分类)
- 版本规范很重要(即将提交并需要合理的语义化版本)
对于无跨技能影响的单行更新:直接编辑即可。
Composes with
组合使用的技能
- — load-bearing for CREATE / from-video. Visual-mode output (transcript + key visual moments + summary) is the input for skill synthesis. Always call in
watch-videomode for process recordings — UI state matters as much as words.visual - — optionally capture source video/dump as
second-brainorraw/call-<slug>.mdso the source artifact lives alongside the skill it produced.raw/note-<slug>.md - — sibling in the
toolifytrifecta. Use-ifywhen the goal is adding an integration/MCP/API, not authoring a skill.toolify - — sibling in the
loopifytrifecta. Use-ifyfor agent-loop setup rather than a skill.loopify - (agent) — call for format and best-practices expertise
compound-engineering:create-agent-skill - (skill) — deeper best-practices reference
compound-engineering:skill-creator - (skill) — QA pass after any mode
compound-engineering:heal-skill
- — CREATE / from-video模式的核心依赖。可视化模式输出(转录稿 + 关键视觉时刻 + 摘要)是技能合成的输入。对于流程录制,始终以
watch-video模式调用 — UI状态与文字同样重要。visual - — 可选将源视频/转储内容捕获为
second-brain或raw/call-<slug>.md,以便源工件与其生成的技能共存。raw/note-<slug>.md - — -ify三部曲中的兄弟工具。当目标是添加集成/MCP/API而非编写技能时,使用
toolify。toolify - — -ify三部曲中的兄弟工具。用于Agent循环设置而非技能。
loopify - (Agent) — 调用以获取格式和最佳实践专业知识
compound-engineering:create-agent-skill - (Skill) — 深度最佳实践参考
compound-engineering:skill-creator - (Skill) — 任何模式后的QA检查
compound-engineering:heal-skill
Notes on quality
质量注意事项
- Cite the source. Whether chat, video, dump, external URL, or user-named learning — the SKILL.md body should reference where each decision came from. Makes revising easier.
- Don't over-engineer v0.1. Ship a minimal SKILL.md + 1–2 references files. Iterate after first use. Most generated skills are over-scoped.
- Verb-noun naming where possible (matches ,
watch-video,read-book). Single-word noun names are fine for distinctive concepts (paste,decide,pm,paste).skillify - Always reference Anthropic's official guidance for the schema — don't invent format conventions.
- Attribution is non-negotiable for ADAPT mode. Every adapted skill ships with .
references/attribution.md - License is a hard gate. Don't proceed on GPL/proprietary without explicit approval.
- Per-file approval in UPDATE mode. Small changes are easy to OK; bundling forces all-or-nothing.
- 引用来源:无论是对话、视频、转储内容、外部URL还是用户指定的经验 — SKILL.md正文中应注明每个决策的来源。便于后续修订。
- v0.1版本不要过度设计。交付最小化的SKILL.md + 1-2个参考文件。首次使用后再迭代。大多数生成的技能范围过大。
- 尽可能使用动词-名词命名(与、
watch-video、read-book匹配)。对于独特概念,单名词名称也可接受(paste、decide、pm、paste)。skillify - 始终参考Anthropic的官方Schema指导 — 不要发明格式约定。
- ADAPT模式下署名是必须的。每个适配的技能都附带。
references/attribution.md - 许可证是硬性门槛。未经明确批准,不要处理GPL/专有许可证的技能。
- UPDATE模式下按文件单独批准。小更改容易批准;捆绑处理会迫使用户全选或全不选。