waveenv

Declare precise WaveEnv dependencies for component trees and preview servers.

40|9|Updated Mar 22, 2026
One-click install
npx skills add https://github.com/mits-pl/wove --skill waveenv
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: waveenv
Source: https://github.com/mits-pl/wove/tree/main/.kilocode/skills/waveenv
Command: npx skills add https://github.com/mits-pl/wove --skill waveenv

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

WaveEnv narrowing creates a named subset type of WaveEnv that documents exactly which parts of the environment a component tree actually uses, forming a clear contract for callers and tests and enabling focused mocks during previews.

Core Features & Use Cases

  • Documents exact environmental usage for a component tree to improve test reliability.
  • Enables mocking in preview/test servers by listing only the accessed fields, atoms, and commands.
  • Use case: when testing a frontend component, create a narrowing to declare the environment surface and to supply minimal mocks.

Quick Start

Create a WaveEnv narrowing next to the component to declare exact environment dependencies and enable mocks.

Frequently Asked Questions about waveenv

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

FAQPage Schema
How do I declare precise environment dependencies for frontend testing?

Mocking environment dependencies in preview servers requires listing only the accessed fields, atoms, and commands. By declaring a WaveEnv narrowing, you expose specific sections like electron, rpc, atoms, and services, supplying minimal mocks for your preview environment.

What is WaveEnv narrowing and when do I need it?

WaveEnv narrowing satisfies the WaveEnvSubset typing rules by exposing sections for electron, rpc, atoms, services, and key-parameterized atoms. It supports frontend components and preview servers requiring explicit environmental contracts, ensuring type safety and accurate mocking.

What is the best way to document exact environmental usage for a component tree?

To create a WaveEnv narrowing next to your component to declare exact environment dependencies, define the specific sections your component tree accesses. This establishes a clear contract for callers and enables the supply of minimal mocks during frontend testing and preview sessions.

Can I use WaveEnv narrowing to mock specific sections like services and atoms?

WaveEnv narrowing is specifically designed for frontend components and preview servers requiring explicit environmental contracts. It applies to these environments by satisfying WaveEnvSubset typing rules and exposing precise sections for electron, rpc, atoms, services, and key-parameterized atoms for accurate mocking.