Thanks to visit codestin.com
Credit goes to github.com

Skip to content

jasonkneen/vibeclaw

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

207 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ¦€ vibeclaw.dev

Try OpenClaw in your browser in less than 3 seconds.

Boot a full OpenClaw agent sandbox, chat with it, then click through to a real-time gateway dashboard β€” all from the browser. No install, no Docker, no CLI.

vibeclaw GitHub stars License

πŸ”— vibeclaw.dev Β· 𝕏 Community


What is vibeclaw?

vibeclaw is two things:

  1. πŸ“¦ Sandbox mode β€” Boot an OpenClaw agent right in your browser. A real Node.js container (powered by almostnode) loads the OpenClaw runtime, and you chat via free models through OpenRouter. No API keys needed.

  2. πŸ”΄ Live Gateway mode β€” Connect to your running OpenClaw instance and get a full dashboard: sessions, agents, files, skills, cron jobs, metrics, presence, logs, and streaming chat.


Quick Start

Sandbox (no setup required)

  1. Go to vibeclaw.dev
  2. Pick a flavour from the dropdown
  3. Click β–Ά Start Now
  4. Chat with the agent
  5. Click πŸ”΄ Connect β†’ to open the gateway dashboard

Live Gateway

  1. Start your OpenClaw gateway locally
  2. Open the Gateway Dashboard
  3. Enter your gateway URL and token
  4. See everything β€” all sessions, agents, workspace files, skills, cron jobs, cost tracking, and live logs

Flavours

Flavours are swappable sandbox personalities. Each one defines its own agents, skills, teams, and system prompt. Pick one before booting β€” the entire sandbox (and gateway dashboard) adapts.

Emoji Name Agents Focus
πŸ¦€ OpenClaw 4 Default coding assistant
🦞 TinyClaw 5 Multi-agent orchestrator with team routing
πŸš€ ShipIt 5 DevOps β€” Docker, K8s, CI/CD, monitoring
πŸ’€ R00t 5 Security β€” red/blue teams, pen testing, CTF
✨ Pixie 5 Creative studio β€” UI/UX, branding, animation
πŸŽ“ Professor 4 Education β€” teaching, exercises, mentoring

Create your own flavour

Add a directory under vfs-flavours/ with a manifest.json:

{
  "id": "my-flavour",
  "name": "My Flavour",
  "emoji": "πŸ”₯",
  "version": "1.0.0",
  "description": "What this flavour does",
  "agents": [
    { "id": "main", "name": "Lead", "emoji": "πŸ”₯", "description": "The main agent" },
    { "id": "helper", "name": "Helper", "emoji": "πŸ€–", "description": "A helper agent" }
  ],
  "teams": [
    { "id": "core", "name": "Core Team", "leader": "main", "agents": ["main", "helper"] }
  ],
  "skills": [
    { "name": "my-skill", "emoji": "⚑", "description": "What it does" }
  ],
  "systemPrompt": "You are πŸ”₯ My Flavour, a specialist in..."
}

Then rebuild:

npm run flavours:build

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                   vibeclaw.dev                    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚   πŸ“¦ Sandbox Mode    β”‚   πŸ”΄ Live Gateway Mode    β”‚
β”‚                      β”‚                           β”‚
β”‚  almostnode containerβ”‚  WebSocket to your         β”‚
β”‚  + OpenClaw VFS      β”‚  OpenClaw gateway          β”‚
β”‚  + OpenRouter proxy  β”‚  (JSON-RPC protocol v3)    β”‚
β”‚  + BroadcastChannel  β”‚                           β”‚
β”‚    bridge to dash    β”‚  Ed25519 auth via          β”‚
β”‚                      β”‚  @noble/ed25519            β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚              Gateway Dashboard                    β”‚
β”‚  Sessions Β· Agents Β· Files Β· Skills Β· Cron       β”‚
β”‚  Metrics Β· Presence Β· Logs Β· Streaming Chat      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Sandbox ↔ Dashboard Bridge

When you boot a sandbox and click πŸ”΄ Connect β†’, the gateway dashboard opens in a new tab. Communication happens via BroadcastChannel (same-origin, cross-tab) β€” no server needed. The sandbox mimics a full OpenClaw gateway, responding to all dashboard API calls.

Key Technologies

  • almostnode β€” Browser-native Node.js runtime with virtual filesystem
  • OpenClaw β€” AI agent framework with gateway protocol
  • @noble/ed25519 β€” Pure JS Ed25519 for gateway auth (works on HTTP origins)
  • OpenRouter β€” Free model access (server-proxied, no API key needed)

Development

Prerequisites

  • Node.js 20+

Setup

