claw-dashboard 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.worktrees/release-packaging/LICENSE +21 -0
- package/.worktrees/release-packaging/README.md +180 -0
- package/.worktrees/release-packaging/ai.openclaw.dashboard.plist +35 -0
- package/.worktrees/release-packaging/index.js +1098 -0
- package/.worktrees/release-packaging/package-lock.json +643 -0
- package/.worktrees/release-packaging/package.json +34 -0
- package/LICENSE +21 -0
- package/README.md +180 -0
- package/ai.openclaw.dashboard.plist +35 -0
- package/index.js +1098 -0
- package/package.json +41 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 OpenClaw
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
# 🖥️ Claw Dashboard
|
|
2
|
+
|
|
3
|
+
A beautiful, real-time terminal dashboard for monitoring OpenClaw instances — inspired by modern system monitors like **btop**, **htop**, and **mactop**.
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
## ✨ Features
|
|
8
|
+
|
|
9
|
+
- **🎨 Stunning Visuals**: ASCII art logo, gradient colors, donut charts, and progress bars
|
|
10
|
+
- **📊 Real-time Monitoring**: Auto-refreshes every 2 seconds
|
|
11
|
+
- **🖥️ System Stats**: CPU usage (per-core + average), Memory usage with visual gauges
|
|
12
|
+
- **🎮 GPU Monitoring**: Apple Silicon GPU support (temperature, VRAM utilization)
|
|
13
|
+
- **📈 Top Processes**: Live view of top CPU and memory consuming processes
|
|
14
|
+
- **🤖 OpenClaw Integration**: Live session tracking, agent status, security audit
|
|
15
|
+
- **📱 Session Management**: View all active sessions with token usage
|
|
16
|
+
- **⚡ Lightweight**: Built with Node.js and blessed for minimal resource usage
|
|
17
|
+
|
|
18
|
+
## 🚀 Quick Start
|
|
19
|
+
|
|
20
|
+
### Prerequisites
|
|
21
|
+
|
|
22
|
+
- Node.js v18+
|
|
23
|
+
- OpenClaw installed and configured
|
|
24
|
+
- macOS (Apple Silicon optimized)
|
|
25
|
+
|
|
26
|
+
### Installation
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# Install globally (recommended)
|
|
30
|
+
npm install -g claw-dashboard
|
|
31
|
+
|
|
32
|
+
# Or run without installing
|
|
33
|
+
npx claw-dashboard
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Usage
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Run the dashboard
|
|
40
|
+
clawdash
|
|
41
|
+
|
|
42
|
+
# Or with npm start (if installed locally)
|
|
43
|
+
npm start
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## 🎮 Controls
|
|
47
|
+
|
|
48
|
+
| Key | Action |
|
|
49
|
+
|-----|--------|
|
|
50
|
+
| `q` or `Q` | Quit the dashboard |
|
|
51
|
+
| `r` or `R` | Force refresh data |
|
|
52
|
+
| `?` or `h` | Toggle help panel |
|
|
53
|
+
| `s` or `S` | Open/close settings panel |
|
|
54
|
+
| `Esc` | Close settings panel (when open) |
|
|
55
|
+
| `Ctrl+C` | Quit gracefully |
|
|
56
|
+
|
|
57
|
+
## ⚙️ Settings
|
|
58
|
+
|
|
59
|
+
Press `s` to open the settings panel where you can customize:
|
|
60
|
+
|
|
61
|
+
- **Refresh Interval**: Toggle between 1s, 2s, 5s, or 10s
|
|
62
|
+
- **Show Network**: Enable/disable network monitoring widget
|
|
63
|
+
- **Show GPU**: Enable/disable GPU monitoring widget
|
|
64
|
+
- **Show Disk**: Enable/disable disk usage widget
|
|
65
|
+
- **Show Processes**: Enable/disable top processes widget
|
|
66
|
+
|
|
67
|
+
Settings are automatically saved to `~/.openclaw/dashboard-settings.json` and persist across sessions.
|
|
68
|
+
|
|
69
|
+
Disabled widgets show `[Disabled]` and skip data fetching, reducing CPU usage.
|
|
70
|
+
|
|
71
|
+
## 📦 Running Persistently
|
|
72
|
+
|
|
73
|
+
### Option 1: Using `screen`
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Install screen
|
|
77
|
+
brew install screen
|
|
78
|
+
|
|
79
|
+
# Create a detached screen session
|
|
80
|
+
screen -dmS claw-dashboard bash -c 'clawdash'
|
|
81
|
+
|
|
82
|
+
# To reattach
|
|
83
|
+
screen -r claw-dashboard
|
|
84
|
+
|
|
85
|
+
# To detach: press Ctrl+A, then D
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Option 2: Using `tmux` (Recommended)
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Install tmux
|
|
92
|
+
brew install tmux
|
|
93
|
+
|
|
94
|
+
# Create a new tmux session
|
|
95
|
+
tmux new-session -d -s claw-dashboard 'clawdash'
|
|
96
|
+
|
|
97
|
+
# To attach
|
|
98
|
+
tmux attach -t claw-dashboard
|
|
99
|
+
|
|
100
|
+
# To detach: press Ctrl+B, then D
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### Option 3: LaunchAgent (Auto-start on Boot)
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
# Copy the plist (included in package)
|
|
107
|
+
cp ~/node_modules/claw-dashboard/ai.openclaw.dashboard.plist ~/Library/LaunchAgents/
|
|
108
|
+
|
|
109
|
+
# Edit paths in the plist
|
|
110
|
+
nano ~/Library/LaunchAgents/ai.openclaw.dashboard.plist
|
|
111
|
+
# Change /Users/kdsmith/... to your home directory
|
|
112
|
+
|
|
113
|
+
# Load the service
|
|
114
|
+
launchctl load ~/Library/LaunchAgents/ai.openclaw.dashboard.plist
|
|
115
|
+
|
|
116
|
+
# Check status
|
|
117
|
+
launchctl list | grep openclaw.dashboard
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
### Option 4: Using `pm2`
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# Install pm2
|
|
124
|
+
npm install -g pm2
|
|
125
|
+
|
|
126
|
+
# Start with pm2
|
|
127
|
+
pm2 start claw-dashboard --name claw-dashboard
|
|
128
|
+
|
|
129
|
+
# Save config
|
|
130
|
+
pm2 save
|
|
131
|
+
|
|
132
|
+
# Auto-start on boot
|
|
133
|
+
pm2 startup
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## 🔧 Troubleshooting
|
|
137
|
+
|
|
138
|
+
### "command not found" after global install
|
|
139
|
+
|
|
140
|
+
```bash
|
|
141
|
+
# Ensure npm global bin is in your PATH
|
|
142
|
+
export PATH="$(npm root -g)/../bin:$PATH"
|
|
143
|
+
|
|
144
|
+
# Add to your shell profile for persistence
|
|
145
|
+
echo 'export PATH="$(npm root -g)/../bin:$PATH"' >> ~/.zshrc
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### Dashboard shows "Not Available" for OpenClaw
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
# Check if OpenClaw is running
|
|
152
|
+
openclaw gateway status
|
|
153
|
+
|
|
154
|
+
# Start if needed
|
|
155
|
+
openclaw gateway start
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Display Issues
|
|
159
|
+
|
|
160
|
+
For best results, use a terminal that supports:
|
|
161
|
+
- 256 colors
|
|
162
|
+
- Unicode box-drawing characters
|
|
163
|
+
- TrueColor (optional)
|
|
164
|
+
|
|
165
|
+
Recommended: **iTerm2**, **Kitty**, **Alacritty**
|
|
166
|
+
|
|
167
|
+
## 📝 Dependencies
|
|
168
|
+
|
|
169
|
+
- `blessed` - Terminal UI framework
|
|
170
|
+
- `blessed-contrib` - Widgets (charts, tables, gauges)
|
|
171
|
+
- `systeminformation` - System stats
|
|
172
|
+
- `chalk` - Terminal colors
|
|
173
|
+
|
|
174
|
+
## 🤝 Contributing
|
|
175
|
+
|
|
176
|
+
Issues and PRs welcome at [github.com/openclaw/claw-dashboard](https://github.com/openclaw/claw-dashboard)
|
|
177
|
+
|
|
178
|
+
## 📜 License
|
|
179
|
+
|
|
180
|
+
MIT
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>Label</key>
|
|
6
|
+
<string>ai.openclaw.dashboard</string>
|
|
7
|
+
<key>ProgramArguments</key>
|
|
8
|
+
<array>
|
|
9
|
+
<string>/bin/bash</string>
|
|
10
|
+
<string>-l</string>
|
|
11
|
+
<string>-c</string>
|
|
12
|
+
<string>clawdash</string>
|
|
13
|
+
</array>
|
|
14
|
+
<key>RunAtLoad</key>
|
|
15
|
+
<true/>
|
|
16
|
+
<key>KeepAlive</key>
|
|
17
|
+
<dict>
|
|
18
|
+
<key>SuccessfulExit</key>
|
|
19
|
+
<false/>
|
|
20
|
+
</dict>
|
|
21
|
+
<key>StandardOutPath</key>
|
|
22
|
+
<string>/tmp/openclaw/dashboard.out</string>
|
|
23
|
+
<key>StandardErrorPath</key>
|
|
24
|
+
<string>/tmp/openclaw/dashboard.err</string>
|
|
25
|
+
<key>EnvironmentVariables</key>
|
|
26
|
+
<dict>
|
|
27
|
+
<key>PATH</key>
|
|
28
|
+
<string>/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/bin</string>
|
|
29
|
+
<key>TERM</key>
|
|
30
|
+
<string>xterm-256color</string>
|
|
31
|
+
</dict>
|
|
32
|
+
<key>ProcessType</key>
|
|
33
|
+
<string>Interactive</string>
|
|
34
|
+
</dict>
|
|
35
|
+
</plist>
|