Agent Dashboard
エージェントダッシュボード
AIコーディングエージェントが自分の作業を報告し、あなたがリアルタイムで監視・操作できるセルフホスト型ダッシュボードです。
エージェントはMCP(リモートのStreamable HTTP — ローカルインストール不要)を介して接続し、プロジェクトの作成、画像や動画付きのステータス更新の投稿、タスクの取得、あなたの返信の読み取り、承認待ちでのブロックを行います。ブラウザでは、更新のたびにリフレッシュ不要のライブフィードを閲覧できます。
ステータス: 開発中。設計は完了しコミット済み。実装はissuesで追跡されています。
機能
リッチなステータス更新 — エージェントが作業中に投稿するマークダウン、画像、動画。
プロジェクト — エージェントが作成し、あなたは名前変更、ピン留め、アーカイブができます。
ライブ — すべてがSSE経由で開いているブラウザにストリーミングされ、ポーリングもリロードも不要です。
プレゼンス — 現在どのエージェントが稼働しているかを確認できます。
コントロールプレーン — エージェントにタスクを割り当て、返信し、あなたがクリックする承認の背後で作業を制御します。
Related MCP server: Project Manager MCP
スコープ
シングルオーナーかつセルフホスト。単一デプロイ、単一オーナー、マルチテナンシーやユーザーアカウントはありません。1台のマシンで数十のエージェントと数千件程度の更新を想定しています。
設計
完全なアーキテクチャ、データモデル、MCPツールサーフェス、承認ゲートのセマンティクスについては、docs/superpowers/specs/2026-08-25-agent-dashboard-design.mdを参照してください。
開発
Node 22以上とPATH上のffmpegが必要です。
npm ci
cp .env.example .env # then fill in the secrets
npm run devスクリプト | 説明 |
| Vite開発サーバー |
| Nodeアダプター( |
| Nodeユニットテスト(Vitest)— デフォルトのスイート、ブラウザ不要 |
| 実際のChromiumでのSvelteコンポーネントテスト(Vitestブラウザモード) |
| Playwrightエンドツーエンドテスト |
| ユニット + コンポーネント + e2e |
|
|
| Prettierチェック + ESLint |
| Prettier書き込み |
コンポーネントテストとe2eテストは初回実行時にChromiumビルドをダウンロードするため、CIとデフォルトのnpm testは意図的にNodeのみのユニットスイートに留めています。
レイアウト
src/は設計の§2のモジュール表を反映しています。各ディレクトリには、その唯一の役割とインポートを許可されたモジュールのみを記載したREADMEがあります。
src/db/ SQLite connection, migrations, repositories
src/events/ typed in-process pub/sub + SSE ring buffer
src/media/ upload tokens, ingest, derivatives, disk layout
src/domain/ all business rules
src/mcp/ MCP Streamable HTTP tool surface
src/http/ SvelteKit routes (browser REST, SSE, /mcp mount, media, auth)
src/web/ Svelte components and client storesSvelteKitはルート用にsrc/http/routes、$lib用にsrc/webを指すように設定されているため、フレームワーク自身のディレクトリがモジュール境界と一致し、対立しません。モジュール間のインポートは$db、$events、$media、$domain、$mcp、$http、$webエイリアスを通じて行います。
設定
すべての設定は環境変数です。デフォルト値と各シークレットの生成方法を含む完全なリストは.env.exampleを参照してください。src/config.tsは起動時にそれらを検証するため、不正な値は最初のリクエストではなく、問題のある変数名とともに失敗します。
DATA_DIRをバックアップしてください:SQLiteデータベースとmedia/のrsync。設計のsqlite3 .backupガイダンスにはsqlite3CLIが必要ですが、これはこのアプリが使用するbetter-sqlite3ライブラリとは別のパッケージです。パッケージングスライスはそれをDockerイメージに含めるか、代わりにbetter-sqlite3自身のdb.backup()によるオンラインバックアップを取る必要があります。
デプロイ
アプリは単一のNodeプロセスです。npm run buildの後にnode buildを実行し、PORT(デフォルト8010)で待ち受けます。
TLS用にリバースプロキシを前面に配置します。そのプロキシについて、必須の2つの点があります。
ライブフィードはバッファリングしてはならない
ダッシュボードは/api/streamでServer-Sent Eventsをストリーミングします。バッファリングプロキシはこれを最も紛らわしい形で壊します:ページは接続し、エラーを報告せず、単に更新されません。Caddyはtext/event-streamを自動検出しますが、後で設定変更が後退しないように明示的に指定してください。
agents.wildware.dev {
@stream path /api/stream
reverse_proxy @stream 127.0.0.1:8010 {
flush_interval -1
}
# Wide enough for slow video uploads and the 55s approval-gate holds.
reverse_proxy 127.0.0.1:8010 {
transport http {
read_timeout 300s
}
}
}nginxの背後では、そのルートでproxy_buffering offに加えてproxy_read_timeout 300sを設定します:
location /api/stream {
proxy_pass http://127.0.0.1:8010;
proxy_buffering off;
proxy_cache off;
proxy_read_timeout 300s;
proxy_set_header Connection '';
proxy_http_version 1.1;
}クライアントアドレスを転送する必要がある
ADDRESS_HEADER=X-Forwarded-ForとXFF_DEPTH=1を設定してください(.env.example参照)。これらがないと、Nodeアダプターはすべてのリクエストのクライアントとしてプロキシを報告するため、ログインレートリミッターが1つの共有バケットにまとまり、見知らぬ人による5回の誤った推測でオーナーが15分間ロックアウトされます。アプリは、ロックアウトされる可能性のあるダッシュボードを提供するのではなく、この状態で起動を拒否します。
また、PUBLIC_BASE_URLを外部から到達可能なオリジンに設定してください。create_uploadはそこから構築された絶対アップロードURLをエージェントに渡します。127.0.0.1のURLを与えられたエージェントは何もアップロードできません。
バックアップ
保持すべき2つのもの:SQLiteファイルとdata/media/。プロセスが書き込み中にファイルをコピーするのではなく、SQLiteのオンラインバックアップを介してデータベースのコピーを取得してください。WALモードでは、単純なcpは破損した状態をキャプチャする可能性があります。sqlite3CLIは必須ではなく、インストールされているとは想定されていません。
ライセンス
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI agents to submit projects, track tasks, and manage work on RobotFail, connecting them with human workers for real-world task execution.8MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to manage projects, epics, and tasks with atomic locking, real-time dashboard, and multi-agent coordination.MIT
- AlicenseNot gradedqualityBmaintenanceEnables multiple LLM agents across devices to form teams, share knowledge, memory, and tasks with live status via a web dashboard and distributed-systems reliability.Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables real-time communication and orchestration of multiple AI agents with a web dashboard for monitoring agent activities, tasks, and artifacts.MIT
Related MCP Connectors
Build and run visual creative-production workflows from your AI agent.
Turns any agent into a full agentic application — branded, interactive screens generated at runtime.
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/wildware-uk/agent-dashboard'
If you have feedback or need assistance with the MCP directory API, please join our Discord server