Add bound-model test API and docs assets

This commit is contained in:
xmanrui
2026-03-23 02:29:57 +08:00
parent 4d1ceaea3e
commit 7dd4a548d8
11 changed files with 130 additions and 12 deletions
+10
View File
@@ -0,0 +1,10 @@
{
"hooks": {
"postToolUse": [
{
"matcher": "Edit|Write",
"command": "npx tsc --noEmit --pretty 2>&1 | head -20"
}
]
}
}
+1
View File
@@ -4,4 +4,5 @@ node_modules
next-env.d.ts next-env.d.ts
.idea .idea
.DS_Store .DS_Store
/.openclaw
/public/assets/pixel-office/*.mp3 /public/assets/pixel-office/*.mp3
+1 -1
View File
@@ -394,7 +394,7 @@ export default function Home() {
const pending: Record<string, any> = {}; const pending: Record<string, any> = {};
if (data) for (const a of data.agents) pending[a.id] = null; if (data) for (const a of data.agents) pending[a.id] = null;
setTestResults(pending); setTestResults(pending);
callTestApi("/api/test-agents") callTestApi("/api/test-bound-models")
.then((resp) => { .then((resp) => {
if (resp.results) { if (resp.results) {
const map: Record<string, { ok: boolean; text?: string; error?: string; elapsed: number }> = {}; const map: Record<string, { ok: boolean; text?: string; error?: string; elapsed: number }> = {};
+7
View File
@@ -0,0 +1,7 @@
我叫谢满锐,资深agent开发工程师
现在是独立agent全栈开发者,前端、后端、运维一把梭
OpenClaw可视化运维开源项目OpenClaw-bot-review的作者,欢迎提交issue和pr
https://github.com/xmanrui/OpenClaw-bot-review
小红书:9707067905
微信:xmanr123
+40
View File
@@ -0,0 +1,40 @@
项目名称:Openclaw可视化运维平台
痛点场景:
当你在多个平台(飞书、Discord 等)上运行多个 OpenClaw Agent 时,会面临以下管理和监控难题:
- 哪个机器人使用了哪个 AI 模型?
- 各个平台的连接状态如何?
- OpenClaw Gateway 是否正常运行?
- Token 消耗了多少?
- 各个 Agent 的运行状态如何
机器人页面:
这三个功能的详细介绍:
1.一键测试功能
提供四种批量测试能力:
- 测试所有 Agent - 向每个 Agent 发送测试请求,验证 Agent 是否能正常响应,显示响应时间和结果
- 测试所有平台 - 检测每个 Agent 绑定的平台(飞书/Discord)连接状态,确认平台配置是否正确
- 测试所有会话 - 测试每个 Agent 的会话连通性,验证会话是否可用
- 测试所有 DM 会话 - 专门测试私聊会话的连接状态
测试结果会实时显示在每个 Agent 卡片上
2.模型切换功能
在 Agent 卡片上可以直接切换该 Agent 使用的 AI 模型:
- 下拉菜单按 Provider 分组显示所有可用模型
- 切换后立即生效,无需重启服务
3.Agent 任务追踪
实时监控 Agent 的工作状态和任务执行情况:
- 工作状态 - 显示 Agent 当前状态(working/waiting/idle/offline
- 子任务追踪 - 显示 Agent 正在执行的子任务(subagent)及其活动事件
- 定时任务监控 - 显示 Cron Job 的运行状态(running/success/failed)、执行时长、下次运行时间、连续失败次数
- 自动轮询 - 每 30 秒自动刷新任务状态
像素办公室页面:
让冰冷的监控数据变成有趣的像素游戏,直观"看到"每个 Agent 在做什么
Binary file not shown.

After

Width:  |  Height:  |  Size: 382 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 376 KiB

+25
View File
@@ -0,0 +1,25 @@
五大简易测评标准,对标原生openclaw:
1.能否自由配置大模型(30分)
2.能否自由配置多种im,同一种im工具能否配置多个机器人(30分)
3.多agent20分)
4.通用技能(20分)
5.业务场景技能(区别与原生openclaw,加分项,10分)
PS个人主观评测,不代表真实情况,仅供参考
我是OpenClaw可视化运维开源项目OpenClaw-bot-review的作者,欢迎提交issue和pr
据说 填表可以 领 MiniMax 30$ 的 Token @所有人
https://vrfi1sk8a0.feishu.cn/share/base/form/shrcndGDz9YAOoe3xkQyrx75bdc
免费模型:
https://openrouter.ai/
中转站聚合平台:
https://relaypulse.top/
测评结果:
https://my.feishu.cn/wiki/HlruwwdCriwb83k6sDbccLaenld?sheet=itHLaR
https://my.feishu.cn/wiki/HlruwwdCriwb83k6sDbccLaenld
https://my.feishu.cn/wiki/HlruwwdCriwb83k6sDbccLaenld?from=from_copylink
+11 -11
View File
@@ -66,8 +66,8 @@ const translations: Record<Locale, Record<string, string>> = {
"home.defaultModel": "預設模型", "home.defaultModel": "預設模型",
"home.viewModels": "查看模型列表 →", "home.viewModels": "查看模型列表 →",
"home.skillMgmt": "🧩 技能管理", "home.skillMgmt": "🧩 技能管理",
"home.testAll": "測試綁定模型", "home.testAll": "測試綁定模型",
"home.testingAll": "測試中...", "home.testingAll": "測試模型中...",
"home.testOk": "正常", "home.testOk": "正常",
"home.testFail": "異常", "home.testFail": "異常",
"home.updatedAt": "更新於", "home.updatedAt": "更新於",
@@ -86,8 +86,8 @@ const translations: Record<Locale, Record<string, string>> = {
"home.noResponseData": "暫無回應時間資料", "home.noResponseData": "暫無回應時間資料",
"home.testPlatforms": "測試平台連線", "home.testPlatforms": "測試平台連線",
"home.testingPlatforms": "測試平台中...", "home.testingPlatforms": "測試平台中...",
"home.testSessions": "測試 Agent", "home.testSessions": "測試 Agent 會話",
"home.testingSessions": "測試中...", "home.testingSessions": "測試會話中...",
"home.testDmSessions": "測試 DM Session", "home.testDmSessions": "測試 DM Session",
"home.testingDmSessions": "測試中...", "home.testingDmSessions": "測試中...",
"home.agentTaskTracking": "Agent 任務追蹤", "home.agentTaskTracking": "Agent 任務追蹤",
@@ -354,8 +354,8 @@ const translations: Record<Locale, Record<string, string>> = {
"home.defaultModel": "默认模型", "home.defaultModel": "默认模型",
"home.viewModels": "查看模型列表 →", "home.viewModels": "查看模型列表 →",
"home.skillMgmt": "🧩 技能管理", "home.skillMgmt": "🧩 技能管理",
"home.testAll": "测试绑定模型", "home.testAll": "测试绑定模型",
"home.testingAll": "测试中...", "home.testingAll": "测试模型中...",
"home.testOk": "正常", "home.testOk": "正常",
"home.testFail": "异常", "home.testFail": "异常",
"home.updatedAt": "更新于", "home.updatedAt": "更新于",
@@ -374,8 +374,8 @@ const translations: Record<Locale, Record<string, string>> = {
"home.noResponseData": "暂无响应时间数据", "home.noResponseData": "暂无响应时间数据",
"home.testPlatforms": "测试平台连通", "home.testPlatforms": "测试平台连通",
"home.testingPlatforms": "测试平台中...", "home.testingPlatforms": "测试平台中...",
"home.testSessions": "测试 Agent", "home.testSessions": "测试 Agent 会话",
"home.testingSessions": "测试中...", "home.testingSessions": "测试会话中...",
"home.testDmSessions": "测试 DM Session", "home.testDmSessions": "测试 DM Session",
"home.testingDmSessions": "测试中...", "home.testingDmSessions": "测试中...",
"home.agentTaskTracking": "Agent 任务追踪", "home.agentTaskTracking": "Agent 任务追踪",
@@ -643,7 +643,7 @@ const translations: Record<Locale, Record<string, string>> = {
"home.viewModels": "View Models →", "home.viewModels": "View Models →",
"home.skillMgmt": "🧩 Skills", "home.skillMgmt": "🧩 Skills",
"home.testAll": "Test Bound Models", "home.testAll": "Test Bound Models",
"home.testingAll": "Testing...", "home.testingAll": "Testing Models...",
"home.testOk": "OK", "home.testOk": "OK",
"home.testFail": "Failed", "home.testFail": "Failed",
"home.updatedAt": "Updated at", "home.updatedAt": "Updated at",
@@ -662,8 +662,8 @@ const translations: Record<Locale, Record<string, string>> = {
"home.noResponseData": "No response time data", "home.noResponseData": "No response time data",
"home.testPlatforms": "Test Platforms", "home.testPlatforms": "Test Platforms",
"home.testingPlatforms": "Testing Platforms...", "home.testingPlatforms": "Testing Platforms...",
"home.testSessions": "Test Agents", "home.testSessions": "Test Agent Sessions",
"home.testingSessions": "Testing...", "home.testingSessions": "Testing Sessions...",
"home.testDmSessions": "Test DM Sessions", "home.testDmSessions": "Test DM Sessions",
"home.testingDmSessions": "Testing...", "home.testingDmSessions": "Testing...",
"home.agentTaskTracking": "Agent Task Tracking", "home.agentTaskTracking": "Agent Task Tracking",
+35
View File
@@ -0,0 +1,35 @@
{
"scopes": {
"tenant": [
"aily:file:read",
"aily:file:write",
"application:application.app_message_stats.overview:readonly",
"application:application:self_manage",
"application:bot.menu:write",
"cardkit:card:write",
"contact:contact.base:readonly",
"contact:user.employee_id:readonly",
"corehr:file:download",
"docs:document.content:read",
"event:ip_list",
"im:chat",
"im:chat.access_event.bot_p2p_chat:read",
"im:chat.members:bot_access",
"im:message",
"im:message.group_at_msg:readonly",
"im:message.group_msg",
"im:message.p2p_msg:readonly",
"im:message:readonly",
"im:message:send_as_bot",
"im:resource",
"sheets:spreadsheet",
"wiki:wiki:readonly"
],
"user": [
"aily:file:read",
"aily:file:write",
"contact:contact.base:readonly",
"im:chat.access_event.bot_p2p_chat:read"
]
}
}