CB ardi
Ardi — Agent Ordinals. 21,000 words. The first on-chain dictionary, inscribed by AI agents on Base mainnet. Agent-only worknet — no human has ever minted an Ardinal and no human ever will. Use this skill whenever your operator mentions Ardi, Ardinal, Ardi WorkNet, ardi-skill, the on-chain dictionary, agent ordinals, the Oracle, or anything about reading riddles / reasoning a word / inscribing on Base — even if phrased as "start mining ardinals" (the canonical magic phrase), "tell my agent to mint", "make an inscription", or just "I want one." Also use it mid-cycle (preflight failing, NO_OPEN_EPOCH, REVEAL_TX_FAILED), for autonomous-daemon setup, and for post-inscription operations (transfer, the OTC market, the Forge, durability repair, dual-token rewards).
Как процесс B 65/100 · Почти готов — слабые места: входы и предусловия, согласованность, повторный запуск
Чем это грозит
Находки средней серьёзности: скорее всего скилл честный, но прочитайте, что именно насторожило сканер.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл содержит команды, которые удаляют файлы, переписывают диски или исполняют код, скачанный из сети. Агент может выполнить их без вопроса, если считает, что так требует инструкция.
Замените разрушительные команды на безопасные аналоги с подтверждением, ограничьте область действия конкретной папкой и не тяните код через curl | bash: укажите версию и контрольную сумму.
Ниже описан худший случай для этой категории. Здесь находка средней серьёзности: guard увидел признак, но не доказательство.
Скилл просит больше прав, чем нужно для задачи: широкий доступ к инструментам, секретные переменные окружения, бинарные файлы. Каждое лишнее право расширяет ущерб при ошибке или взломе.
Сузьте allowed-tools и список переменных до минимума, замените бинарники на исходники или скрипты, которые можно прочитать.
Как улучшить
- Для Hermes description должен быть одним предложением до 60 символов; условия применения вынесите в раздел «When to Use».
- Тело SKILL.md длиннее 5 000 токенов: вынесите справочные детали в references/ и подключайте по необходимости.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 20
✓ Критических и высоких находок нет
Средние и низкие: 20
-
средняя Опасные команды
cmd-pipe-to-shellinstall.sh:23Скачивание и запуск удалённого кода с неизвестного хоста (pipe в shell) (комментарий в коде)# the first time anyone ran the curl|sh one-liner — broke the
комментарий -
средняя Опасные команды
cmd-privilegeinstall.sh:121Повышение привилегий / права на запись для всехsudo mv "${TMPFILE}" "${INSTALL_DIR}/ardi-agent" -
средняя Опасные команды
cmd-quarantine-fileinstall.sh:130Снятие флага карантина macOS с одного файла (обычно для скачанного CLI; проверьте, что это нужный бинарник)xattr -d com.apple.quarantine "${INSTALL_DIR}/ardi-agent" 2>/dev/null || true -
средняя Опасные команды
cmd-pipe-to-shell-known-hostREADME.md:14Установщик через pipe в shell с известного хоста (всё равно выполняет удалённый код)curl -fsSL https://raw.githubusercontent.com/awp-worknet/ardi-skill/main/install.sh | sh
-
средняя Широкие права
meta-agent-memory-dumptools/auto-mine/openclaw-heartbeat-mode/HEARTBEAT.mdВ скилле есть файлы памяти агента / рабочего пространства (1) — похоже на дамп с личными данными или токенамиtools/auto-mine/openclaw-heartbeat-mode/HEARTBEAT.md
-
низкая Опасные команды
cmd-pipe-to-shell-known-hostinstall.sh:4Установщик через pipe в shell с известного хоста (всё равно выполняет удалённый код) (комментарий в коде)# curl -fsSL https://raw.githubusercontent.com/awp-worknet/ardi-skill/main/install.sh | sh
комментарий -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/buy_and_stake.rs:32Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const USDC: &str = "0x83…913";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/buy_and_stake.rs:33Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const AWP: &str = "0x00…0A1";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/buy_and_stake.rs:34Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const VE_AWP: &str = "0x00…0A8";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/buy_and_stake.rs:35Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const AWP_ALLOCATOR: &str = "0x00…0AA";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/buy_and_stake.rs:38Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const UNI_…ER: &str = "0x26…481";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/commits.rs:63Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда).unwrap_or_else(|_| "0xf6…5A1".to_string());
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/commits.rs:65Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда).unwrap_or_else(|_| "0xA5…DC3".to_string());
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/inscribe.rs:104Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"0xA5…DC3",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/inscribe.rs:108Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)"0xf6…5A1",
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/reveal.rs:87Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)}).unwrap_or_else(|| "0xA5…DC3".to_string());
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/stake.rs:29Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const VE_AWP: &str = "0x00…0A8";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/stake.rs:30Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const AWP_ALLOCATOR: &str = "0x00…0AA";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/stake.rs:34Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда)const EPOCH_DRAW: &str = "0xA5…DC3";
в кавычках -
низкая Секреты в коде
secret-high-entropy-tokensrc/cmd/status.rs:30Строка, похожая на токен (может быть id, хеш или секрет) (в кавычках — упоминание, а не команда).unwrap_or_else(|_| "0xf6…5A1".to_string());
в кавычках
Просканировано файлов: 50. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-long-hermesdescription 767 символов, а стандарт Hermes требует ≤ 60 (одно предложение, с точкой) - предупреждение
body-longтело SKILL.md ≈ 7041 токенов (рекомендуется < 5000); вынесите детали в references/ - заметка
frontmatter-keyнеизвестное поле фронтматтера "homepage" - заметка
frontmatter-keyнеизвестное поле фронтматтера "trigger_keywords" - заметка
frontmatter-keyнеизвестное поле фронтматтера "bootstrap" - заметка
frontmatter-keyнеизвестное поле фронтматтера "smoke_test"
Процессный рейтинг: все десять параметров 65/100
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 66, без проверки текущего состояния
- 40Согласованность. Имя во frontmatter (ardi) не совпадает с папкой (ardi-skill)
- 60Инструменты и файлы. Используются инструменты (bash, web, node), но во frontmatter они не объявлены
- 60Результат и критерий готовности. Формат результата описан, критерия завершения нет
- 70Стоимость исполнения. Тело инструкции 7041 токенов
- 100Шаги. Шагов: 54
- 100Когда включается. Сказано, когда применять и когда не применять
- 100Ошибки и развилки. Развилок: 8, есть раздел про ошибки
- medium Правила безопасности и запреты внутри скилла: их место в системном промпте, здесь они не защищают
- low Разделов верхнего уровня: 14. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- -32 из 2 скриптов не упомянуты в SKILL.md
- +2Инструкции на одном языке
- +5В description 4 примера фраз-триггеров в кавычках
- +3Длина description 767 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 21 заголовков
- +3Пошаговые инструкции: 54 пунктов
- +3Формат ответа описан явно
- +4Есть примеры (10 блоков кода)
- +1Лицензия указана
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 71.