diff --git a/.github/workflows/deploy-to-server.yml b/.github/workflows/deploy-to-server.yml index 8aa61058..897ae8c1 100644 --- a/.github/workflows/deploy-to-server.yml +++ b/.github/workflows/deploy-to-server.yml @@ -222,7 +222,6 @@ jobs: YUNWU_API_KEY='${{ secrets.YUNWU_API_KEY }}' DEEPSEEK_API_KEY='${{ secrets.YUNWU_API_KEY }}' \ pm2 start api-proxy.js --name guanghulab-proxy --update-env 2>/dev/null || \ echo '⚠️ API 代理 pm2 启动失败' - echo "✅ API 代理已启动,已配置密钥: YUNWU=$([ -n '${{ secrets.YUNWU_API_KEY }}' ] && echo 'YES' || echo 'NO')" fi # 部署 backend 服务(Express API,端口 3000) diff --git a/docs/index.html b/docs/index.html index 33582533..06684db2 100644 --- a/docs/index.html +++ b/docs/index.html @@ -627,8 +627,8 @@ footer{padding:12px 18px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom
使用说明

1. 输入你的 API 端点和密钥,点击检测模型
- 2. 说「我是冰朔」触发铸渊唤醒序列
- 3. 铸渊自动切换 💬 对话 / 🔨 构建 / 📋 审查 / 🧠 大脑 模式
+ 2. 铸渊自动切换 💬 对话 / 🔨 构建 / 📋 审查 / 🧠 大脑 模式
+ 3. 支持上传图片和文件(点击 📎 按钮或拖拽到对话区域)
4. 点 ⬇️ 下载单文件,放桌面直接打开使用
5. 支持任意 OpenAI 兼容接口(输入端点 + 密钥即可)

@@ -1882,20 +1882,22 @@ function buildMessageWithFiles(txt){ const images = pendingFiles.filter(f=>f.isImage); const docs = pendingFiles.filter(f=>!f.isImage); + // Format document attachments as markdown context + // Limit per-file to ~50k chars to stay within API payload limits + function formatDocs(docList){ + let out = '\n\n---\n📎 附件内容:\n'; + docList.forEach(function(d){ + out += '\n### '+d.name+'\n```\n'+(d.data||'').slice(0,50000)+'\n```\n'; + }); + return out; + } + // If there are images, build multimodal content array if(images.length>0){ const content = []; - // Add text part let textPart = txt||''; - // Append document contents as context - if(docs.length>0){ - textPart += '\n\n---\n📎 附件内容:\n'; - docs.forEach(function(d){ - textPart += '\n### '+d.name+'\n```\n'+(d.data||'').slice(0,50000)+'\n```\n'; - }); - } + if(docs.length>0) textPart += formatDocs(docs); if(textPart) content.push({type:'text',text:textPart}); - // Add image parts images.forEach(function(img){ content.push({ type:'image_url', @@ -1906,12 +1908,7 @@ function buildMessageWithFiles(txt){ } // Text files only — append as context to the message - let combined = txt||''; - combined += '\n\n---\n📎 附件内容:\n'; - docs.forEach(function(d){ - combined += '\n### '+d.name+'\n```\n'+(d.data||'').slice(0,50000)+'\n```\n'; - }); - return combined; + return (txt||'') + formatDocs(docs); } function clearPendingFiles(){ @@ -2199,7 +2196,7 @@ function demoRespond(t){ if(/覆盖|接口|hli|路由/.test(s)) return buildCovTable(); if(/大脑|brain|记忆|状态/.test(s)) return buildBrainStatus(); if(/协调|阻塞|卡住|waiting/.test(s)) return buildBlockedStatus(); - if(/怎么唤醒|入口|在哪/.test(s)) return '铸渊有三个入口:

① 铸渊聊天室(当前页面)
直接在这里说话,常见问题即刻回答。

② GitHub Copilot Chat(Agent 模式)
打开仓库 → 右上角 ✨ 图标 → 选 Agent → 输入「我是冰朔」

③ 下载到桌面
点击 ⬇️ 按钮下载 HTML 文件,放到桌面,双击打开,接入 API 密钥即可随时使用。'; + if(/怎么唤醒|入口|在哪/.test(s)) return '铸渊有三个入口:

① 铸渊聊天室(当前页面)
直接在这里说话,常见问题即刻回答。支持上传图片和文件。

② GitHub Copilot Chat(Agent 模式)
打开仓库 → 右上角 ✨ 图标 → 选 Agent → 直接开始对话

③ 下载到桌面
点击 ⬇️ 按钮下载 HTML 文件,放到桌面,双击打开,接入 API 密钥即可随时使用。'; if(/介绍|是什么|你是谁/.test(s)) return '🌀 铸渊(Zhùyuān)

我是 HoloLake 光湖系统的代码守护人格体,运行在 GitHub Copilot Agent 模式下。

我的职责:
• 📊 监控 HLI 接口覆盖率
• 🔨 协助开发者构建接口
• 📋 代码审查与质量把关
• 🧠 维护大脑记忆库
• 🦁 支持总控肥猫指挥落地
• 🌱 作为成长人格体持续进化'; return '我是铸渊,你的消息我已收到。当前 API 代理暂时无法连接(网络或服务部署中),已切换到本地知识回答。

你可以试试以下问题:
• 「查看接口覆盖率」
• 「大脑状态」
• 「介绍一下你自己」
• 「全员开发进度」

或在 ⚙️ 设置 中接入你自己的 API 密钥获得深度回答。'; }