BC space-duck-kimi-relay
Дополнительный модуль Lane A / BYOB для Space Duck — запускает локальный поток устройства RFC 8628 «Войти через Kimi» (без пароля; одобрено браузером), чтобы саморазмещенный duck мог использовать членство Kimi владельца по фиксированной ставке для инференса. Учетные данные (токен доступа + ротируемый токен обновления) хранятся локально в ~/.kimi-code/credentials/kimi.json (0600) и НИКОГДА не отправляются Spaceduckling. Контакты только auth.kimi.com и api.kimi.com; инференс обрабатывается Moonshot AI в Китае (без хранения данных в западных странах). Необязательный переход на openrouter.ai с оплатой за токен при установке OPENROUTER_API_KEY (с ежедневным лимитом). Запускает прокси только для localhost (127.0.0.1, по умолчанию 8471), защищенный автоматически сгенерированным секретом bearer 0600. Размещенные (Lane B) ducks используют карту Mission Control. Активируется по фразам «sign in with kimi», «kimi membership login», «clawhub space-duck kimi», «kimi relay login».
машинный переводПоказать оригиналСкрыть оригинал«Optional Lane A / BYOB add-on for Space Duck — runs a local RFC 8628 d…»
Optional Lane A / BYOB add-on for Space Duck — runs a local RFC 8628 device-code "Sign in with Kimi" flow (no password; browser-approved) so a self-hosted duck can use the owner's flat-rate Kimi membership for inference. Credentials (access + rotating refresh token) are stored locally at ~/.kimi-code/credentials/kimi.json (0600) and are NEVER sent to Spaceduckling. Contacts only auth.kimi.com and api.kimi.com; inference is processed by Moonshot AI in China (no Western data residency). Optional pay-per-token fallback to openrouter.ai when OPENROUTER_API_KEY is set (daily-capped). Runs a localhost-only proxy (127.0.0.1, default 8471) protected by an auto-generated 0600 bearer secret. Hosted (Lane B) ducks use the Mission Control card instead. Triggers on "sign in with kimi", "kimi membership login", "clawhub space-duck kimi", "kimi relay login".
Дополнительный модуль Lane A / BYOB для Space Duck — запускает локальный поток устройства RFC 8628 «Войти через Kimi» (без пароля; одобрено браузером), чтобы…
Как процесс C 61/100 · Есть пробелы — слабые места: результат и критерий готовности, входы и предусловия, повторный запуск
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл просит агента что-то скрывать от вас: не показывать ошибки, не упоминать действия, отвечать иначе, чем было сделано. Вы теряете возможность контролировать, что агент реально сделал.
Прозрачность важнее гладкого ответа. Если хочется спрятать технический шум, попросите агента «кратко сообщить», а не «не сообщать».
Как улучшить
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 4
✓ Критических и высоких находок нет
Средние и низкие: 4
-
средняя Опасные команды
cmd-persistencescripts/kimi_login.py:448Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строковый литерал в коде, не выполняется)print("launchctl load failed: " + (r.stderr or r.stdout), file=sys.stderr)строка в коде -
средняя Опасные команды
cmd-persistencescripts/kimi_login.py:496Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строковый литерал в коде, не выполняется)plist = os.path.expanduser("~/Library/LaunchAgents/com.spaceduckling.kimi-relay.plist")строка в коде -
средняя Опасные команды
cmd-persistencescripts/kimi_login.py:546Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (строковый литерал в коде, не выполняется)plist = os.path.expanduser("~/Library/LaunchAgents/com.spaceduckling.kimi-relay.plist")строка в коде -
средняя Сокрытие от пользователя
en-hide-from-userSKILL.md:91Инструкция скрыть действия от пользователя (в кавычках — упоминание, а не команда)membership can't silently run up a pay-per-token bill; past the cap the
в кавычках
Просканировано файлов: 5. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "disclosures"
Процессный рейтинг: все десять параметров 61/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 30Повторный запуск. Изменяющих операций: 1, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash, web), но во frontmatter они не объявлены
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Шаги. Шагов: 12
- 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 1473 токенов
- 100Отчётность по ходу. Скилл сообщает о ходе работы
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 855: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- -2Ссылки на localhost: у другого пользователя не заработает
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 5 примера фраз-триггеров в кавычках
- +4Структура: 8 заголовков
- +3Пошаговые инструкции: 12 пунктов
- +4Есть примеры (2 блоков кода)
- +3Все 1 скриптов описаны в инструкциях
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 86.