FF agent-handshake
Универсальное рукопожатие Agent — автоматическое обнаружение, регистрация, соединение AI Agent на любом сервере. Серверная сторона генерирует идентификационную карту (автоматическое распознавание OpenCode/LangChain/CrewAI/универсальный FastAPI/MCP), локальная сторона — постоянное хранение памяти, Cloudflare Tunnel — обход NAT. Триггерные слова: рукопожатие, подключить agent, обнаружить agent, быстрое рукопожатие, зарегистрировать сервер, соединить туннель, пробить туннель, внутренний туннель.
машинный переводПоказать оригиналСкрыть оригинал«通用 Agent 握手 — 自动发现、注册、打通任意服务器上的 AI Agent。服务器侧生成身份牌(自动识别 OpenCode/LangC…»
通用 Agent 握手 — 自动发现、注册、打通任意服务器上的 AI Agent。服务器侧生成身份牌(自动识别 OpenCode/LangChain/CrewAI/通用FastAPI/MCP),本地侧持久化记忆,Cloudflare Tunnel 穿透 NAT。触发词:握手、连接 agent、发现 agent、快速握手、注册服务器、打通隧道、打洞、内网穿透。
Универсальное рукопожатие Agent — автоматическое обнаружение, регистрация, соединение AI Agent на любом сервере.
Как процесс F 35/100 · Не запустится — Скилл ссылается на файлы, которых нет в архиве: references/servers/lvliefeng.json, references/servers/_index.json, references/servers/<hostname>.json
Чем это грозит
Скилл содержит фрагменты, которые в чужих руках стоят денег или данных. Ниже, что рискует потерять тот, кто установит, и что должен сделать автор.
Инструкции или скрипты отправляют данные наружу: переменные окружения, ключи, содержимое файлов, историю чата. Вы можете не заметить этого в диалоге, потому что агент выполнит отправку как «часть задачи».
Если отправка не нужна для задачи, уберите её: каталоги помечают такие скиллы как подозрительные и снимают с выдачи. Если нужна, назовите адрес явно, объясните, что именно уходит, и дайте пользователю выключатель.
Как улучшить
- Разберите находки высокой серьёзности: каждая стоит 18 баллов безопасности. Если это ложное срабатывание, добавьте код правила в guard.allow в spec.yaml.
- Скажите в description, КОГДА применять скилл («используй, когда…», примеры запросов): это главный сигнал для агента.
- В тексте есть ссылки на отсутствующие файлы: добавьте файлы или уберите ссылки.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 5
-
высокая Утечка данных
exfil-webhook-urlSKILL.md:161URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес)🌍 公网地址: https://random-name.trycloudflare.com
-
высокая Утечка данных
exfil-webhook-urlSKILL.md:165URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес)handshake.sh https://random-name.trycloudflare.com "你的问题"
-
высокая Утечка данных
exfil-webhook-urlSKILL.md:175URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес)bash scripts/accept.sh lvliefeng https://random-name.trycloudflare.com
-
высокая Утечка данных
exfil-webhook-urlSKILL.md:317URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес)│ 🔗 隧道: https://xxx.trycloudflare.com │
Средние и низкие: 1
-
средняя Утечка данных
exfil-webhook-urlSKILL.md:145URL вебхука / коллбэка, типичный для эксфильтрации (проверьте адрес) (в кавычках — упоминание, а не команда)服务器主动出站连接 Cloudflare(不需要开放入站端口),Cloudflare 分配一个 `https://xxx.trycloudflare.com` 公网地址。本地直接连这个地址,Cloudflare 转发到服务器。
в кавычках
Просканировано файлов: 2. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- предупреждение
description-no-whendescription не говорит, КОГДА применять скилл (нет "use when / используй когда") - предупреждение
missing-refссылка на отсутствующий файл: references/servers/lvliefeng.json - предупреждение
missing-refссылка на отсутствующий файл: references/servers/_index.json - предупреждение
missing-refссылка на отсутствующий файл: references/servers/<hostname>.json - предупреждение
missing-refссылка на отсутствующий файл: scripts/accept.sh - предупреждение
missing-refссылка на отсутствующий файл: scripts/discover.sh - предупреждение
missing-refссылка на отсутствующий файл: scripts/tunnel.sh - предупреждение
missing-refссылка на отсутствующий файл: scripts/config.sh - предупреждение
missing-refссылка на отсутствующий файл: scripts/handshake.sh - заметка
frontmatter-keyнеизвестное поле фронтматтера "agent_created"
Процессный рейтинг: все десять параметров 35/100
- 0Инструменты и файлы. Не хватает 8 файла(ов): references/servers/lvliefeng.json, references/servers/_index.json, references/servers/<hostname>.json
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 20Когда включается. Не сказано, при каком запросе скилл включается
- 100Шаги. Шагов: 15
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2407 токенов
- 100Повторный запуск. Изменяющих операций нет
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +5В description нет примеров фраз, по которым скилл должен срабатывать
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +3Длина description 180 символов: достаточно сигнала, не съедает бюджет
- +4Структура: 26 заголовков
- +3Пошаговые инструкции: 15 пунктов
- +4Есть примеры (18 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 59.