@dzhechkov/keysarium 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +52 -5
  2. package/README.ru.md +541 -0
  3. package/bin/cli.js +0 -0
  4. package/package.json +11 -9
  5. package/templates/.claude/commands/analyst-manual.md +38 -0
  6. package/templates/.claude/commands/casarium.md +55 -4
  7. package/templates/.claude/commands/feature-adr.md +8 -0
  8. package/templates/.claude/rules/trust-tiers.md +5 -0
  9. package/templates/.claude/shards/feature-adr.shard.md +64 -10
  10. package/templates/.claude/shards/phase-ai-factory.shard.md +109 -0
  11. package/templates/.claude/skills/ai-factory-mapper/README.md +90 -0
  12. package/templates/.claude/skills/ai-factory-mapper/SKILL.md +309 -0
  13. package/templates/.claude/skills/ai-factory-mapper/assets/report-template.md +123 -0
  14. package/templates/.claude/skills/ai-factory-mapper/references/catalog.md +230 -0
  15. package/templates/.claude/skills/ai-factory-mapper/references/coverage-formula.md +219 -0
  16. package/templates/.claude/skills/ai-factory-mapper/references/decomposition-checklist.md +183 -0
  17. package/templates/.claude/skills/ai-factory-mapper/references/pattern-library.md +312 -0
  18. package/templates/.claude/skills/ai-factory-mapper/scripts/build_docx_report.js +423 -0
  19. package/templates/.claude/skills/analyst-manual-full/SKILL.md +286 -0
  20. package/templates/.claude/skills/edu-site-generator/SKILL.md +254 -0
  21. package/templates/.claude/skills/edu-site-generator/examples/sample-course-structure.md +116 -0
  22. package/templates/.claude/skills/edu-site-generator/modules/00-content-analysis.md +84 -0
  23. package/templates/.claude/skills/edu-site-generator/modules/01-course-structure.md +75 -0
  24. package/templates/.claude/skills/edu-site-generator/modules/02-data-generation.md +186 -0
  25. package/templates/.claude/skills/edu-site-generator/modules/03-scaffold.md +249 -0
  26. package/templates/.claude/skills/edu-site-generator/modules/04-components.md +130 -0
  27. package/templates/.claude/skills/edu-site-generator/modules/05-gamification.md +163 -0
  28. package/templates/.claude/skills/edu-site-generator/modules/06-deploy.md +88 -0
  29. package/templates/.claude/skills/edu-site-generator/modules/07-verification.md +97 -0
  30. package/templates/.claude/skills/edu-site-generator/references/component-templates.md +436 -0
  31. package/templates/.claude/skills/edu-site-generator/references/data-schemas.md +164 -0
  32. package/templates/.claude/skills/edu-site-generator/references/exercise-catalog.md +110 -0
  33. package/templates/.claude/skills/edu-site-generator/references/tech-stack.md +69 -0
  34. package/templates/.claude/skills/feature-adr/SKILL.md +245 -59
  35. package/templates/.claude/skills/feature-adr/modules/03-adr.md +43 -0
  36. package/templates/.claude/skills/feature-adr/modules/03.5-ideation-swarm.md +180 -0
  37. package/templates/.claude/skills/feature-adr/modules/06-implementation-plan.md +56 -7
  38. package/templates/.claude/skills/feature-adr/modules/08-qe.md +87 -23
  39. package/templates/.claude/skills/feature-adr/modules/09-fleet-qe.md +305 -0
  40. package/templates/.claude/skills/feature-adr/references/agentic-qe/README.md +143 -0
  41. package/templates/.claude/skills/feature-adr/references/agentic-qe/brutal-honesty-review.md +240 -0
  42. package/templates/.claude/skills/feature-adr/references/agentic-qe/chaos-engineering-resilience.md +163 -0
  43. package/templates/.claude/skills/feature-adr/references/agentic-qe/code-goal-planner.md +446 -0
  44. package/templates/.claude/skills/feature-adr/references/agentic-qe/enterprise-integration-testing.md +111 -0
  45. package/templates/.claude/skills/feature-adr/references/agentic-qe/mutation-testing.md +236 -0
  46. package/templates/.claude/skills/feature-adr/references/agentic-qe/performance-testing.md +315 -0
  47. package/templates/.claude/skills/feature-adr/references/agentic-qe/qcsd-ideation-swarm.md +126 -0
  48. package/templates/.claude/skills/feature-adr/references/agentic-qe/qcsd-production-swarm.md +108 -0
  49. package/templates/.claude/skills/feature-adr/references/agentic-qe/qe-coverage-analysis.md +193 -0
  50. package/templates/.claude/skills/feature-adr/references/agentic-qe/qe-requirements-validation.md +254 -0
  51. package/templates/.claude/skills/feature-adr/references/agentic-qe/regression-testing.md +233 -0
  52. package/templates/.claude/skills/feature-adr/references/agentic-qe/risk-based-testing.md +212 -0
  53. package/templates/.claude/skills/feature-adr/references/agentic-qe/security-testing.md +311 -0
  54. package/templates/.claude/skills/feature-adr/references/agentic-qe/shift-left-testing.md +231 -0
  55. package/templates/.claude/skills/feature-adr/references/agentic-qe/tdd-london-chicago.md +249 -0
  56. package/templates/.claude/skills/transcript-site-generator/SKILL.md +287 -0
  57. package/templates/.claude/skills/transcript-site-generator/examples/sample-text-only-site.md +123 -0
  58. package/templates/.claude/skills/transcript-site-generator/examples/sample-transcript-site.md +134 -0
  59. package/templates/.claude/skills/transcript-site-generator/modules/00-input-analysis.md +132 -0
  60. package/templates/.claude/skills/transcript-site-generator/modules/01-content-parsing.md +117 -0
  61. package/templates/.claude/skills/transcript-site-generator/modules/02-site-generation.md +293 -0
  62. package/templates/.claude/skills/transcript-site-generator/modules/03-interactivity.md +406 -0
  63. package/templates/.claude/skills/transcript-site-generator/modules/04-deploy.md +130 -0
  64. package/templates/.claude/skills/transcript-site-generator/modules/05-verification.md +155 -0
  65. package/templates/.claude/skills/transcript-site-generator/references/component-catalog.md +86 -0
  66. package/templates/.claude/skills/transcript-site-generator/references/data-schemas.md +123 -0
  67. package/templates/.claude/skills/transcript-site-generator/references/tech-stack.md +132 -0
  68. package/templates/CLAUDE.md +9 -2
  69. package/templates/docs/edu-site-generator/01-deployment-guide.md +911 -0
  70. package/templates/docs/edu-site-generator/02-admin-guide.md +901 -0
  71. package/templates/docs/edu-site-generator/03-user-guide.md +1008 -0
  72. package/templates/docs/edu-site-generator/04-infrastructure-requirements.md +489 -0
  73. package/templates/docs/edu-site-generator/05-architecture.md +902 -0
  74. package/templates/docs/edu-site-generator/06-user-flows.md +759 -0
  75. package/templates/docs/transcript-site-generator/01-deployment-guide.md +1042 -0
  76. package/templates/docs/transcript-site-generator/02-admin-guide.md +918 -0
  77. package/templates/docs/transcript-site-generator/03-user-guide.md +925 -0
  78. package/templates/docs/transcript-site-generator/04-infrastructure-requirements.md +482 -0
  79. package/templates/docs/transcript-site-generator/05-architecture.md +1068 -0
  80. package/templates/docs/transcript-site-generator/06-user-flows.md +855 -0
