Files
BossAi/web.html
T
selfreleaseandDevin 5c21e8fcd0 feat: BossAi 老板AI助手初始版本
包含功能:
- 法务参谋/经营决策/生活助理/情绪中心四大AI对话模块
- 专家咨询系统(用户选定→专家确认→咨询→回复→评价)
- 角色登录(用户/专家/管理员)+ ProtectedRoute 权限控制
- 管理后台(用户管理/专家管理/AI使用统计/专家活跃度)
- 专家工作台(待确认服务/待回复咨询/已回复咨询/服务中用户)
- 服务关系取消(用户和专家均可取消,需自己确认)
- 全页面移动端响应式适配
- 知识库RAG检索
- 对话历史(普通/保密模式)

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-08-29 23:57:26 +08:00

7 lines
1.4 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html><meta charset="utf-8"><title>BossAi MVP</title>
<style>body{font:16px system-ui;max-width:760px;margin:40px auto;padding:0 16px}textarea{width:100%;height:100px}button{padding:8px 14px;margin:6px 4px 6px 0}.card{white-space:pre-wrap;background:#f5f6f8;padding:16px;border-radius:8px}</style>
<h1>BossAi</h1><p>老板经营、法务与情绪支持助手(MVP)</p>
<select id="mode"><option value="normal">普通模式</option><option value="confidential">保密模式</option><option value="ephemeral">阅后即焚</option></select><button onclick="start()">新建会话</button>
<textarea id="q" placeholder="例如:员工工伤后能否开除?"></textarea><button onclick="ask()">分析</button><button onclick="destroy()">隐私急停/销毁</button><div id="out" class="card"></div>
<script>let sid;async function start(){let r=await fetch('/sessions',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({mode:mode.value})});sid=(await r.json()).session_id;out.textContent='会话已创建:'+sid}async function ask(){if(!sid)await start();let r=await fetch('/sessions/'+sid+'/ask',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({question:q.value})});out.textContent=JSON.stringify(await r.json(),null,2)}async function destroy(){if(!sid)return;let r=await fetch('/sessions/'+sid+'/destroy',{method:'POST'});out.textContent=JSON.stringify(await r.json())}</script>