BB mac-reminders-agent
Интеграция с приложением macOS Reminders для проверки, добавления, редактирования, удаления и выполнения напоминаний. Поддерживает несколько списков напоминаний (календарей), уровни приоритета (высокий/средний/низкий) и поиск по заголовку. Поддерживает нативное повторение (매주/weekly/毎週/每周) через Swift EventKit — создает одно напоминание с правилом повторения. Поддерживает редактирование и удаление напоминаний по ID (calendarItemIdentifier из EventKit). Поддерживает несколько языков (en, ko, ja, zh) для обнаружения триггеров и форматирования ответов. Когда пользователи запрашивают повторяющиеся напоминания, ОБЯЗАТЕЛЬНО используйте опцию --repeat (daily|weekly|monthly|yearly). Поддерживает разбор заметок о встречах для извлечения пунктов действий и предложения напоминаний (команда parse). Команда parse — это чистая обработка текста, доступ к приложению Reminders не требуется.
машинный переводПоказать оригиналСкрыть оригинал«Integrate with macOS Reminders app to check, add, edit, delete, and co…»
Integrate with macOS Reminders app to check, add, edit, delete, and complete reminders. Supports multiple reminder lists (calendars), priority levels (high/medium/low), and title search. Supports native recurrence (매주/weekly/毎週/每周) via Swift EventKit - creates single reminder with repeat rule. Supports editing and deleting reminders by ID (calendarItemIdentifier from EventKit). Supports multiple languages (en, ko, ja, zh) for trigger detection and response formatting. When users request recurring reminders, MUST use --repeat option (daily|weekly|monthly|yearly). Supports parsing meeting notes to extract action items and suggest reminders (parse command). Parse command is pure text processing - no Reminders app access required.
Интеграция с приложением macOS Reminders для проверки, добавления, редактирования, удаления и выполнения напоминаний.
Как процесс B 70/100 · Почти готов — слабые места: когда включается, повторный запуск, отчётность по ходу
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 3
-
высокая Опасные команды
cmd-persistenceREADME.md:328Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре)launchctl load ~/Library/LaunchAgents/com.reminders.daily.plist
Средние и низкие: 2
-
средняя Опасные команды
cmd-persistenceREADME.md:294Механизм закрепления (cron / launchd / планировщик / автозапуск в реестре) (в кавычках — упоминание, а не команда)Create `~/Library/LaunchAgents/com.reminders.daily.plist`:
в кавычках -
низкая Опасные команды
cmd-cron-mentionREADME.md:263Упоминание редактирования crontabcrontab -e
Просканировано файлов: 10. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- заметка
frontmatter-keyнеизвестное поле фронтматтера "requirements" - заметка
frontmatter-keyнеизвестное поле фронтматтера "repository" - заметка
frontmatter-keyнеизвестное поле фронтматтера "install"
Процессный рейтинг: все десять параметров 70/100
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 30Повторный запуск. Изменяющих операций: 8, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (bash), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Входы и предусловия. Входные данные и предусловия перечислены
- 100Шаги. Шагов: 106
- 100Ошибки и развилки. Развилок: 1, есть раздел про ошибки
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 3315 токенов
- low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
- high Скилл велит модели самой совершать необратимое действие, без подтверждения человеком
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- -5В тексте остались TODO / заглушки
- +2Инструкции на одном языке
- +3Длина description 736 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 52 заголовков
- +3Пошаговые инструкции: 106 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (16 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 80.