init

init is a skill for Claude Code from finom/vovk. It costs 334 tokens per session (3,181 once invoked), scanned A, original, MIT.

A setup workflow for creating a typed backend with Vovk.ts, a TypeScript framework for building APIs that connect to Next.js applications. It uses the framework's command-line setup tool.

In plain words
What is it for?
Use it to initialize or scaffold a Vovk.ts backend, create a new API server, or add a typed REST or RPC API to a Next.js project.
Why use it?
It avoids error-prone manual changes to dependencies, TypeScript settings, scripts, and configuration. It also chooses whether to add the backend to an existing Next.js project or start a new one.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the vovk plugin — 15 skills shipped together

Good fit Use it to initialize or scaffold a Vovk.ts backend, create a new API server, or add a typed REST or RPC API to a Next.js project.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/finom/vovk/init
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add finom/vovk --skill init
Clone the repo
git clone --depth 1 https://github.com/finom/vovk

Made for: Claude Code.

Or install vovk, the plugin that ships this one along with the rest of its 15 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for init

README.md
[![agentmods](https://agentmods.dev/badge/skills/finom/vovk/init/github.svg)](https://agentmods.dev/skills/finom/vovk/init)
Your own site
<a href="https://agentmods.dev/skills/finom/vovk/init"><img src="https://agentmods.dev/badge/skills/finom/vovk/init/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for init

Your own site · 80×15
<a href="https://agentmods.dev/skills/finom/vovk/init"><img src="https://agentmods.dev/badge/skills/finom/vovk/init.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 334 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,181 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 7 findings, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium MCP Rug Pull · line 39
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 48
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 74
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 157
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 173
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 174
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium MCP Rug Pull · line 175
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00334 $0.03181
Opus 5.5 $0.00134 $0.01272
Sonnet 5.5 $0.00067 $0.00636
Haiku 4.5 $0.00033 $0.00318

Measured 4d ago against content hash 4532093ec538, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

init scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/init/SKILL.md · 174 lines

How it starts

The opening of the file, as written. The whole thing — 174 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Vovk.ts initialization

Vovk.ts is TypeScript-first RPC/API framework plugging into Next.js App Router. Ships CLI (vovk-cli) that installs deps, toggles experimentalDecorators in tsconfig, wires up npm scripts, writes vovk.config.mjs. Coordinated edits easy to get wrong by hand, so this skill is thin wrapper: preps env, delegates to CLI, handles follow-ups.

Plugin is source of truth for everything Vovk-related — don't WebFetch vovk.dev while running this skill. If step here looks incomplete, that's skill bug, surface it.

Interactive prompts

vovk-cli and create-next-app both interactive. When prompt appears skill doesn't cover, accept default (usually "yes" or CLI's recommended choice) unless user told you otherwise. Don't predict every prompt up front — defaults change, user can override afterward.

Decide the path

Inspect current working dir:

  • package.json exists with next in dependencies or devDependencies → Path A (existing Next.js project).
  • Otherwise → Path B (new project).

If package.json exists but no next, it's existing non-Next.js project. Ask whether to add Next.js into current dir or scaffold new one in subdir — don't silently pollute their repo.

Path A — existing Next.js project

1. Verify prerequisites (bundled)

Check all three in parallel:

  • Node version: node --version — require ≥ 24.15 (Bun 1.4+ and Deno 2.9+ also run vovk-cli).
  • Next.js version: package.json next must resolve to ≥ 15.0.0.
  • App Router directory: src/app/ or app/ must exist (even if empty) — Vovk mounts route handler there. If only pages/ exists, trivial fix: create empty app/ (or src/app/, matching project's convention) alongside. App Router and Pages Router coexist fine — no migration needed just to use Vovk.

If any check fails, bundle all failures into one message and ask user how to proceed. Don't drip-feed one at a time. Example:

"Two blockers before Vovk can run:

  1. Node is on v20.18.0 — Vovk needs ≥ 24.15. You'll need to upgrade it yourself (nvm install 24 && nvm use 24 or equivalent); I won't touch your Node install.
  2. Next.js is on ^14.2.5 — I can run npx @next/codemod@canary upgrade latest to move to 15. It can introduce breaking changes, so reviewing the diff afterward is a good idea.

Also: no app/ directory yet — I'll create an empty src/app/ alongside pages/ so Vovk has somewhere to mount. That coexists with your existing Pages Router fine.

Want me to proceed after you bump Node?"

Read the full file on GitHub · 174 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 4d ago Changed 4532093ec538
  2. 5d ago Changed · +29 tokens per session 945eadb097a1
  3. 12d ago Changed · +2 tokens per session 877169504f71
  4. 16d ago Changed · +1 tokens per session b665952c5c1c
  5. 17d ago Changed 415ec1ac3951
  6. 18d ago Changed a1e5f9a3c595
  7. 23d ago Changed · -41 lines 22b23ddaddab
  8. 1mo ago First seen · 215 lines · 302 tokens per session scan A 927df9e7d61c

Subscribe to this mod's changes

init is a skill published in the GitHub repository finom/vovk (54 stars, last pushed 2d ago), licensed MIT. It adds 334 tokens to every session and 3,181 once invoked, about $0.0013 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

client-setup

Create a vanilla tRPC client with createTRPCClient (), configure link chain with httpBatchLink/httpLink, dynamic headers for auth, transformer on links (not client constructor). Infer types with inferRouterInputs and inferRouterOutputs. AbortController signal support. TRPCClientError typing.

trpc/trpc · 63 tokens

trpc-router

Entry point for all tRPC skills. Decision tree routing by task: initTRPC.create(), t.router(), t.procedure, createTRPCClient, adapters, subscriptions, React Query, Next.js, links, middleware, validators, error handling, caching, FormData.

trpc/trpc · 59 tokens

adapter-express

Mount tRPC as Express middleware with createExpressMiddleware() from @trpc/server/adapters/express. Access Express req/res in createContext via CreateExpressContextOptions. Mount at a path prefix like app.use('/trpc', ...). Avoid global express.json() conflicting with tRPC body parsing for FormData.

trpc/trpc · 67 tokens

pinme-email

Use this skill when a PinMe project (Worker TypeScript) needs to integrate email sending (sendemail). Guides AI to generate correct Worker TS code.

glitternetwork/pinme · 35 tokens

node-modern

Use this skill when writing, reviewing, or refactoring Node.js code — modules, async flow, cancellation, file and process I/O, HTTP — on a current Node.js release. Triggers: user mentions "Node", "Node.js", "ESM", "CommonJS", "require", "import", "fetch", "AbortSignal", "AbortController", "stream", "childprocess"…

WrongStack/WrongStack · 93 tokens

nestjs

Use when building or structuring a NestJS backend — feature modules, providers and DI wiring, provider scopes and request-lifecycle order, where to bind guards/pipes/interceptors/filters, and testing with Test.createTestingModule. NOT a bare Express/Fastify service with no DI (that is nodejs), NOT framework-agnostic…

ericrisco/rsc-harness · 81 tokens