Skip to main content

evolve-skill

Evolve an existing skill by refining its content in-place or creating an advanced variant. Covers assessing the current skill, gathering evolution requirements, choosing scope (refinement vs. variant), applying changes, updating version metadata, and synchronizing the registry and cross-references. Use when a skill's procedure steps are outdated, user feedback reveals gaps, a skill needs a complexity upgrade, an advanced variant is needed alongside the original, or related skills are added and cross-references are stale.

跳到安装

来源信息

仓库
pjt222/agent-almanac
最近来源活动
2026年9月15日 08:59
检测到的 SKILL.md 语言
多语言混合
星标
34
分支
4

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
evolve-skill
locale
wenyan
source_locale
en
source_commit
82c77053
translator
Julius Brussee homage — caveman
translation_date
2026-04-24
description
Evolve an existing skill by refining its content in-place or creating an advanced variant. Covers assessing the current skill, gathering evolution requirements, choosing scope (refinement vs. variant), applying changes, updating version metadata, and synchronizing the registry and cross-references. Use when a skill's procedure steps are outdated, user feedback reveals gaps, a skill needs a complexity upgrade, an advanced variant is needed alongside the original, or related skills are added and cross-references are stale.
license
MIT
allowed-tools
Read Write Edit Bash Grep Glob
metadata
{"author":"Philipp Thoss","version":"1.2","domain":"general","complexity":"intermediate","language":"multi","tags":"meta, skill, agentskills, maintenance, evolution, versioning"}
# 演既有技 改、擴、或造以 `create-skill` 所造技之進變體。此術司技生之維:評缺、施針對改、升版、保 registry 與互引同步。 ## 用時 - 工具易後技步陳或缺 - 用戶回示缺陷、不明步、弱驗 - 技須自 basic 升 intermediate(或中升 advanced) - 原外需進變體(如 `create-r-package` 與 `create-r-package-advanced`) - 加去相關技而互引陳 ## 入 - **必要**:欲演 SKILL.md 之路 - **必要**:演之因(回、工具易、繁升、新相關技、察陷) - **可選**:易時之目標繁級(basic、intermediate、advanced) - **可選**:是否造變體而非就地改(默:就地改) ## 法 ### 第一步:評當技 讀 SKILL.md 並按質清單評各節: | Section | What to Check | Common Issues | |---|---|---| | Frontmatter | All required fields present, `description` < 1024 chars | Missing `tags`, stale `version` | | When to Use | 3-5 concrete trigger conditions | Vague or overlapping triggers | | Inputs | Required vs optional clearly separated | Missing defaults for optional inputs | | Procedure | Each step has code + Expected + On failure | Missing On failure blocks, pseudocode instead of real commands | | Validation | Each item is binary pass/fail | Subjective criteria ("code is clean") | | Common Pitfalls | 3-6 with cause and avoidance | Too generic ("be careful") | | Related Skills | 2-5 valid skill references | Stale references to renamed/removed skills | ```bash # Read the skill cat skills/<skill-name>/SKILL.md # Check frontmatter parses head -20 skills/<skill-name>/SKILL.md # Verify related skills still exist grep -oP '`[\w-]+`' skills/<skill-name>/SKILL.md | sort -u ``` **得:** 具體缺、弱、或改機之列。 **敗則:** 若 SKILL.md 不存或無 frontmatter,此技不適——當用 `create-skill` 從頭造。 ### 第二步:集演求 識並類演之因: | Trigger | Example | Typical Scope | |---|---|---| | User feedback | "Step 3 is unclear" | Refinement | | Tooling change | New API version, deprecated command | Refinement | | Discovered pitfall | Common failure not documented | Refinement | | Complexity upgrade | Skill is too shallow for real use | Refinement or variant | | New related skills | Adjacent skill was added | Refinement (cross-refs) | | Advanced use case | Power users need deeper coverage | Variant | 編前記具體改。各改附目節。 **得:** 具體改之列(如「加 On failure 於第四步」「加新第六步於邊例 X」「更 Related Skills 含 `new-skill`」)。 **敗則:** 若改不明,進前請用戶澄。模糊演目生模糊改。 ### 第三步:擇演範 用此決表定就地改或造變體: | Criteria | Refinement (in-place) | Advanced Variant (new skill) | |---|---|---| | Skill ID | Unchanged | New ID: `<skill>-advanced` | | File path | Same SKILL.md | New directory | | Version bump | Minor (major only if breaking) | Starts at 1.0 | | Complexity | May increase | Higher than original | | Registry | No new entry | New entry added | | Symlinks | No change | New symlinks needed | | Original skill | Modified directly | Left intact, gains cross-reference | **改**:提質、修缺、或加少容時擇。技保其身。 **變體**:演後版倍長、易眾、或需顯異之入時擇。原留供簡用。 **得:** 明決——改或變——附理。 **敗則:** 不確時默改。後可析變體;合回更難。 ### 第四步:施容改 #### 於改 直編 SKILL.md: - Open for editing - Add/revise procedure steps - Strengthen Expected/On failure pairs - Add tables or examples - Update When to Use triggers - Revise Inputs if scope changed 循此編則: - 保諸有節——加容,勿去節 - 插後步號保序 - 新或改步皆須有 Expected 與 On failure - 新陷置 Common Pitfalls 節末 - 新相關技置 Related Skills 節末 #### 於變體 ```bash # Create the variant directory mkdir -p skills/<skill-name>-advanced/ # Copy the original as a starting point cp skills/<skill-name>/SKILL.md skills/<skill-name>-advanced/SKILL.md # Edit the variant: # - Change `name` to `<skill-name>-advanced` # - Update `description` to reflect the advanced scope # - Raise `complexity` (e.g., intermediate → advanced) # - Reset `version` to "1.0" # - Add/expand procedure steps for the advanced use case # - Reference the original in Related Skills as a prerequisite ``` **得:** SKILL.md(改或新變體)過第一步之評清單。 **敗則:** 若編破文構,用 `git diff` 審改並以 `git checkout -- <file>` 回退部分編。 ### 第四·五步:同譯變體 > **譯存時必需。** 此步適人與 AI 二者。勿略——陳 `source_commit` 致 `npm run validate:translations` 於諸 locale 生誤陳警。 察演技是否有譯並更譯以映新源態: ```bash # Check for existing translations ls i18n/*/skills/<skill-name>/SKILL.md 2>/dev/null ``` #### 譯存之時 1. 取當源提交哈: ```bash npm run validate:translations ``` 2. 於各譯文 frontmatter 更 `source_commit`: ```bash npm run check:fence-propagation -- --id <skill-name> node tools/provenance-field.mjs --field fence_basis_commit --set $(git rev-parse --short HEAD) <mirror paths> ``` 3. 於提交訊中標所涉 locale 以供重譯: ```text evolve(<skill-name>): <description of changes> Translations flagged for re-sync: de, zh-CN, ja, es Changed sections: <list sections that changed> ``` 4. 重生譯狀文: ```bash npm run translation:status ``` #### 無譯之時 無須行。進第五步。 #### 於變體 新變體之譯延至變體穩(1-2 版)。譯 v1.0 變體而 v1.2 或大變廢工。變體改至少一次後方加譯。 **得:** 諸譯文 `source_commit` 更至當提交。提交訊記何 locale 須重譯、何節易。`npm run translation:status` 出 0。 **敗則:** 若 `sed` 不配 frontmatter 域,譯文或有非標格式。手開驗其 YAML frontmatter 含 `source_commit`。若缺,文未正造——以 `npm run translate:scaffold` 再造。 ### 第五步:更版與元數 於 frontmatter 升 `version`: | Change Type | Version Bump | Example | |---|---|---| | Typo fix, wording clarification | Minor: 1.0 → 1.1 | Fixed unclear sentence in Step 3 | | New step, new pitfall, new table | Minor: 1.0 → 1.1 | Added Step 7 for edge case handling | | Restructured procedure, changed inputs | Major: 1.0 → 2.0 | Reorganized from 5 to 8 steps | 亦更: - `complexity` 若範擴(如 basic → intermediate) - `tags` 若覆域易 - `description` 若技範實異 **得:** Frontmatter `version` 映改之大。新變體始於 `"1.0"`。 **敗則:** 若忘升版,下演無法辨當態與前。提交前必升。 ### 第六步:更 Registry 與互引 #### 於改 無須更 registry(路不易)。唯他技之 Related Skills 改時更互引: ```bash # Check if any skill references the evolved skill grep -r "<skill-name>" skills/*/SKILL.md ``` #### 於變體 於 `skills/_registry.yml` 加新技: ```yaml - id: <skill-name>-advanced path: <skill-name>-advanced/SKILL.md complexity: advanced language: multi description: One-line description of the advanced variant ``` 然後: 1. 增 registry 頂之 `total_skills` 2. 於原技 Related Skills 加指變體之引 3. 於變體 Related Skills 加指原之引 4. 為斜線命發現造 symlink: ```bash # Project-level ln -s ../../skills/<skill-name>-advanced .claude/skills/<skill-name>-advanced # Global ln -s /mnt/d/dev/p/agent-almanac/skills/<skill-name>-advanced ~/.claude/skills/<skill-name>-advanced ``` **得:** Registry `total_skills` 合 `find skills -name SKILL.md | wc -l`。互引雙向。 **敗則:** 若 registry 計誤,運 `find skills -name SKILL.md | wc -l` 取實數正 registry。Symlink 破則以 `readlink -f` 查。 ### 第七步:驗演技 行全驗清單: - [ ] SKILL.md 存於預路 - [ ] YAML frontmatter 解無誤 - [ ] `version` 已升(改)或設「1.0」(變) - [ ] 諸節存:When to Use、Inputs、Procedure、Validation、Common Pitfalls、Related Skills - [ ] 諸步皆有 Expected 與 On failure - [ ] Related Skills 引有效存 - [ ] Registry 條存附正路(唯變體) - [ ] `total_skills` 合盤實數 - [ ] Symlink 正解(唯變體) - [ ] `git diff` 示原容無誤刪 - [ ] 有譯之改:`source_commit` 已更或譯已標供重譯 ```bash # Verify frontmatter head -20 skills/<skill-name>/SKILL.md # Count skills on disk vs registry find skills -name SKILL.md | wc -l grep total_skills skills/_registry.yml # Check symlinks (for variants) ls -la .claude/skills/<skill-name>-advanced readlink -f .claude/skills/<skill-name>-advanced/SKILL.md # Review all changes git diff ``` **得:** 清單皆過。演技可提交。 **敗則:** 各敗項各處。最常演後問為陳 `total_skills`——最後必驗。 ## 驗 - [ ] SKILL.md 存且 YAML frontmatter 有效 - [ ] `version` 映所改 - [ ] 諸步皆有 Expected 與 On failure - [ ] Related Skills 引有效(無破互引) - [ ] Registry `total_skills` 合盤實數 - [ ] 變體時:`_registry.yml` 新條附正路 - [ ] 變體時:`.claude/skills/` 與 `~/.claude/skills/` 造 symlink - [ ] `git diff` 確無誤刪 - [ ] 有譯之改:`source_commit` 已更或譯已標供重譯 ## 陷 - **忘升版**:無升則不能追何變何時。提交前必更 frontmatter `version` - **誤刪容**:重構步時易落 On failure 或表行。提交前必審 `git diff` - **陳互引**:造變體時原與變須互引。單向引令圖不全 - **Registry 計漂**:造變體後必增 `total_skills`。忘則他技察 registry 時驗敗 - **演後陳譯**:庫中 1,288 譯文,每技演引至 4 locale 文陳。必以 `ls i18n/*/skills/<skill-name>/SKILL.md` 察並更各譯文 `source_commit`,或於提交訊標供重譯。略則 `npm run validate:translations` 報陳警 - **改中目擴**:改而使技倍長或宜為變體。若加逾三新步,復察第三步決 - **NTFS 掛路(WSL)避 `git mv`**:於 `/mnt/` 路,目錄之 `git mv` 或生壞權(`d?????????`)。用 `mkdir -p` + 複製 + `git rm` 舊路。見[環境指](../../guides/setting-up-your-environment.md)之排疑節 ## 參 - `create-skill` — 造新技之基;evolve-skill 假此先循 - `commit-changes` — 以述訊提交演技 - `configure-git-repository` — 版控技之改 - `security-audit-codebase` — 審演技免誤含秘
在 GitHub 查看