openclaw-agent-dashboard 1.0.21 → 1.0.23

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.
Files changed (135) hide show
  1. package/README.md +55 -321
  2. package/frontend-dist/assets/index-B7XqKAxm.css +1 -0
  3. package/frontend-dist/assets/index-CxJaSYyo.js +24 -0
  4. package/{frontend → frontend-dist}/index.html +2 -1
  5. package/{plugin/openclaw.plugin.json → openclaw.plugin.json} +2 -2
  6. package/package.json +21 -13
  7. package/.github/workflows/release.yml +0 -56
  8. package/VERSION_DISPLAY_delivery.md +0 -242
  9. package/VERSION_DISPLAY_implementation_summary.md +0 -315
  10. package/design_manifest.md +0 -100
  11. package/docs/CHANGELOG_AGENT_MODIFICATIONS.md +0 -132
  12. package/docs/MAINTAINER_RELEASE_WORKFLOW.md +0 -211
  13. package/docs/Openclaw-Agent-Dashboard/345/217/221/345/270/203/344/270/216/346/233/264/346/226/260.md +0 -147
  14. package/docs/RELEASE-LATEST.md +0 -189
  15. package/docs/RELEASE-MODEL-CONFIG.md +0 -95
  16. package/docs/WINDOWS_INSTALL_TROUBLESHOOTING.md +0 -171
  17. package/docs/design/.gitkeep +0 -0
  18. package/docs/design/VERSION_DISPLAY_design.md +0 -1236
  19. package/docs/release-guide.md +0 -259
  20. package/docs/release-operations-manual.md +0 -167
  21. package/docs/reviews/.gitkeep +0 -0
  22. package/docs/reviews/approval_history.json +0 -14
  23. package/docs/reviews/cr_VERSION_DISPLAY.md +0 -397
  24. package/docs/reviews/traceability_manifest.json +0 -279
  25. package/docs/specs/VERSION_DISPLAY_spec.md +0 -371
  26. package/docs/specs/tr3-install-system.md +0 -580
  27. package/docs/windows-collaboration-model-paths-troubleshooting.md +0 -0
  28. package/frontend/package-lock.json +0 -1240
  29. package/frontend/package.json +0 -19
  30. package/frontend/src/App.vue +0 -355
  31. package/frontend/src/components/AgentCard.vue +0 -796
  32. package/frontend/src/components/AgentConfigPanel.vue +0 -539
  33. package/frontend/src/components/AgentDetailPanel.vue +0 -738
  34. package/frontend/src/components/ErrorAnalysisView.vue +0 -546
  35. package/frontend/src/components/ErrorCenterPanel.vue +0 -844
  36. package/frontend/src/components/PerformanceMonitor.vue +0 -515
  37. package/frontend/src/components/SettingsPanel.vue +0 -236
  38. package/frontend/src/components/TokenAnalysisPanel.vue +0 -683
  39. package/frontend/src/components/chain/ChainEdge.vue +0 -85
  40. package/frontend/src/components/chain/ChainNode.vue +0 -166
  41. package/frontend/src/components/chain/TaskChainView.vue +0 -425
  42. package/frontend/src/components/chain/index.ts +0 -3
  43. package/frontend/src/components/chain/types.ts +0 -70
  44. package/frontend/src/components/collaboration/CollaborationFlowSection.vue +0 -1032
  45. package/frontend/src/components/collaboration/CollaborationFlowWrapper.vue +0 -113
  46. package/frontend/src/components/common/VersionDisplay.vue +0 -187
  47. package/frontend/src/components/performance/PerformancePanel.vue +0 -119
  48. package/frontend/src/components/performance/PerformanceSection.vue +0 -1137
  49. package/frontend/src/components/tasks/TaskStatusSection.vue +0 -973
  50. package/frontend/src/components/timeline/TimelineConnector.vue +0 -31
  51. package/frontend/src/components/timeline/TimelineRound.vue +0 -135
  52. package/frontend/src/components/timeline/TimelineStep.vue +0 -691
  53. package/frontend/src/components/timeline/TimelineToolLink.vue +0 -109
  54. package/frontend/src/components/timeline/TimelineView.vue +0 -540
  55. package/frontend/src/components/timeline/index.ts +0 -5
  56. package/frontend/src/components/timeline/types.ts +0 -120
  57. package/frontend/src/composables/index.ts +0 -7
  58. package/frontend/src/composables/useDebounce.ts +0 -48
  59. package/frontend/src/composables/useRealtime.ts +0 -52
  60. package/frontend/src/composables/useState.ts +0 -52
  61. package/frontend/src/composables/useThrottle.ts +0 -46
  62. package/frontend/src/composables/useVirtualScroll.ts +0 -106
  63. package/frontend/src/main.ts +0 -4
  64. package/frontend/src/managers/EventDispatcher.ts +0 -127
  65. package/frontend/src/managers/RealtimeDataManager.ts +0 -302
  66. package/frontend/src/managers/StateManager.ts +0 -128
  67. package/frontend/src/managers/index.ts +0 -5
  68. package/frontend/src/types/collaboration.ts +0 -135
  69. package/frontend/src/types/index.ts +0 -20
  70. package/frontend/src/types/performance.ts +0 -105
  71. package/frontend/src/types/task.ts +0 -38
  72. package/frontend/vite.config.ts +0 -18
  73. package/legacy_code_anatomy.md +0 -518
  74. package/plugin/README.md +0 -99
  75. package/plugin/config.json.example +0 -1
  76. package/plugin/package.json +0 -26
  77. package/scripts/build-plugin.js +0 -81
  78. package/scripts/bundle.sh +0 -62
  79. package/scripts/install-plugin.sh +0 -162
  80. package/scripts/install-python-deps.sh +0 -226
  81. package/scripts/install.js +0 -684
  82. package/scripts/install.sh +0 -367
  83. package/scripts/lib/common.sh +0 -137
  84. package/scripts/release-pack.sh +0 -110
  85. package/scripts/start.js +0 -50
  86. package/scripts/test_available_models.py +0 -284
  87. package/scripts/test_version_display.sh +0 -128
  88. package/scripts/test_websocket_ping.py +0 -44
  89. package/session_registry.json +0 -58
  90. package/tests/.gitkeep +0 -0
  91. package/tests/qa_regression_report.md +0 -359
  92. package/tests/qa_version_display_report.md +0 -598
  93. /package/{src/backend → dashboard}/agents.py +0 -0
  94. /package/{src/backend → dashboard}/api/__init__.py +0 -0
  95. /package/{src/backend → dashboard}/api/agent_config_api.py +0 -0
  96. /package/{src/backend → dashboard}/api/agents.py +0 -0
  97. /package/{src/backend → dashboard}/api/agents_config.py +0 -0
  98. /package/{src/backend → dashboard}/api/chains.py +0 -0
  99. /package/{src/backend → dashboard}/api/collaboration.py +0 -0
  100. /package/{src/backend → dashboard}/api/debug_paths.py +0 -0
  101. /package/{src/backend → dashboard}/api/error_analysis.py +0 -0
  102. /package/{src/backend → dashboard}/api/errors.py +0 -0
  103. /package/{src/backend → dashboard}/api/performance.py +0 -0
  104. /package/{src/backend → dashboard}/api/subagents.py +0 -0
  105. /package/{src/backend → dashboard}/api/timeline.py +0 -0
  106. /package/{src/backend → dashboard}/api/version.py +0 -0
  107. /package/{src/backend → dashboard}/api/websocket.py +0 -0
  108. /package/{src/backend → dashboard}/collaboration.py +0 -0
  109. /package/{src/backend → dashboard}/data/__init__.py +0 -0
  110. /package/{src/backend → dashboard}/data/agent_config_manager.py +0 -0
  111. /package/{src/backend → dashboard}/data/chain_reader.py +0 -0
  112. /package/{src/backend → dashboard}/data/config_reader.py +0 -0
  113. /package/{src/backend → dashboard}/data/error_analyzer.py +0 -0
  114. /package/{src/backend → dashboard}/data/session_reader.py +0 -0
  115. /package/{src/backend → dashboard}/data/subagent_reader.py +0 -0
  116. /package/{src/backend → dashboard}/data/task_history.py +0 -0
  117. /package/{src/backend → dashboard}/data/timeline_reader.py +0 -0
  118. /package/{src/backend → dashboard}/data/version_info_reader.py +0 -0
  119. /package/{src/backend → dashboard}/errors.py +0 -0
  120. /package/{src/backend → dashboard}/main.py +0 -0
  121. /package/{src/backend → dashboard}/mechanism_reader.py +0 -0
  122. /package/{src/backend → dashboard}/mechanisms.py +0 -0
  123. /package/{src/backend → dashboard}/performance.py +0 -0
  124. /package/{src/backend → dashboard}/requirements.txt +0 -0
  125. /package/{src/backend → dashboard}/session_reader.py +0 -0
  126. /package/{src/backend → dashboard}/status/__init__.py +0 -0
  127. /package/{src/backend → dashboard}/status/change_tracker.py +0 -0
  128. /package/{src/backend → dashboard}/status/error_detector.py +0 -0
  129. /package/{src/backend → dashboard}/status/status_cache.py +0 -0
  130. /package/{src/backend → dashboard}/status/status_calculator.py +0 -0
  131. /package/{src/backend → dashboard}/status_calculator.py +0 -0
  132. /package/{src/backend → dashboard}/subagent_reader.py +0 -0
  133. /package/{src/backend → dashboard}/watchers/__init__.py +0 -0
  134. /package/{src/backend → dashboard}/watchers/file_watcher.py +0 -0
  135. /package/{plugin/index.js → index.js} +0 -0
