wave

SkillWeb & browsing

The starter skill. One tool, ten lines of handler: it plays the built-in wave gesture, then speaks a greeting. Referenced by examples/coach-leo/manifest.json and walked through in the skills guide.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the wave skill

About this capability

Open-source 3D AI agent framework — GLB/glTF avatars with LLM brains, memory, emotions, and autonomous payments. MCP server · x402 · Solana/EVM · Three.js. Embed anywhere as a web component. Character studio, animation gallery, OAuth 2.1. Browser-native.

What this skill tells your AI

The instructions your AI receives, as published by nirholas/three.ws in examples/skills/wave/SKILL.md and read by ahel’s review.

The starter skill. One tool, ten lines of handler: it plays the built-in wave gesture, then speaks a greeting. Referenced by examples/coach-leo/manifest.json and walked through in the skills guide.

ToolUse it for
waveAndGreetWave + spoken greeting in one call

Why it exists

Every skill bundle has the same four files (manifest.json, tools.json, handlers.js, SKILL.md). This one is intentionally minimal so you can copy the directory, rename the tool, and have a working custom skill in minutes. The handler shows the two context calls most skills need:

await ctx.call('wave', {});   // dispatch any built-in or skill tool
await ctx.speak('Hello!');    // TTS through the agent's configured voice

Config

manifest.config.greeting sets the default line. Callers can override it per call with the greeting argument.

Try it

Load Coach Leo (examples/coach-leo/) and ask him to say hi, or install the skill on any agent and call the tool directly:

const el = document.querySelector('agent-3d');
await el.installSkill('/examples/skills/wave/');

Signals

GitHub stars
114
Forks
29
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
wave
Source
github.com/nirholas/three.ws