mixins

Transform OpenAPI 3.x schemas into typed Vovk RPC-like client modules.

52|Updated Jul 12, 2023
One-click install
npx skills add https://github.com/finom/vovk --skill mixins
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: mixins
Source: https://github.com/finom/vovk/tree/main/packages/claude-plugin/skills/mixins
Command: npx skills add https://github.com/finom/vovk --skill mixins

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

OpenAPI mixins turn any OpenAPI 3.x specification into typed client modules that behave like native Vovk RPC modules, ensuring the generated surface matches runtime APIs and reduces drift between contracts and code.

Core Features & Use Cases

  • Declaring mixins under outputConfig.segments.*.openAPIMixin to generate segmented or composed clients.
  • Support for source variants (remote URL with fallback, local file, or inline object) and module/method naming strategies, including getModuleName and getMethodName.
  • Per-mixin fetcher customization, AJV tuning, and the Mixins namespace for standardized types across all mixins.
  • Tooling integration via deriveTools for function calling and createTool wrappers for MCP, plus examples of composing with existing OpenAPI schemas.

Quick Start

Declare a mixin in vovk.config.mjs and run npx vovk generate to emit the mixin alongside native modules.

Frequently Asked Questions about mixins

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate typed Vovk client modules from an OpenAPI spec?

Generate typed Vovk client modules from OpenAPI by declaring mixins under outputConfig.segments.*.openAPIMixin in your vovk.config.mjs file and running npx vovk generate. This emits RPC-like client modules matching your schema.

Can I use a remote OpenAPI URL with a local fallback for client generation?

Yes, OpenAPI client generation supports source variants including remote URLs with fallback, local files, or inline objects. This ensures your typed Vovk modules build reliably even if remote endpoints are temporarily unreachable.

How does Vovk handle API contract drift when using OpenAPI schemas?

Vovk transforms OpenAPI 3.x schemas into typed client modules that behave like native Vovk RPC modules, ensuring the generated surface matches runtime APIs and reduces drift between contracts and code.

What's the best way to customize method and module names when generating OpenAPI clients?

Customize generated client names using module naming strategies during OpenAPI codegen. Configure getModuleName and getMethodName functions within your outputConfig to control the emitted Vovk module structure.

Does Vovk support custom fetchers and AJV validation tuning for generated OpenAPI clients?

Yes, generated OpenAPI clients support per-mixin fetcher customization and AJV tuning. You can configure individual fetchers and validation rules alongside a standardized Mixins namespace for types across all mixins.

How do I expose generated OpenAPI Vovk modules as tools for function calling?

Expose generated OpenAPI modules as tools using the deriveTools integration for function calling and createTool wrappers for MCP. This enables standardized tool exposure across your composed internal and third-party APIs.