| #!/bin/bash |
| |
|
|
| API_BASE="https://airsltd-ocngx.hf.space/opencode" |
| AUTH="-u admin:admin123" |
|
|
| echo "=== OpenCode 版本诊断 ===" |
| echo "时间: $(date)" |
| echo |
|
|
| |
| echo "1. 健康检查版本:" |
| HEALTH_VERSION=$(curl -s -X GET "$API_BASE/global/health" $AUTH | jq -r '.version') |
| echo " 健康检查返回: $HEALTH_VERSION" |
|
|
| |
| echo "2. 检查会话状态:" |
| SESSION_STATUS=$(curl -s -X GET "$API_BASE/session/status" $AUTH) |
| echo " 会话状态: $SESSION_STATUS" |
|
|
| |
| echo "3. 创建新会话测试:" |
| NEW_SESSION=$(curl -s -X POST "$API_BASE/session" $AUTH -d '{}') |
| NEW_SESSION_ID=$(echo "$NEW_SESSION" | jq -r '.id') |
| echo " 新会话 ID: $NEW_SESSION_ID" |
| echo " 新会话版本: $(echo "$NEW_SESSION" | jq -r '.version')" |
|
|
| |
| echo "4. 在新会话中询问版本:" |
| VERSION_QUERY=$(curl -s -X POST "$API_BASE/session/$NEW_SESSION_ID/message" \ |
| -H "Content-Type: application/json" \ |
| $AUTH \ |
| -d '{ |
| "parts": [ |
| { |
| "type": "text", |
| "text": "请告诉我当前 OpenCode 的版本号" |
| } |
| ] |
| }') |
|
|
| echo " 版本查询响应: $VERSION_QUERY" |
|
|
| |
| sleep 3 |
| VERSION_REPLY=$(curl -s -X GET "$API_BASE/session/$NEW_SESSION_ID/message" $AUTH) |
| echo " AI 回复的版本: $(echo "$VERSION_REPLY" | jq -r '.[-1].parts[] | select(.type=="text") | .text')" |
|
|
| |
| echo "5. 检查配置信息:" |
| CONFIG=$(curl -s -X GET "$API_BASE/config" $AUTH) |
| echo " 配置信息: $CONFIG" |
|
|
| |
| echo "6. 检查事件流:" |
| echo " 监听事件流 10 秒..." |
| timeout 10s curl -N "$API_BASE/global/event" $AUTH 2>/dev/null | grep -i version || echo " 未检测到版本事件" |
|
|
| echo |
| echo "=== 诊断完成 ===" |