@@ -1,236 +0,0 @@
1
- <template>
2
- <div class="settings-panel">
3
- <div class="header">
4
- <h2>设置</h2>
5
- <button class="close-btn" @click="$emit('close')">×</button>
6
- </div>
7
-
8
- <div class="content">
9
- <section>
10
- <h3>自动刷新</h3>
11
- <div class="setting-item">
12
- <label>刷新间隔(秒)</label>
13
- <input
14
- type="number"
15
- v-model.number="refreshInterval"
16
- min="1"
17
- max="300"
18
- @change="saveSettings"
19
- />
20
- </div>
21
- <div class="setting-item">
22
- <label>
23
- <input type="checkbox" v-model="autoRefreshEnabled" @change="saveSettings" />
24
- 启用自动刷新
25
- </label>
26
- </div>
27
- </section>
28
-
29
- <section>
30
- <h3>显示选项</h3>
31
- <div class="setting-item">
32
- <label>
33
- <input type="checkbox" v-model="showTimestamps" @change="saveSettings" />
34
- 显示时间戳
35
- </label>
36
- </div>
37
- <div class="setting-item">
38
- <label>
39
- <input type="checkbox" v-model="showTokens" @change="saveSettings" />
40
- 显示 Token 消耗
41
- </label>
42
- </div>
43
- </section>
44
-
45
- <section>
46
- <h3>通知</h3>
47
- <div class="setting-item">
48
- <label>
49
- <input type="checkbox" v-model="notifyOnError" @change="saveSettings" />
50
- Agent 异常时通知
51
- </label>
52
- </div>
53
- <div class="setting-item">
54
- <label>
55
- <input type="checkbox" v-model="notifyOnComplete" @change="saveSettings" />
56
- 任务完成时通知
57
- </label>
58
- </div>
59
- </section>
60
-
61
- <section>
62
- <h3>日志查看</h3>
63
- <div class="setting-item">
64
- <label>日志行数</label>
65
- <select v-model="logLines" @change="saveSettings">
66
- <option :value="50">50 行</option>
67
- <option :value="100">100 行</option>
68
- <option :value="200">200 行</option>
69
- <option :value="500">500 行</option>
70
- </select>
71
- </div>
72
- <div class="setting-item">
73
- <label>
74
- <input type="checkbox" v-model="autoScrollLog" @change="saveSettings" />
75
- 自动滚动日志
76
- </label>
77
- </div>
78
- </section>
79
- </div>
80
- </div>
81
- </template>
82
-
83
- <script setup lang="ts">
84
- import { ref, onMounted } from 'vue'
85
-
86
- const emit = defineEmits<{
87
- close: []
88
- }>()
89
-
90
- const refreshInterval = ref(10)
91
- const autoRefreshEnabled = ref(true)
92
- const showTimestamps = ref(true)
93
- const showTokens = ref(true)
94
- const notifyOnError = ref(true)
95
- const notifyOnComplete = ref(false)
96
- const logLines = ref(100)
97
- const autoScrollLog = ref(true)
98
-
99
- function loadSettings() {
100
- const saved = localStorage.getItem('dashboard-settings')
101
- if (saved) {
102
- try {
103
- const settings = JSON.parse(saved)
104
- refreshInterval.value = settings.refreshInterval || 10
105
- autoRefreshEnabled.value = settings.autoRefreshEnabled !== false
106
- showTimestamps.value = settings.showTimestamps !== false
107
- showTokens.value = settings.showTokens !== false
108
- notifyOnError.value = settings.notifyOnError !== false
109
- notifyOnComplete.value = settings.notifyOnComplete || false
110
- logLines.value = settings.logLines || 100
111
- autoScrollLog.value = settings.autoScrollLog !== false
112
- } catch (e) {
113
- console.error('加载设置失败:', e)
114
- }
115
- }
116
- }
117
-
118
- function saveSettings() {
119
- const settings = {
120
- refreshInterval: refreshInterval.value,
121
- autoRefreshEnabled: autoRefreshEnabled.value,
122
- showTimestamps: showTimestamps.value,
123
- showTokens: showTokens.value,
124
- notifyOnError: notifyOnError.value,
125
- notifyOnComplete: notifyOnComplete.value,
126
- logLines: logLines.value,
127
- autoScrollLog: autoScrollLog.value
128
- }
129
-
130
- localStorage.setItem('dashboard-settings', JSON.stringify(settings))
131
-
132
- // 通知父组件
133
- emit('settings-changed', settings)
134
- }
135
-
136
- onMounted(() => {
137
- loadSettings()
138
- })
139
- </script>
140
-
141
- <style scoped>
142
- .settings-panel {
143
- position: fixed;
144
- top: 0;
145
- right: 0;
146
- bottom: 0;
147
- width: 400px;
148
- background: white;
149
- box-shadow: -4px 0 16px rgba(0, 0, 0, 0.15);
150
- display: flex;
151
- flex-direction: column;
152
- z-index: 1000;
153
- }
154
-
155
- .header {
156
- display: flex;
157
- justify-content: space-between;
158
- align-items: center;
159
- padding: 1.5rem;
160
- border-bottom: 1px solid #e5e7eb;
161
- }
162
-
163
- .header h2 {
164
- margin: 0;
165
- font-size: 1.5rem;
166
- color: #333;
167
- }
168
-
169
- .close-btn {
170
- font-size: 2rem;
171
- line-height: 1;
172
- background: none;
173
- border: none;
174
- cursor: pointer;
175
- color: #999;
176
- padding: 0;
177
- width: 32px;
178
- height: 32px;
179
- display: flex;
180
- align-items: center;
181
- justify-content: center;
182
- }
183
-
184
- .close-btn:hover {
185
- color: #333;
186
- }
187
-
188
- .content {
189
- flex: 1;
190
- padding: 1.5rem;
191
- overflow-y: auto;
192
- }
193
-
194
- section {
195
- margin-bottom: 2rem;
196
- }
197
-
198
- section:last-child {
199
- margin-bottom: 0;
200
- }
201
-
202
- section h3 {
203
- margin: 0 0 1rem 0;
204
- font-size: 1.1rem;
205
- color: #333;
206
- }
207
-
208
- .setting-item {
209
- display: flex;
210
- align-items: center;
211
- justify-content: space-between;
212
- padding: 0.75rem 0;
213
- border-bottom: 1px solid #f3f4f6;
214
- }
215
-
216
- .setting-item:last-child {
217
- border-bottom: none;
218
- }
219
-
220
- .setting-item label {
221
- color: #666;
222
- font-size: 0.95rem;
223
- }
224
-
225
- .setting-item input[type="number"],
226
- .setting-item select {
227
- padding: 0.5rem;
228
- border: 1px solid #e5e7eb;
229
- border-radius: 4px;
230
- width: 100px;
231
- }
232
-
233
- .setting-item input[type="checkbox"] {
234
- margin-right: 0.5rem;
235
- }
236
- </style>