feat: 添加外部应用卡片和可复制优化

- 新增'📱 外部应用'卡片,显示飞书应用信息
  * 应用名称和图标
  * 应用 ID(等宽字体显示)
  * 一键复制按钮
  * 未配置应用显示友好提示

- 优化工作区路径显示
  * 代码样式(等宽字体 + 背景色)
  * 添加'📋 复制'按钮
  * 复制成功有提示消息

- 后端添加龙虾应用配置
  * 飞行侠:IT 项目推广运营平台 (cli_a92413cfb0791bce)
  * 道童:道德经新解 (cli_a9439b614f38dbd2)
  * 其他龙虾:未配置

- 样式优化
  * 绿色渐变复制按钮
  * 悬停动画效果
  * 响应式布局

📱 让重要信息一键可复制
This commit is contained in:
2026-04-02 18:44:20 +08:00
parent f5ac1e85bf
commit b852186920
2 changed files with 164 additions and 8 deletions

View File

@@ -10,12 +10,12 @@ import re
# 龙虾配置
LOBSTERS = [
{'id': 1, 'name': '飞行侠', 'emoji': '🦸', 'port': 18789, 'specialty': '主力/通用', 'container': 'openclaw-instance2'},
{'id': 2, 'name': '道童', 'emoji': '☯️', 'port': 18889, 'specialty': '道德经注解', 'container': 'openclaw-gateway-2'},
{'id': 3, 'name': '墨子', 'emoji': '🔧', 'port': 18689, 'specialty': '代码专家', 'container': 'openclaw-coder'},
{'id': 4, 'name': '织网者', 'emoji': '🕸️', 'port': 18589, 'specialty': '网站制作', 'container': 'openclaw-web'},
{'id': 5, 'name': '费曼', 'emoji': '⚛️', 'port': 18989, 'specialty': '物理研究', 'container': 'openclaw-physics'},
{'id': 6, 'name': '守望者', 'emoji': '👁️', 'port': 18080, 'specialty': '舰队监控', 'container': 'openclaw-watcher'},
{'id': 1, 'name': '飞行侠', 'emoji': '🦸', 'port': 18789, 'specialty': '主力/通用', 'container': 'openclaw-instance2', 'app_name': 'IT 项目推广运营平台', 'app_id': 'cli_a92413cfb0791bce'},
{'id': 2, 'name': '道童', 'emoji': '☯️', 'port': 18889, 'specialty': '道德经注解', 'container': 'openclaw-gateway-2', 'app_name': '道德经新解', 'app_id': 'cli_a9439b614f38dbd2'},
{'id': 3, 'name': '墨子', 'emoji': '🔧', 'port': 18689, 'specialty': '代码专家', 'container': 'openclaw-coder', 'app_name': '未配置', 'app_id': ''},
{'id': 4, 'name': '织网者', 'emoji': '🕸️', 'port': 18589, 'specialty': '网站制作', 'container': 'openclaw-web', 'app_name': '未配置', 'app_id': ''},
{'id': 5, 'name': '费曼', 'emoji': '⚛️', 'port': 18989, 'specialty': '物理研究', 'container': 'openclaw-physics', 'app_name': '未配置', 'app_id': ''},
{'id': 6, 'name': '守望者', 'emoji': '👁️', 'port': 18080, 'specialty': '舰队监控', 'container': 'openclaw-watcher', 'app_name': '未配置', 'app_id': ''},
]
@api_view(['GET'])