Project Chameleon MVP Phase 1
概览
Phase 1 提供一个端到端的最小聊天示例:FastAPI + WebSocket 实时通信、LangGraph 编排、 PostgreSQL 持久化,以及一个最小化的 React 客户端。
后端端点
GET /healthz:健康检查。GET /sessions:最近会话列表。GET /sessions/{session_id}/messages:会话历史消息。WS /ws/{session_id}:实时聊天流。
WebSocket 载荷
客户端 -> 服务端:
{
"role": "user",
"content": "Hello",
"event": "user_message"
}
事件说明:
- user_message:用户或代理消息的默认事件。
- agent_takeover:切换至 HUMAN_ACTIVE。
- agent_release:切回 AI_ACTIVE。
服务端 -> 客户端(消息):
{
"type": "message",
"payload": {
"id": "...",
"session_id": "...",
"role": "assistant",
"content": "Hi!",
"created_at": "2026-02-01T12:00:00+00:00"
}
}
系统/状态更新:
{
"type": "system",
"payload": {
"status": "HUMAN_ACTIVE"
}
}
编排器状态
AI_ACTIVE:用户消息触发 LLM 响应。HUMAN_ACTIVE:人工消息直接转发。
数据库
默认使用 PostgreSQL(postgresql+psycopg2://localhost:5432/chameleon_meta),可通过 DATABASE_URL 覆盖。
前端
npm install
npm run dev
如需指向非默认后端地址,可设置 VITE_API_BASE。
参考
编排器与输入/输出模型的 API 说明请参见「AI Agent / 编排器」章节。