git clone https://github.com/jasonkneen/vibeclaw.git
cd vibeclaw
npm install

Dev Server

npm run dev

Opens on http://localhost:5173 with hot reload.

Build

npm run flavours:build   # Build flavour index
npm run build            # Production build

Scripts

Script Description
npm run dev Start Vite dev server
npm run build Production build
npm run flavours:build Rebuild public/flavours.json from vfs-flavours/
npm run vfs:merge Merge vfs-extra/ files into VFS snapshot
npm run openclaw:build Build OpenClaw VFS snapshot

Project Structure

β”œβ”€β”€ index.html                    # Homepage + sandbox
β”œβ”€β”€ examples/
β”‚   β”œβ”€β”€ openclaw-gateway-demo.html  # Full gateway dashboard
β”‚   β”œβ”€β”€ openclaw-connect-demo.html  # Minimal connect demo
β”‚   β”œβ”€β”€ openclaw-client.js          # Reusable WS client
β”‚   └── shared-styles.css           # Shared demo styles
β”œβ”€β”€ vfs-flavours/                 # Flavour definitions
β”‚   β”œβ”€β”€ default/manifest.json       # πŸ¦€ OpenClaw
β”‚   β”œβ”€β”€ tinyclaw/                   # 🦞 TinyClaw (full workspace)
β”‚   β”œβ”€β”€ devops/manifest.json        # πŸš€ ShipIt
β”‚   β”œβ”€β”€ hacker/manifest.json        # πŸ’€ R00t
β”‚   β”œβ”€β”€ pixie/manifest.json         # ✨ Pixie
β”‚   └── professor/manifest.json     # πŸŽ“ Professor
β”œβ”€β”€ vfs-extra/                    # Extra VFS files merged into snapshot
β”‚   └── data/workspace/            # Agent workspace (SOUL.md, skills, docs)
β”œβ”€β”€ netlify/functions/
β”‚   └── chat.mjs                   # Serverless OpenRouter proxy
β”œβ”€β”€ scripts/
β”‚   β”œβ”€β”€ build-flavours.mjs         # Flavour index builder
β”‚   └── build-vfs-extra.mjs        # VFS merger
β”œβ”€β”€ public/
β”‚   └── flavours.json              # Built flavour index
β”œβ”€β”€ docs/                          # Documentation pages
β”œβ”€β”€ src/                           # almostnode runtime source
└── dist/openclaw/                 # Built OpenClaw VFS snapshot

Deployment

vibeclaw.dev runs on Netlify:

  • Static site build via Vite
  • Serverless function at /api/chat proxies to OpenRouter (API key stays server-side)
  • Custom domain: vibeclaw.dev
  • COOP/COEP headers for SharedArrayBuffer support

Environment Variables

Variable Where Purpose
OPENROUTER_API_KEY .env (dev) / Netlify env (prod) Server-side OpenRouter proxy

OpenClaw Gateway Protocol

The gateway dashboard communicates via WebSocket JSON-RPC:

// Request
{ type: "req", id: 1, method: "status", params: {} }

// Response
{ type: "res", id: 1, ok: true, payload: { ... } }

// Event (server push)
{ type: "event", event: "chat", payload: { state: "delta", message: { content: "..." } } }

Connection Flow

  1. WebSocket open β†’ server sends connect.challenge event with nonce
  2. Client signs nonce with Ed25519 β†’ sends connect request
  3. Server responds with hello + session info

Supported Methods

Method Description
status Gateway status, session count, heartbeat config
agents.list List all agents
agent.identity.get Agent name, emoji, description
sessions.list All sessions with token usage
skills.status Available and active skills
models.list Available models
cron.list Scheduled jobs
agents.files.list Workspace files
agents.files.get File contents
logs.tail Gateway log stream
system-presence Connected nodes
usage.cost Daily cost and token usage
chat.send Send message (streams response via events)
chat.history Session chat history

Roadmap

  • WebGPU local LLM β€” Qwen2.5-Coder 1.5B via WebLLM (~900MB, fully offline)
  • More free models β€” as they appear on OpenRouter
  • Flavour workspace loading β€” full VFS snapshots per flavour (not just manifest)
  • Community flavours β€” submit your own via PR
  • Live gateway relay β€” connect to remote gateways from any network

Credits

  • almostnode β€” The browser-native Node.js runtime that makes this possible
  • OpenClaw β€” The AI agent framework
  • TinyClaw β€” Multi-agent orchestrator (inspiration for the TinyClaw flavour)
  • OpenRouter β€” Free model API access

License

MIT β€” see LICENSE for details.


vibeclaw.dev Β· Built by @jasonkneen

About

Deploy OpenClaw to your local browser

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •