Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when configuring Laravel Reverb — the first-party WebSocket server with Pusher protocol compatibility, horizontal scaling, and Pulse monitoring.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Use this skill for anything specific to Laravel Reverb as the WebSocket server:
For general WebSocket patterns, broadcasting events, channel authorization, and Laravel Echo client setup, see the laravel-websocket skill.
config/broadcasting.php, .env, and composer.json for Pusher / Reverb / Soketi presence and current driver.php artisan install:broadcasting or manual setup (see below).php artisan reverb:start.Laravel Reverb is Laravel's first-party, blazing-fast WebSocket server. It uses the Pusher protocol, making it compatible with Laravel Echo and any Pusher-compatible client. A single Reverb server can handle thousands of concurrent connections.
php artisan install:broadcasting
This scaffolds:
config/broadcasting.php with Reverb driverconfig/reverb.php with server settingsroutes/channels.php for channel authorization.env variables for ReverbREVERB_APP_ID=455493
REVERB_APP_KEY=your-app-key
REVERB_APP_SECRET=your-app-secret
REVERB_HOST="localhost"
REVERB_PORT=8080
REVERB_SCHEME=http
# Client-side (Vite)
VITE_REVERB_APP_KEY="${REVERB_APP_KEY}"
VITE_REVERB_HOST="${REVERB_HOST}"
VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"
Note: REVERB_HOST / REVERB_PORT are for client connections (hostname/port the client connects to).
REVERB_SERVER_HOST / REVERB_SERVER_PORT are for the server binding (interface/port the server listens on).
'servers' => [
'reverb' => [
'host' => env('REVERB_SERVER_HOST', '0.0.0.0'),
'port' => env('REVERB_SERVER_PORT', 8080),
'hostname' => env('REVERB_HOST'),
'options' => [
'tls' => [],
],
'max_request_size' => 10_000, // bytes
'scaling' => [
'enabled' => env('REVERB_SCALING_ENABLED', false),
'channel' => env('REVERB_SCALING_CHANNEL', 'reverb'),
],
'pulse_ingest_interval' => 15,
],
],
'connections' => [
'reverb' => [
'driver' => 'reverb',
'key' => env('REVERB_APP_KEY'),
'secret' => env('REVERB_APP_SECRET'),
'app_id' => env('REVERB_APP_ID'),
'options' => [
'host' => env('REVERB_HOST'),
'port' => env('REVERB_PORT', 443),
'scheme' => env('REVERB_SCHEME', 'https'),
'useTLS' => env('REVERB_SCHEME', 'https') === 'https',
],
],
],
# Start Reverb (foreground)
php artisan reverb:start
# Start with verbose output (debugging)
php artisan reverb:start --debug
# Production — use Supervisor or systemd
# Reverb is a long-running process, it must be managed by a process monitor
[program:reverb]
command=php /path/to/artisan reverb:start
autostart=true
autorestart=true
user=www-data
redirect_stderr=true
stdout_logfile=/var/log/reverb.log
stopwaitsecs=3600
Enable Redis-based scaling to run multiple Reverb instances behind a load balancer:
REVERB_SCALING_ENABLED=true
REVERB_SCALING_CHANNEL=reverb
Requires a shared Redis instance accessible by all Reverb servers. Connections and channel subscriptions are synced across servers via Redis pub/sub.
Reverb has built-in Laravel Pulse integration. Add the Reverb Pulse cards:
// In your Pulse dashboard
<livewire:reverb.connections />
<livewire:reverb.messages />
Reverb itself does not handle TLS. Use a reverse proxy (Nginx, Traefik, Caddy) to terminate SSL and proxy WebSocket connections to Reverb:
location /app {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_read_timeout 60s;
proxy_send_timeout 60s;
}
REVERB_SCALING_ENABLED for multi-server setups.REVERB_HOST and REVERB_PORT environment variables.reverb:start without a process monitor in production.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.
日本語の概要は準備中です。原文の説明を表示しています。
Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.
日本語の概要は準備中です。原文の説明を表示しています。
Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.
日本語の概要は準備中です。原文の説明を表示しています。
Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.
日本語の概要は準備中です。原文の説明を表示しています。
Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.
日本語の概要は準備中です。原文の説明を表示しています。