From ce5651a5d75c4db097ac90ce700af78f6042d656 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Tue, 3 Mar 2026 16:56:02 +0300 Subject: [PATCH] feat(switch): add Windsurf, Kilo Code, Cline, Roo Code, Augment, Agent Skills platforms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add 6 new platforms to switch.py (v1.0 → v1.1), total 13. All follow the open Agent Skills standard (agentskills.io). Update README with full platform table and agentskills.io reference. Closes #4 Co-Authored-By: Claude Opus 4.6 --- README.md | 33 ++++++++++++++++++++------------- scripts/switch.py | 24 ++++++++++++++++++++---- 2 files changed, 40 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 577d87e1..79d70f5f 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ ### Другие AI-платформы -Навыки совместимы с Cursor, GitHub Copilot, Kiro, OpenAI Codex, Gemini CLI и OpenCode. Скрипт `switch.py` копирует навыки в нужный формат с перезаписью путей: +Навыки построены на открытом стандарте [Agent Skills](https://agentskills.io/specification) и совместимы с любой платформой, поддерживающей этот формат. Скрипт `switch.py` копирует навыки в нужный каталог с перезаписью путей: ```bash python scripts/switch.py # интерактивный режим (пошаговый диалог) @@ -60,17 +60,25 @@ python scripts/switch.py --undo cursor # удалить копию Поддерживаемые платформы: -| Платформа | Целевой каталог | Автоактивация | Слеш-команды | -|-----------|----------------|:---:|--------------| -| Claude Code | `.claude/skills/` | да | `/epf-init`, `/mxl-compile`, ... | -| Cursor | `.cursor/skills/` | да | через меню команд | -| GitHub Copilot | `.github/skills/` | да | `/skills` в чате | -| Kiro | `.kiro/skills/` | да | через steering | -| OpenAI Codex | `.codex/skills/` | да | `$skill-name` | -| Gemini CLI | `.gemini/skills/` | да | нет | -| OpenCode | `.opencode/skills/` | да | через skill tool | +| Платформа | Целевой каталог | `switch.py ` | +|-----------|----------------|------------------------| +| Claude Code | `.claude/skills/` | `claude-code` | +| Augment | `.augment/skills/` | `augment` | +| Cline | `.cline/skills/` | `cline` | +| Cursor | `.cursor/skills/` | `cursor` | +| GitHub Copilot | `.github/skills/` | `copilot` | +| Kilo Code | `.kilocode/skills/` | `kilo` | +| Kiro | `.kiro/skills/` | `kiro` | +| OpenAI Codex | `.codex/skills/` | `codex` | +| Gemini CLI | `.gemini/skills/` | `gemini` | +| OpenCode | `.opencode/skills/` | `opencode` | +| Roo Code | `.roo/skills/` | `roo` | +| Windsurf | `.windsurf/skills/` | `windsurf` | +| Agent Skills | `.agents/skills/` | `agents` | -Автоактивация — основной режим: просто опишите задачу своими словами, ассистент сам подберёт нужный навык по `description` в SKILL.md. Слеш-команды — для точного контроля, когда нужно вызвать конкретный навык. +Некоторые платформы (Augment, Cline, VS Code/Copilot) также сканируют `.claude/skills/` как fallback — для них копирование необязательно, но `switch.py` даёт явный контроль над путями. + +Автоактивация — основной режим: просто опишите задачу своими словами, ассистент сам подберёт нужный навык по `description` в SKILL.md. Слеш-команды (например `/epf-init`) — для точного контроля, когда нужно вызвать конкретный навык. ### Переключение рантайма (PowerShell ↔ Python) @@ -181,8 +189,7 @@ python scripts/switch.py --runtime powershell # вернуть на PowerShell ├── web-test/ # Тестирование через веб-клиент 1С └── img-grid/ # Сетка для анализа изображений scripts/ -├── switch-to-python.py # Переключение навыков на Python-рантайм -└── switch-to-powershell.py # Возврат на PowerShell-рантайм +└── switch.py # Переключение платформы и рантайма (13 платформ) docs/ ├── epf-guide.md # Гайд: внешние обработки и отчёты ├── mxl-guide.md # Гайд: табличный документ diff --git a/scripts/switch.py b/scripts/switch.py index 2862dd68..22851ea2 100644 --- a/scripts/switch.py +++ b/scripts/switch.py @@ -1,9 +1,10 @@ #!/usr/bin/env python3 -# switch.py v1.0 — Переключение навыков 1С между AI-платформами и рантаймами +# switch.py v1.1 — Переключение навыков 1С между AI-платформами и рантаймами # Source: https://github.com/Nikolay-Shirokov/cc-1c-skills """ Копирует навыки из .claude/skills/ на другие AI-платформы (Cursor, Codex, Copilot, -Kiro, Gemini CLI, OpenCode) с перезаписью путей, и/или переключает рантайм (PowerShell ↔ Python). +Kiro, Gemini CLI, OpenCode, Windsurf, Kilo Code, Cline, Roo Code, Augment и др.) +с перезаписью путей, и/или переключает рантайм (PowerShell ↔ Python). Использование: python scripts/switch.py # интерактивный режим @@ -24,12 +25,18 @@ import sys # --------------------------------------------------------------------------- PLATFORMS = { 'claude-code': '.claude/skills', + 'agents': '.agents/skills', + 'augment': '.augment/skills', + 'cline': '.cline/skills', 'codex': '.codex/skills', 'cursor': '.cursor/skills', 'copilot': '.github/skills', 'gemini': '.gemini/skills', + 'kilo': '.kilocode/skills', 'kiro': '.kiro/skills', 'opencode': '.opencode/skills', + 'roo': '.roo/skills', + 'windsurf': '.windsurf/skills', } SOURCE_PREFIX = '.claude/skills' @@ -265,7 +272,7 @@ def ask_choice(prompt, options, default=1): print(f"\n{prompt}") for i, (label, hint) in enumerate(options, 1): marker = "*" if i == default else " " - print(f" {marker}{i}. {label:<16} ({hint})") + print(f" {marker}{i:>2}. {label:<16} ({hint})") while True: try: raw = input(f"\nВыбор [{default}]: ").strip() @@ -289,14 +296,23 @@ def interactive_mode(): platform_options = [ ("Claude Code", ".claude/skills/"), + ("Augment", ".augment/skills/"), + ("Cline", ".cline/skills/"), ("Cursor", ".cursor/skills/"), ("GitHub Copilot", ".github/skills/"), + ("Kilo Code", ".kilocode/skills/"), ("Kiro", ".kiro/skills/"), ("OpenAI Codex", ".codex/skills/"), ("Gemini CLI", ".gemini/skills/"), ("OpenCode", ".opencode/skills/"), + ("Roo Code", ".roo/skills/"), + ("Windsurf", ".windsurf/skills/"), + ("Agent Skills", ".agents/skills/"), + ] + platform_keys = [ + 'claude-code', 'augment', 'cline', 'cursor', 'copilot', 'kilo', + 'kiro', 'codex', 'gemini', 'opencode', 'roo', 'windsurf', 'agents', ] - platform_keys = ['claude-code', 'cursor', 'copilot', 'kiro', 'codex', 'gemini', 'opencode'] choice = ask_choice("Для какой платформы настроить навыки?", platform_options) platform = platform_keys[choice - 1]