CD agent-memory-improved
Запуск локальной службы памяти агента для постоянного самосовершенствования с надлежащей криптографией Ed25519. Исправленная реализация подписи для надежного хранения и извлечения памяти.
машинный переводПоказать оригиналСкрыть оригинал«Run a local Agent Memory Service for persistent self-improvement with…»
Run a local Agent Memory Service for persistent self-improvement with proper Ed25519 cryptography. Fixed signature implementation for reliable memory storage and retrieval.
Запуск локальной службы памяти агента для постоянного самосовершенствования с надлежащей криптографией Ed25519.
Как процесс D 49/100 · Процесс не доведён — слабые места: результат и критерий готовности, когда включается, входы и предусловия
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Назначение скилла само по себе рискованное: работа с кошельками, паролями браузера, наступательная безопасность. Даже честная реализация даёт агенту доступ к тому, что стоит денег.
Объясните в description, зачем нужен доступ и как он ограничен; добавьте тесты, которые показывают отказ на опасных запросах.
Как улучшить
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 21
✓ Критических и высоких находок нет
Средние и низкие: 21
-
средняя Рискованное назначение
intent-wallet-secretsCHANGELOG.md:9Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров- Properly derives Ed25519 private key from BIP39 recovery phrase
-
средняя Рискованное назначение
intent-wallet-secretsCHANGELOG.md:13Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров- Fixed private key derivation from recovery phrase
-
средняя Рискованное назначение
intent-wallet-secretsREADME.md:55Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеровSave your recovery phrase! It's the only way to recover your identity.
-
средняя Рискованное назначение
intent-wallet-secretsSKILL.md:14Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров- **Correct key derivation** - Private key properly derived from BIP39 recovery phrase
-
средняя Рискованное назначение
intent-wallet-secretsSKILL.md:85Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров- Recovery phrase for identity backup
-
низкая Рискованное назначение
intent-wallet-secretsassets/service/main.py:8Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)- Recover using a BIP39-style recovery phrase
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsassets/service/main.py:98Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)message: str = "Save your recovery phrase! It's the only way to recover your identity."
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsassets/service/main.py:102Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)recovery_phrase: str = Field(..., min_length=10, description="BIP39 recovery phrase")
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsassets/service/main.py:206Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)"""Generate BIP39 recovery phrase from private key"""
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsassets/service/main.py:293Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)IMPORTANT: Save the recovery phrase! It's the only way to recover your identity.
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client_original.py:42Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)"""Recover private key from recovery phrase."""
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client_original.py:68Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)print(f" Recovery phrase: {data['recovery_phrase'][:50]}...")в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client_original.py:69Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)print(f"\n⚠️ SAVE THIS RECOVERY PHRASE! It's your only way to recover your identity.")
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client_original.py:73Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)"""Recover agent identity from recovery phrase."""
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client_original.py:208Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (определение детектора / чёрного списка)recover_parser.add_argument("phrase", help="Recovery phrase")детектор -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client.py:42Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)"""Recover private key from recovery phrase."""
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client.py:68Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)print(f" Recovery phrase: {data['recovery_phrase'][:50]}...")в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client.py:69Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)print(f"\n⚠️ SAVE THIS RECOVERY PHRASE! It's your only way to recover your identity.")
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client.py:73Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)"""Recover agent identity from recovery phrase."""
в кавычках -
низкая Рискованное назначение
intent-wallet-secretsscripts/memory_client.py:208Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (определение детектора / чёрного списка)recover_parser.add_argument("phrase", help="Recovery phrase")детектор -
низкая Рискованное назначение
intent-wallet-secretsSELF_IMPROVEMENT_GUIDE.md:166Работает с секретами криптокошелька (сид-фраза / приватный ключ) — классическая цель стилеров (в кавычках — упоминание, а не команда)./scripts/memory_client.py recover "your recovery phrase"
в кавычках
Просканировано файлов: 12. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда")
Процессный рейтинг: все десять параметров 49/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 40Согласованность. Имя во frontmatter (agent-memory-improved) не совпадает с папкой (persistent-private-agent-memory)
- 100Инструменты и файлы. Внешние инструменты не нужны
- 100Шаги. Шагов: 25
- 100Стоимость исполнения. Тело инструкции 731 токенов
- 100Повторный запуск. Изменяющих операций нет
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 10. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- -31 из 4 скриптов не упомянуты в SKILL.md
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 172 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 12 заголовков
- +3Пошаговые инструкции: 25 пунктов
- +4Есть примеры (3 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 69.