Skip to content

Commit 2bb1f28

Browse files
committed
Merge remote-tracking branch 'origin/main' into copilot/create-waveenv-for-tabbar
2 parents 9e74132 + 568027d commit 2bb1f28

2 files changed

Lines changed: 85 additions & 10 deletions

File tree

.github/copilot-instructions.md

Lines changed: 33 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,45 @@
22

33
## Project Rules
44

5-
Read and follow all guidelines in [`.roo/rules/rules.md`](./.roo/rules/rules.md).
5+
- See the overview of the project in `.kilocode/rules/overview.md`
6+
- Read and follow all guidelines in `.kilocode/rules/rules.md`
67

78
---
89

910
## Skill Guides
1011

1112
This project uses a set of "skill" guides — focused how-to documents for common implementation tasks. When your task matches one of the descriptions below, **read the linked SKILL.md file before proceeding** and follow its instructions precisely.
1213

13-
| Skill | Description |
14-
|-------|-------------|
15-
| [add-config](./.kilocode/skills/add-config/SKILL.md) | Guide for adding new configuration settings to Wave Terminal. Use when adding a new setting to the configuration system, implementing a new config key, or adding user-customizable settings. |
16-
| [add-rpc](./.kilocode/skills/add-rpc/SKILL.md) | Guide for adding new RPC calls to Wave Terminal. Use when implementing new RPC commands, adding server-client communication methods, or extending the RPC interface with new functionality. |
17-
| [add-wshcmd](./.kilocode/skills/add-wshcmd/SKILL.md) | Guide for adding new wsh commands to Wave Terminal. Use when implementing new CLI commands, adding command-line functionality, or extending the wsh command interface. |
18-
| [context-menu](./.kilocode/skills/context-menu/SKILL.md) | Guide for creating and displaying context menus in Wave Terminal. Use when implementing right-click menus, adding context menu items, creating submenus, or handling menu interactions with checkboxes and separators. |
19-
| [create-view](./.kilocode/skills/create-view/SKILL.md) | Guide for implementing a new view type in Wave Terminal. Use when creating a new view component, implementing the ViewModel interface, registering a new view type in BlockRegistry, or adding a new content type to display within blocks. |
20-
| [electron-api](./.kilocode/skills/electron-api/SKILL.md) | Guide for adding new Electron APIs to Wave Terminal. Use when implementing new frontend-to-electron communications via preload/IPC. |
21-
| [wps-events](./.kilocode/skills/wps-events/SKILL.md) | Guide for working with Wave Terminal's WPS (Wave PubSub) event system. Use when implementing new event types, publishing events, subscribing to events, or adding asynchronous communication between components. |
14+
| Skill | File | Description |
15+
| ------------ | ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
16+
| add-config | `.kilocode/skills/add-config/SKILL.md` | Guide for adding new configuration settings to Wave Terminal. Use when adding a new setting to the configuration system, implementing a new config key, or adding user-customizable settings. |
17+
| add-rpc | `.kilocode/skills/add-rpc/SKILL.md` | Guide for adding new RPC calls to Wave Terminal. Use when implementing new RPC commands, adding server-client communication methods, or extending the RPC interface with new functionality. |
18+
| add-wshcmd | `.kilocode/skills/add-wshcmd/SKILL.md` | Guide for adding new wsh commands to Wave Terminal. Use when implementing new CLI commands, adding command-line functionality, or extending the wsh command interface. |
19+
| context-menu | `.kilocode/skills/context-menu/SKILL.md` | Guide for creating and displaying context menus in Wave Terminal. Use when implementing right-click menus, adding context menu items, creating submenus, or handling menu interactions with checkboxes and separators. |
20+
| create-view | `.kilocode/skills/create-view/SKILL.md` | Guide for implementing a new view type in Wave Terminal. Use when creating a new view component, implementing the ViewModel interface, registering a new view type in BlockRegistry, or adding a new content type to display within blocks. |
21+
| electron-api | `.kilocode/skills/electron-api/SKILL.md` | Guide for adding new Electron APIs to Wave Terminal. Use when implementing new frontend-to-electron communications via preload/IPC. |
22+
| waveenv | `.kilocode/skills/waveenv/SKILL.md` | Guide for creating WaveEnv narrowings in Wave Terminal. Use when writing a named subset type of WaveEnv for a component tree, documenting environmental dependencies, or enabling mock environments for preview/test server usage. |
23+
| wps-events | `.kilocode/skills/wps-events/SKILL.md` | Guide for working with Wave Terminal's WPS (Wave PubSub) event system. Use when implementing new event types, publishing events, subscribing to events, or adding asynchronous communication between components. |
2224

