← Back to Skills Marketplace
johannes-berggren

Avatar

by Johannes-Berggren · GitHub ↗ · v1.0.0
macoslinuxwindows ⚠ suspicious
1389
Downloads
0
Stars
9
Active Installs
1
Versions
Install in OpenClaw
/install avatar
Description
Interactive AI avatar with Simli video rendering and ElevenLabs TTS
README (SKILL.md)

Avatar Skill

Interactive AI avatar interface for OpenClaw with real-time lip-synced video and text-to-speech.

Features

  • Voice Responses: Speaks conversational summaries using ElevenLabs TTS
  • Visual Avatar: Realistic lip-synced video via Simli
  • Detail Panel: Shows formatted markdown alongside spoken responses
  • Multi-language: Supports multiple languages for speech and TTS
  • Slack/Email: Forward responses to Slack DMs or email (when configured)
  • Stream Deck: Optional hardware control with Elgato Stream Deck

Setup

  1. Get API keys:

  2. Set environment variables:

    export SIMLI_API_KEY=your-key
    export ELEVENLABS_API_KEY=your-key
    
  3. Start the avatar:

    openclaw-avatar
    
  4. Open http://localhost:5173

Response Format

When responding to avatar queries, use this format:

\x3Cspoken>
A short conversational summary (1-3 sentences). NO markdown, NO formatting. Plain speech only.
\x3C/spoken>
\x3Cdetail>
Full detailed response with markdown formatting (bullet points, headers, bold, etc).
\x3C/detail>

Guidelines

  1. spoken: Brief, natural, conversational. This is read aloud.
  2. detail: Comprehensive information with proper markdown.
  3. Always include both sections.

Example

User: "What meetings do I have today?"

\x3Cspoken>
You have three meetings today. Your first one is a team standup at 9 AM, then a product review at 2 PM, and finally a 1-on-1 with Sarah at 4 PM.
\x3C/spoken>
\x3Cdetail>
## Today's Meetings

### 9:00 AM - Team Standup
- **Duration**: 15 minutes
- **Attendees**: Engineering team

### 2:00 PM - Product Review
- **Duration**: 1 hour
- **Attendees**: Product, Design, Engineering leads

### 4:00 PM - 1:1 with Sarah
- **Duration**: 30 minutes
- **Notes**: Follow up on project timeline
\x3C/detail>

Session Key

Avatar responses use session key: agent:main:avatar

Usage Guidance
What to consider before installing: - The skill is generally consistent with an avatar frontend (Simli + ElevenLabs) but the server also connects to an OpenClaw gateway and supports Slack/email/Stream Deck integrations. Those integrations require additional environment variables (OPENCLAW_TOKEN, SLACK_BOT_TOKEN) even though the SKILL.md only lists SIMLI_API_KEY and ELEVENLABS_API_KEY. - The server writes a device-key.json (an on-disk private key) and establishes persistent WebSocket connections to the configured gateway URL. Expect a persistent process and created files in the working directory. - The code intentionally returns the Simli API key to the browser via /api/client-config. If you consider your SIMLI_API_KEY sensitive, that means the key will be exposed to any code served to the browser. Do not run this with production secrets unless you accept that exposure. - If you plan to enable Slack or email forwarding, the skill will require additional tokens; enable only with least-privilege tokens and review the relevant code paths (/api/send-slack, /api/send-email) before providing those credentials. - Installation via npm (global) installs code from the npm registry; verify the package author, repository, and integrity before trusting it. Consider running the server in an isolated environment (container, VM) and binding ports/firewalls to localhost only. - If you need to proceed, audit the server endpoints (especially /api/*), confirm where gatewayUrl points (default is ws://127.0.0.1:18789) and whether OPENCLAW_TOKEN will be used, and avoid using production credentials until you review and understand the data flows. If you want, I can: - Point out the exact lines where additional env vars are read and where simliApiKey is leaked to the client, or - Extract and summarize all server endpoints and what they expose so you can decide whether to run it.
Capability Analysis
Type: OpenClaw Skill Name: avatar Version: 1.0.0 The skill is classified as suspicious due to several high-risk capabilities, despite their stated purpose. The `src/server.ts` file performs server-side prompt injection into the AI agent, explicitly granting it 'full access to HubSpot, Gmail, Calendar, Notion, and Slack,' which represents a broad and powerful capability that could be misused if the agent itself is compromised. Additionally, `start-kiosk.sh` executes shell commands and `osascript` for GUI automation, and `src/server.ts` generates and stores a cryptographic keypair locally (`./device-key.json`) for authentication, and makes direct API calls to Slack using a bot token. While these actions are presented as necessary for the avatar's functionality, they involve significant privileges and sensitive operations without clear malicious intent in the provided code.
Capability Assessment
Purpose & Capability
The name/description (avatar with Simli + ElevenLabs TTS) matches the code and dependencies (simli-client, ElevenLabs TTS calls). However the server also integrates with an OpenClaw gateway and optional Slack/email/Stream Deck integrations — these require additional credentials/configuration not clearly declared in the SKILL.md required envs.
Instruction Scope
SKILL.md only declares SIMLI_API_KEY and ELEVENLABS_API_KEY and instructs installing and running the CLI, but runtime code reads additional environment variables (OPENCLAW_TOKEN, SLACK_BOT_TOKEN, ELEVENLABS_VOICE_ID) and exposes the Simli API key to the browser via /api/client-config. The server also creates a persistent device-key.json (private key) and opens WebSocket connections to the configured gateway URL — these actions are not described in the metadata/instructions.
Install Mechanism
This is an instruction-only skill but SKILL.md suggests 'npm install -g openclaw-avatar'. The code and package.json look like a normal npm package with reasonable dependencies; installing from npm is moderate risk and should be done from a trusted source. There is no remote URL download or extractor in the install spec.
Credentials
Declared required env vars (SIMLI_API_KEY, ELEVENLABS_API_KEY) are expected. But the code also reads OPENCLAW_TOKEN and SLACK_BOT_TOKEN (and optional ELEVENLABS_VOICE_ID) without those being declared as required. Worse, the Simli API key is included in the client config and served to the browser, which exposes a secret that SKILL.md does not warn about.
Persistence & Privilege
The server generates and writes a device-key.json (private key + public key) to the working directory, and will maintain long-lived WebSocket connections to an OpenClaw gateway. always:false (normal), but the written key and persistent gateway connection increase the skill's persistence and blast radius and are not clearly documented in SKILL.md.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install avatar
  3. After installation, invoke the skill by name or use /avatar
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release: Interactive AI avatar with Simli video and ElevenLabs TTS
Metadata
Slug avatar
Version 1.0.0
License
All-time Installs 9
Active Installs 9
Total Versions 1
Frequently Asked Questions

What is Avatar?

Interactive AI avatar with Simli video rendering and ElevenLabs TTS. It is an AI Agent Skill for Claude Code / OpenClaw, with 1389 downloads so far.

How do I install Avatar?

Run "/install avatar" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Avatar free?

Yes, Avatar is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Avatar support?

Avatar is cross-platform and runs anywhere OpenClaw / Claude Code is available (macos, linux, windows).

Who created Avatar?

It is built and maintained by Johannes-Berggren (@johannes-berggren); the current version is v1.0.0.

💬 Comments