$npx -y skills add TserenTserenov/FMT-exocortex-template --skill skill-creatorCreate a new IWE skill with proper frontmatter, gates, scaffold and verification. Use when the pilot says: /skill-creator or «создай скилл <name>». The skill enforces WP Gate precondition, Routing Gate, IntegrationGate hard-check, collects parameters in 4 short steps, generates a
| 1 | # /skill-creator — create an IWE skill |
| 2 | |
| 3 | > **Scope:** create a new skill OR guide an update to an existing skill in `.claude/skills/` or `.kimi/skills/`. |
| 4 | > **Not in scope:** full re-scaffold without deleting the old `SKILL.md` first (delete manually, then call `/skill-creator` again); creating a WP; creating a Pack. |
| 5 | > **Role:** ad-hoc content-role «Инженер скиллов»; formalize in Pack if ≥3 skills/year. |
| 6 | |
| 7 | ## When to use |
| 8 | |
| 9 | - Pilot wants a new skill for a repeated workflow. |
| 10 | - A new tool/agent/system needs a Service Clause + Role + SKILL.md. |
| 11 | - A skill needs promotion from author repo to `FMT-exocortex-template`. |
| 12 | |
| 13 | ## Preconditions (checked, not performed) |
| 14 | |
| 15 | 1. **WP Gate precondition.** The task must be attached to an agreed WP in the weekly plan or explicitly named by the pilot. `/skill-creator` does not conduct the WP Gate ritual itself. |
| 16 | 2. **Routing Gate.** Decide target platform (Claude vs Kimi) and level (project vs user). Default: project-level `.claude/skills/` in the author repo. |
| 17 | 3. **IntegrationGate hard-check.** `DP.SC.*` and `DP.ROLE.*` must exist in the PACK repo. If not, the skill stops and offers to create them. Bypass only by explicit pilot instruction «пропусти gate» — no code flag. |
| 18 | |
| 19 | ## Algorithm |
| 20 | |
| 21 | ### Step 1 — Check WP Gate precondition |
| 22 | |
| 23 | Look up the current weekly plan (`current/WeekPlan W{N}.md`) or ask: |
| 24 | |
| 25 | ``` |
| 26 | К какому РП привязано создание скилла? |
| 27 | ``` |
| 28 | |
| 29 | If no WP is named and none matches the skill topic → stop: |
| 30 | |
| 31 | ``` |
| 32 | Создание скилла требует согласованного РП. Сначала откройте РП через WP Gate. |
| 33 | ``` |
| 34 | |
| 35 | ### Step 2 — Routing Gate |
| 36 | |
| 37 | Ask or infer: |
| 38 | |
| 39 | | Question | Default | |
| 40 | |----------|---------| |
| 41 | | Claude или Kimi? | Claude | |
| 42 | | project-level или user-level? | project-level | |
| 43 | | governance-репо для учёта? | `${IWE_GOVERNANCE_REPO:-DS-strategy}` | |
| 44 | |
| 45 | Target path: |
| 46 | - Claude project: `.claude/skills/<name>/` |
| 47 | - Kimi project: `.kimi/skills/<name>/` |
| 48 | - User level: `~/.claude/skills/<name>/` or `~/.kimi/skills/<name>/` |
| 49 | |
| 50 | ### Step 2.5 — Detect existing skill |
| 51 | |
| 52 | Check whether `<target_path>/SKILL.md` already exists. |
| 53 | |
| 54 | **If it exists** → switch to update mode. Do NOT re-scaffold. Show the pilot: |
| 55 | |
| 56 | ``` |
| 57 | Скилл <name> уже существует (версия X.Y.Z). |
| 58 | Что обновить? |
| 59 | [ ] description |
| 60 | [ ] slash / phrase triggers |
| 61 | [ ] version bump (current: X.Y.Z → new: ?) |
| 62 | [ ] algorithm step (add / edit) |
| 63 | [ ] bundled resource (add scripts/ references/ assets/) |
| 64 | [ ] полный пересоздать → удалите SKILL.md вручную, затем запустите /skill-creator снова |
| 65 | [ ] отмена → ничего не менять |
| 66 | ``` |
| 67 | |
| 68 | Collect the pilot's choices. Apply changes directly to the existing `SKILL.md` via Edit. |
| 69 | |
| 70 | Skip Steps 3–6 **unless** the pilot selected "bundled resource" or any change that expands the skill's scope or gates — in that case, run **Step 3 (IntegrationGate)** before applying. |
| 71 | |
| 72 | For Step 7 (register + verify): run `verify-skill.sh` always. Run `generate-skills-catalog.sh` only if frontmatter changed (name, description, triggers, version). |
| 73 | |
| 74 | Version bump rule: bump patch for trigger / description edits; bump minor for algorithm changes **or adding a bundled resource**; bump major for gate or scope changes. |
| 75 | |
| 76 | **If it does not exist** → continue to Step 3 (normal creation flow). |
| 77 | |
| 78 | ### Step 3 — IntegrationGate |
| 79 | |
| 80 | Check PACK repo for files matching `DP.SC.*` and `DP.ROLE.*`. If missing: |
| 81 | |
| 82 | ``` |
| 83 | Service Clause (DP.SC.*) и Role (DP.ROLE.*) не найдены. |
| 84 | Создайте их сейчас через /pack-new или соответствующий процесс. |
| 85 | Для продолжения без них скажите явно: «пропусти gate». |
| 86 | ``` |
| 87 | |
| 88 | Stop until the gate is satisfied or explicitly bypassed by pilot words. |
| 89 | |
| 90 | ### Step 4 — Collect parameters (4 short steps) |
| 91 | |
| 92 | **4a. Name and description** |
| 93 | |
| 94 | ``` |
| 95 | Имя скилла (hyphen-case): <name> |
| 96 | Краткое описание — что делает и когда использовать: |
| 97 | ``` |
| 98 | |
| 99 | **4b. Agents and interaction axes** |
| 100 | |
| 101 | ``` |
| 102 | agents: single | multi |
| 103 | interaction: one-shot | multi-step |
| 104 | ``` |
| 105 | |
| 106 | **4c. Triggers** |
| 107 | |
| 108 | ``` |
| 109 | slash-команды (через запятую): |
| 110 | фразовые триггеры (через запятую): |
| 111 | ``` |
| 112 | |
| 113 | Keep phrase triggers narrow: include a skill name |