CD rust
Клиент Vovk.ts на Rust — генерация типизированного крейта Rust из Vovk API с помощью `vovk-rust`, шаблонов `rs` / `rsSrc`, асинхронной формы вызова с использованием `reqwest` + `serde`, потребления JSON + JSON Lines (Stream), клиентской валидации и публикации в crates.io. Используйте, когда пользователю нужен типизированный Rust SDK, постоянная интеграция Rust или публикация в crates.io — фразы вроде «сгенерировать Rust crate / SDK», «выпустить Rust SDK для моего API», «использовать vovk-rust», «шаблон rsSrc», «потоковая передача Rust с reqwest», «опубликовать в crates.io». НЕ включает создание контроллеров / процедур → передать навыку `procedure`. НЕ включает `vovk bundle` в целом → передать навыку `bundle`. НЕ включает серверную часть JSON Lines → передать навыку `jsonlines`. **НЕ включает разовые HTTP-вызовы** — конечные точки Vovk — это обычный REST, поэтому `reqwest` / `ureq` / `curl` против `/api/...` — более простое решение для случаев использования «мне просто нужно вызвать мой API из бинарного файла Rust / CLI». Обращайтесь к этому навыку только тогда, когда пользователю действительно нужен сгенерированный типизированный код крейта.
машинный переводПоказать оригиналСкрыть оригинал«The Vovk.ts Rust client — generating a typed Rust crate from a Vovk AP…»
The Vovk.ts Rust client — generating a typed Rust crate from a Vovk API with `vovk-rust`, the `rs` / `rsSrc` templates, the generated async call shape using `reqwest` + `serde`, JSON + JSON Lines (futures Stream) consumption, client-side validation, and crates.io publishing. Use whenever the user wants a typed Rust SDK, ongoing Rust integration, or crates.io publishing — phrasings like "generate a Rust crate / SDK", "ship a Rust SDK for my API", "use vovk-rust", "rsSrc template", "rust streaming with reqwest", "publish to crates.io". Does NOT cover controller / procedure authoring → hand off to `procedure` skill. Does NOT cover `vovk bundle` in general → hand off to `bundle` skill. Does NOT cover JSON Lines server-side → hand off to `jsonlines` skill. **Does NOT cover one-off HTTP calls** — Vovk endpoints are plain REST, so `reqwest` / `ureq` / `curl` against `/api/...` is the simpler answer for "I just want to hit my API from a Rust binary / CLI" use cases. Reach for this skill only when the user actually wants generated typed crate code.
Скилл генерирует типизированный Rust-крейт из API на Vovk через `vovk-rust` с шаблонами `rs` и `rsSrc`. Обещает async-вызовы через `reqwest` + `serde`, потребление JSON и JSON Lines (futures Stream), клиентскую валидацию и публикацию на crates.io.
Оценка C при quality 61 и process 49 указывает на недоработки в структуре. Описание обрезано и содержит lint-ошибку за длину. Проверки на моделях не проводились, песочница не запускалась. Критических уязвимостей нет, но отсутствие практического теста оставляет вопросы к надёжности генерации кода и интеграции с реальными API.
Ставить, если вы уже работаете с Vovk и готовы к экспериментам. Для production-публикации на crates.io — сначала проверьте сгенерированный код на своём API.
Клиент Vovk.ts на Rust — генерация типизированного крейта Rust из Vovk API с помощью vovk-rust, шаблонов rs / rsSrc, асинхронной формы вызова с использованием…
Как процесс D 49/100 · Процесс не доведён — слабые места: результат и критерий готовности, входы и предусловия, ошибки и развилки
Как улучшить
- Сократите description до 1024 символов.
- Свои кейсы (evals/evals.json, 4–6 реальных запросов с ожидаемыми ответами): тогда полная проверка прогонит именно их, а не черновик от модели.
- spec.yaml с триггерными фразами и утверждениями — контракт поведения для CI; `skilltest init` создаст шаблон.
Находки guard · 0
✓ Критических и высоких находок нет
Просканировано файлов: 1. Улики замаскированы. Пометки в серых чипах объясняют, почему серьёзность понижена.
По спецификации Agent Skills
- ошибка
description-longdescription 1055 символов, лимит 1024
Процессный рейтинг: все десять параметров 49/100
- 0Результат и критерий готовности. Не сказано, что считать результатом
- 0Входы и предусловия. Не сказано, что нужно иметь на входе
- 0Ошибки и развилки. Линейный процесс без обработки сбоев
- 0Отчётность по ходу. Скилл ничего не сообщает по ходу работы
- 30Повторный запуск. Изменяющих операций: 5, без проверки текущего состояния
- 60Инструменты и файлы. Используются инструменты (python), но во frontmatter они не объявлены
- 70Когда включается. Сказано, когда применять, но не сказано, когда не стоит
- 100Шаги. Шагов: 22
- 100Согласованность. Имя и обязательные поля на месте
- 100Стоимость исполнения. Тело инструкции 2931 токенов
- low Разделов верхнего уровня: 10. Похоже на несколько доменов в одном скилле
Всё перечисленное измерено по тексту скилла, а не оценено моделью: цифры проверяемы. Вес параметра тем больше, чем чаще из-за него процесс встаёт.
Сигналы качества
- +4Описание не говорит, когда скилл НЕ применять (ложные срабатывания)
- +3Длина description 1055: рекомендуется 120–800 символов
- +3Формат ответа не описан: модель каждый раз решает сама
- +1Лицензия не указана
- +2Инструкции на одном языке
- +5В description 7 примера фраз-триггеров в кавычках
- +4Структура: 18 заголовков
- +3Пошаговые инструкции: 22 пунктов
- +4Есть примеры (20 блоков кода)
База качества 70; замечания lint вычитаются, сигналы прибавляют до 100. Итог: 61.