2325
> **How skills work:** Each skill is a self-contained guide covering the exact files to edit, patterns to follow, and steps to take for a specific type of task in this codebase. If your task matches a skill's description, open that SKILL.md and treat it as your primary reference for the implementation.
26+
27+
---
28+
29+
## Preview Server
30+
31+
To run the standalone component preview (no Electron, no backend required):
32+
33+
```
34+
task preview
35+
```
36+
37+
This runs `cd frontend/preview && npx vite` and serves at **http://localhost:7007** (port configured in `frontend/preview/vite.config.ts`).
38+
39+
To build a static preview: `task build:preview`
40+
41+
**Do NOT use any of the following to start the preview — they all launch the full Electron app or serve the wrong content:**
42+
43+
- `npm run dev` — runs `electron-vite dev`, launches Electron
44+
- `npm run start` — also launches Electron
45+
- `npx vite` from the repo root — uses the Electron-Vite config, not the preview app
46+
- Serving the `dist/` directory — the preview app is never built there; it has its own build output

docs/docs/wsh-reference.mdx

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ title: "wsh reference"
66

77
import { Kbd } from "@site/src/components/kbd";
88
import { PlatformProvider, PlatformSelectorButton } from "@site/src/components/platformcontext";
9+
import { VersionBadge } from "@site/src/components/versionbadge";
910

1011
<PlatformProvider>
1112

@@ -262,6 +263,57 @@ Use `--print` to preview the metadata for any background configuration without a
262263
263264
---
264265
266+
## badge <VersionBadge version="v0.14.2" />
267+
268+
The `badge` command sets or clears a visual badge indicator on a block or tab header.
269+
270+
```sh
271+
wsh badge [icon]
272+
wsh badge --clear
273+
```
274+
275+
Badges are used to draw attention to a block or tab, such as indicating a process has completed or needs attention. If no icon is provided, it defaults to `circle-small`. Icon names are [Font Awesome](https://fontawesome.com/icons) icon names (without the `fa-` prefix).
276+
277+
Flags:
278+
279+
- `--color string` - set the badge color (CSS color name or hex)
280+
- `--priority float` - set the badge priority (default 10; higher priority badges take precedence)
281+
- `--clear` - remove the badge from the block or tab
282+
- `--beep` - play the system bell sound when setting the badge
283+
- `--pid int` - watch a PID and automatically clear the badge when it exits (sets default priority to 5)
284+
- `-b, --block` - target a specific block or tab (same format as `getmeta`)
285+
286+
Examples:
287+
288+
```sh
289+
# Set a default badge on the current block
290+
wsh badge
291+
292+
# Set a badge with a custom icon and color
293+
wsh badge circle-check --color green
294+
295+
# Set a high-priority badge on a specific block
296+
wsh badge triangle-exclamation --color red --priority 20 -b 2
297+
298+
# Set a badge that clears when a process exits
299+
wsh badge --pid 12345
300+
301+
# Play the bell and set a badge when done
302+
wsh badge circle-check --beep
303+
304+
# Clear the badge on the current block
305+
wsh badge --clear
306+
307+
# Clear the badge on a specific tab
308+
wsh badge --clear -b tab
309+
```
310+
311+
:::note
312+
The `--pid` flag is not supported on Windows.
313+
:::
314+
315+
---
316+
265317
## run
266318
267319
The `run` command creates a new terminal command block and executes a specified command within it. The command can be provided either as arguments after `--` or using the `-c` flag. Unless the `-x` or `-X` flags are passed, commands can be re-executed by pressing `Enter` once the command has finished running.

0 commit comments

Comments
 (0)