AB web-clipper
Сохранить любую веб-страницу как вырезку в формате Markdown, совместимом с Obsidian. Активируется по команде «save <URL>» или «保存这个». Использует API Jina Reader для чистого извлечения контента. Поддерживает пользовательские теги, подпапки и пути к хранилищу. По умолчанию сохраняет в ~/.openclaw/obsidian-cache/clippings/. АКТИВАЦИЯ «save <URL>» / «保存这个» / любой URL с «save» или «clip» -> ВСЕГДА выполнять: python3 ~/.openclaw/skills/web-clipper/scripts/save_web_page.py --url "URL" -> Подтвердить пользователю сохраненное имя файла. НИКОГДА не использовать память.
машинный переводПоказать оригиналСкрыть оригинал«Save any web page as an Obsidian-compatible Markdown clipping. Trigger…»
Save any web page as an Obsidian-compatible Markdown clipping. Triggered by "save <URL>" or "保存这个". Uses Jina Reader API for clean content extraction. Supports custom tags, subfolders, and vault paths. Saves to ~/.openclaw/obsidian-cache/clippings/ by default. TRIGGER "save <URL>" / "保存这个" / any URL with "save" or "clip" -> ALWAYS exec: python3 ~/.openclaw/skills/web-clipper/scripts/save_web_page.py --url "URL" -> Confirm the saved filename to user. NEVER use memory.
Сохранить любую веб-страницу как вырезку в формате Markdown, совместимом с Obsidian.
Как процесс B 66/100 · Почти готов — слабые места: ошибки и развилки, отчётность по ходу
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 3. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
frontmatter-yamlSKILL.md: фронтматтер не разбирается как YAML (YAML parse error: Nested mappings are not allowed in compact mappings at line 2, column 14: description: Save any web page as an Obsidian-compatible Markdown clipping. Tri… ^ ); поля прочитаны построчно. Обычная причина — двоеточие в незакавыченном значении
Процессный рейтинг: все десять параметров 66/100
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 50Когда включается. Не сказано, при каком запросе скилл включается
- 60Инструменты и файлы. Используются инструменты (python), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 100Шаги. Шагов: 17
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 866 токенов
- 100Повторный запуск. Изменяющих операций нет
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 3 примера фраз-триггеров в кавычках
- +4Описание говорит, когда скилл НЕ применять
- +3Длина description 471 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 14 заголовков
- +3Пошаговые инструкции: 17 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (10 блоков кода)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 89.