create-view

Implement a Wave Terminal view with a ViewModel, React component, and BlockRegistry registration.

Updated Apr 26, 2026
One-click install
npx skills add https://github.com/lihonghuacgk/waveterm --skill create-view-lihonghuacgk
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: create-view
Source: https://github.com/lihonghuacgk/waveterm/tree/main/.kilocode/skills/create-view
Command: npx skills add https://github.com/lihonghuacgk/waveterm --skill create-view-lihonghuacgk

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guide helps developers implement a new view type in Wave Terminal by defining a ViewModel, its associated React component, and registering it in the BlockRegistry to render within blocks.

Core Features & Use Cases

  • Defines a cohesive blueprint for adding a new view type, including architecture references (ViewModel, ViewComponent, BlockFrame) and the registration workflow.
  • Specifies the required interfaces and patterns for creating a reusable, testable view with a consistent header and controls.
  • Provides a practical workflow from design to deployment, enabling teams to extend Wave Terminal with new content types and interactions in production.

Quick Start

Create a new view by implementing a ViewModel, wiring it into the BlockRegistry, and rendering it in a Block using the new view type.

Frequently Asked Questions about create-view

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

FAQPage Schema
How do I create a new view type in Wave Terminal?

To create a new Wave Terminal view, define a ViewModel, implement its associated React component, and register the pair in the BlockRegistry to render within blocks. This enforces consistent typing and modular organization.

What architecture is needed to add a custom view to a block registry?

Adding a custom view to the block registry requires a cohesive blueprint comprising a ViewModel, a ViewComponent, and a BlockFrame. This architecture ensures the new view type has a consistent header and controls.

Can I use my own React components when extending Wave Terminal views?

Yes, extending Wave Terminal views involves implementing your own associated React component. You wire this component into the BlockRegistry alongside its ViewModel to render new content types and interactions.

What is the best way to structure a reusable ViewModel for a terminal UI component?

The best way to structure a reusable ViewModel for a terminal UI component is to follow specified required interfaces and patterns. This ensures the view remains testable with consistent naming and modular organization.

Does adding a new view type in Wave Terminal require exposing it to existing blocks?

Yes, adding a new view type requires exposing the view to blocks using the new view type. The registration workflow connects the ViewModel and React component so blocks can render the new content.