WebArchiveExtractor — распаковка файлов webarchive
WebArchiveExtractor
Скилл для Claude Code на macOS: одной фразой распаковывает файлы .webarchive из Safari в обычные HTML-файлы и ресурсы
- 346 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Скилл запускает локальную программу и записывает файлы в выбранную папку
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/webarchiveextractorОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Скилл запускает локальную программу и записывает файлы в выбранную папку
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скилл webarchive для Claude Code распаковывает файлы .webarchive с помощью приложения WebArchiveExtractor для macOS из того же репозитория. Safari создает такие файлы, когда вы сохраняете страницу как веб-архив, а приложение раскладывает их содержимое в обычные HTML-файлы и ресурсы. Тот же исполняемый файл работает из командной строки, а без аргументов открывает окно. Claude Code достаточно попросить обычной фразой, например распаковать этот файл webarchive. Агент берет путь к архиву из запроса, при необходимости спрашивает папку вывода и запускает программу с параметрами -i, -o и -p. Параметр -p добавляет префикс ко всем ссылкам на ресурсы в HTML, это нужно для публикации результата в подпапке сайта. После распаковки скилл показывает путь к папке, число файлов и главный HTML-файл. Затем он предлагает открыть этот файл в браузере.
Для кого. Для владельцев Mac, у которых остались страницы, сохраненные в Safari как веб-архив, и нужны обычные HTML-файлы.
Подходит, если
- Нужно вытащить HTML и картинки из сохраненной в Safari страницы, чтобы разместить ее на сайте
- Требуется распаковать пачку файлов webarchive одной фразой в Claude Code
- Результат публикуется в подпапке сайта, поэтому ссылки на ресурсы получают префикс через параметр -p
- Надо проверить, какие файлы и скрипты лежат внутри сохраненной страницы
Не подходит, если
- Компьютер с Windows или Linux: приложение написано на Objective-C и работает только на macOS
- Приложение не установлено: скилл только вызывает его и сам ничего не распаковывает
- Нужно сохранить страницу из интернета заново: инструмент только распаковывает готовые архивы
Пример запроса к агенту
Распакуй файл ~/Desktop/report.webarchive и покажи, какой HTML-файл главный.Ограничения
Работает только на macOS. Приложение нужно собрать из исходников командой `xcodebuild -project WebArchiveExtractor.xcodeproj` или купить готовую сборку на сайте автора. Для сборки нужен Xcode из App Store, после его установки один раз выполняют `xcodebuild -runFirstLaunch`.
Приложение работает в песочнице macOS, поэтому надежно писать оно может только в папку Загрузки. По умолчанию скилл складывает результат в ~/Downloads, а если запись в другую папку не удалась, автор советует вернуться к Загрузкам.
Лицензия лежит в отдельном файле LICENSE.md без стандартного идентификатора, сам проект — форк старой разработки с SourceForge. Скилл запускает локальную программу и ничего не загружает из сети.
Как отключить. Удалите папку ~/.claude/skills/webarchive. Приложение из папки Applications удаляется отдельно.
Частые вопросы
Как поставить скилл webarchive в Claude Code?
Создайте папку командой mkdir -p ~/.claude/skills/webarchive и скопируйте в нее файл skills/webarchive/SKILL.md из репозитория. Само приложение должно стоять в /Applications/WebArchiveExtractor.app.
Что такое файл .webarchive?
Это двоичный формат plist, в который Safari сохраняет страницу вместе с картинками и стилями. Инструмент разворачивает такой файл в обычную папку с HTML и ресурсами.
Почему результат падает в папку Загрузки?
Приложение работает в песочнице macOS, и надежно писать оно может только в Загрузки. Поэтому скилл по умолчанию создает папку ~/Downloads с именем архива.
Как запустить распаковку без Claude Code?
Выполните исполняемый файл из командной строки: WebArchiveExtractor website.webarchive распакует архив в папку website рядом, а ключ -o задает свою папку. Без аргументов программа откроет окно.
Нужно ли собирать приложение самому?
Необязательно. Готовую сборку автор продает на своем сайте therohans.com, а бесплатно приложение собирают из исходников при установленном Xcode.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыПлагин для разбора научных статей: из PDF или ссылки на arXiv получается краткая сводка, учебные материалы, код и веб-просмотрщик
Скилл рисует проверенные схемы архитектуры, процессов, последовательностей и потоков данных в один интерактивный HTML-файл
Готовый к форку шаблон Claude Code для академической работы: слайды, статьи, анализ данных с многоагентным ревью и воротами качества
Скилл и CLI превращают Markdown в DOCX, PDF, PPTX, XLSX, PNG и еще десяток форматов, все считается локально
Скилл и CLI от Firecrawl: агент переводит Word, PowerPoint, Excel, OpenDocument, RTF, EPUB, CSV и PDF в Markdown на вашей машине
Скилл рисует анимированные схемы архитектуры и процессов в стиле рисунка от руки: темный неон и светлая бумага. README на китайском
Коротко о README
Документация показывает графический и консольный режимы, три способа вызова с параметрами и сборку проекта. Для сборки есть два шага подготовки Xcode и совет добавить программу в PATH или сделать ссылку в ~/.local/bin.
Бейдж для README
Исходный SKILL.md
--- name: webarchive description: Extract .webarchive files (saved from Safari) into plain HTML/assets using the WebArchiveExtractor CLI. Use when the user wants to unarchive, extract, or convert a .webarchive file. --- The user wants to extract a `.webarchive` file using WebArchiveExtractor. If arguments were provided (`$ARGUMENTS`), use them to infer the input file and optionally the output directory or URL prepend. Otherwise, ask the user for the path to the `.webarchive` file. ## How to run WebArchiveExtractor ``` /Applications/WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractor [-h] [-o <OutputDirectory>] [-p <URLPrepend>] -i <WebArchiveFile> ``` **Options:** - `-i <WebArchiveFile>` — **required** — path to the `.webarchive` file - `-o <OutputDirectory>` — directory to write extracted files into (optional; defaults to a directory named after the archive next to it) - `-p <URLPrepend>` — URI prefix to prepend to all asset URLs in the extracted HTML (optional; useful when serving the result from a subdirectory) **Shorthand (no flag):** ``` WebArchiveExtractor website.webarchive ``` A positional argument is treated as the `-i` value. ## Prerequisites The app must be installed at `/Applications/WebArchiveExtractor.app`. Check with: ```sh test -x /Applications/WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractor && echo "found" || echo "not installed" ``` If not found, tell the user to build and install from source (`xcodebuild -project WebArchiveExtractor.xcodeproj`) or drag a release build to `/Applications`. To use `WebArchiveExtractor` without the full path, the user can add it to `PATH`: ```sh export PATH="$PATH:/Applications/WebArchiveExtractor.app/Contents/MacOS/" ``` Or create a symlink: ```sh ln -s /Applications/WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractor ~/.local/bin/WebArchiveExtractor ``` ## Steps 1. Check the binary exists using the test command above. If not found, stop and direct the user to install the app. 2. Determine the input `.webarchive` file from `$ARGUMENTS` or ask the user. 3. Determine the output directory: - If the user explicitly provided one in `$ARGUMENTS`, use that. - Otherwise, default to `~/Downloads/<archive-name>` (where `<archive-name>` is the input filename without the `.webarchive` extension). - If the user asks why `~/Downloads` is the default, explain: macOS sandboxes the WebArchiveExtractor app, which restricts which directories the CLI can write to. The `~/Downloads` folder is one of the few locations reliably accessible, so it's used as the default to avoid silent failures. 4. Determine (optional) URL prepend from `$ARGUMENTS` or ask if needed. 5. Run the extractor using the Bash tool: ```sh /Applications/WebArchiveExtractor.app/Contents/MacOS/WebArchiveExtractor -i "<input>" -o "<output>" [-p "<prepend>"] ``` 6. If successful, list the output directory contents with `ls` and summarise: - The output directory path - How many files were extracted - The main HTML file name (if identifiable) 7. Offer to open the extracted HTML in the browser with `open <file>`. ## Notes - `.webarchive` is a macOS-specific binary plist format used by Safari's "Save As Web Archive" feature. - The CLI and the GUI app are the same binary — running with `-i` suppresses the GUI. - Running with no arguments launches the GUI instead of extracting anything.