{"id":49038952,"url":"https://github.com/ChristianAlmurr/openclaw-dashboard","last_synced_at":"2026-05-05T19:01:06.802Z","repository":{"id":343236325,"uuid":"1176859234","full_name":"ChristianAlmurr/openclaw-dashboard","owner":"ChristianAlmurr","description":"Mission Control dashboard for monitoring and managing AI agent fleets. Track costs, performance, context health, security posture, and market intelligence.","archived":false,"fork":false,"pushed_at":"2026-03-20T07:48:39.000Z","size":9159,"stargazers_count":24,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-21T00:31:58.848Z","etag":null,"topics":["agentic-ai","agentic-workflow","ai-agents","cost-optimization","dashboard","developer-tools","mission-control","monitoring","nextjs","open-source","openclaw","sqlite","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ChristianAlmurr.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-09T13:00:58.000Z","updated_at":"2026-03-20T07:48:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ChristianAlmurr/openclaw-dashboard","commit_stats":null,"previous_names":["christianalmurr/openclaw-dashboard"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/ChristianAlmurr/openclaw-dashboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristianAlmurr%2Fopenclaw-dashboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristianAlmurr%2Fopenclaw-dashboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristianAlmurr%2Fopenclaw-dashboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristianAlmurr%2Fopenclaw-dashboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ChristianAlmurr","download_url":"https://codeload.github.com/ChristianAlmurr/openclaw-dashboard/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChristianAlmurr%2Fopenclaw-dashboard/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32663438,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-ai","agentic-workflow","ai-agents","cost-optimization","dashboard","developer-tools","mission-control","monitoring","nextjs","open-source","openclaw","sqlite","tailwindcss","typescript"],"created_at":"2026-04-19T14:00:39.443Z","updated_at":"2026-05-05T19:01:06.796Z","avatar_url":"https://github.com/ChristianAlmurr.png","language":"TypeScript","funding_links":[],"categories":["Clinical Skills \u0026 Knowledge Bases","Mission Control \u0026 Dashboards"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./Gitlogo.png\" width=\"200\" alt=\"OpenClaw Dashboard\" /\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eOpenClaw Dashboard\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cstrong\u003eThe Command Centre for AI Agent Fleets\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Monitor, manage, and optimize every agent in your fleet from a single pane of glass.\u003cbr/\u003e\n  Cost analytics \u0026middot; Competitor intelligence \u0026middot; Memory health \u0026middot; Cron pipelines \u0026middot; Kanban workflows \u0026middot; Interactive chat.\u003cbr/\u003e\n  \u003cstrong\u003e100% local-first. Zero cloud dependency. Your data never leaves your machine.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-MIT-blue.svg\" alt=\"MIT License\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://nextjs.org\"\u003e\u003cimg src=\"https://img.shields.io/badge/Next.js-16-black\" alt=\"Next.js 16\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://react.dev\"\u003e\u003cimg src=\"https://img.shields.io/badge/React-19-61dafb\" alt=\"React 19\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://typescriptlang.org\"\u003e\u003cimg src=\"https://img.shields.io/badge/TypeScript-5.9-blue\" alt=\"TypeScript\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://tailwindcss.com\"\u003e\u003cimg src=\"https://img.shields.io/badge/Tailwind_CSS-4-38bdf8\" alt=\"Tailwind CSS 4\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## What is OpenClaw Dashboard?\n\nRunning AI agents at scale means juggling costs, context windows, memory drift, competitor landscapes, and coordination across dozens of autonomous processes. **OpenClaw Dashboard** gives you a single local-first command centre that reads directly from your [OpenClaw](https://openclaw.ai) installation -- no cloud dependency, no telemetry, full control.\n\n\u003e **New in v2.0** -- 10-step onboarding wizard, project workspaces with competitor scanning, market intelligence feeds, practitioner signal aggregation, visual cron pipeline builder, memory health AI analysis, and a complete Apple-inspired glass design system.\n\n---\n\n## Features\n\n### Agent Fleet Monitoring\nReal-time monitoring of multi-agent systems with constellation graph visualization, execution traces, context health bars, and drift detection. Four home views -- **Org Map, Grid, Feed, and Constellation** -- let you choose how to observe your fleet.\n\n![Agent Fleet](./Screenshots/agent-fleet.png)\n\n### Competitor Intelligence\nDiscover, track, and profile competitors across your market. Add competitors manually or let AI discover them. Drill into per-competitor detail pages with SWOT analysis, update tracking, and category organization.\n\n![Competitor Intelligence](./Screenshots/competitor-intel.png)\n\n### Cost Analytics\nPer-agent and per-provider spend attribution with token-level granularity. Optimization scoring, cache savings estimation, anomaly detection, week-over-week trending, and per-model breakdowns.\n\n![Cost Analytics](./Screenshots/cost-analytics.png)\n\n### Cron Pipeline Builder\nVisual DAG editor for job dependencies powered by @xyflow/react. Track execution history with cost attribution, configure delivery rules, and build dependency chains between scheduled tasks.\n\n![Cron Pipelines](./Screenshots/cron-pipelines.png)\n\n### Interactive Agent Chat\nReal-time SSE streaming chat with multimodal support. Upload images, review per-agent conversation history, and use slash commands (`/help`, `/status`, `/cost`) to query your fleet.\n\n### Kanban Board\nFull agile project management with columns (todo / in-progress / done / blocked), agent assignment, priority labels, ticket chat threads, and automation rules.\n\n![Kanban Board](./Screenshots/kanban-board.png)\n\n### Memory Health Monitor\nAI-driven analysis of agent memory with staleness detection, completeness checks, editing hints, and one-click reindex controls. Know when an agent's context is drifting before it causes problems.\n\n### Market Intelligence\nAutomated competitive intelligence feeds with signal categorization. Your agents scan the market and surface trends, competitor moves, and technology shifts.\n\n### Practitioner Signals\nCommunity signal aggregation from Reddit, forums, and social media. Surface pain points, feature requests, and positive signals from real practitioners in your domain.\n\n### Tech Updates Radar\nCurated technology radar with category filtering. Stay on top of framework releases, AI model updates, and tooling changes relevant to your stack.\n\n### Project Workspaces\nOrganize your intelligence feeds, competitors, and reference files into named projects. Each project gets its own icon, description, and URL. Create, edit, and delete projects from the sidebar.\n\n### Settings \u0026 Customization\nFull UI for accent color, portal branding (name, subtitle, logo), agent avatars, operator profile, and theme customization. 12 accent color presets + custom color picker.\n\n![Settings](./Screenshots/settings.png)\n\n### And More\n\n| Feature | Description |\n|---------|-------------|\n| **10-Step Onboarding Wizard** | Guided setup with auto-detection, gateway testing, agent discovery, and feature selection |\n| **Global Search** | Unified search across agents, crons, memory, costs, and all data types (Cmd+K) |\n| **Live Stream Widget** | Real-time activity log panel accessible from any page |\n| **Agent Detail Pages** | Per-agent view with SOUL.md personality viewer and conversation history |\n| **Activity Console** | Browseable logs with filtering by source (cron, config, error) |\n| **Security Posture** | Device auditing, key rotation reminders, configuration change tracking |\n| **Reference Files** | Document storage with TipTap rich text editor, tags, and full-text search |\n| **Dynamic Favicon** | Theme-aware favicon that switches between light/dark based on system preference |\n| **Voice Features** | Text-to-speech (ElevenLabs) and speech-to-text transcription |\n| **Design System QA** | Component-level fidelity scoring and token reuse tracking |\n| **Release Tracker** | Version history and deployment notes |\n| **Docker Support** | Production-ready multi-stage Dockerfile with docker-compose |\n\n---\n\n## Screenshots\n\n| View | Preview |\n|------|---------|\n| Agent Fleet | ![Fleet](./Screenshots/agent-fleet.png) |\n| Competitor Intelligence | ![Competitors](./Screenshots/competitor-intel.png) |\n| Settings | ![Settings](./Screenshots/settings.png) |\n| Cron Pipelines | ![Crons](./Screenshots/cron-pipelines.png) |\n| Activity Log | ![Activity](./Screenshots/activity.png) |\n| Security | ![Security](./Screenshots/security.png) |\n\n---\n\n## Quick Start\n\n### Prerequisites\n\n- **Node.js 20+** (LTS recommended)\n- **npm 10+** or equivalent package manager\n- [OpenClaw](https://openclaw.ai) installed locally (provides agent session data)\n\n### Installation\n\n```bash\n# Clone the repository\ngit clone https://github.com/ChristianAlmurr/openclaw-dashboard\ncd openclaw-dashboard\n\n# Install dependencies\nnpm install\n\n# Configure environment\ncp .env.local.example .env.local\n# Edit .env.local with your paths (see Environment Variables below)\n\n# Start the development server\nnpm run dev\n```\n\nOpen [http://localhost:3333](http://localhost:3333) in your browser. The **10-step onboarding wizard** will guide you through initial configuration on first launch.\n\n### Available Scripts\n\n| Command | Description |\n|---------|-------------|\n| `npm run dev` | Start development server on port 3333 |\n| `npm run build` | Create production build |\n| `npm start` | Start production server on port 3333 |\n| `npm run lint` | Run ESLint |\n| `npm test` | Run Vitest test suite |\n\n---\n\n## Docker Deployment\n\n### Using Docker Compose (recommended)\n\n```bash\ndocker compose up -d\ndocker compose logs -f mission-control\n```\n\n### Using Docker directly\n\n```bash\ndocker build -t openclaw-dashboard .\ndocker run -d \\\n  --name openclaw-dashboard \\\n  -p 3333:3333 \\\n  -v ~/.openclaw-dashboard:/data/db \\\n  -v ~/.openclaw:/data/openclaw:ro \\\n  -e OPENCLAW_HOME=/data/openclaw \\\n  -e DATA_DIR=/data/db \\\n  openclaw-dashboard\n```\n\n---\n\n## Environment Variables\n\nCopy `.env.local.example` to `.env.local` and configure:\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `OPENCLAW_HOME` | `~/.openclaw` | Path to your OpenClaw data directory |\n| `WORKSPACE_PATH` | `~/.openclaw/workspace` | Path to your agent workspace |\n| `OPENCLAW_BIN` | Auto-detected | Path to the OpenClaw CLI binary |\n| `OPENCLAW_GATEWAY_TOKEN` | Auto-detected | Gateway authentication token |\n| `OPENCLAW_GATEWAY_PORT` | `18789` | Gateway HTTP port |\n| `PROJECT_REPO_PATH` | -- | Project repository path (enables task/sprint parsing) |\n| `DATA_DIR` | `~/.openclaw-dashboard` | SQLite database directory |\n| `GITHUB_PAT` | -- | GitHub personal access token for private repos |\n\n---\n\n## Architecture\n\n### Tech Stack\n\n| Layer | Technologies |\n|-------|-------------|\n| **Frontend** | Next.js 16, React 19, TypeScript 5.9, Tailwind CSS 4 |\n| **State** | TanStack React Query v5, Zustand, React Context |\n| **UI** | Radix UI, Lucide React, Recharts v3, @xyflow/react, TipTap |\n| **Backend** | Next.js API Routes (52 endpoints), SSE streams |\n| **Database** | SQLite via better-sqlite3 |\n| **Scheduling** | node-cron, Chokidar file watchers |\n| **Integrations** | OpenAI SDK, simple-git, ElevenLabs |\n| **Testing** | Vitest, React Testing Library |\n\n### Data Flow\n\n```\n~/.openclaw/                     Agent sessions, gateway logs, config\n    |\n    v\n[Parsers \u0026 Watchers]             Real-time log watchers + session parsers\n    |\n    v\n[SQLite Database]                Local persistence (zero cloud dependency)\n    |\n    v\n[Next.js API Routes]             52 REST endpoints + SSE streams\n    |\n    v\n[React Frontend]                 React Query -\u003e Zustand -\u003e Apple glass UI\n```\n\n---\n\n## Configuration\n\n### Onboarding Wizard\n\nOn first launch, the 10-step wizard walks you through:\n\n1. **Welcome** -- Product overview\n2. **Prerequisites** -- Auto-detect Node.js, CLI, workspace, gateway\n3. **Workspace** -- Configure data directory\n4. **Gateway** -- Test connectivity\n5. **Agent Discovery** -- Scan and display your agents\n6. **Features** -- Toggle modules (fleet, chat, kanban, crons, memory, costs, etc.)\n7. **Appearance** -- Name, accent color, branding\n8. **Notifications** -- Cost alerts, key rotation reminders\n9. **Integrations** -- GitHub, optional webhooks\n10. **Tour** -- Feature walkthrough\n\nRe-run anytime from Settings or `/setup`.\n\n### Theming\n\nApple-inspired glass aesthetic with full accent color customization. 12 presets + custom color picker. Design tokens defined as CSS custom properties in the Tailwind v4 `@theme` layer.\n\n---\n\n## Testing\n\n```bash\nnpm test              # Run all tests\nnpx vitest            # Watch mode\nnpx vitest --coverage # With coverage\n```\n\n---\n\n## Contributing\n\nWe welcome contributions. See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup, coding standards, and pull request guidelines.\n\n---\n\n## License\n\n[MIT](LICENSE) -- Copyright (c) 2026 OpenClaw Contributors\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChristianAlmurr%2Fopenclaw-dashboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FChristianAlmurr%2Fopenclaw-dashboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FChristianAlmurr%2Fopenclaw-dashboard/lists"}