JARVIS setup — скилл
jarvis-setup
Скилл помогает настроить голосовой JARVIS для Claude Code на Mac и проверить микрофон, синтез речи и доступы
- 957 ★ репозитория
- Последний коммит
Широкий доступ
Почему такой уровень
- JARVIS запускает Claude Code с пропуском запросов разрешений и может управлять интерфейсом Mac
- Синтез речи использует внешний Fish Audio; MCP-подключения открывают выбранные данные
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/jarvis-setupОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- JARVIS запускает Claude Code с пропуском запросов разрешений и может управлять интерфейсом Mac
- Синтез речи использует внешний Fish Audio; MCP-подключения открывают выбранные данные
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Скилл `jarvis-setup` помогает агенту установить и диагностировать JARVIS, голосовой интерфейс к Claude Code на Mac. Он разбирает конкретные причины сбоев: разрешение микрофона для другого порта, истекший вход в CLI и доступ Accessibility, выданный не тому приложению. Инструкция помогает проверить вход Claude Code и подключенные MCP-сервисы. Она указывает, какие настройки и журналы изучить при ошибке. Скилл входит в исходники проекта и ссылается на файлы реализации. Агент использует их при настройке и разборе ошибок. Установку приложения и выдачу разрешений выполняют отдельно.
Для кого. Владельцам Mac, которые настраивают голосовой JARVIS и разбираются с разрешениями микрофона и управления интерфейсом.
Подходит, если
- Установка открывается, но микрофон не работает после смены порта
- Голосовой интерфейс сообщает о сбое, а в журнале нужно проверить вход в Claude Code
- JARVIS не видит MCP-сервер, уже подключенный к другому клиенту
- Нужно разобраться, какому приложению macOS выдать Accessibility
Не подходит, если
- Нужен голосовой интерфейс для Linux или Windows
- Нельзя использовать внешний сервис синтеза речи Fish Audio
- Нельзя запускать агента с пропуском интерактивных запросов разрешений.
Пример запроса к агенту
Прочитай скилл `jarvis-setup` и проверь требования для моего Mac. Составь план установки, отдельно укажи платный синтез речи и запуск без запросов разрешений. Ключи в чат не запрашивай.Ограничения
Установка рассчитана на macOS с Python 3.11 или новее, Node.js 18 или новее, Chrome и авторизованным Claude Code 2.1.224 или новее. Голос использует Fish Audio: без `FISH_API_KEY` запасного голоса нет, подписка Claude не оплачивает этот сервис. JARVIS запускает Claude Code с `--dangerously-skip-permissions`: до старта проверьте доступ к экрану, терминалу и сервисам. Собственная лицензия разрешает личное некоммерческое использование, для коммерческого нужна отдельная лицензия.
Как отключить. Остановите сервер и фронтенд JARVIS, удалите подключение скилла у агента. Отзовите разрешения macOS и ключи сервисов, которые больше не нужны. Каталог данных с журналами и `connections.json` проверьте отдельно перед удалением.
Частые вопросы
Почему Chrome снова не слышит микрофон?
Разрешение привязано к адресу вместе с портом. Проверьте точный адрес фронтенда в `chrome://settings/content/microphone`: разрешение для `localhost:5173` не распространяется на `localhost:5174`.
Куда добавить MCP-сервер?
В `<JARVIS_DATA_DIR>/jarvis/connections.json`, по умолчанию `./data/jarvis/connections.json`. Нужна внешняя обертка `mcpServers`. После изменения перезапустите `server.py`; чужие настройки MCP автоматически не наследуются.
Нужен ли ключ Anthropic API?
Нет для описанного режима. JARVIS использует официальный Claude Code с вашей подпиской и обычным входом.
Почему фронтенд отвечает ошибкой 500 при установке?
В документированной локальной схеме прокси ожидает HTTPS-сервер. Проверьте наличие `cert.pem` и `key.pem`, созданных по инструкции проекта. Не передавайте закрытый ключ сертификата в чат.
Кому выдать Accessibility?
Приложению, которое запускает процесс JARVIS, например Terminal.app. Разрешение для другого терминала или перенесенного экземпляра приложения может не сработать. Учитывайте, что оно позволяет управлять интерфейсом.
Устраняет ли фильтр недоверенные инструкции?
Не полностью. Он может пропустить инструкции из внешнего текста; пропуск разрешений Claude Code от этого не исчезает.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл и MCP для записи экрана с голосом: агент превращает рассказ о баге в задачи со скриншотами, шагами и вероятным кодом
Около сотни скиллов для Claude Code: встречи и расшифровки, исследования, публикации, TDD, Telegram, почта и личная аналитика
Локальный голосовой слой для Claude Code и Codex на macOS: когда агент закончил работу или упал, коротко говорит, что случилось
Скилл Claude Code строит из экспортов ChatGPT и Claude, статей и почты вики-базу Obsidian по схеме Карпати.
Скилл собирает из локальной истории Claude Code и других CLI обезличенный профиль разработчика и вертикальный постер
OpenSkills запускает официальные скиллы Anthropic в изолированном контейнере на Mac и отдает их по MCP любому агенту: Gemini CLI, Qwen CLI, OpenCode
Коротко о README
Скилл советует проверять фактическое окружение процесса: `CLAUDE_CONFIG_DIR` может направлять вход в другой каталог. Подробная ошибка входа находится в журнале сервера, даже если голосовое сообщение не объясняет причину.
Бейдж для README
Исходный SKILL.md
--- name: jarvis-setup description: Use when helping someone install, configure, or debug a fresh clone of JARVIS (this repo) — especially "the mic doesn't work", "JARVIS says his language systems are down", any Firefox/browser question, login/auth failures, or Accessibility permission prompts. Carries facts about this project that were only learned by hitting them live; check it before guessing. --- # Setting up JARVIS Everything below was learned the hard way, in a real setup or a real live session, not guessed. Check a claim against the code cited before repeating it to a user — if something here stops being true, the citation is exactly what lets you find out. ## The microphone only works in Google Chrome This is a hard constraint, not a preference. The frontend uses the `SpeechRecognition` / `webkitSpeechRecognition` Web Speech API (`frontend/src/voice.ts`) to transcribe the user's voice in the browser. Firefox has never implemented that API at all — there is no flag, no polyfill, no workaround. Safari's support is too inconsistent to rely on. If someone asks to use Firefox (or anything but Chrome) for the mic, tell them directly that it will not work, rather than letting them debug a "broken" mic for an hour. `README.md` already states this requirement; don't let a setup walkthrough contradict it. ## Chrome's microphone permission is scoped per origin — INCLUDING THE PORT `http://localhost:5173` and `http://localhost:5174` are different origins as far as the mic grant is concerned. Moving the frontend to a different port — restarting Vite after a port conflict, following an old bookmark, `--port` on the backend changing the URL you open — silently loses the grant, and Chrome does **not** re-prompt once a permission has been dismissed; it just stays denied with no visible error. This has cost a live session before. If the mic stops working after everything else looks fine, the first question is "did the URL's port change" — check `chrome://settings/content/microphone` for the exact origin in use, not just "is the mic allowed somewhere." ## JARVIS runs on the Claude Code subscription — never an API key The voice brain (`brain.py`) is one long-lived `claude -p` process