@@ -0,0 +1,1042 @@
1
+ # Руководство по развёртыванию @dzhechkov/skills-transcript-site
2
+
3
+ ## Содержание
4
+
5
+ 1. [Предварительные требования](#1-предварительные-требования)
6
+ 2. [Методы установки](#2-методы-установки)
7
+ 3. [Установка с помощью npx](#3-установка-с-помощью-npx)
8
+ 4. [Автономная установка (standalone)](#4-автономная-установка-standalone)
9
+ 5. [Установка рядом с Keysarium](#5-установка-рядом-с-keysarium)
10
+ 6. [Проверка установки](#6-проверка-установки)
11
+ 7. [Первый запуск — пошаговое руководство](#7-первый-запуск--пошаговое-руководство)
12
+ 8. [Интеграция с @dzhechkov/keysarium](#8-интеграция-с-dzhechkokeysarium)
13
+ 9. [Обновление и удаление](#9-обновление-и-удаление)
14
+ 10. [Устранение неполадок](#10-устранение-неполадок)
15
+
16
+ ---
17
+
18
+ ## 1. Предварительные требования
19
+
20
+ Перед установкой убедитесь, что на вашей машине установлено следующее программное обеспечение.
21
+
22
+ ### 1.1. Node.js 16+
23
+
24
+ `@dzhechkov/skills-transcript-site` требует Node.js версии 16 или выше. Рекомендуется использовать Node.js 20 LTS.
25
+
26
+ ```bash
27
+ # Проверка установленной версии
28
+ node --version
29
+ # Ожидаемый вывод: v16.x.x или выше (рекомендуется v20+)
30
+
31
+ npm --version
32
+ # Ожидаемый вывод: 8.x.x или выше
33
+ ```
34
+
35
+ Если Node.js не установлен или версия ниже требуемой:
36
+
37
+ ```bash
38
+ # Установка через nvm (рекомендуемый способ, все платформы)
39
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
40
+ source ~/.bashrc
41
+ nvm install 20
42
+ nvm use 20
43
+ nvm alias default 20
44
+
45
+ # Установка на Ubuntu/Debian (через NodeSource)
46
+ curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
47
+ sudo apt install -y nodejs
48
+
49
+ # Установка на macOS (через Homebrew)
50
+ brew install node@20
51
+ echo 'export PATH="/opt/homebrew/opt/node@20/bin:$PATH"' >> ~/.zshrc
52
+ source ~/.zshrc
53
+
54
+ # Установка на Windows (через winget)
55
+ winget install OpenJS.NodeJS.LTS
56
+ ```
57
+
58
+ ### 1.2. Claude Code CLI
59
+
60
+ `@dzhechkov/skills-transcript-site` устанавливает скиллы и команды в проект Claude Code. Сам Claude Code CLI должен быть установлен и настроен.
61
+
62
+ ```bash
63
+ # Установка Claude Code CLI глобально
64
+ npm install -g @anthropic-ai/claude-code
65
+
66
+ # Проверка установки
67
+ claude --version
68
+ # Ожидаемый вывод: claude/x.x.x
69
+
70
+ # Если возникает ошибка прав доступа при глобальной установке:
71
+ # Способ 1: использование sudo (только для Linux/macOS)
72
+ sudo npm install -g @anthropic-ai/claude-code
73
+
74
+ # Способ 2: настройка npm prefix (рекомендуется, без sudo)
75
+ mkdir -p ~/.npm-global
76
+ npm config set prefix '~/.npm-global'
77
+ echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
78
+ source ~/.bashrc
79
+ npm install -g @anthropic-ai/claude-code
80
+ ```
81
+
82
+ ### 1.3. API-ключ Anthropic
83
+
84
+ Для работы Claude Code и генерации transcript-сайтов необходим API-ключ Anthropic.
85
+
86
+ 1. Перейдите на [console.anthropic.com](https://console.anthropic.com)
87
+ 2. Зарегистрируйте аккаунт или войдите в существующий
88
+ 3. В разделе **API Keys** нажмите **Create Key**
89
+ 4. Скопируйте ключ (он начинается с `sk-ant-`) — он показывается только один раз
90
+ 5. Установите переменную окружения:
91
+
92
+ ```bash
93
+ # Временно (для текущей сессии терминала)
94
+ export ANTHROPIC_API_KEY="sk-ant-..."
95
+
96
+ # Постоянно (добавьте в ~/.bashrc или ~/.zshrc)
97
+ echo 'export ANTHROPIC_API_KEY="sk-ant-..."' >> ~/.bashrc
98
+ source ~/.bashrc
99
+ ```
100
+
101
+ > **Токены и стоимость:** Полный 6-шаговый пайплайн генерации transcript-сайта потребляет примерно 30-60K токенов. Основной расход: Input Analysis (~5K), Content Parsing (~8K), Site Generation (~15K), Interactivity (~10K), Deploy (~3K), Verification (~5K). Стоимость зависит от длины транскрипта: короткий подкаст (~15 мин) ~30K токенов, длинная конференция (~2 часа) ~80K токенов.
102
+
103
+ ### 1.4. yt-dlp (опционально, для YouTube)
104
+
105
+ Для извлечения транскриптов из YouTube-видео используется `yt-dlp`. Если вы планируете работать только с текстовыми транскриптами — этот шаг не обязателен.
106
+
107
+ ```bash
108
+ # Проверка установки
109
+ yt-dlp --version
110
+
111
+ # Установка на Ubuntu/Debian
112
+ sudo apt install -y yt-dlp
113
+
114
+ # Установка на macOS (через Homebrew)
115
+ brew install yt-dlp
116
+
117
+ # Установка через pip (кроссплатформенный способ)
118
+ pip install yt-dlp
119
+
120
+ # Установка через pipx (изолированное окружение, рекомендуется)
121
+ pipx install yt-dlp
122
+
123
+ # Обновление до последней версии (yt-dlp обновляется часто)
124
+ yt-dlp -U
125
+ ```
126
+
127
+ `yt-dlp` поддерживает автоматическое извлечение субтитров, метаданных и thumbnail-ов из YouTube. Если `yt-dlp` не установлен, скилл предложит вставить текст транскрипта вручную.
128
+
129
+ ### 1.5. Git (опционально, но рекомендуется)
130
+
131
+ Git необходим для GitHub Pages деплоя и версионирования сгенерированных сайтов.
132
+
133
+ ```bash
134
+ # Проверка установки
135
+ git --version
136
+
137
+ # Установка на Ubuntu/Debian
138
+ sudo apt install -y git
139
+
140
+ # Установка на macOS
141
+ brew install git
142
+
143
+ # Базовая настройка (если git установлен впервые)
144
+ git config --global user.name "Your Name"
145
+ git config --global user.email "your@email.com"
146
+ ```
147
+
148
+ ### 1.6. Современный браузер
149
+
150
+ Для просмотра и тестирования сгенерированных сайтов. Сайт использует Tailwind CSS Play CDN и современные JS-фичи (IntersectionObserver, Clipboard API, CSS custom properties).
151
+
152
+ Поддерживаемые браузеры:
153
+ - Chrome / Chromium 90+
154
+ - Firefox 90+
155
+ - Safari 15+
156
+ - Edge 90+
157
+
158
+ ---
159
+
160
+ ## 2. Методы установки
161
+
162
+ Пакет `@dzhechkov/skills-transcript-site` можно установить тремя способами в зависимости от вашего сценария использования:
163
+
164
+ | Метод | Когда использовать | Команда |
165
+ |-------|-------------------|---------|
166
+ | **npx (разовая установка)** | Быстрый старт без глобальной установки | `npx @dzhechkov/skills-transcript-site init` |
167
+ | **Глобальная установка** | Частое использование в нескольких проектах | `npm install -g @dzhechkov/skills-transcript-site` |
168
+ | **Рядом с Keysarium** | Уже установлен `@dzhechkov/keysarium` | `npx @dzhechkov/skills-transcript-site init` (определяет keysarium автоматически) |
169
+
170
+ Во всех случаях команда `init` копирует одни и те же файлы в проект. Разница только в том, как запускается CLI.
171
+
172
+ ---
173
+
174
+ ## 3. Установка с помощью npx
175
+
176
+ `npx` позволяет запустить пакет без предварительной установки. Это рекомендуемый способ для первого знакомства с пакетом.
177
+
178
+ ### 3.1. Перейдите в директорию проекта
179
+
180
+ ```bash
181
+ # Перейдите в корень проекта, куда нужно установить transcript-site
182
+ cd /path/to/your-project
183
+
184
+ # Убедитесь, что вы в правильной директории
185
+ pwd
186
+ ls
187
+ ```
188
+
189
+ Директория проекта должна содержать файлы вашего проекта Claude Code (или быть пустой, если создаёте новый проект).
190
+
191
+ ### 3.2. Запустите установку
192
+
193
+ ```bash
194
+ npx @dzhechkov/skills-transcript-site init
195
+ ```
196
+
197
+ CLI отобразит баннер и план установки:
198
+
199
+ ```
200
+ +=====================================================+
201
+ | TRANSCRIPT-SITE-GENERATOR |
202
+ | Interactive transcript websites from text/YouTube |
203
+ | Pure static HTML + Tailwind CDN + vanilla JS |
204
+ +=====================================================+
205
+
206
+ Installation plan:
207
+
208
+ + Transcript Site Skill (.claude/skills/transcript-site-generator/)
209
+ + Transcript Site Commands (.claude/commands/transcript-site*.md)
210
+ + Transcript Site Rules (.claude/rules/transcript-site-*.md)
211
+
212
+ [1/3] Installing Transcript Site Skill...
213
+ [2/3] Installing Transcript Site Commands...
214
+ [3/3] Installing Transcript Site Rules...
215
+
216
+ Created .transcript-site-skills.json manifest
217
+
218
+ Transcript Site skill pack installed!
219
+
220
+ Installed components:
221
+ + Transcript Site Skill (.claude/skills/transcript-site-generator/)
222
+ + Transcript Site Commands (.claude/commands/transcript-site*.md)
223
+ + Transcript Site Rules (.claude/rules/transcript-site-*.md)
224
+
225
+ Next steps:
226
+ 1. Open Claude Code in this directory
227
+ 2. Run /transcript-site [YouTube URL or text] for the full pipeline
228
+ 3. Generated site will be in docs/ (ready for GitHub Pages)
229
+ ```
230
+
231
+ ### 3.3. Предпросмотр без записи (dry-run)
232
+
233
+ Если хотите узнать, что именно будет установлено, не записывая файлы:
234
+
235
+ ```bash
236
+ npx @dzhechkov/skills-transcript-site init --dry-run
237
+ ```
238
+
239
+ Команда покажет план установки и завершится без изменений.
240
+
241
+ ### 3.4. Принудительная перезапись (force)
242
+
243
+ Если скилл уже установлен и вы хотите заменить файлы свежими из пакета:
244
+
245
+ ```bash
246
+ npx @dzhechkov/skills-transcript-site init --force
247
+ ```
248
+
249
+ > **Внимание:** `--force` перезапишет существующие файлы скилла. Ваши пользовательские модификации будут утеряны. Сначала сделайте бэкап или зафиксируйте изменения в git.
250
+
251
+ ### 3.5. Указание выходной директории
252
+
253
+ По умолчанию сгенерированные сайты записываются в `docs/` (стандартная директория для GitHub Pages). Для изменения:
254
+
255
+ ```bash
256
+ npx @dzhechkov/skills-transcript-site init --output-dir public/
257
+ ```
258
+
259
+ Это изменит значение по умолчанию в конфигурации скилла.
260
+
261
+ ---
262
+
263
+ ## 4. Автономная установка (standalone)
264
+
265
+ Если вы планируете использовать transcript-site-generator регулярно и не хотите каждый раз запускать `npx`, установите пакет глобально.
266
+
267
+ ### 4.1. Глобальная установка
268
+
269
+ ```bash
270
+ npm install -g @dzhechkov/skills-transcript-site
271
+
272
+ # Проверка установки
273
+ skills-transcript-site --version
274
+ # или
275
+ npx @dzhechkov/skills-transcript-site --version
276
+ ```
277
+
278
+ ### 4.2. Инициализация в проекте
279
+
280
+ После глобальной установки перейдите в проект и запустите:
281
+
282
+ ```bash
283
+ cd /path/to/your-project
284
+ skills-transcript-site init
285
+ ```
286
+
287
+ Или по-прежнему через npx (будет использована кешированная локальная версия):
288
+
289
+ ```bash
290
+ npx @dzhechkov/skills-transcript-site init
291
+ ```
292
+
293
+ ### 4.3. Структура установленных файлов
294
+
295
+ После `init` в корне проекта появятся следующие файлы и директории:
296
+
297
+ ```
298
+ your-project/
299
+ +-- .transcript-site-skills.json <-- Манифест установки
300
+ +-- .claude/
301
+ +-- skills/
302
+ | +-- transcript-site-generator/
303
+ | +-- SKILL.md <-- Основной оркестратор 6-шагового пайплайна
304
+ | +-- modules/
305
+ | | +-- input-analysis.md <-- Шаг 1: анализ входных данных
306
+ | | +-- content-parsing.md <-- Шаг 2: парсинг контента
307
+ | | +-- site-generation.md <-- Шаг 3: генерация HTML
308
+ | | +-- interactivity.md <-- Шаг 4: интерактивность (JS)
309
+ | | +-- deploy.md <-- Шаг 5: деплой конфигурация
310
+ | | +-- verification.md <-- Шаг 6: верификация
311
+ | +-- references/
312
+ | | +-- html-template.md <-- Базовый HTML шаблон
313
+ | | +-- tailwind-config.md <-- Конфигурация Tailwind CDN
314
+ | | +-- seo-checklist.md <-- SEO чеклист (OG, JSON-LD, Twitter)
315
+ | | +-- accessibility-guide.md <-- A11y руководство
316
+ | +-- examples/
317
+ | +-- sample-podcast.md <-- Пример: подкаст-транскрипт
318
+ | +-- sample-youtube.md <-- Пример: YouTube-видео
319
+ +-- commands/
320
+ | +-- transcript-site.md <-- /transcript-site -- полный пайплайн
321
+ | +-- transcript-site-generate.md <-- /transcript-site-generate -- только HTML
322
+ | +-- transcript-site-deploy.md <-- /transcript-site-deploy -- только деплой
323
+ +-- rules/
324
+ +-- transcript-site-quality.md <-- Правила качества для генерируемых сайтов
325
+ ```
326
+
327
+ Манифест `.transcript-site-skills.json` записывает версию, список компонентов и все установленные файлы. Он используется командами `update`, `remove`, `list` и `doctor`.
328
+
329
+ ---
330
+
331
+ ## 5. Установка рядом с Keysarium
332
+
333
+ `@dzhechkov/skills-transcript-site` разработан для совместной работы с `@dzhechkov/keysarium`. При установке в проект, где уже есть Keysarium, скилл автоматически определяет это и интегрируется.
334
+
335
+ ### 5.1. Определение Keysarium
336
+
337
+ Команда `init` ищет файл `.keysarium.json` в корне проекта. Если он найден — выводится сообщение об интеграции:
338
+
339
+ ```
340
+ +--------------------------------------------------+
341
+ | @dzhechkov/keysarium detected! |
342
+ | Version: 1.0.0 |
343
+ | Transcript Site will integrate with Keysarium. |
344
+ | Shared directories: .claude/commands, rules |
345
+ +--------------------------------------------------+
346
+ ```
347
+
348
+ ### 5.2. Порядок установки с Keysarium
349
+
350
+ Рекомендуемый порядок установки (если оба пакета устанавливаются с нуля):
351
+
352
+ ```bash
353
+ # Шаг 1: Установите Keysarium первым
354
+ npx @dzhechkov/keysarium init
355
+
356
+ # Шаг 2: Установите Transcript Site поверх
357
+ npx @dzhechkov/skills-transcript-site init
358
+ ```
359
+
360
+ Transcript Site добавит свои файлы в уже существующие директории `.claude/commands/` и `.claude/rules/`, не затрагивая файлы Keysarium.
361
+
362
+ ### 5.3. Разделение файлов (изоляция)
363
+
364
+ Оба пакета используют соглашение об именовании, чтобы не конфликтовать:
365
+
366
+ | Пакет | Команды | Правила | Скиллы |
367
+ |-------|---------|---------|--------|
368
+ | Keysarium | `casarium.md`, `discovery.md`, ... | `agent-swarm.md`, `checkpoint-protocol.md`, ... | `explore/`, `goap-research-ed25519/`, ... |
369
+ | Transcript Site | `transcript-site.md`, `transcript-site-generate.md`, `transcript-site-deploy.md` | `transcript-site-quality.md` | `transcript-site-generator/` |
370
+
371
+ Все файлы Transcript Site начинаются с префикса `transcript-site`. Пересечений нет.
372
+
373
+ ### 5.4. Использование после установки Keysarium
374
+
375
+ После установки обоих пакетов в Claude Code доступны команды обоих пайплайнов одновременно:
376
+
377
+ ```
378
+ # Keysarium команды
379
+ /casarium /discovery /explore-case /research
380
+ /cjm-prototype /solve /architecture-phase /presentation
381
+
382
+ # Transcript Site команды
383
+ /transcript-site /transcript-site-generate /transcript-site-deploy
384
+ ```
385
+
386
+ Конфликтов между командами нет. Можно, например, использовать `/transcript-site` для создания интерактивного сайта из транскрипта подкаста, а `/casarium` — для полного исследования AI-кейса.
387
+
388
+ ### 5.5. Генерация сайтов для исследований Keysarium
389
+
390
+ Типичный сценарий совместного использования — превращение артефактов Keysarium в интерактивные веб-сайты:
391
+
392
+ ```
393
+ # Создать сайт из executive summary исследования
394
+ /transcript-site researches/my-case/08_executive_summary.md
395
+
396
+ # Создать сайт из презентации
397
+ /transcript-site researches/my-case/05_presentation_content.md
398
+ ```
399
+
400
+ ---
401
+
402
+ ## 6. Проверка установки
403
+
404
+ ### 6.1. Команда doctor
405
+
406
+ Запустите `doctor` для проверки здоровья установки сразу после `init`:
407
+
408
+ ```bash
409
+ npx @dzhechkov/skills-transcript-site doctor
410
+ ```
411
+
412
+ Пример вывода при здоровой установке:
413
+
414
+ ```
415
+ Running health checks for @dzhechkov/skills-transcript-site v1.0.0...
416
+
417
+ + Files exist -- All 15 manifest files present
418
+ + Skill pack -- SKILL.md present, 6 modules, 4 references, 2 examples
419
+ + Commands -- 3 command(s): transcript-site.md, transcript-site-generate.md, transcript-site-deploy.md
420
+ + Rules -- 1 rule(s): transcript-site-quality.md
421
+ + yt-dlp -- Found (v2024.12.06)
422
+ + Keysarium integration -- Active (Keysarium v1.0.0)
423
+
424
+ 6/6 checks passed -- Transcript Site installation is healthy!
425
+ ```
426
+
427
+ Если `yt-dlp` не найден, doctor покажет предупреждение (не ошибку):
428
+
429
+ ```
430
+ ! yt-dlp -- Not found (YouTube extraction unavailable)
431
+ Install: pip install yt-dlp
432
+ ```
433
+
434
+ ### 6.2. Команда list
435
+
436
+ Для просмотра установленных компонентов с детальным перечнем файлов:
437
+
438
+ ```bash
439
+ npx @dzhechkov/skills-transcript-site list
440
+ ```
441
+
442
+ Вывод:
443
+
444
+ ```
445
+ @dzhechkov/skills-transcript-site v1.0.0
446
+
447
+ Skill:
448
+ .claude/skills/transcript-site-generator/SKILL.md (12.4 KB)
449
+ .claude/skills/transcript-site-generator/modules/input-analysis.md (4.2 KB)
450
+ .claude/skills/transcript-site-generator/modules/content-parsing.md (5.1 KB)
451
+ .claude/skills/transcript-site-generator/modules/site-generation.md (8.3 KB)
452
+ .claude/skills/transcript-site-generator/modules/interactivity.md (6.7 KB)
453
+ .claude/skills/transcript-site-generator/modules/deploy.md (3.2 KB)
454
+ .claude/skills/transcript-site-generator/modules/verification.md (3.8 KB)
455
+
456
+ References:
457
+ .claude/skills/transcript-site-generator/references/html-template.md (5.5 KB)
458
+ .claude/skills/transcript-site-generator/references/tailwind-config.md (2.1 KB)
459
+ .claude/skills/transcript-site-generator/references/seo-checklist.md (3.4 KB)
460
+ .claude/skills/transcript-site-generator/references/accessibility-guide.md (2.8 KB)
461
+
462
+ Examples:
463
+ .claude/skills/transcript-site-generator/examples/sample-podcast.md (4.0 KB)
464
+ .claude/skills/transcript-site-generator/examples/sample-youtube.md (5.2 KB)
465
+
466
+ Commands:
467
+ .claude/commands/transcript-site.md (3.5 KB)
468
+ .claude/commands/transcript-site-generate.md (2.8 KB)
469
+ .claude/commands/transcript-site-deploy.md (2.0 KB)
470
+
471
+ Rules:
472
+ .claude/rules/transcript-site-quality.md (4.1 KB)
473
+
474
+ Total: 15 files, 81.1 KB
475
+ ```
476
+
477
+ ### 6.3. Проверка в Claude Code
478
+
479
+ Откройте Claude Code в директории проекта и убедитесь, что команды доступны:
480
+
481
+ ```bash
482
+ # Откройте Claude Code в директории проекта
483
+ claude
484
+
485
+ # Внутри Claude Code проверьте доступность команд
486
+ # (просто введите в чате)
487
+ /transcript-site --help
488
+ ```
489
+
490
+ ---
491
+
492
+ ## 7. Первый запуск -- пошаговое руководство
493
+
494
+ Этот раздел проводит вас через полный 6-шаговый пайплайн: от YouTube URL до готового сайта на GitHub Pages.
495
+
496
+ ### 7.1. Сценарий A: YouTube URL
497
+
498
+ Мы создадим интерактивный сайт из транскрипта YouTube-видео.
499
+
500
+ #### Шаг 0: Подготовка
501
+
502
+ Убедитесь, что `yt-dlp` установлен:
503
+
504
+ ```bash
505
+ yt-dlp --version
506
+ ```
507
+
508
+ Выберите YouTube-видео с субтитрами (авто-сгенерированные тоже подходят).
509
+
510
+ #### Шаг 1: Запуск пайплайна
511
+
512
+ В Claude Code введите:
513
+
514
+ ```
515
+ /transcript-site https://www.youtube.com/watch?v=dQw4w9WgXcQ
516
+ ```
517
+
518
+ Claude Code выполнит 6-шаговый пайплайн автоматически.
519
+
520
+ #### Шаг 2: Input Analysis (Анализ входных данных)
521
+
522
+ ```
523
+ ====================================================
524
+ Step 1/6: INPUT ANALYSIS
525
+ Source type: YouTube URL
526
+ Video ID: dQw4w9WgXcQ
527
+
528
+ Extracting metadata via yt-dlp...
529
+ Title: "Example Video Title"
530
+ Duration: 15:42
531
+ Channel: Example Channel
532
+ Upload date: 2025-06-15
533
+ Language detected: en
534
+ Subtitles: auto-generated (en)
535
+
536
+ Extracting transcript...
537
+ Transcript length: 2,847 words
538
+ Estimated sections: 8-12
539
+
540
+ Checkpoint 1/6: Input Analysis Complete
541
+ + "ok" -- next step
542
+ + "[feedback]" -- adjust
543
+ ====================================================
544
+ ```
545
+
546
+ Ответьте `ok` для продолжения.
547
+
548
+ #### Шаг 3: Content Parsing (Парсинг контента)
549
+
550
+ ```
551
+ ====================================================
552
+ Step 2/6: CONTENT PARSING
553
+ Input: 2,847 words transcript
554
+
555
+ Detected speakers: 2 (Speaker A, Speaker B)
556
+ Sections identified: 10
557
+ 1. Introduction (0:00-1:23)
558
+ 2. Topic Overview (1:23-3:45)
559
+ 3. Main Discussion Part 1 (3:45-6:12)
560
+ ...
561
+
562
+ Timestamps mapped: 42 anchor points
563
+ Key quotes extracted: 8
564
+
565
+ Checkpoint 2/6: Content Parsing Complete
566
+ + "ok" -- next step
567
+ + "split [section]" -- split a section
568
+ + "merge [sections]" -- merge sections
569
+ ====================================================
570
+ ```
571
+
572
+ #### Шаг 4: Site Generation (Генерация HTML)
573
+
574
+ ```
575
+ ====================================================
576
+ Step 3/6: SITE GENERATION
577
+ Template: YouTube transcript (with embed)
578
+ Theme: default (indigo)
579
+ Language: en
580
+
581
+ Generating HTML structure...
582
+ index.html (48 KB)
583
+ - Tailwind CSS CDN loaded
584
+ - YouTube iframe embed with enablejsapi=1
585
+ - Table of contents with 10 sections
586
+ - 42 timestamp links with data-seek attributes
587
+ - Speaker labels with color coding
588
+ - SEO meta tags (OG, Twitter Card, JSON-LD VideoObject)
589
+
590
+ Checkpoint 3/6: Site Generation Complete
591
+ Files created: docs/index.html
592
+ + "ok" -- next step
593
+ + "change theme [color]" -- adjust color scheme
594
+ + "add [feature]" -- add feature
595
+ ====================================================
596
+ ```
597
+
598
+ #### Шаг 5: Interactivity (Интерактивность)
599
+
600
+ ```
601
+ ====================================================
602
+ Step 4/6: INTERACTIVITY
603
+ Adding interactive features...
604
+
605
+ + Search (Ctrl+K): debounced input, highlighted results
606
+ + Dark mode toggle: localStorage persistence
607
+ + Table of Contents: IntersectionObserver scroll-spy
608
+ + Back-to-top button: appears on scroll > 300px
609
+ + Copy quote buttons: Clipboard API with feedback
610
+ + YouTube sync: timestamp clicks trigger seekTo()
611
+ + Progress bar: reading progress indicator
612
+ + Stats: word count, reading time, section count
613
+ + Print stylesheet: clean print layout
614
+
615
+ All features: vanilla JS, no build step, event delegation
616
+
617
+ Checkpoint 4/6: Interactivity Complete
618
+ Files created: docs/index.html (updated, 62 KB)
619
+ + "ok" -- next step
620
+ + "remove [feature]" -- disable a feature
621
+ ====================================================
622
+ ```
623
+
624
+ #### Шаг 6: Deploy (Деплой)
625
+
626
+ ```
627
+ ====================================================
628
+ Step 5/6: DEPLOY CONFIGURATION
629
+ Target: GitHub Pages (docs/ folder)
630
+
631
+ Generated:
632
+ docs/index.html -- Main transcript page
633
+ docs/robots.txt -- Search engine configuration
634
+ docs/sitemap.xml -- Sitemap for SEO
635
+
636
+ GitHub Pages setup:
637
+ 1. Push docs/ to your repository
638
+ 2. Go to Settings > Pages
639
+ 3. Source: "Deploy from a branch"
640
+ 4. Branch: main, folder: /docs
641
+ 5. Site will be live at https://<user>.github.io/<repo>/
642
+
643
+ Checkpoint 5/6: Deploy Configuration Complete
644
+ + "ok" -- next step
645
+ + "custom domain [domain]" -- configure custom domain
646
+ ====================================================
647
+ ```
648
+
649
+ #### Шаг 7: Verification (Верификация)
650
+
651
+ ```
652
+ ====================================================
653
+ Step 6/6: VERIFICATION
654
+
655
+ HTML validation:
656
+ + Valid HTML5 structure
657
+ + All tags properly closed
658
+ + No deprecated attributes
659
+
660
+ JS validation:
661
+ + No syntax errors
662
+ + Event delegation verified (no inline handlers)
663
+ + escapeHtml/escapeRegex functions present
664
+
665
+ CSS validation:
666
+ + Tailwind CDN loaded correctly
667
+ + Dark mode classes present
668
+ + Print stylesheet included
669
+
670
+ SEO validation:
671
+ + Open Graph tags present (og:title, og:description, og:image)
672
+ + Twitter Card tags present
673
+ + JSON-LD structured data present
674
+ + Canonical URL set
675
+
676
+ Accessibility validation:
677
+ + Skip-nav link present
678
+ + ARIA roles on navigation and main content
679
+ + Keyboard navigation for search (Escape to close)
680
+ + Alt text on images
681
+
682
+ Performance:
683
+ + Total HTML size: 62 KB (under 100 KB target)
684
+ + No external JS dependencies (except Tailwind CDN)
685
+ + No render-blocking resources
686
+
687
+ All checks passed!
688
+
689
+ ====================================================
690
+ PIPELINE COMPLETE
691
+
692
+ Transcript site generated successfully!
693
+
694
+ Output: docs/index.html (62 KB)
695
+ - 10 sections, 42 timestamps, 8 key quotes
696
+ - YouTube embed with sync
697
+ - Search, dark mode, TOC, copy quotes
698
+ - SEO: OG + Twitter Cards + JSON-LD
699
+ - Ready for GitHub Pages deployment
700
+
701
+ To preview locally:
702
+ open docs/index.html
703
+
704
+ To deploy:
705
+ git add docs/
706
+ git commit -m "add transcript site"
707
+ git push
708
+ ====================================================
709
+ ```
710
+
711
+ ### 7.2. Сценарий B: Текстовый транскрипт
712
+
713
+ Если у вас нет YouTube URL, вставьте текст транскрипта напрямую:
714
+
715
+ ```
716
+ /transcript-site
717
+
718
+ Вставьте текст транскрипта:
719
+ ---
720
+ [00:00] Host: Welcome to the podcast...
721
+ [00:15] Guest: Thank you for having me...
722
+ ...
723
+ ---
724
+ ```
725
+
726
+ Или укажите путь к файлу:
727
+
728
+ ```
729
+ /transcript-site /path/to/transcript.txt
730
+ ```
731
+
732
+ Пайплайн идентичен, за исключением YouTube-специфичных шагов:
733
+ - Шаг 1 определит source type как `text` или `file`
734
+ - Шаг 3 не добавит YouTube embed
735
+ - Шаг 4 не добавит timestamp-sync с видео
736
+ - Всё остальное (search, dark mode, TOC, copy, SEO) работает так же
737
+
738
+ ### 7.3. Сценарий C: Комбинированный (текст + YouTube)
739
+
740
+ Можно указать и URL, и текст (если авто-извлечённые субтитры неточны):
741
+
742
+ ```
743
+ /transcript-site https://youtube.com/watch?v=... --text /path/to/corrected-transcript.txt
744
+ ```
745
+
746
+ Скилл использует предоставленный текст для контента, а YouTube URL — для embed и метаданных.
747
+
748
+ ---
749
+
750
+ ## 8. Интеграция с @dzhechkov/keysarium
751
+
752
+ ### 8.1. Автоматическое определение
753
+
754
+ При запуске `npx @dzhechkov/skills-transcript-site init` в директории, где уже установлен Keysarium (есть файл `.keysarium.json`), скилл автоматически выводит сообщение об интеграции и настраивается соответствующим образом.
755
+
756
+ Проверить интеграцию можно через `doctor`:
757
+
758
+ ```bash
759
+ npx @dzhechkov/skills-transcript-site doctor
760
+ ```
761
+
762
+ Строка `Keysarium integration` в выводе покажет статус:
763
+ - `Active (Keysarium v1.0.0)` — интеграция активна
764
+ - `Not installed (standalone mode)` — скилл работает автономно
765
+
766
+ ### 8.2. Совместные сценарии
767
+
768
+ | Сценарий | Команда |
769
+ |---------|---------|
770
+ | Сайт из executive summary | `/transcript-site researches/<slug>/08_executive_summary.md` |
771
+ | Сайт из транскрипта конференции | `/transcript-site https://youtube.com/watch?v=...` |
772
+ | Сайт из speaker script | `/transcript-site researches/<slug>/06_speaker_script.md` |
773
+ | Оценка сгенерированного сайта | `/bto-test docs/index.html` |
774
+
775
+ ### 8.3. Параллельное использование
776
+
777
+ Все команды доступны одновременно в одной сессии Claude Code. Пример workflow:
778
+
779
+ ```
780
+ # Шаг 1: Исследование кейса
781
+ /casarium [описание кейса]
782
+
783
+ # Шаг 2: После завершения исследования — создать сайт из результатов
784
+ /transcript-site researches/my-case/05_presentation_content.md
785
+
786
+ # Шаг 3: Оценить сайт через BTO
787
+ /bto-test docs/index.html
788
+ ```
789
+
790
+ ---
791
+
792
+ ## 9. Обновление и удаление
793
+
794
+ ### 9.1. Обновление установки
795
+
796
+ Для обновления Transcript Site до последней версии:
797
+
798
+ ```bash
799
+ npx @dzhechkov/skills-transcript-site update
800
+ ```
801
+
802
+ Команда `update`:
803
+ 1. Читает манифест `.transcript-site-skills.json`, определяет установленные компоненты
804
+ 2. Сравнивает текущие файлы с шаблонами нового пакета
805
+ 3. Показывает diff по каждому изменённому файлу
806
+ 4. Запрашивает подтверждение перед обновлением
807
+
808
+ ```bash
809
+ # Предпросмотр изменений без записи
810
+ npx @dzhechkov/skills-transcript-site update --dry-run
811
+ ```
812
+
813
+ > **Рекомендация:** Перед обновлением зафиксируйте текущее состояние в git:
814
+ > ```bash
815
+ > git add .claude/ .transcript-site-skills.json
816
+ > git commit -m "snapshot before skills-transcript-site update"
817
+ > ```
818
+
819
+ ### 9.2. Удаление установки
820
+
821
+ ```bash
822
+ npx @dzhechkov/skills-transcript-site remove
823
+ ```
824
+
825
+ Команда `remove` удаляет только файлы, перечисленные в манифесте. Файлы Keysarium (если они есть в тех же директориях) не затрагиваются. Сгенерированные сайты в `docs/` НЕ удаляются — они являются продуктом работы, а не частью установки.
826
+
827
+ После удаления манифест `.transcript-site-skills.json` также удаляется.
828
+
829
+ ---
830
+
831
+ ## 10. Устранение неполадок
832
+
833
+ ### 10.1. Ошибка: "yt-dlp not found"
834
+
835
+ ```
836
+ WARN yt-dlp is not installed or not in PATH.
837
+ YouTube URL provided but cannot extract transcript.
838
+ ```
839
+
840
+ **Причина:** `yt-dlp` не установлен или не доступен в `PATH`.
841
+
842
+ **Решение:**
843
+
844
+ ```bash
845
+ # Вариант 1: установить yt-dlp
846
+ pip install yt-dlp
847
+
848
+ # Вариант 2: установить через brew (macOS)
849
+ brew install yt-dlp
850
+
851
+ # Вариант 3: вставить транскрипт вручную
852
+ # При запуске /transcript-site без yt-dlp скилл предложит
853
+ # вставить текст транскрипта вручную
854
+
855
+ # Проверить, что yt-dlp виден из PATH
856
+ which yt-dlp
857
+ yt-dlp --version
858
+ ```
859
+
860
+ Если `yt-dlp` установлен через pip, убедитесь, что Python `bin/` директория в `PATH`:
861
+
862
+ ```bash
863
+ # Найти расположение yt-dlp
864
+ python -m site --user-base
865
+ # Добавить bin/ в PATH (Linux/macOS)
866
+ export PATH="$HOME/.local/bin:$PATH"
867
+ echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
868
+ source ~/.bashrc
869
+ ```
870
+
871
+ ### 10.2. Ошибка: "node not found" или устаревшая версия
872
+
873
+ ```
874
+ ERROR Node.js is required but not found, or version is below 16.
875
+ ```
876
+
877
+ **Решение:**
878
+
879
+ ```bash
880
+ # Установить через nvm (рекомендуется)
881
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
882
+ source ~/.bashrc
883
+ nvm install 20
884
+ nvm use 20
885
+ ```
886
+
887
+ ### 10.3. Большой транскрипт: chunking
888
+
889
+ ```
890
+ WARN Transcript is very large (15,000+ words).
891
+ Consider chunking into multiple pages.
892
+ ```
893
+
894
+ **Причина:** Транскрипты длиннее 15,000 слов генерируют HTML файлы больше 200 KB, что замедляет загрузку.
895
+
896
+ **Решение:**
897
+
898
+ Скилл предложит два варианта:
899
+ 1. **Single page с lazy loading:** Контент ниже viewport загружается по мере скролла. Работает для транскриптов до 30,000 слов.
900
+ 2. **Multi-page:** Транскрипт разбивается по секциям на отдельные HTML-страницы с навигацией. Рекомендуется для транскриптов свыше 30,000 слов.
901
+
902
+ Для принудительного выбора стратегии:
903
+
904
+ ```
905
+ /transcript-site [source] --chunking single
906
+ /transcript-site [source] --chunking multi
907
+ ```
908
+
909
+ ### 10.4. GitHub Pages 404
910
+
911
+ После деплоя сайт показывает 404.
912
+
913
+ **Причина 1:** GitHub Pages не настроен на директорию `docs/`.
914
+
915
+ **Решение:**
916
+ 1. Перейдите в Settings > Pages в репозитории
917
+ 2. Source: "Deploy from a branch"
918
+ 3. Branch: `main` (или ваша ветка), Folder: `/docs`
919
+ 4. Нажмите Save
920
+ 5. Подождите 1-2 минуты, пока GitHub обработает деплой
921
+
922
+ **Причина 2:** Файл `docs/index.html` не зафиксирован в git.
923
+
924
+ **Решение:**
925
+ ```bash
926
+ git add docs/
927
+ git commit -m "add transcript site"
928
+ git push origin main
929
+ ```
930
+
931
+ **Причина 3:** Репозиторий приватный (GitHub Pages для приватных репо требует GitHub Pro).
932
+
933
+ **Решение:** Сделайте репозиторий публичным или используйте GitHub Pro/Team/Enterprise.
934
+
935
+ ### 10.5. YouTube video не имеет субтитров
936
+
937
+ ```
938
+ WARN No subtitles found for video dQw4w9WgXcQ.
939
+ Auto-generated captions not available.
940
+ ```
941
+
942
+ **Решение:**
943
+
944
+ ```bash
945
+ # Проверить доступность субтитров вручную
946
+ yt-dlp --list-subs https://youtube.com/watch?v=VIDEO_ID
947
+
948
+ # Если субтитров нет — используйте текстовый ввод
949
+ /transcript-site
950
+ # Затем вставьте транскрипт вручную
951
+ ```
952
+
953
+ Для видео без субтитров можно использовать сторонние сервисы для транскрипции (Whisper, AssemblyAI, etc.), затем подать результат как текст.
954
+
955
+ ### 10.6. Tailwind CDN не загружается (оффлайн)
956
+
957
+ ```
958
+ WARN Tailwind CSS Play CDN requires internet connection.
959
+ Site will render without styles if opened offline.
960
+ ```
961
+
962
+ **Решение для оффлайн-использования:**
963
+
964
+ Скилл может сгенерировать инлайн-стили вместо CDN:
965
+
966
+ ```
967
+ /transcript-site [source] --tailwind inline
968
+ ```
969
+
970
+ Это увеличит размер HTML на ~15-20 KB, но сайт будет работать полностью оффлайн.
971
+
972
+ ### 10.7. Кодировка текста: кракозябры
973
+
974
+ **Причина:** Входной файл не в UTF-8.
975
+
976
+ **Решение:**
977
+
978
+ ```bash
979
+ # Проверить кодировку файла
980
+ file transcript.txt
981
+
982
+ # Конвертировать в UTF-8
983
+ iconv -f WINDOWS-1251 -t UTF-8 transcript.txt > transcript-utf8.txt
984
+
985
+ # Использовать конвертированный файл
986
+ /transcript-site transcript-utf8.txt
987
+ ```
988
+
989
+ ### 10.8. Команды /transcript-site* не отображаются в Claude Code
990
+
991
+ **Причина 1:** Claude Code запущен не в директории проекта.
992
+
993
+ **Решение:**
994
+ ```bash
995
+ ls .transcript-site-skills.json
996
+ # Если файл не найден — перейдите в правильную директорию
997
+ ```
998
+
999
+ **Причина 2:** Claude Code был открыт до установки скилла.
1000
+
1001
+ **Решение:** Закройте и снова откройте Claude Code.
1002
+
1003
+ ### 10.9. Dark mode не переключается
1004
+
1005
+ **Причина:** JavaScript заблокирован в браузере или CSP заголовки блокируют inline-скрипты.
1006
+
1007
+ **Решение:** Убедитесь, что JavaScript включён. Если используете CSP, добавьте `'unsafe-inline'` для скриптов или используйте nonce (скилл поддерживает конфигурацию CSP).
1008
+
1009
+ ### 10.10. Таблица кодов выхода CLI
1010
+
1011
+ | Код | Значение |
1012
+ |-----|---------|
1013
+ | `0` | Успешное выполнение |
1014
+ | `1` | Ошибка (неверные аргументы, файлы не найдены, проверки не пройдены) |
1015
+
1016
+ При коде выхода `1` в `doctor` — прочитайте раздел "Fix suggestions" в выводе. При коде `1` в `init` или `update` — прочитайте сообщение об ошибке и следуйте инструкциям.
1017
+
1018
+ ### 10.11. Полезные диагностические команды
1019
+
1020
+ ```bash
1021
+ # Полная диагностика
1022
+ npx @dzhechkov/skills-transcript-site doctor
1023
+
1024
+ # Проверка yt-dlp
1025
+ yt-dlp --version
1026
+ yt-dlp --list-subs https://youtube.com/watch?v=VIDEO_ID
1027
+
1028
+ # Проверка Node.js
1029
+ node --version
1030
+ npm --version
1031
+
1032
+ # Проверка Claude Code
1033
+ claude --version
1034
+
1035
+ # Проверка файлов скилла
1036
+ ls -la .claude/skills/transcript-site-generator/
1037
+ ls -la .claude/commands/transcript-site*.md
1038
+
1039
+ # Проверка сгенерированного сайта
1040
+ ls -la docs/
1041
+ wc -c docs/index.html # размер в байтах
1042
+ ```